Capítulo 5 - Flip-Flops e Dispositivos Correlatos Introdução: Os circuitos considerados até o momento eram todos circuitos combinacionais, onde a saída é determinada pelos valores presentes nas entradas, independente dos valores anteriores. Os sistemas digitais são construídos usando tanto circuitos combinacionais como dispositivos de memória (circuitos seqüenciais). O mais importante dispositivo de memória é o flip-flop (abreviatura FF), construído a partir de combinação de portas lógicas combinacionais: Saída normal Entradas FF Saída invertida Um flip-flop é um dispositivo digital que possui duas saídas e, que estão sempre em estados opostos: Se =1 e =0, o FF está no estado 1 ou estado ALTO ou ativado (estado SET). Se =0 e =1, o FF está no estado 0 ou estado BAIXO ou desativado (estado RESET ou CLEAR). Existem diversos tipos de flip-flops e diferentes entradas de controle que determinam o estado da saída. O FF pode manter o estado de saída após os sinais de entrada, que produziram o estado atual, mudarem. Desse modo o FF pode armazenar uma informação de 1 bit. Prof. Eduardo Nunes Gonçalves Eletrônica Digital I 44
5.1 Latch com Portas NAND SET CLEAR ou RESET SET CLEAR Saída 1 1 Não muda 0 1 = 1 1 0 = 0 0 0 Inválido Símbolo simplificado: S FF C 5.2 Latch com Portas NOR SET CLEAR ou RESET SET CLEAR Saída 0 0 Não muda 1 0 = 1 0 1 = 0 1 1 Inválido Símbolo simplificado: S FF C Obs.: o estado inicial do latch, ao se ligar o circuito, é imprevisível. Prof. Eduardo Nunes Gonçalves Eletrônica Digital I 45
5.4 Sinais de Clock e Flip-Flops Síncronos Os sistemas digitais podem operar síncrona ou assincronamente. Nos sistemas assíncronos, as saídas dos circuitos lógicos podem mudar de nível lógico, sempre que o nível de uma ou mais entradas mude. Nos sistemas síncronos, os instantes de tempo nos quais as saídas são alteradas são determinados por um sinal chamado clock: Transição positiva (subida) Transição negativa (descida) 1 0 Flip-Flops Síncronos: O flip-flop síncrono pode possuir diferentes entradas de controle que deixam o FF pronto para mudar de estado, que irá ocorrer na transição do sinal de. Transição positiva (subida) Transição negativa (descida) Tempo de Setup e Tempo de Hold: Entradas de controle e síncronas Entrada de Clock t S Tempo de setup t H Tempo de hold Prof. Eduardo Nunes Gonçalves Eletrônica Digital I 46
5.5 Flip-Flop S-C Síncrono S S C Saída 0 0 Não muda FF gatilha na transição positiva C 1 0 = 1 0 1 = 0 1 1 Ambíguo S SET Detector de Transição * C CLEAR Circuito-piloto LATCH COM NAND Circuitos Detector de Transição: * * * * Retardo provocado pela porta NOT (~nanossegundos) Nota: Se implementado por portas individuais, é necessário de 3 a 5 inversores 7404 para produzir um atraso suficiente. Prof. Eduardo Nunes Gonçalves Eletrônica Digital I 47
5.6 Flip-Flop J-K Síncrono J K S C Saída 0 0 0 (não muda) 1 0 = 1 0 1 = 0 1 1 0 (comuta) 0 = estado anterior Se J = K = 1, o estado da saída muda a cada transição positiva do sinal de, operando no modo comutado (toggle mode). Circuito interno do Flip-Flop J-K Gatilhado: J SET Detector de Transição * K CLEAR LATCH COM NAND 5.6 Flip-Flop D Síncrono D D 0 0 1 1 O Flip-Flop D possui apenas uma entrada síncrona D (data). Prof. Eduardo Nunes Gonçalves Eletrônica Digital I 48
Implementação do Flip-Flop D: D S D J C K 5.8 Latch D D ENABLE (EN) SET CLEAR LATCH COM NAND D EN EN D 0 X o (não muda) 1 0 0 1 1 1 X = tanto faz o = estado anterior O flip-flop D responde à entrada D somente na transição do sinal de clock. No latch D, a saída irá acompanhar a entrada D para EN = 1 (operação transparente ) e a saída será fixa quando EN = 0. Prof. Eduardo Nunes Gonçalves Eletrônica Digital I 49
5.9 Entradas Assíncronas As entradas S, C, J, K e D dos FF síncronos, chamadas de entradas de controle, também são denominadas de entradas síncronas, em função de seu efeito ser sincronizado com o sinal de clock. Muitos FFs possuem entradas assíncronas, que operam independentes das entradas síncronas e da entrada de clock, e são usados para levar o FF a um determinado estado passando por cima das demais entradas: J DC SET DC K CLEAR DC SET DC CLEAR Resposta do FF 1 1 Operação síncrona* 0 1 = 1 1 0 = 0 0 0 Não usado Designações para as Entradas Assíncronas: Entrada Assíncrona SET DC SET PRESET (PRE) SET S D (set direto) Entrada Assíncrona CLEAR DC CLEAR CLEAR (CLR) RESET C D (clear direto) uando as entradas assíncronas forem ativas-baixo, utilizase uma barra sobre o nome da entrada para mostrar sua característica de ativa-baixo: PRE, CLR Prof. Eduardo Nunes Gonçalves Eletrônica Digital I 50
ENABLE 5.10 Símbolos IEEE/ANSI A simbologia IEEE/ANSI utiliza a letra C para qualquer entrada que mantenha o controle do dispositivo, como a entrada clock ou enable: Latch D: 1D 1D 7475 D C ENABLE 2D 3D ENABLE 4D C1 C2 2D 3D C3 C4 D4 1 1 2 2 3 3 4 4 Observe que no CI TTL 7475, as entradas enable C1 e C2 estão conectadas internamente, usando um único pino do CI. Flip-flops J-K gatilhado na transição de subida: PRE 74LS112 J S C K R CLR S 1J C1 1K R S 2J C2 2K R 1 1 2 2 Prof. Eduardo Nunes Gonçalves Eletrônica Digital I 51
5.11 Considerações Sobre Temporização de Flip-Flops Tempos de Setup (t S ) e Hold (t H ): Entradas de controle e síncronas Entrada de Clock t S t H Retardos de propagação: t PLH t PHL Frequência máxima de Clock, f max. Tempos de duração dos pulsos ALTO e BAIXO do Clock: 1 CLOCK 0 t W (H) t W (L) Largura de um pulso assíncrono ativo: 1 PRE ou CLR 0 t W (L) Prof. Eduardo Nunes Gonçalves Eletrônica Digital I 52
Tempos de transição do Clock (característico da família lógica): 50ns, TTL e 200ns, CMOS. Valores de parâmetros de FFs (em nanosegundos): TTL CMOS 7474 74LS112 4013B 74HC112 t s 20 20 60 25 t H 5 0 0 0 t PLH de para 40 24 200 31 t PHL de para 25 16 200 31 t PLH de CLR para 40 24 225 41 t PHL de PRE para 25 16 225 41 t W (L) de CLOCK 37 15 100 25 t W (H) de CLOCK 30 20 100 25 t W (L) empre ou CLR 30 15 60 25 f MAX do CLOCK (MHz) 15 30 5 20 5.13 Problemas de Temporização de Circuitos com Flip-Flops J 1 1 1 J 2 2 1 =J 2 1 K 1 1 K 2 2 2 t PLH de 2 2 responderá adequadamente ao nível lógico presente em 1 antes da transição negativa do clock, desde que t H referente a 2 seja menor que o retardo de propagação de 1. Prof. Eduardo Nunes Gonçalves Eletrônica Digital I 53
5.13 Flip-Flop Mestre-Escravo Antes do desenvolvimento de FF s gatilhados pela transição com tempos de hold nulos ou muito pequenos, os problemas de temporização eram resolvidos com FF s chamados mestre-escravo (master-slave). Os FF s mestre-escravo são compostos por dois FF s. Na transição positiva do clock os níveis das entradas de controle (D, J, K) são usado para determinar a saída do FF mestre. Na transição negativa do clock o estado do mestre é transferido para o FF escravo. O FF mestre-escravo funciona como se fosse um FF gatilhado na transição negativa do clock. No FF mestre-escravo padrão as entrada de controle devem permanecer estáveis enquando o sinal de clock estiver no nível alto. Esse problema foi resolvido com os FF s mestreescravo com lockout de dados. Flip-Flop D Mestre-Escravo (se D = Filp-Flop T (toggle)): D Mestre Escravo Clock Clock Mestre D Clock Escravo Os FFs mestre escravo se tornaram obsoletos mas ainda são encontrados na forma padrão (7473, 7476 e 74107) e na versão com lockout de dados (74110 e 7411). As novas tecnologias (74LS, 74AS, 74ALS, 74HC, 74HCT) não incluem FF s mestre-escravo. Prof. Eduardo Nunes Gonçalves Eletrônica Digital I 54
5.17 Armazenamento e Transferência de Informações A maior utilização dos FF s é no armazenamento de informações. As informações representadas por códigos binários são armazenadas em grupos de FF s, denominados registradores. A operação mais freqüente com as informações em registradores é a transferência. Transferência síncrona de informações: S A S B C A C B TRANSFER J D A J D B K A K B TRANSFER Transferência de informações assíncrona: J K A A Habilitação de Transferência J PRE B K CLR B A transferência de informações entre registradores pode ser feita em paralelo ou em série. Prof. Eduardo Nunes Gonçalves Eletrônica Digital I 55
5.18 Registradores de Deslocamento Um registrador de deslocamento é um grupo de FF s, ligados de tal forma que os valores binários armazenados sejam deslocados de um FF para o outro, a cada ocorrência do pulso de clock: DATA IN J 3 3 J 2 2 J 1 1 J 0 0 K 3 3 K 2 2 K 1 1 K 0 0 A cada pulso de clock, cada FF assume o valor do FF à esquerda, imediatamente antes da transição, e 3 assume o valor da entrada DATA IN. Ex: Transferência serial do valor binário 1101 DATA IN 1 0 1 1 3 1 2 1 1 0 0 1 Nota: os registradores de deslocamento devem ser implementados por FF s gatilhados na transição, que possuam t H menor que o tempo de retardo de propagação entre o clock e a saída, condição que é satisfeita na maioria dos FF s modernos. Na transferência paralela, toda informação é transmitida simultaneamente na ocorrência de um único pulso de clock. Na transmissão serial são necessários N pulsos de clock para transmitir N bits. Prof. Eduardo Nunes Gonçalves Eletrônica Digital I 56
5.19 Divisão e Contagem de Freqüência 1 J 2 2 1 J 1 1 1 J 0 0 1 K 2 2 1 K 1 1 1 K 0 0 Pulso de clock 1 2 3 4 5 6 7 8 9 10 11 12 0 1 2 Diagrama de Transição de Estados: Cada círculo representa um dos possíveis estados. Cada seta representa a ocorrência de um pulso de clock. 110 000 111 001 101 011 100 010 O diagrama de transição de estados será usado para descrever, analisar e projetar contadores e outros circuitos seqüenciais. Prof. Eduardo Nunes Gonçalves Eletrônica Digital I 57
5.21 Dispositivos Schmitt-Trigger Se os tempos de transição forem muito grandes, a saída de um dispositivo lógico comum pode oscilar ou mudar de estado erraticamente. Um dispositivo lógico com entrada Schmitt-trigger produzirá uma saída limpa, com transição rápida (da ordem de 10ns): Porta NOT padrão Not Schmitt-trigger V T+ V T- No dispositivo Schmitt-trigger a saída muda para nível alto quando a tensão de entrada é maior que a tensão de threshold V T+ e muda para nível baixo quando a tensão de entrada é menor que V T-. Exemplo de dispositivos Schmitttrigger: 7414 (6 NOT) e 7413 (2 NAND de 4 entradas). 5.22 Multivibradores Monoestáveis Os multivibradores monoestáveis (MM), assim como os FFs, possuem duas saídas, e, mas, ao contrários dos FFs, possui apenas um estado estável, normalmente = 0. Ao ser gatilhado, a saída muda de estado por um período de tempo fixo t p, determinado por uma constante RC em função de um resistor e um capacitor externo ao circuito. Este estado é denominado estado quase-estável. Após o tempo t p, a saída retorna para seu estado quiescente. Existem dois tipos de MM na forma de CI: não-regatilhável e regatilhável. Prof. Eduardo Nunes Gonçalves Eletrônica Digital I 58
Saída normalmente Estado Estável Entrada BAIXO = 0 e = 1 T MM de gatilho Saída normalmente Estado quase- ALTO estável = 1 e = 0 R T C T T MM não-regatilhável 0 1 2 3 4 5 6 7 8 9 MM regatilhável Dispositivos disponíveis no mercado: MM não-regatilhável: 74121 e 74221 (duplo) MM regatilhável: 74122 e 74123 (duplo) 74121: R INT R EXT /C EXT 1 & 1 A1 A2 B T RI CX RX/CX C EXT X indica conexão não lógica Prof. Eduardo Nunes Gonçalves Eletrônica Digital I 59
5.23 Análise de Circuitos Seqüenciais Procedimento para analisar circuitos seqüenciais: 1. Examine o diagrama do circuito a procura de estruturas conhecidas como contadores e registradores. 2. Determine os níveis lógicos nas entradas dos FF s antes da incidência do primeiro pulso de clock. 3. Use estes níveis para determinar o comportamento dos FF s após a incidência do primeiro pulso de clock. 4. Repita os passos 2 e 3 para cada pulso de clock subseqüente. Exemplo 5.17 1 J X 1 J Y 1 J Z 1 K X 1 K Y K Z Clock de 1KHz Entradas vinda dos FF s X Y Z T MM 1 D W W R T C T t p =3,5ms Prof. Eduardo Nunes Gonçalves Eletrônica Digital I 60
B 1 5.24 Multivibrador Astável Os flip-flops possuem dois estados estáveis e por isso também são conhecidos como multivibradores biestáveis. Já os multivibradores monoestáveis recebem essa denominação por possuírem apenas um estado estável. Existe também um tipo de multivibrador que não possui nenhum estado estável, sendo conhecido como multivibrador astável ou free-running. O multivibrador astável é bastante utilizado para gerar o sinal de clock para os circuitos síncronos. Oscilador Schmitt-Trigger +5v R 14 1 2 4V V OUT 0V 7 C 7414 Frequência 0,8/RC (R 500Ω) 74LS14 Frequência 0,8/RC (R 2KΩ) 74HC14 Frequência 1,2/RC (R 10MΩ) C 100pF CI Temporizador 555 como um Multivibrador Astável +5V R A R B 4 8 7 3 SAÍDA 6 2 Temporizador 555 C 5 1 0,01μF 5V 0V t T t 2 t 1 = 0,693R B C B t 2 = 0,693(R A +R B )C B T = t 1 + t 2 Frequência = 1/T R A 1KΩ R A + R B B 6,6MΩ C 600pF Prof. Eduardo Nunes Gonçalves Eletrônica Digital I 61