1715280870895+cap7 1s24
1715280870895+cap7 1s24
1715280870895+cap7 1s24
Ricardo Pannain
pannainr@gmail.com
1
Circuito Seqüenciais
Set
Sensor
Memory On Off
Alarm
element
Reset
2
Elemento de memória simples
Reset
Set Q
Load
A B
Data Output
TG1
TG2
3
Elemento de memória simples
Reset
Set Q
SET RESET Q
Load 0 0 Q
0 1 0
1 0 1
1 1 0
A B
Data Output
TG1
TG2
4
Latch construído com portas NOR
R
Qa
Qb
S
(a) Circuito
5
Latch construído com portas NOR
R S R Qa Qb
Qa
0 0 0/1 1/0 (sem alteração)
0 1 0 1
1 0 1 0
Qb 1 1 0 0
S
t1 t2 t3 t4 t5 t6 t7 t8 t9 t 10
1
R
0
1
S
0
1
Qa ?
0
1
Qb ?
0
Time
6
(c) Diagrama de Tempo
Latch SR com clock (gated)
R R
Q
Clk
Q
S S
(a) Circuito
7
Latch SR com clock (gated)
R R
Clk S R Q(t + 1)
Q
0 x x Q(t) (sem alteração)
Clk 1 0 0 Q(t) (sem alteração)
1 0 1 0
Q 1 1 0 1
S S 1 1 1 x
(a) Circuito
(b) Tabela Verdade
1
Clk
0
1
R S Q
0
Clk
1
S R Q
0
1
Q ? (d) Símbolo Gráfico
0
1
Q ?
0
Time
8
(c) Timing diagram
Latch SR Gated SR com portas NAND
S
Q
Clk
Q
R
9
Latch D Gated
S
D
(Data) Q
Clk
Q
R
(a) Circuito
10
Latch D Gated
S
D
(Data) Q
Clk
Q
R
CLK D Qt+1
(a) Circuito 0 x Qt
1 0 0
1 1 1
11
Latch D Gated
S
D
(Data) Clk D Q(t + 1)
Q
0 x Q(t )
1 0 0
Clk 1 1 1
D Q
(a) Circuito
Clk Q
t1 t2 t3 t4
(c) Símbolo Gráfico
Clk
Time
(d) Diagrama de Tempo
12
Flip-Flop D Master-slave
Master Slave
Qm Qs
D D Q D Q Q
(a) Circuito
Diagrama de tempo e o
comportamento?????
13
Flip-Flop D Master-slave
Master Slave
Qm Qs
D D Q D Q Q
D Q
Q
(a) Circuito
1 P3
P1
2
5 Q
Clock
P2 6 Q
3
4 P4
D
(a) Circuito
Funcionamento?????
15
Flip-Flop D sensível à borda de subida
1 P3
D Q
P1 Clock Q
2
5 Q
P2 6 Q
3
Clk = 0 P1 = P2 = 1
4 P4 P3 = D
D P4 = D
Clk =1 P3 e P4 são transmitidos através de 2 e 3
(a) Circuito
P1 = D e P2 = D Q = D e Q = D
16
Temporização
• Setup time (Tsu) tempo mínimo que D deve estar estável antes da
subida do clock
• Hold time (Th) tempo mínimo que D deve ser mantido estável após a
subida do clock
• TcQ: tempo até a saída Q mudar depois de uma borda de subida
17
Comparação de Flip-Flops D sensíveis a nivel e sensíveis a borda
D D Q Qa
Clock Clk Q Qa
Clock
D Q Qb D
Q Qb
D Q Qc
Q Qc
(a) Circuito
(b) Diagrama de Tempo
18
Comparação de Flip-Flops D sensíveis a nivel e sensíveis a borda
D D Q Qa
Clock Clk Q Qa
Clock
D Q Qb D
Q Qb Qa
D Q Qc Qb
Q Qc Qc
(a) Circuito
(b) Diagrama de Tempo
19
Flip-Flop Master-slave tipo D com Clear e Preset
Preset
D
Q
Clock
Clear
(a) Circuito
Preset
D Q
Clear
Preset
Q Preset
D D Q
Clock
Clock Q
Q
Clear
Clear
(a) Circuito
21
Flip-Flop D com reset síncrono
Clear
D Q Q
D
Clock Q Q
22
Flip-Flop tipo T (toogle)
D Q Q
T
Q Q
Clock
(a) Circuito
23
Flip-Flop tipo T (toogle)
T Q(t + 1)
0 Q(t )
1 Q(t )
Clock Q
Clock
J
D Q Q
K Q Q
Clock
(a) Circuito
25
Flip-Flop JK
J
D Q Q
K Q Q
Clock
(a) Circuito
NA SUBIDA DO CLOCK
J K Qt+1
Tabela Verdade ?????? 0 0 Qt
0 1 0
Diagrama de tempo ????? 1 0 1
1 1 Q’t
26
Flip-Flop JK
D=JQ+ KQ
J
D Q J e K entradas
Q
De controle
K Q Q
FFs SR e T juntos
Clock
(a) Circuito
J K Q ( t + 1)
0 0 Q (t) J Q
0 1 0
1 0 1
K Q
1 1 Q (t )
Q1 Q2 Q3 Q4
In D Q D Q D Q D Q Out
Clock Q Q Q Q
(a) Circuito
28
Registrador de deslocamento com entrada e saída serial
Q1 Q2 Q3 Q4
In D Q D Q D Q D Q Out
Clock Q Q Q Q
(a) Circuito
Q1 Q2 Q3 Q4
In D Q D Q D Q D Q Out
Clock Q Q Q Q
(a) Circuito
In Q1 Q2 Q3 Q4 = Out
t0 1 0 0 0 0
t1 0 1 0 0 0
t2 1 0 1 0 0
t3 1 1 0 1 0 (b) Exemplo de uma seqüência
t4 1 1 1 0 1
t5 0 1 1 1 0
t6 0 0 1 1 1
t7 0 0 0 1 1
30
O que seria este circuito ??????????
Q3 Q2 Q1 Q0
D Q D Q D Q D Q
Q Q Q Q
D
S x1 x2 x3 Clock
x4
31
Registrador de deslocamento com entrada paralela e serial e saída paralela
Parallel output
Q3 Q2 Q1 Q0
D Q D Q D Q D Q
Q Q Q Q
Serial Clock 32
input Shift/Load Parallel input
Que circuito é este ??????????
1 T Q T Q T Q
Clock Q Q Q
Q0 Q1 Q2
(a) Circuito
Funcionamento tempo ?????
33
Que circuito é este ??????????
1 T Q T Q T Q
Clock Q Q Q
Q0 Q1 Q2
(a) Circuito
Funcionamento tempo ?????
Q’0 Q’1 Q’2
CLOCK
Q0 Q1 Q2
1 1 1
0 0 0
t0 0 1 1
1 0 0
t1 1 0 1
0 1 0
t2 0 0 1
1 1 0
1 1 0
t3 0 0 1
1 0 1 0 1 0
t4
.............................
34
Contadores
Contador assíncrono de 3 bits crescente
1 T Q T Q T Q
Clock Q Q Q
Q0 Q1 Q2
(a) Circuito
Clock
Q0
Q1
Q2
Count 0 1 2 3 4 5 6 7 0
35
(b) Diagrama de tempo
Que circuito é este ??????????
1 T Q T Q T Q
Q Q Q
Clock
Q0 Q1 Q2
(a) Circuit
Funcionamento tempo ?????
CLOCK
Q0 Q1 Q2
0 0 0
t0 1 1 1
t1 0 1 1
t2 1 0 1
t3 0 0 1
t4
.............................
36
Contador assíncronos de 3 bits decrescente
1 T Q T Q T Q
Q Q Q
Clock
Q0 Q1 Q2
(a) Circuit
Clock
Q0
Q1
Q2
Count 0 7 6 5 4 3 2 1 0
Clock cycle Q2 Q1 Q0
Q1 muda
0 0 0 0
1 0 0 1 Q2 muda
2 0 1 0
3 0 1 1 T0 = 1
4 1 0 0 T1 = Q0
5 1 0 1 T2 = Q0 Q1
6 1 1 0 T3 = Q0 Q1 Q2
7 1 1 1 Tn = Q0 Q1 ... Qn-1
8 0 0 0
1 T Q T Q T Q T Q
Q0 Q1 Q2 Q3
Clock Q Q Q Q
(a) Circuito
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
40
Enable D Q Q0
D Q Q1
D Q Q2
D Q Q3
Q
Output
carry 41
Clock
Enable D Q Q0
D Q Q2
D Q Q3
Q
Output
carry 42
Clock
Enable 0
Q0
1 D Q
D0
Q
0
1 D Q Q1
D1
Q
Que circuito é este
??????????
0
1 D Q Q2
D2
Q
0
1 D Q Q3
D3
Q
Output
Load carry
Clock 43
Enable 0
Q0
1 D Q
D0
Q
0
1 D Q Q1
D1
Q
Contador síncrono de 4 bits
com entrada paralela
0
1 D Q Q2
D2
Q
0
1 D Q Q
D3 3
Q
Output
Load carry
Clock 44
Projetar contador crescente modulo-6 com reset síncrono
utilizando o contador de entrada paralela de 3 bits
Clock
Q0
Q1
Q2
Count 0 1 2 3 4 5 0 1
(a) Circuito
45
Contador crescente modulo-6 com reset síncrono
1 Enable
0 D0 Q0
0 D1 Q1
0 D2 Q2
Load
Clock
Clock
(a) Circuito
Clock
Q0
Q1
Q2
Count 0 1 2 3 4 5 0 1
1 T Q T Q T Q
Q0 Q1 Q2
Clock Q Q Q
(a) Circuito
Clock
Q0
Q1
Q2
Count 0 1 2 3 4 5 0 1 2
48
Contador BCD de 1 dígito
1 Enable
0 D0 Q0
0 D1 Q1
D2 Q2 BCD0
0
0 D3 Q3
Load
Clear Clock
Clock
49
Contador BCD de 2 dígitos
1 Enable
0 D0 Q0
0 D1 Q1
D2 Q2 BCD0
0
0 D3 Q3
Load
Clock
Clock
Clear Enable
0 D0 Q0
0 D1 Q1
D2 Q2 BCD1
0
0 D3 Q3
Load
Clock
50
Código para um latch D com clock
LIBRARY ieee ;
USE ieee.std_logic_1164.all ;
ENTITY latch IS
PORT ( D, Clk : IN STD_LOGIC ;
Q : OUT STD_LOGIC) ;
END latch ;
LIBRARY ieee ;
USE ieee.std_logic_1164.all ;
ENTITY flipflop IS
PORT ( D, Clock : IN STD_LOGIC ;
Q : OUT STD_LOGIC) ;
END flipflop ;
LIBRARY ieee;
USE ieee.std_logic_1164.all;
ENTITY flipflop IS
PORT ( D, Clock : IN STD_LOGIC ;
Q : OUT STD_LOGIC ) ;
END flipflop ;
ENTITY flipflop IS
PORT ( D, Resetn, Clock : IN STD_LOGIC ;
Q : OUT STD_LOGIC) ;
END flipflop ;
ENTITY flipflop IS
PORT ( D, Resetn, Clock : IN STD_LOGIC ;
Q : OUT STD_LOGIC) ;
END flipflop ;
ENTITY reg8 IS
PORT ( D : IN STD_LOGIC_VECTOR(7 DOWNTO 0) ;
Resetn, Clock : IN STD_LOGIC ;
Q : OUT STD_LOGIC_VECTOR(7 DOWNTO 0) ) ;
END reg8 ;
ENTITY regn IS
GENERIC ( N : INTEGER := 16 ) ;
PORT ( D : IN STD_LOGIC_VECTOR(N-1 DOWNTO 0) ;
Resetn, Clock : IN STD_LOGIC ;
Q : OUT STD_LOGIC_VECTOR(N-1 DOWNTO 0) ) ;
END regn ;
ENTITY muxdff IS
PORT ( D0, D1, Sel, Clock : IN STD_LOGIC ;
Q : OUT STD_LOGIC ) ;
END muxdff ;
ENTITY shift4 IS
PORT ( R : IN STD_LOGIC_VECTOR(3 DOWNTO 0) ;
L, w, Clock : IN STD_LOGIC ;
Q : BUFFER STD_LOGIC_VECTOR(3 DOWNTO 0) ) ;
END shift4 ;
ENTITY upcount IS
PORT ( R : IN INTEGER RANGE 0 TO 15 ;
Clock, Resetn, L : IN STD_LOGIC ;
Q : BUFFER INTEGER RANGE 0 TO 15 ) ;
END upcount ;
Extern
Bus
Clock
R1 R2 Rk
Control circuit
Function
64
Conexão dos registradoes ao barramento
65
Sistema digital com 3 registradores- Projetar o cicuito de
controle para executar a troca entre o conteúdo de 2
registradores (R1 e R2) Data
Extern
Bus
Clock
R1 R2 R3
Control circuit
Function
66
Circuito de controle deve gerar sinais que façam:
R3 R2
R2 R1
R1 R3
FUNCTION D Q D Q D Q
Clock Q Q Q
Reset
68
Usando multiplexadores para
implementação de um barramento
Bus
Clock
Data
S0
Multiplexers
Sj – 1
69
Sistema digital implementa um processador
simples
70
Operacões executadas pelo processador
71
Sistema digital implementa um processador simples
MOVE RX,RY
T1 RYout,RXin, Done
LOAD RX,RY
T1 Extern, RXin, Done
ADD RX,RY
T1 RXout, Ain,
T2 Ryout, AddSub=0,Gin
T3 Gout, RXin, Done
SUB RX,RY
T1 RXout, Ain,
T2 Ryout, AddSub=1,Gin
T3 Gout, RXin, Done
72
Valores dos sinais de controle para cada operação/time step
73
1 – Dado o circuito abaixo, assumir C como uma onda quadrada de 50%
duty cycle. Desenhe um diagrama que mostre as formas de ondas em A e
B. Assumir atraso de propagação de D segundos
74
1 – Dado o circuito abaixo, assumir C como uma onda quadrada de 50%
duty cycle. Desenhe um diagrama que mostre as formas de ondas em A e
B. Assumir atraso de propagação de Dt segundos
75
2. Determine o comportamento funcional do circuito abaixo. Assuma
que w é uma onda quadrada
76
2. Determine o comportamento funcional do circuito abaixo. Assuma
que w é uma onda quadrada
J K Qt+1
0 0 Qt
0 1 0
1 0 1
1 1 Q’t
Quando ambos FFs são zerados (clear), suas saídas Q0 = Q1 = 0. Após o Clear alto,
cada pulso de w (clock) causa uma mudança no FF como mostrado na tabela
acima. A tabela mostra o sinal após a subida do clock. Em intervalos consecutivos,
gera a sequencia 0,1,2,0,1 – contador módulo 3.
77
3 – mostre como um FF JK pode ser construído a partir de um FF T
J K Qt+1
0 0 Qt
0 1 0
1 0 1
1 1 Q’t
78
3 – mostre como um FF JK pode ser construído a partir de um FF T
J K Qt+1
0 0 Qt
0 1 0
1 0 1
1 1 Q’t
J K T Qt+1
0 0 0 Qt
0 1 Qt 0
1 0 Q't 1
1 1 1 Q’t
79
4 – Projete um contador síncrono de 4 bits, cm carga paralela, usando FF tipo T
80
4 – Projete um contador síncrono de 4 bits, cm carga paralela, usando FF tipo T
81