aula9 10 circuitos sequenciais.pdf
TRANSCRIPT
UNIVASFUNIVASFEletrônica Digital IEletrônica Digital I
Prof. Rodrigo Ramos
Circuitos SeqüenciaisCircuitos Seqüenciais
Latches e Flip-FlopsLatches e Flip-Flops
2
Circuitos Seqüenciais
Combinatório: As saídas, em qualquer instante, dependem somentedas entradas.
Circuitos Digitais
Seqüencial: Possui uma realimentação da saída para a entrada (estado interno) – A saída depende da entrada e do estado interno.Estes dispositivos possuem memória.
CircuitoCombinatórioEntrada Saída
CircuitoCombinatório
Estado interno
EntradaSaída
Circuito Seqüencial
3
Flip-Flop (FF)
• Também chamado de latch ou multivibrador biestável por possuir dois estados estáveis 0 e 1.
- Elementos básicos de contadores e registradores.- Denominação latch é mais usada para circuitos simplificados.- Termo Flip-flop usado para latches com relógio e circuito mais complexo.
• Tem a função de armazenar níveis lógicos temporariamente,funcionando como uma memória.
• É implementado a partir de portas lógicas, através de conexões derealimentação.
• Existem diversas combinações de conexões e portas lógicas,levando a diferentes tipos de FFs.
4
Flip-Flop (FF)
Representação básica do Flip-Flop
- Duas saídas opostas denominadas Q e Q'.- Q saída normal ; Q' saída invertida (nível lógico oposto a Q)- Estado ALTO = SET (setar o FF)- Estado BAIXO = RESET ou CLEAR (ressetar ou limpar o FF)- Pode haver uma ou mais entradas para comutar estados
5
Latch SR com portas NAND
• Circuito de armazenamento mais simples, em que as portas são conectadas de modo cruzado.• Q e Q' são as saídas do latch.• Entrada SET seta o latch (Q = 1 e Q' = 0).• Entrada RESET resseta (limpa) o latch (Q = 0 e Q' = 1).• Sempre que se deseja mudar as saídas, deve-ser colocar uma das entradas em nível BAIXO (entradas ativas quando BAIXO).• Conhecido como latch estático.
Entradas SET = 1 e RESET = 1 deixam o latch no estado de repouso (saídas não mudam – latch inalterado, 'lembra' o bit)
6
• Quando SET é pulsada em nível BAIXO, saída é Q = 1.
Setando o latch
• Se Q = 1, antes do pulso, seu estado não muda.
Latch SR com portas NAND
7
• Quando RESET é pulsada em nível BAIXO, saída é Q = 0.
Ressetando o latch
• Se Q = 0, antes do pulso, seu estado não muda.
Latch SR com portas NAND
8
• Quando SET e RESET são pulsadas em nível BAIXO ao mesmo tempo, temos Q = 1 e Q' = 1.
• Inconsistência, uma vez que as saídas são complementares.
• Além disso, como a simultaneidade absoluta não é possível, a saída vai ser dada pela entrada que mudar de estado por último:
• Se RESET = 0 antes de SET, saída seria Q = 0 (latch ressetado).• Caso SET = 0 antes de RESET, saída seria Q = 1 (latch setado)
• Portanto, esta condição (RESET = SET = 0) não é usada.
Setando e Ressetando o latch simultaneamente
Latch SR com portas NAND
9
Resumo das operações
• As saídas R e S são ativas em nível 0.
Não usada00
110
001
Qn
11
Qn+1RS
Latch SR com portas NAND
10
Representação alternativa
• Entradas são ativas em nível BAIXO• Costuma-se usar a representação alternativa para NAND
Latch SR com portas NAND
11
Exemplo: As formas de onda abaixo são aplicadas na entrada de um latch SR. Determine a forma de onda da saída Q, considerando inicialmente Q = 0.
Latch SR com portas NAND
12
• Circuito equivalente ao anterior, usando portas NOR.
• Saídas agora estão em posições trocadas.
• Entradas ativas nível ALTO.
Não usada11
101
010
Qn
00
Qn+1RS
Latch SR com portas NOR
13
Exemplo: Os sinais S e R são aplicados nas entradas de um latch constituído por portas NOR. Determine o sinal de saída, considerandoinicialmente Q = 0.
Latch SR com portas NOR
14
• Na chave mecânica hátrepidação de contato(contact bounce).
• Se a chave sai da 1 para2, R = 1 e S = 0 Qout = 1.
• Se o contato é desfeito,R = 1 e S = 1 Qout = 1
Aplicação: Chave sem Trepidação
Latch SR
15
• Não é possível prever estado inicial da saída.
• Depende de fatores como atraso de propagação, capacitâncias parasitas e carga externa.
• Para garantir uma operação adequada, o latch deve ser colocado em um estado desejado
• Se setado (Q = 1), ativa-se SET momentaneamente.• Se ressetado (Q = 0), ativa RESET momentaneamente.
Estado do latch quando energizado
16
Latch SR Controlado
Latch comandado por entrada ENABLE (latch dinâmico)
• Se ENABLE = 0, Q e Q’ permanecem inalterados (S’ = 1 e R’ = 1).
• Se ENABLE = 1, o latch funciona normalmente, com entradas ativas em 1.
• Em muitos casos, é conveniente ligar ou isolar o latch de um circuito.
• Um sinal externo de habilitação determina o instante de atualização das saídas Q e Q'.
17
Latch SR ControladoAplicação
• Linha de dados que mudam com o tempo (ex. Barramento).• Em um dado instante, deseja-se capturar um bit. Para isto, habilita-se o latch e Q seguirá a entrada D.• Para manter o dado salvo, desabilita-se o latch. • Chamado de latch tipo D (transparente).
Alteração dos níveis de saída ocorre na transição do sinal C (ENABLE) de 0 para 1.
18
Sinais de Clock e Latches
• Portas lógicas introduzem atrasos de propagação nos sinais, o que pode levar a níveis não desejados chamados perigos (harzards), principalmente em circuitos com memória.
• Um meio de minimizar estes problemas é trabalhar com sinais síncronos (sistemas digitais síncronos).
• Mudanças de estado são determinados por um sinal denominado relógio (clock).• O clock é geralmente um trem de pulsos retangulares (ideal), distribuídos por todos os circuitos.• Saídas mudam de estado na transição do sinal de clock (bordas).
19
• A sincronização é geralmente feita com latches com clock, projetados para mudarem de estado em transição do clock.
• A velocidade de operação depende da freqüência com que ocorrem os ciclos de clock.
• Um ciclo de clock é medido de uma borda de decida até a próxima borda.• O tempo de um ciclo é chamado de período (T) – segundos/ciclos• O inverso do período é a freqüência (f) – ciclos/segundo (Hz)
Sinais de Clock e Latches
20
Sinais de Clock e LatchesLatch controlado por clock – principais características
• Latches com clock (relógio) têm entrada CLK, CK ou CP.
• Podem ter uma ou mais entradas de controle, que não terão efeito até que a habilitação pelo clock ocorra (entradas de controle síncronas).
• As entradas de controle deixam o latch pronto para mudar de estado quando ocorrer a habilitação pelo clock.
• Se CLK = 0, Q e Q’ permanecem inalterados (S’ = 1 e R’ = 1);
• Se CLK = 1, o latch funciona normalmente, com entradas ativas em 1.
21
R
S
Clk
Q
Q’
Erro111
0011
1101
Qn
001
Qn
XX0
Qn+1
SRClk
• O pulso de clock sincroniza a atualização das saídas Q e Q’.
Sinais de Clock e Latches
22
Limitação do latch como elemento armazenador
• Sistemas digitais síncronos:• Sinal comum de sincronismo para os elementos armazenadores• Saídas de elementos armazenadores podem ser entradas para outros.
• Nestes casos, surge séria dificuldade.
Sinais de Clock e Latches
23
Limitação do latch como elemento armazenador
• Considere a figura abaixo: cascata de dois latches com clock (registrador de deslocamento).
•Por conta do atraso de propagação ser menor que pulso de clock, apenas uma transição de C altera o estado de ambos os latches (Problema da corrida)
Sinais de Clock e Latches
• Uma forma de contornar o problema é fazer o pulso menor (estreito)• No entanto, isto leva a dificuldades de ativação do latch e de distribuição dos pulsos.
24
• Denomina-se Flip-Flop um latch cujo problema da corrida seja resolvido (latches não-transparentes).
• O FF mestre-escravo consiste de dois latches individuais com portas de entrada de dados e de acoplamento.
• O clock aplicado nas portas de entrada é complementar às portas de acoplamento.
• Quando o clock habilita as portas de entrada (desabilitando as portas de acoplamento), os dados são registrados nos terminais S e R,
• Quando as portas de acoplamento são habilitadas (desabilitando as de entrada), os dados são transferidos para a saída.
Flip-Flop Mestre-Escravo
26
Flip-Flop Mestre-Escravo
ta
p
ta
p
Relógio
QM
QS
0
1
0
1
0
1
Problema da corrida resolvido (registrador de deslocamento com FFs em cascata).
28
Flip-Flop Mestre-Escravo
• Problema da detecção de 1s.
• No instante t2, Q = 1, ao contrário do que se esperava. Isto ocorre
porque o clock permaneceu ativo.
• Solução: FFs gatilhados pela borda.
29
Flip-Flop SR Gatilhado pela Borda• Mudança no nível de saída só ocorre na borda de transição do clock (resolve problema de detecção de 1's do mestre-escravo).
• Consideraremos a versão simplificada. O circuito detector de borda produz um pulso estreito e positivo CLK*.
• As portas habilitadores de entrada direcionam o pulso para a entrada desejada.
• S = 1 e R = 0, pulso CLK* é invertido pela porta 1 e SET = 0 → Q = 1• S = 0 e R = 1, pulso CLK* é invertido pela porta 2 e RESET = 0 → Q = 0
30
Detector de borda positiva Detector de borda negativa
• A duração dos pulsos é normalmente de 2 a 5 ns.• Q só é afetada por S e R neste período curto.
Flip-Flop SR Gatilhado pela Borda
• Exemplo de implementação do detector de borda.
• Inversor produz atraso de alguns ns, de forma que a transição em CLK' ocorra um pouco após a de CLK.• A porta AND produz spike quando ambos estão em nível ALTO (BAIXO).• Resulta em pulso estreito CLK* na borda de subida (descida) do sinal.
31
• Triângulo na entrada de clock CLK é usado para representar gatilhamento pela borda.
Flip-Flop SR Gatilhado pela Borda
• Consideraremos, a partir de agora, que todos os FFs são gatilhados pela borda, a menos que afirmado o contrário.
32
Exemplo: Para os sinais S e R da figura, determinar o sinal em Q (Qi=0).
Observe que o FF não é afetado pelas bordas de subida do clock.
Os sinais S e R só têm efeito na ocorrência da borda de subida (são chamadas de entrada de controle síncrona).
Flip-Flop SR Gatilhado pela Borda
33
Exemplo: O que acontece na saída Q nos instantes b, f e h, se as formas de onda forem aplicadas a um FF gatilhado pela borda de descida?
• Em b, nível ALTO; em f, nível BAIXO; em h, nível ALTO.
Flip-Flop SR Gatilhado pela Borda
34
Flip-Flop JK• Para o FF SR, evita-se a condição S = R = 1, por conta de um resultado
indeterminado na saída.
• Pode-se modificar o FF SR para permitir esta condição: FF JK.
• Neste caso não há condição proibida, e surge o modo de comutação
(toggle mode).
• A modificação sugere que não só S e R modifiquem a saída, mas
também o próprio estado do FF (a realimentação é responsável).
Latch SRclock
J
K
Q
Q
Tabela Verdade
J K
0 01 0 10 1 0
1 1
Qn+1
Qn (não muda)
Qn' (comuta)
35
Flip-Flop JK Gatilhado pela Borda• Versão simplificada, idêntica ao SR, com exceção das realimentações.
• Observe que, se CLK* não for muito estreito, os novos valores de Q e Q'
farão com que o FF comute novamente.
36
Exemplo: Dadas as entradas J, K e CLK, determine a saída Q (assumir Qi=1).
Flip-Flop JK Gatilhado pela Borda
37
Flip-Flop D Gatilhado pela Borda• Equivalente ao FF JK com um inversor entre as duas entradas• D: entrada de controle síncrona (dado)• Operação: Q segue D na borda de subida em CLK.
Exemplo: Dadas as entradas D e CLK, determine a saída Q (Qi=1).
38
Flip-Flop D Gatilhado pela Borda• Circuito alternativo:
• Se C = 0, S' = R' = 1 → Qn+1
= Qn
• Para D = 0, se C vai para 1, S' = 1 e R' = 0 → Q = 0 (Q = D). • Para D = 1, se C vai para 1, S' = 0 e R' = 1 → Q = 1 (Q = D).• Qualquer alteração em D quando C = 1 não produz efeito (gatilhado pela borda).
39
Aplicação: Transferência em Paralelo de Dados
No momento da aplicação do pulso, dados X, Y e Z serão transferidos para Q1, Q2 e Q3 e armazenados.
Estes dados podem ser usados posteriormente.
Flip-Flop D Gatilhado pela Borda
40
• Equivalente ao FF JK com as duas entradas conectadas.
• A cada borda de subida de CLK, FF chaveia (toggle) quando T = 1.
TT
Qn’1
Qn
0
Qn+1
CLKT
Flip-Flop T Gatilhado pela Borda
41
Aplicação: Divisor de Freqüência
• FQb = F
Qa / 2
• FQb = Fclock / 4
Flip-Flop T Gatilhado pela Borda
T
Clk
Q
Q’
T
Clk
Q
Q’clock
5V
Qa
Qb
Qa
Qb
clock
Tclock
TQa
TQb
42
Entradas Assíncronas
• FFs estudados até agora possuem apenas entradas de controle síncronas (efeito sincronizado com clock). • Muitas vezes é necessário incorporar entradas independentes, que coloquem FF em estado 0 ou 1 em qualquer instante.
• Estas entradas independem de qualquer outra entrada de controle e são chamadas entradas assíncronas ou diretas.
• Podem ser usadas para manter o FF em um estado particular por qualquer intervalo de tempo desejado.
43
Flip-Flop JK com Entradas Assíncronas
• Entradas de Set direto (Sd' ou PRESET') e Reset direto (R
d' ou CLEAR')
• Entradas assíncronas ativas em nível BAIXO.• Prevalecem sobre todas as entradas de controle.• Sd
' = 1 e Rd' = 0 → RESET (Q = 0)
• Sd' = 1 e R
d' = 0 → SET (Q = 1)
• Sd' = 0 e R
d' = 0 → Não usada (ambigüidade).
J
K
44
• As entradas PRESET' e CLEAR' atuam diretamente nas saídasQ e Q’, independentemente do pulso de clock e das entradas J e K.
Qn’1111
1
1
1
0
1
PRESET’
1
1
1
1
0
CLEAR’
101
010
Qn
00
1XXX
0XXX
Qn+1
KJCLK
Flip-Flop JK com Entradas Assíncronas
45
Exemplo: Dadas as entradas, determine o sinal na saída Q (Qi=1)
Flip-Flop JK com Entradas Assíncronas
46
Símbolos IEEE / ANSI
(a) Um único FF J-K disparado por borda negativa;
(b) CI comercial 74LS112, relativo a um duplo FF J-K disparado porborda negativa – subentende-se que os dois FF são iguais.O 1 em C1 e 1J e 1K indica que C controla J e K.Controlador1 controla 1Controlado