Sei sulla pagina 1di 54

Circuitos Digitais

Registradores
O conteúdo desses slides é baseado nos capítulos 5 e 7 do Tocci
5.16, 5.17 e Parte II 7.15 e 7.16

Prof. Gortan
(Slide elaborados pelo prof.
Guilherme Peron)
Introdução

• O que um flip-flop armazena?

Registradores 2
Registradores

• Flip-flops são comumente utilizados para


armazenamento e transferência de dados
binários ou de informações
• Grupos de flip-flops para armazenamento
são denominados registradores ou
registros

Registradores 3
Registradores
• A entrada e a saída de dados podem ser
em série ou em paralelo
• Alguns dispositivos comerciais podem ter
os dois tipos de entrada/saída.

Registradores 4
Registradores
Tocci 7.15

• 4 Tipos de Registradores
o Registrador de Entrada Série e Saída Série (ex. 166)
o Registrador de Entr. Paralela e Saída Paralela (ex. 174)
o Conversor Série-Paralelo (ex. 164)
o Conversor Paralelo-Série (ex. 165)

Registradores 5
Registradores
• Dados de entrada são deslocados da esquerda
para a direita (ou da direita para esquerda), de
um FF para outro, à medida em que pulsos de
deslocamento são aplicadas.
• Neste arranjo de registrador de deslocamento, é
necessário ter FFs com requisitos de espera
(tempo de hold) muito pequenos.
• Há momentos em que as entradas J, K mudam
de estado simultaneamente à transição CLK.

Registradores 6
Registradores Série/Série
• Entrada de dados em série e saída de
dados em série
• Registradores de Deslocamento (Shift-
Registers)
• Deslocamento pode ser para a esquerda
ou para a direita
• Alguns dispositivos comerciais podem
fazer deslocamentos nos dois sentidos

Registradores 7
Registradores Série/Série
• Registrador de deslocamento para a direita
Entrada Saída de
de dados dados

(Tocci – ver exercício 7.18 – pag. 379)


DATA OUT
PRE

DATA IN

CLK

74xxx174
CLR

Registradores 8
Registradores Série/Série
• Registrador de deslocamento para a direita
o Supondo que PRE=1 e CLR=0, todos os FF vão para 0.

DATA OUT
PRE

DATA IN 0 0 0 0

CLK

CLR
0
74xxx174

Registradores 9
Registradores Série/Série
• Registrador de deslocamento para a direita
o Consideramos então, PRE=1 e CLR=1, e DATAIN = 1. No
próximo clock, borda de descida FF0 armazenará “1” da entrada
DATAIN, o FF1 armazenará o “0” na sua entrada que vem da
saída do FF0 e assim sucessivamente.
DATA OUT
PRE

DATA IN 1 0 0 0 0

CLK

74xxx174
CLR

Registradores 10
Registradores Série/Série
• Registrador de deslocamento para a direita
o Depois do primeiro clock, DATAIN vai a “0” novamente. No
próximo clock, “0” será armazenado no FF0, o “1” na saída do
FF0 (e entrada do FF1) será armazenado no FF1, o “0” na saída
do FF1 será armazenado no FF2 e assim por diante.
DATA OUT
PRE

DATA IN 0 1 0 0 0

CLK

74xxx174
CLR

Registradores 11
Registradores Série/Série
• Registrador de deslocamento para a direita
o Depois do clock, DATAIN continua em “0”. No próximo clock, o
“1” na saída do FF0 (e entrada FF1) será armazenado no FF1,
os “0”’s também se deslocam.

DATA OUT
PRE

DATA IN 0 0 1 0 0

CLK

74xxx174
CLR

Registradores 12
Registradores Série/Série
• Registrador de deslocamento para a direita
o Depois do clock, DATAIN continua em “0”. No próximo clock, o
“1” na saída do FF1 (e entrada FF2) será armazenado no FF2,
os “0”’s também se deslocam.

