Escolar Documentos
Profissional Documentos
Cultura Documentos
MC 602
Circuitos Lógicos e Organização de Computadores
IC/Unicamp
Capítulo 7
Circuitos sequenciais: latches, flip-
flops, registradores, contadores
MC602 – Mario Côrtes – IC / Unicamp 1
IC-UNICAMP
Tópicos
• Elementos de armazenamento: latches e flip-
flops
• Registradores
• Contadores
Set
Sensor
On Off
Circuito Alarme
Reset
set
reset
on/off
• Circuitos combinacionais
– y(t) = f[x(t)] não há dependência de x(t-1) ou
x(t-2) não há memória ou histórico
• Alguns problemas não podem ser resolvidos
com circuitos combinacionais
Set
Sensor
On Off
Circuito Alarme
Reset
set
reset
on/off
Reset
Set Q
t1 t2 t3 t4 t5 t6 t7 t8 t9 t 10
1
R
0
1
S
0
1
Qa ?
0
1
Qb ?
0
Time
1
EN
0
1
R S Q
0
1 EN
S
0
R Q
1
Q ?
0
1
Q ?
0
Time
~S ~S ~R Qa Qb
Qa
1 1 Qa(t-1) Qb(t-1) sem mudança
0 1 1 0
1 0 0 1
~R Qb 0 0 1 1
S
D
(Data) Q
Clk D Q t+1
Clk
0 x Q t
Q 1 0 0
R
1 1 1
t1 t2 t3 t4
Clk
D Q
D
Q Clk Q
Time
EN
EN
Q
MC602 – Mario Côrtes – IC / Unicamp 13
IC-UNICAMP
Flip-flops
• Latches são sensíveis ao nível: o estado
pode mudar várias vezes durante EN=1
• É interessante ter circuitos que mudam de
estado apenas uma vez (nas transições do
EN)
• Flip-Flops
– Mestre-Escravo: composto por dois latches
controlados por clocks (enables) complementares
– Edge-triggered / sensível à borda do clock
Clock
D
D Q
Qm
Q
Q = Qs
P1
2
5 Q
Clock
P2 6 Q
3
D Q
Clock Q
4 P4
D
D D Q Qa
Clock Clk Q Qa
Clock
D Q Qb
D
Q Qb
Qa
D Q Qc Qb
Q Qc Qc
Clk
Preset
Q Preset
D Q
Clock
Q
Q
Clear
Clear
Clear
D Q Q
D
Clock Q Q
J
D Q Q
K Q Q
Clock
J K Q t +1 J Q
0 0 Q t
0 1 0
K Q
1 0 1
1 1 Q t
Resolve
problema do SR
D Q Q
Equivalente a
T
Q Q T
J Q
Clock
K Q
Clock T Q t+1
T 0 Qt
1 Qt
Q
D Q
Registradores e Contadores
D2 D Q Q2
D1 D Q Q1
D0 D Q Q0
Clock Q
Load
0
D Q Q
Dado 1
Dado D Q Q
Clk Q
Load Q
Load
Dado D Q Q
RUIM
Clk Q
Q1 Q2 Q3 Q4
In D Q D Q D Q D Q Out
Clock Q Q Q Q
D Q D Q D Q D Q
Q Q Q Q
0
1
Serial Clock
input Shift/Load Parallel input
Exercício:
Diagrama do Shift Register Universal de 4 bits
com entradas de controle: NOP (mantém valor), SHL
(esquerda), SHR (direita), LD (carga paralela)
Extern
Bus
Clock
R1 R2 Rk
Control circuit
Function
R1out R2out
D Q D Q D Q D Q
Q Q Q Q
R1i n R2i n
Clock
R1 R2
FF-D com LD
• Dois registradores (R1 e R2) de 2 bits cada ligados a
um barramento
• Operação R2R1: ativar sinais R2out e R1in
• Transferência completada na borda de subida do clk
MC602 – Mario Côrtes – IC / Unicamp 34
IC-UNICAMP
Barramento com MUX
Bus
Clock
Data
S0
Multiplexers
Sj – 1
1 T Q T Q T Q
Clock Q Q Q
Q0 Q1 Q2
Clock
Q0
Q1
Q2
Count 0 7 6 5 4 3 2 1 0
Q0 Q1 Q2
Clock
Q0
Q1
Q2
Count 0 1 2 3 4 5 6 7 0
Clock cycle Q2 Q1 Q0
Q1 changes
0 0 0 0
1 0 0 1 Q2 changes
2 0 1 0
3 0 1 1
4 1 0 0
5 1 0 1
6 1 1 0
7 1 1 1
8 0 0 0
Clock
Q0
Q1
Q2
Q3
Count 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 0 1
Enable T Q T Q T Q T Q
Clock Q Q Q Q
Clear
T T Q Q
T D Q Q
Clock Q Clock Q
D Q Q0
Enable D0 Q0 1 Q0
Q
FF-T
D Q Q1 D1 Q1 Q0
Q
D Q Q2 D2 Q2 Q1Q0
Q
D Q Q3 D3 Q3 Q 2Q1Q0
Q
Output
Clock carry
MC602 – Mario Côrtes – IC / Unicamp 45
IC-UNICAMP Contadores em cascata
Q3 Q2 Q1 Q0 Q7 Q6 Q5 Q4
Q3 Q2 Q1 Q0 Q3 Q2 Q1 Q0
Ouput Ouput
En Enable Enable
Carry Carry
Clock Clock
Clock
Clock
Contagem 12 13 14 15 16 17 18 19
Q3
Output Carry
Q4
0
1 D Q Q1
D1
Q
0
1
D Q Q2
D2
Q
0
1 D Q Q3
D3
Q
Output
Load carry
Clock
MC602 – Mario Côrtes – IC / Unicamp 47
IC-UNICAMP
Contadores de módulo 2n
• Algumas possibilidades para módulo M:
– Com o uso de clear/preset
• Contador UP:
– ao atingir valor = M clear
• Contador DOWN:
– ao atingir valor = 2n – M preset (1111111)
– Com o uso de Load paralelo
• Contador UP:
– ao atingir contagem máxima load valor (2n – M)
• Contador DOWN:
– ao atingir contagem = 0 load valor M
1 Enable
0 D0 Q0
0 D1 Q1
0 D2 Q2
Load
Clock
Clock
Load
Clock
Q0
Q1
Q2
Count 0 1 2 3 4 5 0 1
Clock Q Q Q
Clock
Q0
Q1
Q2
Count 0 1 2 3 4 5 0 1 2
Obs: apesar do estado final a ser detectado ser o mesmo do caso anterior,
estado 101 (5), o módulo deste contador é 5 (contagem 0 1 2 3 4 0 1 2 3 4)
MC602 – Mario Côrtes – IC / Unicamp 50
Problemas com contadores assíncronos
IC-UNICAMP
Start
D Q D Q D Q
Q Q Q
Clock
0 1 2 3 Q Q Q Q
Contagem p 4 bits: 1000 0100 0010 0001 1000 0100 0010 0001 ....
y0 y1 y2 y3
Módulo?
2-to-4 decoder
w1 w0 En
MC602 – Mario Côrtes – IC / Unicamp 53
IC-UNICAMP
Contador Johnson
Q0 Q1 Qn – 1
D Q D Q D Q
Q Q Q
Reset
Clock