Escolar Documentos
Profissional Documentos
Cultura Documentos
Isd4 PDF
Isd4 PDF
Conforme j citado no captulo 3, os circuitos lgicos dos sistemas digitais podem ser
de dois tipos: circuitos combinacionais ou circuitos seqenciais. Um circuito combinacional
constitudo de um conjunto de portas lgicas, as quais determinam os valores das sadas
diretamente a partir dos valores atuais das entradas.
A figura 4.1 mostra o diagrama de blocos de um circuito seqencial. Um circuito
seqencial composto por um circuito combinacional e elementos de memria. As
entradas e as sadas do circuito seqencial esto conectadas somente ao circuito
combinacional. Os elementos de memria so circuitos capazes de armazenar informao
codificada em binrio. Algumas das sadas do circuito combinacional so entradas para os
elementos de memria, recebendo o nome de variveis do prximo estado. J as sadas dos
elementos de memria constituem parte das entradas para o circuito combinacional e recebem
o nome de variveis do estado atual. As conexes entre o circuito combinacional e os
elementos de memria configuram o que se costuma chamar lao de realimentao, pois a
sada de um bloco entrada para o outro e vice-versa.
A informao armazenada nos elementos de memria num dado instante determina o
estado em que se encontra o circuito seqencial. O circuito seqencial recebe informao
binria das entradas que, juntamente com a informao do estado atual, determinam os
valores das sadas e os valores do prximo estado (vide figura 4.1). Desta forma, fica
evidente que as sadas de um circuito seqencial dependem no apenas das entradas, mas
tambm do estado atual, armazenado nos elementos de memria. E o mesmo pode ser dito
para as variveis de prximo estado. Em funo deste comportamento seqencial, um circuito
seqencial especificado pela seqncia temporal de entradas, sadas e estados internos.
entradas
.
.
.
.
.
.
sadas
circuito
combinacional
variveis do
estado atual
.
.
.
.
.
.
elementos de
memria
.
.
.
variveis do
prximo estado
Figura 4.1 - Diagrama de blocos de um circuito seqencial.
Os circuitos seqenciais podem ser divididos em dois tipos, conforme o comportamento
temporal dos seus sinais: sncronos e assncronos.
4-2
borda
ascendente
perodo (T)
nvel baixo
borda
descendente
1
T
(4.1)
4-3
Exemplo 4.1: um circuito digital sncrono cadenciado pelo uso de um sinal de relgio de
200 MHz. Qual o maior atraso permitido para um circuito combinacional
qualquer dentro deste circuito.
Ora, se esse circuito deve trabalhar freqncia de 200 MHz, ento, cada um de seus
blocos combinacionais deve ter um atraso inferior ao perodo do relgio, o qual pode ser
calculado por:
T=
1
= 0,005x10 6 s = 5x10 9 s = 5ns
6
200x10 Hz
entradas
sadas
.
.
.
.
.
.
circuito
combinacional
.
.
.
.
.
.
.
.
.
elementos
de memria
(flip-flops)
variveis do
estado atual
variveis do
prximo estado
4-4
4.1 Latches
Os vrios flip-flops existentes se diferenciam pelo nmero de entradas que possuem e
na maneira pela qual tais entradas afetam o estado em que o flip-flop se encontra. Os tipos
mais bsicos de flip-flops so denominados latches. Os latches operam por nveis dos sinais
de entrada (diz-se que so sensveis a nvel) e servem como base na construo dos flip-flops
mais sofisticados.
Apesar de serem capazes de armazenar informao binria, os latches so pouco
utilizados na construo de circuitos seqenciais sncronos por serem menos prticos do que
os flip-flops.
A seguir, sero estudados o latch RS, o latch RS controlado e o latch D.
4.1.1 O Latch RS
O latch RS o latch mais simples que existe. Ele pode ser construdo com o uso de
duas portas nor de 2 entradas cada, conectadas conforme mostra a figura 4.4. Note que h
duas entradas, chamadas R e S, e duas sadas, Q e Q . Note tambm que existe uma conexo
entre a sada Q e a outra entrada da nor n2. Existe tambm uma conexo entre a sada Q e a
outra entrada da nor n1. Conexes entre sada e entrada so denominadas realimentaes, e
no caso de circuitos digitais, so responsveis pela propriedade de armazenamento
apresentada pelo circuito.
R
n1
n2
4-5
valor indeterminado
(=desconhecido)
t0
t1
td(n1)
td(n2)
4-6
nada muda
nas sadas
aps t1
R
S
Q
Q
Figura 4.5 -Formas de onda para aplicao do vetor de entrada (R=1;S=0) seguido do vetor
(R=0;S=0) no latch RS.
valor indeterminado
(=desconhecido)
t0
t1
td(n2)
td(n1)
nada muda
nas sadas
aps t1
R
S
Q
Q
Figura 4.6 -Formas de onda para aplicao do vetor de entrada (R=0;S=1) seguido do vetor
(R=0;S=0) no latch RS.
Note que para todas as situaes estudadas at aqui, os valores exibidos pelas sadas Q e
Q so sempre complementares. justamente por esse motivo que elas recebem essas
denominaes. Entretanto, se aplicarmos o vetor de entrada (R=1;S=1), ambas sadas se
estabilizaro em 1, o que conflita com o que foi colocado anteriormente. Ora, se um latch
deve ser capaz de armazenar um dentre os dois estados possveis para uma varivel Booleana
e se o estado est associado ao valor de Q e Q (Q exibe o estado e Q , o seu complemento),
ento qual seria o estado representado pela situao Q=1 e Q =1? Por no haver uma resposta
plausvel a essa pergunta, foi convencionado que esse seria um estado proibido (ou
indeterminado), de modo que a situao (R=1;S=1) deve sempre ser evitada, no caso do latch
RS.
Conforme j mencionado na introduo dessa seo, um latch, assim como um flip-flop,
pode assumir um dentre dois estados possveis. Esses estados correspondem aos valores que
uma varivel Booleana pode assumir, ou seja, 0 e 1. O estado 0 tambm chamado estado
reset e o estado 1 tambm chamado estado set.
4-7
Analisando-se a situao mostrada pelas formas de onda da figura 4.5, conclui-se que a
aplicao do vetor (R=1;S=0) faz com que o latch v para o estado set (i.e., a sada Q
estabiliza com o valor lgico 1), independente de seu estado anterior. Se aps isso for
aplicado o vetor (R=0;S=0), o latch no muda o seu estado. Avaliando-se agora as formas de
onda da figura 4.6, conclui-se que a aplicao do vetor (R=0;S=1) faz com que o latch v para
o estado reset (i.e., a sada Q estabiliza com o valor lgico 0), independente de seu estado
anterior. Se aps isso for aplicado o vetor (R=0;S=0), o latch no muda o seu estado.
Finalmente, pode-se afirmar que a aplicao do vetor (R=0;S=0) no muda o estado em que o
latch est. Por outro lado, o vetor (R=1;S=1) deve ser evitado, pos conduzir ao estado
proibido. Essas informaes podem ser resumidas pela tabela que segue:
R
1
0
0
0
1
S
0
0
1
0
1
Q
0
0
1
1
0
1
1
0
0
0
ao
vai para estado reset
mantm estado reset (= estado anterior)
vai para estado set
mantm estado set (= estado anterior)
estado proibido
S
0
1
0
1
Qt+1
Qt
1
0
-
comentrio
mantm estado anterior
estado set
estado reset
proibido
4-8
R=0 S=1
(R=0 S=0)
(R=0 S=1)
(R=0 S=0)
(R=1 S=0)
reset
set
R=1 S=0
t2
R
R
S
Q
Q
4-9
R1
Q
C
Q
S1
R
X
0
0
1
1
S
X
0
1
0
1
Qt+1
Qt
Qt
1
0
-
comentrio
mantm estado anterior
mantm estado anterior
estado set
estado reset
proibido
C=0
(C=1 R=0 S=0)
(C=1 R=1 S=0)
reset
set
4-10
C
Q
t2
t3
t4
C
S
S
Q
Q
Q
4.1.3 O Latch D
A necessidade de evitar a ocorrncia do estado proibido um detalhe que dificulta o
projeto de circuitos seqenciais com latches RS. O latch D construdo a partir do latch RS,
de maneira tal que, pela colocao de um inversor entre as entradas S e R, fica assegurado que
nunca ocorrer a situao de entradas R=1 e S=1, responsveis pelo surgimento do estado
proibido (figura 4.12). Desta forma, a tabela de transio do latch D pode ser derivada da
tabela do latch RS controlado, onde as entradas R e S passam a ser a entrada D (com D=S).
Duas combinaes de entradas desaparecem: uma que resultava na manuteno do estado e
outra que resultava no estado proibido. A tabela de transio do latch D mostrada na tabela
4.3 e seu smbolo, na figura 4.13.
D
C
S
Q
Q
C
0
1
1
D
X
0
1
Qt+1
Qt
0
1
4-11
comentrio
mantm estado anterior
estado reset
estado set
t2
t3
t4
C
D
Q
Q
4-12
C
S
(a)
(b)
Figura 4.14 - Smbolo do latch RS controlado (a) e do latch D (b), ambos com lgica de
ativao complementar.
As tabelas 4.5 e 4.6 mostram o funcionamento destes latches com lgica de ativao
negada. Comparando-se com as tabelas de transio dos latches correspondentes com lgica
de ativao direta, nota-se que as aes so as mesmas; apenas o que muda o nvel do sinal
de controle necessrio para ativ-los.
C
1
0
0
0
0
R
X
0
0
1
1
S
X
0
1
0
1
Qt+1
Qt
Qt
1
0
-
comentrio
mantm estado anterior
mantm estado anterior
estado set
estado reset
proibido
Tabela 4.5 - Tabela de transio de estados para o latch RS controlado com lgica de ativao
negada.
C
1
0
0
D
X
0
1
Qt+1
Qt
0
1
comentrio
mantm estado anterior
estado reset
estado set
Tabela 4.6 - Tabela de transio de estados para o latch D com lgica de ativao negada.
Exemplo 4.5: desenhar as formas de onda para as sadas do latch RS abaixo, a partir das
formas de onda fornecidas.
t1
C
R
C
S
Q
Q
t2
t3
t4
4-13
Exemplo 4.6: desenhar as formas de onda para as sadas do latch D abaixo, a partir das
formas de onda fornecidas.
C
D
Q
Q
4.2 Flip-flops
Conforme visto na seo anterior, os latches controlados D e RS so ativados ou
controlados pelo nvel lgico do sinal de controle. Isso significa que, enquanto o sinal de
controle estiver ativando o latch, eventuais variaes das entradas D ou R e S sero
percebidas pelo latch e este poder mudar de estado. Essa caracterstica particularmente
imprpria para a construo de circuitos seqenciais sncronos, uma vez que em tais circuitos
qualquer troca de estado deve ocorrer de maneira sincronizada com o sinal de relgio.
Os flip-flops so circuitos derivados dos latches, porm ativados pela transio do
sinal de controle (i.e., pela borda). Isso faz com que um flip-flop permanea ativado apenas
durante um intervalo de tempo muito pequeno, aps a ocorrncia de uma transio do sinal de
controle. Assim, uma eventual troca de estado s pode ocorrer durante esse breve intervalo de
tempo em que o flip-flop est ativado. Entre duas transies sucessivas do mesmo tipo (ou
subida ou descida) do sinal de controle, o flip-flop mantm o ltimo estado adquirido.
Dependendo de sua construo, um flip-flop pode ser disparado pela transio de
subida ou pela transio de descida do sinal de controle. Diz-se ento, que flip-flops so
disparados pela borda (ascendente ou descendente, conforme for o caso), enquanto que
latches so sensveis ao nvel lgico (alto ou baixo, conforme for o caso). A seguir, sero
estudados os flip-flops mais utilizados.
escravo
mestre
Qm
D
4-14
Q
Q
C
Figura 4.15 - Flip-flop D mestre-escravo.
Analisando-se as conexes, possvel deduzir facilmente que os dois latches
funcionam de maneira complementar com relao ao sinal de controle externo: enquanto o
controle vale 1, o mestre est ativado e o escravo est mantendo seu estado anterior e
enquanto o controle vale 0, o mestre est mantendo seu estado anterior e o escravo est
ativado. Como a entrada do escravo est conectada sada do mestre, o ltimo valor lido
durante a ativao do mestre aparecer na sada do escravo no semiperodo seguinte. A figura
4.16 exemplifica o funcionamento do flip-flop D mestre-escravo a partir de formas de onda
arbitrrias para as entradas C e D.
D
tdM
tdM
Qm
tdE
tdE
Q1
Q2
Q3
dado
4-15
Q0
controle
controle
dado
Q3
Q2
Q1
Q0
R
Q
C
S
4-16
D
X
0
1
Qt+1
Qt
0
1
comentrio
mantm estado anterior
estado reset
estado set
Tabela 4.7 - Tabela de transio de estados para o flip-flop D disparado pela borda
ascendente.
Na tabela anterior, o smbolo indica que a ativao do flip-flop instantnea e s
ocorre durante as bordas ascendentes do sinal de controle C. Por outro lado, entre duas bordas
ascendentes consecutivas do sinal de controle, o flip-flop mantm o estado anteriormente
armazenado. O smbolo do flip-flop D mostrado na figura 4.18; o tringulo colocado na
entrada de controle C indica que a ativao se d pela borda ascendente (e no pelo nvel
lgico, como ocorre no latch D).
D
Q
Q
J
X
0
0
1
1
K
X
0
1
0
1
Qt+1
Qt
Qt
0
1
Qt
4-17
comentrio
mantm estado anterior
mantm estado anterior
estado reset
estado set
complementa estado anterior
Tabela 4.8 - Tabela de transio de estados para o flip-flop JK disparado pela borda
ascendente.
O smbolo do flip-flop JK disparado pela borda ascendente mostrado na figura 4.19.
Tambm nesse smbolo, o tringulo na entrada de controle indica que a ativao se d pela
borda ascendente.
J
C
K
C
J
J
Q
C
K
K
Q
Q
Q
D
X
0
1
Qt+1
Qt
0
1
4-18
comentrio
mantm estado anterior
estado reset
estado set
Tabela 4.9 - Tabela de transio de estados para o flip-flop D disparado pela borda
descendente.
C
J
X
0
0
1
1
K
X
0
1
0
1
Qt+1
Qt
Qt
0
1
Qt
comentrio
mantm estado anterior
mantm estado anterior
estado reset
estado set
complementa estado anterior
Tabela 4.10 - Tabela de transio de estados para o flip-flop JK disparado pela borda
descendente.
A figura 4.20 mostra os smbolos do flip-flop D e do flip-flop JK disparados pela
borda descendente. Note a existncia de um crculo antes da entrada de controle, indicando
que os flip-flops so disparados pela borda descendente.
D
C
Q
(a)
(b)
Figura 4.20 - Smbolos para o flip-flop D (a) e para o flip-flop JK (b), ambos disparados pela
borda descendente.
Exemplo 4.10: traar as formas de onda para as sadas do flip-flop D que segue, a partir das
formas de onda fornecidas. (Note que o enunciado no diz se o flip-flop
disparado pela borda ascendente ou pela borda descendente, pois essa
informao faz parte da interpretao da questo!)
C
D
Q
Q
4-19
CK
dado
CK
C
clear
limpa
dado
Q
limpa
Q
4-20
Exemplo 4.12: traar as formas de onda para as sadas do flip-flop que segue, a partir das
formas de onda fornecidas.
CK
ajusta
ajusta
J
preset
J
CK
Q
K
C
K
Q
Q
Q
4-21
D0
Q0
Q0
D1
Q1
Q1
CK
(4.2)
(4.3)
As equaes 4.2 e 4.3 so chamadas equaes de excitao, uma vez que elas
descrevem o comportamento dos sinais que so aplicados s entradas dos flip-flops, os quais
iro determinar o estado do circuito seqencial para o prximo ciclo de relgio. Aplicando as
4-22
(4.4)
(4.5)
(4.6)
estado atual
prximo estado
cnt
0
0
0
0
1
1
1
1
Q1t
0
0
1
1
0
0
1
1
Q1t+1
0
0
1
1
0
1
1
0
Q0t
0
1
0
1
0
1
0
1
Q0t+1
0
1
0
1
1
0
1
0
entrada
estado atual
sada
cnt
0
0
0
0
1
1
1
1
Q1t
0
0
1
1
0
0
1
1
Y
0
0
0
1
0
0
0
1
Q0t
0
1
0
1
0
1
0
1
4-23
Q1Q0=00
Y=0
Q1Q0=01
Y=0
cnt=0
cnt=1
cnt=1
cnt=1
cnt=0
Q1Q0=11
Y=1
Q1Q0=10
Y=0
cnt=0
t0
t1
t2
4-24
t3
CK
cnt
Q1
Q0
Y
Figura 4.23: diagrama de tempos para uma possvel operao do circuito seqencial da figura
4.21.
Exemplo 4.14: determinar a tabela de transio de estados, a tabela de sada e o diagrama de
estados para o circuito seqencial mostrado na figura 4.24.
cnt
D0
Q0
Q0
D1
Q1
Q1
CK
(4.7)
Como a diferena entre este circuito e aquele da figura 4.21 diz respeito somente
sada Y, as equaes de estado para esse circuito correspondem s equaes de estado 4.4 e
4.5. E por conseguinte, a tabela de transio de estados para esse circuito a tabela 4.11.
4-25
Somente a tabela de sada ser diferente, uma vez que a equao de sada diferente. A tabela
de sada para o circuito da figura 4.24 mostrada a seguir.
entrada
estado atual
sada
cnt
0
0
0
0
1
1
1
1
Q1t
0
0
1
1
0
0
1
1
Y
0
0
0
0
0
0
0
1
Q0t
0
1
0
1
0
1
0
1
cnt=1 / Y=0
Q1Q0=00
Q1Q0=01
cnt=1 / Y=0
cnt=1 / Y=1
cnt=1 / Y=0
cnt=0 / Y=0
Q1Q0=11
cnt=0 / Y=0
Q1Q0=10
cnt=0 / Y=0
t0
t1
t2
4-26
t3
CK
cnt
Q1
Q0
Y
Figura 4.26 - Diagrama de tempos para uma possvel operao do circuito seqencial da
figura 4.24.
4-27
I2
Ik
CK
...
D1
Q1
FF1
Q1
O1
Q2
FF2
Q2
...
D3
lgica de sada
O2
...
lgica de
prximo estado
D2
sadas
On
Q3
FF3
Q3
4-28
entradas
I1
I2
Ik
CK
...
D1
Q1
FF1
Q1
O1
Q2
FF2
Q2
...
D3
lgica de sada
O2
...
lgica de
prximo estado
D2
sadas
On
Q3
FF3
Q3
4-29
Bibliografia Suplementar
[1] GAJSKI, Daniel D. Principles of Digital Design, New Jersey: Prentice Hall, 1997 (ISBN
0-13-301144-5)
[2] MANO, M. Morris; Computer Engineering: Hardware Design. New Jersey: Prentice
Hall, 1988 (ISBN 0-13-162926-3)
[3] BROWN, Stephen; VRANESIC, Zvonko. Fundamentals of Digital Logic with VHDL
Design. McGraw-Hill Higher Education (a McGraw-Hill Company), 2000
(http://www.mhhe.com/engcs/electrical/brownvranesic )