DATA OUT
PRE

DATA IN 0 0 0 1 0

CLK

74xxx174
CLR

Registradores 13
Registradores Série/Série
• Registrador de deslocamento para a direita
o Depois do clock, DATAIN continua em “0”. No próximo clock, o
“1” na saída do FF2 (e entrada FF3) será armazenado no FF3,
os “0”’s também se deslocam.
DATA OUT
PRE

DATA IN 0 0 0 0 1

CLK

CLR

74xxx174
o Depois do clock, DATAIN continua em “0”. No próximo clock,
todos os FFs voltam a armazenar “0”.
Registradores 14
Registradores Série/Série
• Exemplo

Tocci – 5.17 – fig. 5.43

Registradores 15
Registrador Série/Série
• Exemplo

Registradores 16
Registrador Série/Série
• Exercício
Clk

X3

X2

X1

X0

Registradores 17
Registrador Série/Série
• Resposta
Clk

X3

X2

X1

X0

Registradores 18
Registradores Série/Série
• Exercício: Complete o desenho para que se
torne um registrador de deslocamento para a
esquerda

PRE

CLK

74xxx174
CLR

Registradores 19
Registradores
Paralelo/Paralelo
• Entrada de dados em paralelo, saída de dados
em paralelo Saída de dados

Tocci 7.16
74xx174

Entrada de dados
PRE
Q0 D1 Q1 D2 Q2 D3 Q3

D0

CLK

74xxx174
CLR
Registradores 20
Registradores
Paralelo/Paralelo
• Supondo inicialmente CLR = 0 e PRE = 1, todos os FF
vão para 0.

PRE
Q0 D1 Q1 D2 D3
Q2
0 0 0 0
D0

CLK
Q3

CLR 0

74xxx174

Registradores 21
Registradores
Paralelo/Paralelo
• Fazendo D0=D2=1 e D1=D3=0 e aplicando uma borda
de descida no clock teremos Q0=Q2=1 e Q1=Q3=0.

PRE
Q0 D1 Q1 D2 D3 Q3
Q2
1 0 1 0
D0
1 0 1 0

CLK

CLR

74xxx174

Registradores 22
Registradores
Paralelo/Paralelo
• Circuito Alternativo

PRE
E3 E2 E1 E0

Q3 Q2 Q1 Q0

DATA IN

74xxx174
CLR
Registradores 23
Conversor Série/Paralelo
Saída de
dados
Entrada
de dados

Q0 Q1 Q2 Q3

OE
PRE

DATA IN

CLK

74xxx174
CLR
Registradores 24
Conversor Série/Paralelo
• Semelhante ao Série/Série, mas com o
OE (Output Enable).
• Quando o OE = 1, a saída fica disponível
Q0 Q1 Q2 Q3

OE
PRE

DATA IN

CLK

74xxx174
CLR
Registradores 25
Conversor Paralelo-Serial
Saída de
dados

Entrada de dados
PRE
E3 E2 E1 E0

Q3 Q2 Q1 Q0

DATA IN

CLK

74xxx174
CLR
Registradores 26
Conversor Paralelo-Serial
• As entradas devem acontecer assincronamente
nos flip-flops

Entrada de dados
EN
E3 E2 E1 E0

Q3 Q2 Q1 Q0

DATA IN

CLK

74xxx174
CLR
Registradores 27
Conversor Paralelo-Serial
• Inicialmente a linha de CLR deve ser colocada para 0
para limpar a saída de todos os flip-flops.

EN
E3 E2 E1 E0

Q3 Q2 Q1 Q0

0 0 0 0
DATA IN

CLK

74xxx174
CLR 0
Registradores 28
Conversor Paralelo-Serial
• Após isso, a entrada CLR deve voltar ao estado de
repouso (CLR=1) e depois os dados devem ser
colocados em cada uma das entradas.

EN
E3 E2 E1 E0
1 0 0 1

Q3 Q2 Q1 Q0

