capítulo 7 circuitos sequenciais: latches, flip- flops...
TRANSCRIPT
![Page 1: Capítulo 7 Circuitos sequenciais: latches, flip- flops ...cortes/mc602/slides/obsoleto/cap07_v4.… · 1 IC-UNICAMP MC602 –Mario Côrtes –IC / Unicamp Capítulo 7 Circuitos sequenciais:](https://reader034.vdocumento.com/reader034/viewer/2022052519/6050ff7edf6e04680129b06f/html5/thumbnails/1.jpg)
1
IC-UNICAMP
MC602 – Mario Côrtes – IC / Unicamp
Capítulo 7
Circuitos sequenciais: latches, flip-
flops, registradores, contadores
MC 602
Circuitos Lógicos e Organização de Computadores
IC/Unicamp
Prof Mario Côrtes
![Page 2: Capítulo 7 Circuitos sequenciais: latches, flip- flops ...cortes/mc602/slides/obsoleto/cap07_v4.… · 1 IC-UNICAMP MC602 –Mario Côrtes –IC / Unicamp Capítulo 7 Circuitos sequenciais:](https://reader034.vdocumento.com/reader034/viewer/2022052519/6050ff7edf6e04680129b06f/html5/thumbnails/2.jpg)
2
IC-UNICAMP
MC602 – Mario Côrtes – IC / Unicamp
Tópicos
• Elementos de armazenamento: latches e flip-flops
• Registradores
• Contadores
![Page 3: Capítulo 7 Circuitos sequenciais: latches, flip- flops ...cortes/mc602/slides/obsoleto/cap07_v4.… · 1 IC-UNICAMP MC602 –Mario Côrtes –IC / Unicamp Capítulo 7 Circuitos sequenciais:](https://reader034.vdocumento.com/reader034/viewer/2022052519/6050ff7edf6e04680129b06f/html5/thumbnails/3.jpg)
3
IC-UNICAMP
MC602 – Mario Côrtes – IC / Unicamp
Circuitos combinacionais / sequenciais
• 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
Circuito AlarmeSensor
Reset
Set
On Off ⁄
set
reset
on/off
![Page 4: Capítulo 7 Circuitos sequenciais: latches, flip- flops ...cortes/mc602/slides/obsoleto/cap07_v4.… · 1 IC-UNICAMP MC602 –Mario Côrtes –IC / Unicamp Capítulo 7 Circuitos sequenciais:](https://reader034.vdocumento.com/reader034/viewer/2022052519/6050ff7edf6e04680129b06f/html5/thumbnails/4.jpg)
4
IC-UNICAMP
MC602 – Mario Côrtes – IC / Unicamp
Circuitos sequenciais
• Circuitos sequenciais– y(t) = f[x(t-1), x(t-2), ....] � depende do histórico de entradas � novos conceitos: estado ou memória
• Elemento básico: elemento de memória
• O mais simples e rudimentar:
– Elemento de memória com dois estados estáveis: A=0 e B=1 ou A=1 e B=0
A B
![Page 5: Capítulo 7 Circuitos sequenciais: latches, flip- flops ...cortes/mc602/slides/obsoleto/cap07_v4.… · 1 IC-UNICAMP MC602 –Mario Côrtes –IC / Unicamp Capítulo 7 Circuitos sequenciais:](https://reader034.vdocumento.com/reader034/viewer/2022052519/6050ff7edf6e04680129b06f/html5/thumbnails/5.jpg)
5
IC-UNICAMP
MC602 – Mario Côrtes – IC / Unicamp
Reset
Set Q
Um elemento básico feito com NORs
• Extensão dos inversores em anel– permite “carga” de dados:
– set � 1
– reset � 0
• Base para o Latch Set Reset = Latch SR
![Page 6: Capítulo 7 Circuitos sequenciais: latches, flip- flops ...cortes/mc602/slides/obsoleto/cap07_v4.… · 1 IC-UNICAMP MC602 –Mario Côrtes –IC / Unicamp Capítulo 7 Circuitos sequenciais:](https://reader034.vdocumento.com/reader034/viewer/2022052519/6050ff7edf6e04680129b06f/html5/thumbnails/6.jpg)
6
IC-UNICAMP
MC602 – Mario Côrtes – IC / Unicamp
Time
1
0
1
0
1
0
1
0
R
S
Qa
Qb
?
?
t1 t2 t3 t4 t5 t6 t7 t8 t9 t10
Qa
Qb
R
S
Latch SR com NORs
S R Qa Qb
0 00 11 01 1
Qa(t-1)0 11 00 0
Qb(t-1) sem mudança
![Page 7: Capítulo 7 Circuitos sequenciais: latches, flip- flops ...cortes/mc602/slides/obsoleto/cap07_v4.… · 1 IC-UNICAMP MC602 –Mario Côrtes –IC / Unicamp Capítulo 7 Circuitos sequenciais:](https://reader034.vdocumento.com/reader034/viewer/2022052519/6050ff7edf6e04680129b06f/html5/thumbnails/7.jpg)
7
IC-UNICAMP
MC602 – Mario Côrtes – IC / Unicamp
Latch SR: considerações
• Forma de onda assume atrasos de propagação = 0
• Situação de entrada SR=11 é indesejável
• Mas circuito pode ser usado no sistema de alarmes
• Pode ser interessante ter a função de habilitar (enable) a entrada de dados ou não no Latch SR � Latch SR chaveado ou com enable
![Page 8: Capítulo 7 Circuitos sequenciais: latches, flip- flops ...cortes/mc602/slides/obsoleto/cap07_v4.… · 1 IC-UNICAMP MC602 –Mario Côrtes –IC / Unicamp Capítulo 7 Circuitos sequenciais:](https://reader034.vdocumento.com/reader034/viewer/2022052519/6050ff7edf6e04680129b06f/html5/thumbnails/8.jpg)
8
IC-UNICAMP
MC602 – Mario Côrtes – IC / Unicamp
Latch SR chaveado
Q
Q
R1
S1
R
S
EN
S R
x x
0 0
0 1
1 0
Q(t ) (no change)
0
1
EN
0
1
1
1
1 1 1
Q t 1 + ( )
Q(t ) (no change)
x
R
EN
Q
Q
S
1
0
1
0
1
0
1
0
1
0
Time
?
?
S Q
Q
EN
R
Por que?
![Page 9: Capítulo 7 Circuitos sequenciais: latches, flip- flops ...cortes/mc602/slides/obsoleto/cap07_v4.… · 1 IC-UNICAMP MC602 –Mario Côrtes –IC / Unicamp Capítulo 7 Circuitos sequenciais:](https://reader034.vdocumento.com/reader034/viewer/2022052519/6050ff7edf6e04680129b06f/html5/thumbnails/9.jpg)
9
IC-UNICAMP
MC602 – Mario Côrtes – IC / Unicamp
~S
~R Qb
Qa
Latch SR com NANDs
• Observar entradas “ativo-baixo”
~S ~R Qa Qb
1 1
0 1
1 0
0 0
1 0
0 1
1 1
Qa(t-1) Qb(t-1) sem mudança
![Page 10: Capítulo 7 Circuitos sequenciais: latches, flip- flops ...cortes/mc602/slides/obsoleto/cap07_v4.… · 1 IC-UNICAMP MC602 –Mario Côrtes –IC / Unicamp Capítulo 7 Circuitos sequenciais:](https://reader034.vdocumento.com/reader034/viewer/2022052519/6050ff7edf6e04680129b06f/html5/thumbnails/10.jpg)
10
IC-UNICAMP
MC602 – Mario Côrtes – IC / Unicamp
Latch tipo D chaveado
Q
S
R
Clk
D (Data)
Q
D Q
Q Clk
Clk D
0 1 1
x 0 1
0 1
Q t 1 + ( )
Q t ( )
t 1 t 2 t 3 t 4
Time
Clk
D
Q
![Page 11: Capítulo 7 Circuitos sequenciais: latches, flip- flops ...cortes/mc602/slides/obsoleto/cap07_v4.… · 1 IC-UNICAMP MC602 –Mario Côrtes –IC / Unicamp Capítulo 7 Circuitos sequenciais:](https://reader034.vdocumento.com/reader034/viewer/2022052519/6050ff7edf6e04680129b06f/html5/thumbnails/11.jpg)
11
IC-UNICAMP
MC602 – Mario Côrtes – IC / Unicamp
Latch tipo D: outra implementação
Q EN D
D Q
Q EN
Q
EN
D 1
0
Equivalente a Símbolo
D
EN
Q
Analisar efeito do atraso do inversor nesta configuração e na configuração com ~EN
![Page 12: Capítulo 7 Circuitos sequenciais: latches, flip- flops ...cortes/mc602/slides/obsoleto/cap07_v4.… · 1 IC-UNICAMP MC602 –Mario Côrtes –IC / Unicamp Capítulo 7 Circuitos sequenciais:](https://reader034.vdocumento.com/reader034/viewer/2022052519/6050ff7edf6e04680129b06f/html5/thumbnails/12.jpg)
12
IC-UNICAMP
MC602 – Mario Côrtes – IC / Unicamp
t su
t h
EN
D
Q
Tempos de setup e hold em latches
• Valor armazenado (travado) quando EN�0
• O que acontece se D está mudando?– valor travado é imprevisível
• Tempos de guarda– antes: tempo de setup (preparação)
– depois: tempo de hold (manutenção)
– dependem dos atrasos internos e da tecnologia
– ver datasheets
D Q
Q EN
![Page 13: Capítulo 7 Circuitos sequenciais: latches, flip- flops ...cortes/mc602/slides/obsoleto/cap07_v4.… · 1 IC-UNICAMP MC602 –Mario Côrtes –IC / Unicamp Capítulo 7 Circuitos sequenciais:](https://reader034.vdocumento.com/reader034/viewer/2022052519/6050ff7edf6e04680129b06f/html5/thumbnails/13.jpg)
13
IC-UNICAMP
MC602 – Mario Côrtes – 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 latchescontrolados por clocks (enables) complementares
– Edge-triggered / sensível à borda do clock
![Page 14: Capítulo 7 Circuitos sequenciais: latches, flip- flops ...cortes/mc602/slides/obsoleto/cap07_v4.… · 1 IC-UNICAMP MC602 –Mario Côrtes –IC / Unicamp Capítulo 7 Circuitos sequenciais:](https://reader034.vdocumento.com/reader034/viewer/2022052519/6050ff7edf6e04680129b06f/html5/thumbnails/14.jpg)
14
IC-UNICAMP
MC602 – Mario Côrtes – IC / Unicamp
Flip-Flop Mestre Escravo tipo D
D
Clock
Q m
Q Q s =
D Q
Q
D Q
Q
Master Slave
D
Clock
Q
Q
D Q
Q
Q m Q s
ClkClk
Sensível à borda de DESCIDA
![Page 15: Capítulo 7 Circuitos sequenciais: latches, flip- flops ...cortes/mc602/slides/obsoleto/cap07_v4.… · 1 IC-UNICAMP MC602 –Mario Côrtes –IC / Unicamp Capítulo 7 Circuitos sequenciais:](https://reader034.vdocumento.com/reader034/viewer/2022052519/6050ff7edf6e04680129b06f/html5/thumbnails/15.jpg)
15
IC-UNICAMP
MC602 – Mario Côrtes – IC / Unicamp
Um Flip-Flop tipo D clássico
(sensível à borda)
• ver análise de funcionamento no livro texto
D Q
Q Clock
D
Clock
P4
P3
P1
P2
5
6
1
2
3 Q
Q
4
![Page 16: Capítulo 7 Circuitos sequenciais: latches, flip- flops ...cortes/mc602/slides/obsoleto/cap07_v4.… · 1 IC-UNICAMP MC602 –Mario Côrtes –IC / Unicamp Capítulo 7 Circuitos sequenciais:](https://reader034.vdocumento.com/reader034/viewer/2022052519/6050ff7edf6e04680129b06f/html5/thumbnails/16.jpg)
16
IC-UNICAMP
MC602 – Mario Côrtes – IC / Unicamp
Latch e FF: comportamento comparado
D Q
Q
D Q
Q
D Q
Q
D
Clock Q a
Q b
Q c
Q c
Q b
Q a
Clk
D
Clock
Q a
Q b
Q c
![Page 17: Capítulo 7 Circuitos sequenciais: latches, flip- flops ...cortes/mc602/slides/obsoleto/cap07_v4.… · 1 IC-UNICAMP MC602 –Mario Côrtes –IC / Unicamp Capítulo 7 Circuitos sequenciais:](https://reader034.vdocumento.com/reader034/viewer/2022052519/6050ff7edf6e04680129b06f/html5/thumbnails/17.jpg)
17
IC-UNICAMP
MC602 – Mario Côrtes – IC / Unicamp
Latches e Flip-Flops: diferenças
• Manifestação da saída Q em função de variações na entrada D:– Latch: transparente durante EN (ou Ck) ativos, ou seja, entrada D passa diretamente para a saída Q
– Flip-Flop: na borda do Clock, o valor presente na entrada D é transferido para Q
• Instante em que o valor da entrada D éarmazenado– Latch: valor armazenado é o presente na entrada D no instante em que EN (ou Ck) é desativado (operação de latch ou travamento)
– Flip-Flop: na borda do Clock, o valor presente na entrada D é armazenado
![Page 18: Capítulo 7 Circuitos sequenciais: latches, flip- flops ...cortes/mc602/slides/obsoleto/cap07_v4.… · 1 IC-UNICAMP MC602 –Mario Côrtes –IC / Unicamp Capítulo 7 Circuitos sequenciais:](https://reader034.vdocumento.com/reader034/viewer/2022052519/6050ff7edf6e04680129b06f/html5/thumbnails/18.jpg)
18
IC-UNICAMP
MC602 – Mario Côrtes – IC / Unicamp
Tempos de setup e hold
t su
t h
Clk
D
Q
• Tsu: tempo de guarda antes da borda do clock (de descida, no exemplo) durante o qual a entrada D não deve mudar
• Th: idem, para depois da borda do clock
![Page 19: Capítulo 7 Circuitos sequenciais: latches, flip- flops ...cortes/mc602/slides/obsoleto/cap07_v4.… · 1 IC-UNICAMP MC602 –Mario Côrtes –IC / Unicamp Capítulo 7 Circuitos sequenciais:](https://reader034.vdocumento.com/reader034/viewer/2022052519/6050ff7edf6e04680129b06f/html5/thumbnails/19.jpg)
19
IC-UNICAMP
MC602 – Mario Côrtes – IC / Unicamp
FF D: borda de subida, com
Preset e Clear assíncronos
Preset
Clear
D Q
Q
D
Clock
Q
Q
Clear
Preset
![Page 20: Capítulo 7 Circuitos sequenciais: latches, flip- flops ...cortes/mc602/slides/obsoleto/cap07_v4.… · 1 IC-UNICAMP MC602 –Mario Côrtes –IC / Unicamp Capítulo 7 Circuitos sequenciais:](https://reader034.vdocumento.com/reader034/viewer/2022052519/6050ff7edf6e04680129b06f/html5/thumbnails/20.jpg)
20
IC-UNICAMP
MC602 – Mario Côrtes – IC / Unicamp
FF D com Clear síncrono
D
Clock Q
QClear
D Q
Q
![Page 21: Capítulo 7 Circuitos sequenciais: latches, flip- flops ...cortes/mc602/slides/obsoleto/cap07_v4.… · 1 IC-UNICAMP MC602 –Mario Côrtes –IC / Unicamp Capítulo 7 Circuitos sequenciais:](https://reader034.vdocumento.com/reader034/viewer/2022052519/6050ff7edf6e04680129b06f/html5/thumbnails/21.jpg)
21
IC-UNICAMP
MC602 – Mario Côrtes – IC / Unicamp
D Q
Q
Q
Q
J
Clock
K
J Q
QK
K
0
1
Q t 1+( )
Q t( )
0
J
0
0
0 11
1 Q t( )1
Flip-Flop JK
Resolve problema do SR
![Page 22: Capítulo 7 Circuitos sequenciais: latches, flip- flops ...cortes/mc602/slides/obsoleto/cap07_v4.… · 1 IC-UNICAMP MC602 –Mario Côrtes –IC / Unicamp Capítulo 7 Circuitos sequenciais:](https://reader034.vdocumento.com/reader034/viewer/2022052519/6050ff7edf6e04680129b06f/html5/thumbnails/22.jpg)
22
IC-UNICAMP
MC602 – Mario Côrtes – IC / Unicamp
Flip-Flop tipo T
Clock
T
Q
T Q
Q
T
0
1
Q t 1 + ( )
Q t ( )
Q t ( )
D Q
Q
Q
Q T
Clock
J Q
QK
T
Equivalente a
![Page 23: Capítulo 7 Circuitos sequenciais: latches, flip- flops ...cortes/mc602/slides/obsoleto/cap07_v4.… · 1 IC-UNICAMP MC602 –Mario Côrtes –IC / Unicamp Capítulo 7 Circuitos sequenciais:](https://reader034.vdocumento.com/reader034/viewer/2022052519/6050ff7edf6e04680129b06f/html5/thumbnails/23.jpg)
23
IC-UNICAMP
MC602 – Mario Côrtes – IC / Unicamp
Parâmetros de timing de Flip-Flops
• tsu, th: tempos de setup e hold
• tcQ: atraso de propagação do clock até Q
D Q
Q Clock
![Page 24: Capítulo 7 Circuitos sequenciais: latches, flip- flops ...cortes/mc602/slides/obsoleto/cap07_v4.… · 1 IC-UNICAMP MC602 –Mario Côrtes –IC / Unicamp Capítulo 7 Circuitos sequenciais:](https://reader034.vdocumento.com/reader034/viewer/2022052519/6050ff7edf6e04680129b06f/html5/thumbnails/24.jpg)
24
IC-UNICAMP
MC602 – Mario Côrtes – IC / Unicamp
MC 602
Registradores e Contadores
![Page 25: Capítulo 7 Circuitos sequenciais: latches, flip- flops ...cortes/mc602/slides/obsoleto/cap07_v4.… · 1 IC-UNICAMP MC602 –Mario Côrtes –IC / Unicamp Capítulo 7 Circuitos sequenciais:](https://reader034.vdocumento.com/reader034/viewer/2022052519/6050ff7edf6e04680129b06f/html5/thumbnails/25.jpg)
25
IC-UNICAMP
MC602 – Mario Côrtes – IC / Unicamp
Tópicos de Registradores
• Construção usando flip-flops
• Clear assíncrono e Enable
• Registradores deslocamento
• Carga paralela
• Registrador deslocamento universal
• Exemplo de uso em barramento
![Page 26: Capítulo 7 Circuitos sequenciais: latches, flip- flops ...cortes/mc602/slides/obsoleto/cap07_v4.… · 1 IC-UNICAMP MC602 –Mario Côrtes –IC / Unicamp Capítulo 7 Circuitos sequenciais:](https://reader034.vdocumento.com/reader034/viewer/2022052519/6050ff7edf6e04680129b06f/html5/thumbnails/26.jpg)
26
IC-UNICAMP
MC602 – Mario Côrtes – IC / Unicamp
Registradores
• Conjunto de elementos de memória (flip-flops) utilizadospara armazenar n bits a cada borda do clock
• Utilizam em comum os sinais de clock e controle
D Q
Q
Clock
D Q
Q
D Q
Q
D Q
Q
D0
D1
D2
D3
Q0
Q1
Q2
Q3 Símbolo ANSI/IEEE Std 91
![Page 27: Capítulo 7 Circuitos sequenciais: latches, flip- flops ...cortes/mc602/slides/obsoleto/cap07_v4.… · 1 IC-UNICAMP MC602 –Mario Côrtes –IC / Unicamp Capítulo 7 Circuitos sequenciais:](https://reader034.vdocumento.com/reader034/viewer/2022052519/6050ff7edf6e04680129b06f/html5/thumbnails/27.jpg)
27
IC-UNICAMP
MC602 – Mario Côrtes – IC / Unicamp
Registrador (Flip-Flop) com enable
• O registrador apresentado carrega o dado a cada borda do clock
• Desejável carga controlada por sinal “load”
RUIM
D Q
Q
Dado
Load
Q
D Q
Q Clk
Q
Load
Dado
0
1
D Q
Q
Dado
Load
Q
Clk
![Page 28: Capítulo 7 Circuitos sequenciais: latches, flip- flops ...cortes/mc602/slides/obsoleto/cap07_v4.… · 1 IC-UNICAMP MC602 –Mario Côrtes –IC / Unicamp Capítulo 7 Circuitos sequenciais:](https://reader034.vdocumento.com/reader034/viewer/2022052519/6050ff7edf6e04680129b06f/html5/thumbnails/28.jpg)
28
IC-UNICAMP
MC602 – Mario Côrtes – IC / Unicamp
Shift Register – Registrador
de deslocamento
t 0
t 1
t 2
t 3
t 4
t 5
t 6
t 7
1
0
1
1
1
0
0
0
0
1
0
1
1
1
0
0
0
0
1
0
1
1
1
0
0
0
0
1
0
1
1
1
0
0
0
0
1
0
1
1
Q 1 Q 2 Q 3 Q 4 Out = In
D Q
Q Clock
D Q
Q
D Q
Q
D Q
Q
In Out Q 1 Q 2 Q 3 Q 4
![Page 29: Capítulo 7 Circuitos sequenciais: latches, flip- flops ...cortes/mc602/slides/obsoleto/cap07_v4.… · 1 IC-UNICAMP MC602 –Mario Côrtes –IC / Unicamp Capítulo 7 Circuitos sequenciais:](https://reader034.vdocumento.com/reader034/viewer/2022052519/6050ff7edf6e04680129b06f/html5/thumbnails/29.jpg)
29
IC-UNICAMP
MC602 – Mario Côrtes – IC / Unicamp
Usos do registrador de deslocamento
• Conversão série � paralelo
• Conversão paralelo � série– (precisa de carga paralela)
• Multiplicador / divisor por potência de 2
![Page 30: Capítulo 7 Circuitos sequenciais: latches, flip- flops ...cortes/mc602/slides/obsoleto/cap07_v4.… · 1 IC-UNICAMP MC602 –Mario Côrtes –IC / Unicamp Capítulo 7 Circuitos sequenciais:](https://reader034.vdocumento.com/reader034/viewer/2022052519/6050ff7edf6e04680129b06f/html5/thumbnails/30.jpg)
30
IC-UNICAMP
MC602 – Mario Côrtes – IC / Unicamp
Shift Register com Carga Paralela
Q3 Q2 Q1 Q0
ClockParallel input
Parallel
output
Shift/LoadSerialinput
D Q
Q
D Q
Q
D Q
Q
D Q
Q
0
1
![Page 31: Capítulo 7 Circuitos sequenciais: latches, flip- flops ...cortes/mc602/slides/obsoleto/cap07_v4.… · 1 IC-UNICAMP MC602 –Mario Côrtes –IC / Unicamp Capítulo 7 Circuitos sequenciais:](https://reader034.vdocumento.com/reader034/viewer/2022052519/6050ff7edf6e04680129b06f/html5/thumbnails/31.jpg)
31
IC-UNICAMP
MC602 – Mario Côrtes – IC / Unicamp
Shift Register Universal
• Entrada Serial– Deslocamento a Esquerda
– Deslocamento a Direita
• Carga Paralela
• Saída Paralela
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)
![Page 32: Capítulo 7 Circuitos sequenciais: latches, flip- flops ...cortes/mc602/slides/obsoleto/cap07_v4.… · 1 IC-UNICAMP MC602 –Mario Côrtes –IC / Unicamp Capítulo 7 Circuitos sequenciais:](https://reader034.vdocumento.com/reader034/viewer/2022052519/6050ff7edf6e04680129b06f/html5/thumbnails/32.jpg)
32
IC-UNICAMP
MC602 – Mario Côrtes – IC / Unicamp
Registradores em um Barramento
R1in
Bus
Clock
Control circuit Function
R1 R2 Rk
Data
Extern
R1out
R2in
R2out
Rkin
Rkout
![Page 33: Capítulo 7 Circuitos sequenciais: latches, flip- flops ...cortes/mc602/slides/obsoleto/cap07_v4.… · 1 IC-UNICAMP MC602 –Mario Côrtes –IC / Unicamp Capítulo 7 Circuitos sequenciais:](https://reader034.vdocumento.com/reader034/viewer/2022052519/6050ff7edf6e04680129b06f/html5/thumbnails/33.jpg)
33
IC-UNICAMP
MC602 – Mario Côrtes – IC / Unicamp
Registradores em um Barramento (3ST)
• Dois registradores (R1 e R2) de 2 bits cada ligados a um barramento
• Operação R2�R1: ativar sinais R2out e R1in• Transferência completada na borda de subida do clk
D Q
Q
Clock
D Q
Q
R 1 i n
R 1 o u t
D Q
Q
D Q
Q
R 2 i n
R 2 o u t
Bus
R 1 R 2 FF-D com LD
![Page 34: Capítulo 7 Circuitos sequenciais: latches, flip- flops ...cortes/mc602/slides/obsoleto/cap07_v4.… · 1 IC-UNICAMP MC602 –Mario Côrtes –IC / Unicamp Capítulo 7 Circuitos sequenciais:](https://reader034.vdocumento.com/reader034/viewer/2022052519/6050ff7edf6e04680129b06f/html5/thumbnails/34.jpg)
34
IC-UNICAMP
MC602 – Mario Côrtes – IC / Unicamp
Barramento com MUX
• “Escrita” no barramento (inclusive entrada externa Data) � saído do MUX
• Função semelhante à implementação 3ST
Data
R 1 in
Multiplexers
R 2 in Rkin
Bus
Clock
S j 1 –
S 0
R 1 R 2 Rk
![Page 35: Capítulo 7 Circuitos sequenciais: latches, flip- flops ...cortes/mc602/slides/obsoleto/cap07_v4.… · 1 IC-UNICAMP MC602 –Mario Côrtes –IC / Unicamp Capítulo 7 Circuitos sequenciais:](https://reader034.vdocumento.com/reader034/viewer/2022052519/6050ff7edf6e04680129b06f/html5/thumbnails/35.jpg)
35
IC-UNICAMP
MC602 – Mario Côrtes – IC / Unicamp
Tópicos de Contadores
• Contadores síncronos e assíncronos
• Contadores de módulo configurável
• Contadores em anel e Johnson
• Preset e Clear síncronos e assíncronos
![Page 36: Capítulo 7 Circuitos sequenciais: latches, flip- flops ...cortes/mc602/slides/obsoleto/cap07_v4.… · 1 IC-UNICAMP MC602 –Mario Côrtes –IC / Unicamp Capítulo 7 Circuitos sequenciais:](https://reader034.vdocumento.com/reader034/viewer/2022052519/6050ff7edf6e04680129b06f/html5/thumbnails/36.jpg)
36
IC-UNICAMP
MC602 – Mario Côrtes – IC / Unicamp
Contadores síncronos / assíncronos
• Contadores assíncronos– Entrada de clock dos FFs recebe saída de estágios anteriores
– Estado do contador: transições dos estágios não simultâneas (em ripple)
– Circuito mínimo mas requer cuidados com decodificação
• Contadores síncronos– Entrada de clock dos FF recebe apenas sinal externo de clock
– Estado do contador: transições sincronizadas (razoavelmente simultâneas)
![Page 37: Capítulo 7 Circuitos sequenciais: latches, flip- flops ...cortes/mc602/slides/obsoleto/cap07_v4.… · 1 IC-UNICAMP MC602 –Mario Côrtes –IC / Unicamp Capítulo 7 Circuitos sequenciais:](https://reader034.vdocumento.com/reader034/viewer/2022052519/6050ff7edf6e04680129b06f/html5/thumbnails/37.jpg)
37
IC-UNICAMP
MC602 – Mario Côrtes – IC / Unicamp
Clock
Q 0
Q 1
Q 2
Count 0 7 6 5 4 3 2 1 0
T Q
Q Clock
T Q
Q
T Q
Q
1
Q 0 Q 1 Q 2
Contador assíncrono: 3 bits DOWN
![Page 38: Capítulo 7 Circuitos sequenciais: latches, flip- flops ...cortes/mc602/slides/obsoleto/cap07_v4.… · 1 IC-UNICAMP MC602 –Mario Côrtes –IC / Unicamp Capítulo 7 Circuitos sequenciais:](https://reader034.vdocumento.com/reader034/viewer/2022052519/6050ff7edf6e04680129b06f/html5/thumbnails/38.jpg)
38
IC-UNICAMP
MC602 – Mario Côrtes – IC / Unicamp
T Q
Q Clock
T Q
Q
T Q
Q
1
Q 0 Q 1 Q 2
Clock
Q 0
Q 1
Q 2
Count 0 1 2 3 4 5 6 7 0
Contador assíncrono: 3 bits UPAlternativas para UP/DOWN:• FF sens. borda de descida• saída = ~Q
Como fazer um contador Up/Down?
![Page 39: Capítulo 7 Circuitos sequenciais: latches, flip- flops ...cortes/mc602/slides/obsoleto/cap07_v4.… · 1 IC-UNICAMP MC602 –Mario Côrtes –IC / Unicamp Capítulo 7 Circuitos sequenciais:](https://reader034.vdocumento.com/reader034/viewer/2022052519/6050ff7edf6e04680129b06f/html5/thumbnails/39.jpg)
39
IC-UNICAMP
MC602 – Mario Côrtes – IC / Unicamp
Problemas com contadores assíncronos
• Saídas dos FFs (estado do contador) com atrasos cumulativos LSB � MSB– ver simulação em modo gráfico (vwf) e tabular (tbl)
• Se o estado do contador está sendo decodificado para detectar valor de contagem que dispara alguma ação (ex: reset) �problema
• Ver análise de timing
• Voltar ao assunto: contador módulo N
![Page 40: Capítulo 7 Circuitos sequenciais: latches, flip- flops ...cortes/mc602/slides/obsoleto/cap07_v4.… · 1 IC-UNICAMP MC602 –Mario Côrtes –IC / Unicamp Capítulo 7 Circuitos sequenciais:](https://reader034.vdocumento.com/reader034/viewer/2022052519/6050ff7edf6e04680129b06f/html5/thumbnails/40.jpg)
40
IC-UNICAMP
MC602 – Mario Côrtes – IC / Unicamp
0 0 1
1
0 1 0 1
0 1 2 3
0
0 1
0 1 0
4 5 6
1 1 7
0 0 0 0 1
1 1 1
Clock cycle
0 0 8 0
Q 2 Q1 Q0 Q 1 changes
Q 2 changes
Projeto de contador síncrono: 3 bits
![Page 41: Capítulo 7 Circuitos sequenciais: latches, flip- flops ...cortes/mc602/slides/obsoleto/cap07_v4.… · 1 IC-UNICAMP MC602 –Mario Côrtes –IC / Unicamp Capítulo 7 Circuitos sequenciais:](https://reader034.vdocumento.com/reader034/viewer/2022052519/6050ff7edf6e04680129b06f/html5/thumbnails/41.jpg)
41
IC-UNICAMP
MC602 – Mario Côrtes – IC / Unicamp
Clock
Q 0
Q 1
Q 2
Count 0 1 2 3 5 9 12 14 0
Q 3
4 6 8 7 10 11 13 15 1
T Q
Q Clock
T Q
Q
T Q
Q
1 Q 0 Q 1 Q 2
T Q
Q
Q 3
Contador (up) síncrono: 4 bits
![Page 42: Capítulo 7 Circuitos sequenciais: latches, flip- flops ...cortes/mc602/slides/obsoleto/cap07_v4.… · 1 IC-UNICAMP MC602 –Mario Côrtes –IC / Unicamp Capítulo 7 Circuitos sequenciais:](https://reader034.vdocumento.com/reader034/viewer/2022052519/6050ff7edf6e04680129b06f/html5/thumbnails/42.jpg)
42
IC-UNICAMP
MC602 – Mario Côrtes – IC / Unicamp
T Q
Q Clock
T Q
Q
Enable
Clear
T Q
Q
T Q
Q
Inclusão de Enable e Clear
Obs: o clear é assíncrono
![Page 43: Capítulo 7 Circuitos sequenciais: latches, flip- flops ...cortes/mc602/slides/obsoleto/cap07_v4.… · 1 IC-UNICAMP MC602 –Mario Côrtes –IC / Unicamp Capítulo 7 Circuitos sequenciais:](https://reader034.vdocumento.com/reader034/viewer/2022052519/6050ff7edf6e04680129b06f/html5/thumbnails/43.jpg)
43
IC-UNICAMP
MC602 – Mario Côrtes – IC / Unicamp
FF-T implementado a partir de FF-D
T Q
Q Clock
T QD Q
Q
Q
Clock
T
![Page 44: Capítulo 7 Circuitos sequenciais: latches, flip- flops ...cortes/mc602/slides/obsoleto/cap07_v4.… · 1 IC-UNICAMP MC602 –Mario Côrtes –IC / Unicamp Capítulo 7 Circuitos sequenciais:](https://reader034.vdocumento.com/reader034/viewer/2022052519/6050ff7edf6e04680129b06f/html5/thumbnails/44.jpg)
44
IC-UNICAMP
MC602 – Mario Côrtes – IC / Unicamp
Contador síncrono com FF D
Clock
Enable D Q
Q
D Q
Q
D Q
Q
D Q
Q
Q0
Q1
Q2
Q3
Outputcarry
000 1 QQD ⊕==
011 QQD ⊕=
0122 QQQD ⊕=
01233 QQQQD ⊕=
Enable
Clock
Ouput
Carry
Q3 Q2 Q1 Q0
FF-T
![Page 45: Capítulo 7 Circuitos sequenciais: latches, flip- flops ...cortes/mc602/slides/obsoleto/cap07_v4.… · 1 IC-UNICAMP MC602 –Mario Côrtes –IC / Unicamp Capítulo 7 Circuitos sequenciais:](https://reader034.vdocumento.com/reader034/viewer/2022052519/6050ff7edf6e04680129b06f/html5/thumbnails/45.jpg)
45
IC-UNICAMP
MC602 – Mario Côrtes – IC / Unicamp
Contadores em cascata
12 13 14 15 16 17 18 19
Clock
Contagem
Output Carry
Q3
Q4
Clock
Q7 Q6 Q5 Q4
Enable
Clock
Ouput
Carry
Q3 Q2 Q1 Q0
Enable
Clock
Ouput
Carry
Q3 Q2 Q1 Q0
Q3 Q2 Q1 Q0
En
![Page 46: Capítulo 7 Circuitos sequenciais: latches, flip- flops ...cortes/mc602/slides/obsoleto/cap07_v4.… · 1 IC-UNICAMP MC602 –Mario Côrtes –IC / Unicamp Capítulo 7 Circuitos sequenciais:](https://reader034.vdocumento.com/reader034/viewer/2022052519/6050ff7edf6e04680129b06f/html5/thumbnails/46.jpg)
46
IC-UNICAMP
MC602 – Mario Côrtes – IC / Unicamp
Inclusão
de Load Enable D Q
Q
Q 0
D Q
Q
Q 1
D Q
Q
Q 2
D Q
Q
Q 3
D 0
D 1
D 2
D 3
Load
Clock
Outputcarry
0 1
0 1
0 1
0 1
![Page 47: Capítulo 7 Circuitos sequenciais: latches, flip- flops ...cortes/mc602/slides/obsoleto/cap07_v4.… · 1 IC-UNICAMP MC602 –Mario Côrtes –IC / Unicamp Capítulo 7 Circuitos sequenciais:](https://reader034.vdocumento.com/reader034/viewer/2022052519/6050ff7edf6e04680129b06f/html5/thumbnails/47.jpg)
47
IC-UNICAMP
MC602 – Mario Côrtes – 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
• ATENÇÃO: projeto muda se os controles clear/preset/load são síncronos ou assíncronos
![Page 48: Capítulo 7 Circuitos sequenciais: latches, flip- flops ...cortes/mc602/slides/obsoleto/cap07_v4.… · 1 IC-UNICAMP MC602 –Mario Côrtes –IC / Unicamp Capítulo 7 Circuitos sequenciais:](https://reader034.vdocumento.com/reader034/viewer/2022052519/6050ff7edf6e04680129b06f/html5/thumbnails/48.jpg)
48
IC-UNICAMP
MC602 – Mario Côrtes – IC / Unicamp
Enable
Q 0 Q 1 Q 2
D 0 D 1 D 2 Load
Clock
1
0
0
0
Clock
Contador mod-6 com Load síncrono
Obs: o load síncrono de 000 faz o que seria um reset síncrono
0 1 2 3 4 5 0 1
Clock
Count
Q 0
Q 1
Q 2
Load
![Page 49: Capítulo 7 Circuitos sequenciais: latches, flip- flops ...cortes/mc602/slides/obsoleto/cap07_v4.… · 1 IC-UNICAMP MC602 –Mario Côrtes –IC / Unicamp Capítulo 7 Circuitos sequenciais:](https://reader034.vdocumento.com/reader034/viewer/2022052519/6050ff7edf6e04680129b06f/html5/thumbnails/49.jpg)
49
IC-UNICAMP
MC602 – Mario Côrtes – IC / Unicamp
Clock
Q 0
Q 1
Q 2
Count 0 1 2 3 4 5 0 1 2
T Q
Q Clock
T Q
Q
T Q
Q
1 Q 0 Q 1 Q 2
Contador mod-5 com Reset assíncrono
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)
![Page 50: Capítulo 7 Circuitos sequenciais: latches, flip- flops ...cortes/mc602/slides/obsoleto/cap07_v4.… · 1 IC-UNICAMP MC602 –Mario Côrtes –IC / Unicamp Capítulo 7 Circuitos sequenciais:](https://reader034.vdocumento.com/reader034/viewer/2022052519/6050ff7edf6e04680129b06f/html5/thumbnails/50.jpg)
50
IC-UNICAMP
MC602 – Mario Côrtes – IC / Unicamp
Problemas com contadores assíncronos
• Como as saídas dos flip-flops são desalinhadas no tempo, vários estados intermediários podem ocorrer– ver simulação em modo gráfico (vwf) e tabular (tbl)
• A decodificação do estado desejado para fins de acionar clear/preset/load assíncronos pode acontecer de forma espúria durante estados transientes.
• Uso de clear/preset/load síncronos resolvem o problema
![Page 51: Capítulo 7 Circuitos sequenciais: latches, flip- flops ...cortes/mc602/slides/obsoleto/cap07_v4.… · 1 IC-UNICAMP MC602 –Mario Côrtes –IC / Unicamp Capítulo 7 Circuitos sequenciais:](https://reader034.vdocumento.com/reader034/viewer/2022052519/6050ff7edf6e04680129b06f/html5/thumbnails/51.jpg)
51
IC-UNICAMP
MC602 – Mario Côrtes – IC / Unicamp
EnableQ0Q1Q2
D0D1D2
LoadClock
1000
Clock
Q30 D3
EnableQ0Q1Q2
D0D1D2
LoadClock
000
Q30 D3
BCD0
BCD1
Clear
Contador BCD de 2 dígitos
Se for usado Enablecontrolável, énecessário propagar (via AND) para estágios superiores.
Ver o que acontece se Enable desativado exatamente na contagem X910
![Page 52: Capítulo 7 Circuitos sequenciais: latches, flip- flops ...cortes/mc602/slides/obsoleto/cap07_v4.… · 1 IC-UNICAMP MC602 –Mario Côrtes –IC / Unicamp Capítulo 7 Circuitos sequenciais:](https://reader034.vdocumento.com/reader034/viewer/2022052519/6050ff7edf6e04680129b06f/html5/thumbnails/52.jpg)
52
IC-UNICAMP
MC602 – Mario Côrtes – IC / Unicamp
Contador em anel
D Q
Q
Clock
D Q
Q
D Q
Q
Start
Q 0 Q 1 Q n 1 ”
Contagem p 4 bits: 1000 0100 0010 0001 1000 0100 0010 0001 ....
Módulo?
![Page 53: Capítulo 7 Circuitos sequenciais: latches, flip- flops ...cortes/mc602/slides/obsoleto/cap07_v4.… · 1 IC-UNICAMP MC602 –Mario Côrtes –IC / Unicamp Capítulo 7 Circuitos sequenciais:](https://reader034.vdocumento.com/reader034/viewer/2022052519/6050ff7edf6e04680129b06f/html5/thumbnails/53.jpg)
53
IC-UNICAMP
MC602 – Mario Côrtes – IC / Unicamp
Contador Johnson
D Q
Q
Clock
D Q
Q
D Q
Q
Q 0 Q 1 Q n 1 –
Reset
Para um contador de 4 estágios:• Qual é a sequência de contagem • Qual é o módulo do contador?