5/17/2018 Registradores e Contadores - slidepdf.com
http://slidepdf.com/reader/full/registradores-e-contadores 1/34
1
RegistradoresRegistradores
Circuitos LógicosCircuitos LógicosDCC-IM/UFRJ
Prof. Gabriel P. Silva
5/17/2018 Registradores e Contadores - slidepdf.com
http://slidepdf.com/reader/full/registradores-e-contadores 2/34
2
Registradores
• Conjunto de elementos de memória (flip-flopsou latches) utilizados para armazenar n bits.
• Utilizam um único sinal de clock ou um único
sinal de habilitação.
• São elementos de memória básicos utilizadosquando se deseja armazenar pequenasquantidades de informação, normalmente emcircuitos de interface ou controle de máquinasde estado.
5/17/2018 Registradores e Contadores - slidepdf.com
http://slidepdf.com/reader/full/registradores-e-contadores 3/34
3
Registradores
Registrador decarga paralela
EN
CK
Carga do registrador
Q
EN
D
D
Ck
Q
_ Q
(74LS377)
5/17/2018 Registradores e Contadores - slidepdf.com
http://slidepdf.com/reader/full/registradores-e-contadores 4/34
4
Registrador
LIBRARY ieee;
USE ieee.std_logic_1164.ALL;
ENTITY Reg ISPORT(Data_in : IN STD_LOGIC_VECTOR;
Data_out: OUT STD_LOGIC_VECTOR;Wr : IN STD_LOGIC ;
Reset : IN STD_LOGIC ;Clk : IN STD_LOGIC);
END Reg;
ARCHITECTURE behavioral OF Reg ISBEGINPROCESS(Wr,Reset,Clk)CONSTANT Reg_delay: TIME := 2 ns;VARIABLE BVZero:
STD_LOGIC_VECTOR(Data_in'RANGE):= (OTHERS => '0');
5/17/2018 Registradores e Contadores - slidepdf.com
http://slidepdf.com/reader/full/registradores-e-contadores 5/34
5
Registrador
BEGINIF (Reset = '1') THEN
Data_out <= BVZero AFTER Reg_delay;END IF;
IF (Clk'EVENT AND Clk = '1' AND Wr = '1') THEN
Data_out <= Data_in AFTER Reg_delay;END IF;
END PROCESS;END behavioral;
5/17/2018 Registradores e Contadores - slidepdf.com
http://slidepdf.com/reader/full/registradores-e-contadores 6/34
6
Deslocador
• O deslocador serve para mover umconjunto de bits de uma ou mais posiçõespara a esquerda ou direita.
• Dependendo do tipo de deslocamento,
podem ser inseridos '0's para as posiçõesque ficam vagas à medida que os bitscorrespondentes vão sendo deslocados.
• Para os números cuja representação
coloca o bit de sinal no bit mais àesquerda, normalmente esse bit éreplicado quando os bits são deslocadospara a direita.
5/17/2018 Registradores e Contadores - slidepdf.com
http://slidepdf.com/reader/full/registradores-e-contadores 7/34
7
Deslocador
• Deslocamento para a direita de 2 bits:
00001111 --> 00000011
• Deslocamento para esquerda de 3 bits
00001111 --> 01111000
• Deslocamento para a direita de 2 bits devalor negativo em complemento a dois:
10001111 --> 11100011
5/17/2018 Registradores e Contadores - slidepdf.com
http://slidepdf.com/reader/full/registradores-e-contadores 8/34
8
Deslocador
• Note que para cada bit deslocado para adireita, corresponde a uma divisão inteirapor 2:
00011100 --> 00000111
28 --> 7
•
E para cada bit deslocado para aesquerda, corresponde a umamultiplicação por 2:
00001111 --> 01111000
15 --> 120
5/17/2018 Registradores e Contadores - slidepdf.com
http://slidepdf.com/reader/full/registradores-e-contadores 9/34
9
Deslocador
5/17/2018 Registradores e Contadores - slidepdf.com
http://slidepdf.com/reader/full/registradores-e-contadores 10/34
10
Registrador de Deslocamento
D Q D Q D Q D QSDI SDO
CK
• Composto por uma série de Latches ou Flip-Flops onde a
saída Q de um está acoplada a entrada D do seguinte.
• Aplicações:
• As UALs dos processadores têm registradores dedeslocamento (esquerda, direita e em anel).
• Conversão série para paralelo e vice-versa.
• No exemplo acima os últimos 4 valores da seqüência são
armazenados do registrador de deslocamento.
5/17/2018 Registradores e Contadores - slidepdf.com
http://slidepdf.com/reader/full/registradores-e-contadores 11/34
11
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
Q1 Q2 Q3 Q4 Saída=Entrada
Apresenta o seguinte comportamento:
Clock
5/17/2018 Registradores e Contadores - slidepdf.com
http://slidepdf.com/reader/full/registradores-e-contadores 12/3412
Registrador de Deslocamento
D Q
QClock
D Q
Q
D Q
Q
D Q
Q
Entrada SaídaQ1 Q2 Q3 Q4
5/17/2018 Registradores e Contadores - slidepdf.com
http://slidepdf.com/reader/full/registradores-e-contadores 13/3413
Registrador de Deslocamento comCarga Paralela
3 Q2 Q1 Q0
RelógioEntrada Paralela
Saída Paralela
Carrega/
Desloca
Entrada
Serial
D Q
Q
D Q
Q
D Q
Q
D Q
Q
Q33
D3
D2 D1 D0
5/17/2018 Registradores e Contadores - slidepdf.com
http://slidepdf.com/reader/full/registradores-e-contadores 14/3414
clear estabelece o conteúdo do registradore da saída em 0
s1 e s0 determinam o tipo de deslocamento
s0 s1 função0 0 mantém estado0 1 deslocamento à direita1 0 deslocamento à esquerda1 1 carregue nova entrada
left_inleft_out
right_out
clear
right_in
output
input
s0s1
clock
Registrador de DeslocamentoUniversal
Armazena 4 valoreso Entradas seriais ou paralelas
o Saídas seriais ou paralelas
o Permite o deslocamento à esquerda ou à direita
o Desloca novos valores à esquerda ou à direita
5/17/2018 Registradores e Contadores - slidepdf.com
http://slidepdf.com/reader/full/registradores-e-contadores 15/3415
Nth célula
s0 e s1control mux
0 1 2 3
D
Q
CLK
CLEAR
Q[N-1](left)
Q[N+1](right)Input[N]
p/ N-1thcélula para N+1thcélula
clear s0 s1 new value
1 – – 00 0 0 output0 0 1 output value of FF to left (shift right)0 1 0 output value of FF to right (shift left)0 1 1 input
Registrador de DeslocamentoUniversal
Considere um dos quatro flip-flopso Próximo valor no próximo ciclo de clock:
5/17/2018 Registradores e Contadores - slidepdf.com
http://slidepdf.com/reader/full/registradores-e-contadores 16/3416
entradas paralelas
saídas paralelas
Transmissão serial
Aplicação de Registradores deDeslocamento
Conversão paralelo-serial para transmissãoserial
5/17/2018 Registradores e Contadores - slidepdf.com
http://slidepdf.com/reader/full/registradores-e-contadores 17/3417
D Q D Q D Q D QIN
OUT1 OUT2 OUT3 OUT4
CLK
OUT
Reconhecedor de Padrões
Função combinacional de amostras daentradao ex: reconhecendo o padrão 1001 em um único sinal de
entrada
5/17/2018 Registradores e Contadores - slidepdf.com
http://slidepdf.com/reader/full/registradores-e-contadores 18/3418
Contadores
Podem ser: Assíncronos
•
São mais lentos pois a saída de um flip-flop dispara uma mudança no flip-flopseguinte
Síncronos
• O estado de todos os flip-flops sãoalterados simultaneamente
5/17/2018 Registradores e Contadores - slidepdf.com
http://slidepdf.com/reader/full/registradores-e-contadores 19/3419
D Q D Q D Q D QIN
OUT1 OUT2 OUT3 OUT4
CLK
Contadores
Seqüências através de um conjunto fixo depadrõeso Neste caso: 1000, 0100, 0010, 0001
o Um dos padrões é o estado inicial (usar load ou
set/reset)
5/17/2018 Registradores e Contadores - slidepdf.com
http://slidepdf.com/reader/full/registradores-e-contadores 20/3420
D Q D Q D Q D QIN
OUT1 OUT2 OUT3 OUT4
CLK
Contadores
Contador Mobius (ou Johnson)o Neste há apenas a mudança de um bit entre dois
estados adjacentes:
1000, 1100, 1110, 1111, 0111, 0011, 0001, 0000
5/17/2018 Registradores e Contadores - slidepdf.com
http://slidepdf.com/reader/full/registradores-e-contadores 21/3421
Contadores
t 0
t 1
t 2
t 3
t 4
t
5t 6
t 7
0
0
0
0
1
1
1
1
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
Q2
Q1
Q0clk
Contador Binário Crescente
5/17/2018 Registradores e Contadores - slidepdf.com
http://slidepdf.com/reader/full/registradores-e-contadores 22/3422
Contador Binário – FF tipo T
Clock
Q0
Q1
Q2
Count 0 1 2 3 4 5 6 7 0
5/17/2018 Registradores e Contadores - slidepdf.com
http://slidepdf.com/reader/full/registradores-e-contadores 23/3423
Contador Binário Assíncrono –FF tipo T
T Q
QClock
T Q
Q
T Q
Q
1
Q0
Q1
Q2
Contador Binário Assíncrono(crescente)
5/17/2018 Registradores e Contadores - slidepdf.com
http://slidepdf.com/reader/full/registradores-e-contadores 24/3424
Contador Binário Assícrono – FF tipo T(decrescente)
Clock
Q0
Q1
Q2
Count 0 7 6 5 4 3 2 1 0
5/17/2018 Registradores e Contadores - slidepdf.com
http://slidepdf.com/reader/full/registradores-e-contadores 25/3425
Contador Binário AssíncronoFF tipo T
T Q
QClock
T Q
Q
T Q
Q
1
Q0 Q1 Q2
Contador Binário Assíncrono(decrescente)
5/17/2018 Registradores e Contadores - slidepdf.com
http://slidepdf.com/reader/full/registradores-e-contadores 26/3426
T Q
QClock
T Q
Q
T Q
Q
1
Q0
Q1
Q2
T Q
Q
Q3
Contador Binário SíncronoFF tipo T
Contador Binário Síncrono(crescente)
5/17/2018 Registradores e Contadores - slidepdf.com
http://slidepdf.com/reader/full/registradores-e-contadores 27/3427
Contadores
t 0
t 1
t 2
t 3
t 4
t
5t 6
t 7
0
0
0
0
1
1
1
1
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
Q2
Q1
Q0clk
Contador Binário Crescente
5/17/2018 Registradores e Contadores - slidepdf.com
http://slidepdf.com/reader/full/registradores-e-contadores 28/3428
Contador Binário Síncrono - FF tipo Tcom enable e clear
T Q
QClock
T Q
Q
Enable
Clear
T Q
Q
T Q
Q
5/17/2018 Registradores e Contadores - slidepdf.com
http://slidepdf.com/reader/full/registradores-e-contadores 29/34
29
D Q D Q D Q D Q
OUT1 OUT2 OUT3 OUT4
CLK
"1"
Contador Binário - FF Tipo D
Contador Binário Síncrono
(crescente)
5/17/2018 Registradores e Contadores - slidepdf.com
http://slidepdf.com/reader/full/registradores-e-contadores 30/34
30
Contador Binário com FF Tipo D
Lógica entre os registradores (não somenteum multiplexer)o XOR decide quando um determinado bit deve ser
“toggled”
o Sempre para o bit de mais baixa ordem; somentequando o primeiro bit é verdade para o segundo bit, eassim por diante
5/17/2018 Registradores e Contadores - slidepdf.com
http://slidepdf.com/reader/full/registradores-e-contadores 31/34
31
Contador 4 Bits em VHDL
library ieee;
use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;
ENTITY contador ISPORT(CLK, CLR : IN std_logic;
Q : OUT std_logic_vector(3 downto 0));END contador;
5/17/2018 Registradores e Contadores - slidepdf.com
http://slidepdf.com/reader/full/registradores-e-contadores 32/34
32
Contador 4 Bits em VHDL
ARCHITECTURE arquitetura OF contador IS
SIGNAL tmp: std_logic_vector(3 downto 0);BEGIN
PROCESS (CLK, CLR)BEGIN
IF (CLR = '1') THENtmp = "0000";
ESLIF (CLK'event AND CLK = '1') THENtmp = tmp + 1;
END IF;
END PROCESS;
Q = tmp;
end arquitetura;
5/17/2018 Registradores e Contadores - slidepdf.com
http://slidepdf.com/reader/full/registradores-e-contadores 33/34
33
EN
DCBA
LOAD
CLK
CLR
RCO
QDQCQBQA
Contador Binário Crescente Síncronode 4-bits
Componente padrão em muitas aplicaçõeso FF ativado na transição positiva com entradas de load e
clearo Dado carregado das entradas paralelas D, C, B, Ao Entradas de Enable: precisam estar em 1 para contagemo RCO: saída de ripple-carry utilizada para cascateamento
- ‘1’ quando o contador está em seu estado mais alto(1111)
- implementado usando uma porta AND
Contado Biná io C escente Sínc ono
5/17/2018 Registradores e Contadores - slidepdf.com
http://slidepdf.com/reader/full/registradores-e-contadores 34/34
(1) 4-bits baixos = 1111
(2) RCO vai para 1
(3) 4-bits mais altos
são incrementados
Contador Binário Crescente Síncronode 4-bits
Top Related