0 0 0 0

CLK

74xxx174
CLR
Registradores 29
Conversor Paralelo-Serial
• Habilitar então o pino de ENABLE atribuindo o valor “1”.
Neste tempo, como as entradas são assíncronas, cada
saída do respectivo FF já contém seu respectivo valor
de entrada.
1
EN
E3 E2 E1 E0
1 0 0 1

Q3 Q2 Q1 Q0

1 0 0 1

CLK

74xxx174
CLR
Registradores 30
Conversor Paralelo-Serial
• Desabilitar o pino de ENABLE atribuindo o valor “0”. Para iniciar a
transferência serial, deve-se iniciar ao processo de pulsação do
clock. O primeiro bit já se encontra na saída Q0. Na primeira borda
de descida a saída do FF1 irá para o FF0, a saída do FF2 irá para o
FF1 e assim por diante.

EN
E3 E2 E1 E0
1 0 0 1

Q3 Q2 Q1 Q0

1 0 0 1

CLK

74xxx174
CLR
Registradores 31
Conversor Paralelo-Serial
• Todos os bits se deslocaram para a direita, inclusive o “1” foi o
primeiro bit a ser transmitido. No próximo clock há um novo
deslocamento dos bits.

EN
E3 E2 E1 E0
1 0 0 1

Q3 Q2 Q1 Q0

0 1 0 0

CLK

CLR
Registradores 7474 32
Conversor Paralelo-Serial
• Resta apenas um pulso de clock para a conversão ser realizada,
uma vez que o último bit se encontra na entrada do flip-flop 0.

EN
E3 E2 E1 E0
1 0 0 1

Q3 Q2 Q1 Q0

0 0 1 0

CLK

74xxx174
CLR
Registradores 33
Conversor Paralelo-Serial
• O último bit chegou ao flip-flop que “transmite” a informação após 3
ciclos de clock, visto que já havia um bit na saída de Q0.

EN
E3 E2 E1 E0
1 0 0 1

Q3 Q2 Q1 Q0

0 0 0 1

CLK

74xxx174
CLR
Registradores 34
Transferência
• Transferência paralela x serial
o Flip-flops podem ser facilmente conectados de
maneira que a informação se desloque da direita para
a esquerda (Não há qualquer vantagem)
o Transferências paralelas requerem mais interconexões
entre o envio e o recebimento de registradores que a
serial
• Quanto maior o número de bits transferidos, mais crítico
o Combinação de tipos pode ser utilizada, aproveitando-
se da velocidade da transferência paralela e da
economia e simplicidade da transferência serial.

Registradores 35
Transferência

• Transferências de dados ocorrem quando


os dados são movidos entre registradores
ou flip-flops.
• Podem ser:
o Síncronas
• Borda de subida ou descida
o Assíncronas
• PRESET ou CLEAR

Registradores 36
Registradores
Comerciais
Tocci – 7.16

Registradores 37
Registradores Comerciais
• 74xxx174 – Paralelo/Paralelo ou Desloc.
o 6 Flip-Flops D

• CP – Clock
• MR – Master Reset
• D0 a D5 – Entradas
Tocci 7.16 – pag. 379
• Q0 a Q5 - Saídas

Registradores 38
Registradores Comerciais
• 74xxx174 – Paralelo/Paralelo ou Desloc.

Registradores 39
Registradores Comerciais
• 74xxx374
o 8 Flip-Flops D
o Clock sensível à borda de subida
o Saídas em tri-state
• As saídas ficam ativas quando a entrada
OE é “0”. Caso contrário, ficam em alta
impedância.

Registradores 40
Registradores Comerciais
• 74xxx373
o 8 latches transparentes
o Clock sensível a nível alto (LE)
• Em “1” o latch fica transparente
o Saídas em tri-state
• As saídas ficam ativas quando a entrada
OE é “0”. Caso contrário, ficam em alta
impedância.

