Beruflich Dokumente
Kultur Dokumente
Circuitos Sequenciais
DCC 001
Programao de Computadores
2o Semestre de 2014
Professores Jeroen e Osvaldo
DCC001 - 2014-2
Circuitos Combinatrios
Sua sada depende exclusivamente dos valores
Circuitos Sequenciais
Circuitos sequenciais so circuitos digitais cuja sada
depende
DCC001 - 2014-2
Flip-Flops e Registradores
DCC001 - 2014-2
Flip-Flop tipo D
Poderia ser click; funciona
como um obturador de
mquina fotogrfica
Bit
Armazenado
Complemento
do Bit
Armazenado
A entrada D
fotografada no
instante em que o clock
passa de 0 para 1
DCC001 - 2014-2
Pino Auxiliar:
Impe 0
Pino Auxiliar:
Impe 1
Pino Auxiliar:
Habilita o FF
Carta de Tempo
FF tipo D
7
Clock
Entrada D
2
Sada Q
0
-1
1
10
11
12
13
Tempo
DCC001 - 2014-2
Sadas
Entradas
DCC001 - 2014-2
Registradores Logisim - 1
Encontram-se na biblioteca Memory
Permitem escolher a
largura de dados
Registradores Logisim - 2
Registradores
Valor
armazenado no
registrador, em
hexadecimal
Largura de
dados
DCC001 - 2014-2
Notao Hexadecimal
Base 16
Algarismos 0, , 9, , , , , ,
75 = 7. 163 + 10. 162 + 5. 161 + 12. 160 = 31324
Muito til para escrever sequncias de bits, pois a
101000111101=A3D
A
DCC001 - 2014-2
D
10
Largura de Dados
Estes diagramas so
equivalentes
No de baixo,
entradas, sadas,
registradores e fios
tm largura de bits
(bit width) igual a 4
Mais legvel
DCC001 - 2014-2
11
Distribuidores (Splitters)
Traduo errada!
Deveria ser
ramos de sada
3 bits
2 bits
8 bits
3 bits
DCC001 - 2014-2
12
Barramentos e Controle de
Fluxo de Dados
DCC001 - 2014-2
13
Conexes
interessante ter rotas de dados que
DCC001 - 2014-2
14
Barramentos
O dado no barramento igual
sada com o buffer controlado
ligado
A todo instante, no mximo
um buffer controlado pode ter
o controle do barramento
15
Barramentos
16
17
Colocar 7 no registrador A
Passo Sinal
Comentrio
1 In = 7
Colocar 7 (em binrio, 111) na entrada In
2 In_Bus = 1 Colocar o valor de In no barramento
3 A_Clk = 1 Copiar o valor do barramento no registrador A
4 A_Clk = 0 Zerar o clock do registrador A
5 In_Bus = 0 Liberar o barramento
DCC001 - 2014-2
18
Colocar 3 no registrador B
Passo Sinal
Comentrio
1 In =3
Colocar 3 (em binrio, 11) na entrada In
2 In_Bus = 1 Colocar o valor de In no barramento
3 B_Clk = 1 Colocar o valor do barramento no registrador B
4 B_Clk = 0 Zerar o clock do registrador B
5 In_Bus = 0 Liberar o barramento
DCC001 - 2014-2
19
20
Memrias
DCC001 - 2014-2
21
Memrias - 1
O Logisim oferece memrias RAM (Random
Access
22
Memrias - 2
Memrias tm como atributos
a largura de dados, que o nmero de bits em cada palavra
a largura de endereo, que o nmero de bits que compem um
endereo
o tamanho, que o nmero de palavras que a memria contm, e
que no mximo 2n, onde n a largura de endereo
No Logisim o tamanho de uma memria determinado por
DCC001 - 2014-2
Memrias 3
Memory
Address
Register
Entrada e
tambm sada
de dados
Na subida, copia
D na posio A
Controle de posse
do barramento
DCC001 - 2014-2
24
RAM Fluxo 1
Passo
1
2
3
4
5
6
7
8
9
10
11
12
13
14
DCC001 - 2014-2
RAM
Fluxo 2
26
Acumuladores e Loops
DCC001 - 2014-2
27
Acumulador - 1
Um registrador acumulador
DCC001 - 2014-2
28
Acumulador 2
Registrador
Acumulador
Circuito Soma
(combinatrio)
DCC001 - 2014-2
29
Acumulador Fluxo 1
Colocar 5 no Acumulador
Sinal
Acc Clr = 1
Acc Clr = 0
In = 5
In->Dbus = 1
Acc Clk = 1
Acc Clk = 10
In->Dbus = 0
DCC001 - 2014-2
Comentrio
Zera o acumulador
Abaixa o clear do acumulador
Coloca 5 na entrada In
A entrada In controla o barramento
O acumulador copia a entrada, que a
sada do circuito de soma, sendo = 5
Abaixa o clock do acumulador
Libera o barramento
30
Acumulador Fluxo 2
Soma 7 (111) ao contedo do Acumulador, e transfere
o resultado para o registrador Out
Sinal
In = 7
In->Dbus = 1
Acc Clk = 1
Acc Clk = 0
In->Dbus = 0
Acc->Dbus = 1
Out Clk = 1
Out Clk = 0
Acc->Dbus = 0
DCC001 - 2014-2
Comentrio
Coloca 7 na entrada In
A entrada In controla o barramento
O acumulador copia a entrada, que a
sada do circuito de soma, sendo igual a 12
(0c em hexa), soma do valor do acumulador
com o do barramento
Abaixa o clock do acumulador
Libera o barramento
O acumulador controla o barramento
O registrador Out copia o barramento
Abaixa o clock do registrador Out
Libera o barramento
31
Uma Calculadora
DCC001 - 2014-2
32
Uma Calculadora
Barramento
Memria
Unidade
LgicoAritmtica;
+, -, x, /
Acumulador
DCC001 - 2014-2
33
Uma Calculadora
Entrada
DCC001 - 2014-2
Registrador
de Dados
Sada
Registrador com
Resultado de
Comparao
34
Uma Calculadora
Entrada
DCC001 - 2014-2
Registrador
de Dados
Sada
Registrador com
Resultado de
Comparao
35
DCC001 - 2014-2
36
Uso da Calculadora
Problema:
Somar os contedos das posies 1 e 2 da memria, e
colocar o resultado na posio 3
37
Etapa 1
DCC001 - 2014-2
ACC_Clear = 1
ACC_Clear = 0
Input = 1
In_Clk = 1
In_Clk = 0
In->Bus = 1
MAR_Clk = 1
MAR_Clk = 0
In->Bus = 0
RAM->Bus = 1
ACC_Clk = 1
ACC_Clk = 0
RAM->Bus = 0
Entrada de
Operando
Carrega no acumulador o
contedo da posio 1 da RAM
38
Etapa 2
Input = 2
In_Clk = 1
In Clk = 0
In->Bus = 1
MAR_Clk = 1
MAR_Clk = 0
In->Bus = 0
RAM->Bus = 1
ACC_Clk = 1
ACC_Clk = 0
RAM->Bus = 0
DCC001 - 2014-2
Soma ao acumulador o
contedo da posio 2 da RAM
39
Etapa 3
Input = 3
In_Clk = 1
In_Clk = 0
In->Bus = 1
MAR_Clk = 1
MAR_Clk = 0
In->Bus = 0
ACC->Bus = 1
RAM_Clk = 1
RAM_Clk = 0
ACC->Bus = 0
DCC001 - 2014-2
Armazena o contedo do
acumulador na posio 3 da
RAM
40
entrada
Exemplos:
DCC001 - 2014-2
41
Calculadora:
Receita para Valor Absoluto
DCC001 - 2014-2
42
Clocks
DCC001 - 2014-2
43
De Calculadora a Processador
Um
calculadora, mas
A emisso de sinais de controle e a
entrada de operandos automatizada,
e segue um programa
Vamos adicionar circuitos calculadora
para transform-la em um processador
DCC001 - 2014-2
44
Osciladores ou Clocks
O propulsor de qualquer circuito digital um
oscilador ou clock
Um clock um circuito cuja sada oscila entre 0 e 1
com uma frequncia conhecida
Um computador de 1 GHz (1 giga hertz) utiliza um
clock cuja sada varia entre 0 e 1 um milho de
vezes por segundo
Deste sinal bsico circuitos como registradores
circulares obtm sinais de tempo que so usados
para coreografar o fluxo de dados de um circuito
DCC001 - 2014-2
45
Clocks no Logisim
DCC001 - 2014-2
46
Registrador Circular
DCC001 - 2014-2
47
Registrador Circular
Carta de Tempo
t2
t1
t0
Clock
Reset
DCC001 - 2014-2
48
Resumo - 1
Um flip-flop armazena 1 bit
Registradores so conjuntos de flip-
flops
Memrias armazenam muitas palavras
(conjuntos de bits) identificadas por
um endereo
DCC001 - 2014-2
49
Resumo - 2
A informao desloca-se entre dois pontos
50