Registradores 41
Registradores Comerciais
• 74xxx166 – Registrador Série ou Paralelo/Série
Tocci – 7.16 – pag. 380

DS: Serial data


PE: Parallel enable Input
MR: Master reset
CE: Clock Enable
CP: Clock Input

Registradores 42
Registradores Comerciais
• 74xxx166 – Registrador Série ou Paralelo/Série

DS: Serial data


PE: Parallel enable Input
MR: Master reset
CE: Clock Enable
CP: Clock Input

Modos de Entradas Registradores Qn Saída


Operação
PE CE CP DS D0 a D7 Q0 Q1 a Q6 Q7
Carregamento L L ↑ X L L LaL L
Paralelo
L L ↑ X H H HaH H
Deslocamento H L ↑ L L L Q0 a Q5 Q6
Serial
H L ↑ H H H Q0 a Q5 Q6
Hold X H X X X Q0 Q1 a Q6 Q7
Registradores 43
Registradores Comerciais
• 74xxx166 – Registrador Série ou Paralelo/Série
o Shift Register de 8 bits
o Clock para deslocamento para direita
o PE – Habilita deslocamento “1” e realiza
carga paralela em “0”
• Carga paralela síncrona

Registradores 44
Registradores Comerciais
Tocci – 7.16 – pag. 382

• 74xxx165 – Registrador Série ou Paralelo/Série


o Shift Register de 8 bits
o CP – Clock para deslocamento para direita
o CE – Clock enable
o PL – Paralell Load  Habilita deslocamento “1” e
realiza carga paralela em “0”
• Carga paralela assíncrona
o DS – Serial Data Input

Registradores 45
Registradores Comerciais
• Exercício
Tocci – exemplo 7.22 fig. 7.72

Registradores 46
Regist Comerciais
• Exercício (Dado Ds = 0)

Registradores 47
Regist Comerciais
• Exercício (Dado Ds = 0)

Registradores 48
Registradores Comerciais
• 74xxx164 – Registrador Série/Paralelo
Tocci – 7.16 – pag. 384

Registradores 49
Registradores Comerciais
• 74xxx164 – Registrador Série/Paralelo
o Shift Register de 8 bits
o CP – Clock para deslocamento para direita
o DSA e DSB – Entradas seriais
o MR: Reset ativo em “0”

Registradores 50
Registradores Comerciais
• 74xxx164 – Registrador Série/Paralelo
o Exercício
• Se DSA=DSB=1, determine a sequência de
estados se Q7 estiver ligado em MR através
de uma inversora.

Registradores 51
Registradores Comerciais
• 74xxx164 – Registrador Série/Paralelo
o Exercício
• Se DSA=DSB=1, determine a sequência de
estados se Q7 estiver ligado em MR através
de uma inversora.
Número de
pulsos de Q0 Q1 Q2 Q3 Q4 Q5 Q6 Q7
entrada

0 0 0 0 0 0 0 0 0
1 1 0 0 0 0 0 0 0
2 1 1 0 0 0 0 0 0
3 1 1 1 0 0 0 0 0
4 1 1 1 1 0 0 0 0
5 1 1 1 1 1 0 0 0
6 1 1 1 1 1 1 0 0
7 1 1 1 1 1 1 1 0
Estado temporário 8 1 1 1 1 1 1 1 1
52
Registradores
Registradores Comerciais
• 74xxx194 – Registrador Universal
o Shift Register de 4 bits
o S0 e S1 – Modos de operação
• 00: sem operação;
• 01: deslocamento para a direita
• 10: deslocamento para a esquerda
• 11: carga paralela
o CP: Clock para deslocamento para direita, esquerda
e carga paralela
o MR: Reset ativo em “0”
o DSL: Dados seriais para serem deslocados à esquerda
o DSR: Dados seriais para serem deslocados à direita

Registradores 53
Registradores Comerciais
• 74xxx194 – Registrador Universal

Registradores 54

Potrebbero piacerti anche