Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

DIEGO - FLIPFLOP

O Latch S-R Um latch é um tipo de dispositivo lógico biestável ou multivibrador. Um latch S-R (SET-RE-SET) com entrada ativa em nível ALTO é formado com duas portas NOR tendo acoplamento cru-zado, conforme mostra a Figura 7-1(a); um latch com entrada ativa em nível BAIXO é for-mado com duas portas NAND tendo acoplamento cruzado, conforme mostra a Figura 7-1(b). Observe que a saída de cada porta está conectada à entrada da porta oposta. Isso produz uma reali-mentação regenerativa que é características de todos os latches e flip-flops. S-R Para explicar a operação do latch, usaremos o latch de portas NAND na Figura 7-1(b). Esse latch é redesenhado na Figura 7-2 com o símbolo equivalente da OR negativa usado para as por-tas NAND. Isso é feito porque os níveis BAIXOs nas linhas e , são as entradas de ativação. O latch mostrado na Figura 7-2 tem duas entradas, e , e duas saídas Q e. Vamos iniciar considerando que as duas entradas e a saída Q estejam em nível ALTO. Como a saída Q é conec-tada de volta na entrada da porta G 2 e a entrada é nível ALTO, a saída de G 2 tem que ser nível BAIXO. Essa saída em nível BAIXO é acoplada de volta na entrada da porta G 1 , garantindo que sua saída seja nível ALTO. R Q R S R S Quando a saída Q for nível ALTO, o latch está no estado SET. Ele permanece nesse estado in-definidamente até que um nível BAIXO seja temporariamente aplicado na entrada. Com um ní-vel BAIXO na entrada e um nível ALTO na entrada , a saída da porta G 2 é forçada para o ní-S R, R 7-1 LATCHES O latch é um tipo de dispositivo de armazenamento temporário que tem dois estados estáveis (biestável) e é normalmente colocado numa categoria separada dos flip-flops. Os latches são si-milares aos flip-flops porque eles são dispositivos biestáveis que podem permanecer em um dos dois estados estáveis usando uma configuração de realimentação, na qual as saídas são conecta-das de volta às entradas opostas. A principal diferença entre os latches e os flip-flops é o método usado para a mudança de estado deles. Ao final do estudo desta seção você deverá ser capaz de: ■ Explicar a operação de um latch S-R básico ■ Explicar a operação de um latch S-R imple-mentado com portas lógicas ■ Explicar a operação de um latch D implementado com portas ló-gicas ■ Implementar um latch S-R ou D com portas lógicas ■ Descrever os CIs 74LS279 e 74LS75 (quatro latches) NOTA: COMPUTAÇÃO Os latches são algumas vezes usados em sistemas de compu-tador para a multiplexação de dados num barramento. Por exemplo, os dados que entram no computador a partir de uma fonte externa têm que compar-tilhar o barramento de dados com os dados de outras fontes. Quando o barramento de dados se torna indisponível para uma fonte externa, o dado existente tem que ser temporariamente armazenado e os latches coloca-dos entre a fonte externa e o barramento de dados podem ser usados para esse fim. Quan-do o barramento de dados está indisponível para a fonte exter-na, os latches têm que ser des-conectados do barramento usando um método conhecido por tristate. Quando o barra-mento de dados se torna dispo-nível, os dados externos passam através dos latches, originando assim a denominação de latch transparente. O latch D imple-mentado com portas realiza es-sa função porque quando ele es-tá habilitado, o dado em sua en-trada aparece na saída como se existisse uma conexão direta através dele. O dado na entrada é armazenado logo que o latch seja desabilitado. FIGURA 7-1 Duas versões de latches S-R (SET e RESET). Abra o arquivo F07-01 e verifique a operação dos dois latches. (a) Latch S-R com entrada ativa em nível ALTO. R S Q Q (b) Latch S-R com entrada ativa em nível BAIXO. S R Q Q FIGURA 7-2 Latch com portas OR negativa que equivale ao de portas NAND na Figura 7-1(b). S-R Q Q S R G 1 G 2

388 7-1 ■ S I S T E M A S D I G I TA I S LATCHES O latch é um tipo de dispositivo de armazenamento temporário que tem dois estados estáveis (biestável) e é normalmente colocado numa categoria separada dos flip-flops. Os latches são similares aos flip-flops porque eles são dispositivos biestáveis que podem permanecer em um dos dois estados estáveis usando uma configuração de realimentação, na qual as saídas são conectadas de volta às entradas opostas. A principal diferença entre os latches e os flip-flops é o método usado para a mudança de estado deles. Ao final do estudo desta seção você deverá ser capaz de: Explicar a operação de um latch S-R básico ■ Explicar a operação de um latch S-R implementado com portas lógicas ■ Explicar a operação de um latch D implementado com portas lógicas ■ Implementar um latch S-R ou D com portas lógicas ■ Descrever os CIs 74LS279 e 74LS75 (quatro latches) ■ O Latch S-R NOTA: COMPUTAÇÃO Os latches são algumas vezes usados em sistemas de computador para a multiplexação de dados num barramento. Por exemplo, os dados que entram no computador a partir de uma fonte externa têm que compartilhar o barramento de dados com os dados de outras fontes. Quando o barramento de dados se torna indisponível para uma fonte externa, o dado existente tem que ser temporariamente armazenado e os latches colocados entre a fonte externa e o barramento de dados podem ser usados para esse fim. Quando o barramento de dados está indisponível para a fonte externa, os latches têm que ser desconectados do barramento usando um método conhecido por tristate. Quando o barramento de dados se torna disponível, os dados externos passam através dos latches, originando assim a denominação de latch transparente. O latch D implementado com portas realiza essa função porque quando ele está habilitado, o dado em sua entrada aparece na saída como se existisse uma conexão direta através dele. O dado na entrada é armazenado logo que o latch seja desabilitado. Um latch é um tipo de dispositivo lógico biestável ou multivibrador. Um latch S-R (SET-RESET) com entrada ativa em nível ALTO é formado com duas portas NOR tendo acoplamento cruzado, conforme mostra a Figura 7–1(a); um latch S-R com entrada ativa em nível BAIXO é formado com duas portas NAND tendo acoplamento cruzado, conforme mostra a Figura 7–1(b). Observe que a saída de cada porta está conectada à entrada da porta oposta. Isso produz uma realimentação regenerativa que é características de todos os latches e flip-flops. R S S Q Q Q Q R (a) Latch S-R com entrada ativa em nível ALTO. (b) Latch S-R com entrada ativa em nível BAIXO. 䉱 FIGURA 7–1 Duas versões de latches S-R (SET e RESET). Abra o arquivo F07-01 e verifique a operação dos dois latches. Para explicar a operação do latch, usaremos o latch de portas NAND na Figura 7–1(b). Esse latch é redesenhado na Figura 7–2 com o símbolo equivalente da OR negativa usado para as portas NAND. Isso é feito porque os níveis BAIXOs nas linhas S e R , são as entradas de ativação. O latch mostrado na Figura 7–2 tem duas entradas, S e R , e duas saídas Q e Q . Vamos iniciar considerando que as duas entradas e a saída Q estejam em nível ALTO. Como a saída Q é conectada de volta na entrada da porta G2 e a entrada R é nível ALTO, a saída de G2 tem que ser nível BAIXO. Essa saída em nível BAIXO é acoplada de volta na entrada da porta G1, garantindo que sua saída seja nível ALTO. S G1 Q G2 Q 䉴 FIGURA 7–2 Latch S-R com portas OR negativa que equivale ao de portas NAND na Figura 7–1(b). R Quando a saída Q for nível ALTO, o latch está no estado SET. Ele permanece nesse estado indefinidamente até que um nível BAIXO seja temporariamente aplicado na entrada R. Com um nível BAIXO na entrada R, e um nível ALTO na entrada S , a saída da porta G2 é forçada para o ní- C A P Í T U LO 7 • L ATC H E S , F L I P- F LO P S E T E M P O R I Z A D O R E S vel ALTO. Esse nível ALTO na saída Q é acoplado de volta para uma entrada da porta G1 e como a entrada S é nível ALTO a saída de G1 vai para o nível BAIXO. Esse nível BAIXO na saída Q é então acoplado de volta para uma entrada de G2, garantido que a saída Q permaneça em nível ALTO mesmo quando o nível BAIXO na entrada R é removido. Quando a saída Q é nível BAIXO, o latch está no estado de RESET. Agora o latch permanece indefinidamente no estado de RESET até que um nível BAIXO seja aplicado na entrada S . Em operação normal, as saídas de um latch são sempre complementares uma em relação a outra. ■ 389 Um latch pode permanecer em um dos seus dois estados, SET ou RESET. Quando Q for nível ALTO, Q será nível BAIXO e quando Q for nível BAIXO, Q será nível ALTO. Uma condição inválida de um latch S-R com entrada ativa em nível BAIXO ocorre quando níveis BAIXOs são aplicados em S e R ao mesmo tempo. Enquanto o nível BAIXO for mantido simultaneamente nas duas entradas, as saídas Q e Q são forçadas para nível ALTO, violando assim a operação básica de complementaridade das saídas. Além disso, se os níveis BAIXOs são liberados (desativados) simultaneamente, as duas saídas tentarão ir para nível BAIXO. Como sempre existe alguma pequena diferença no tempo de atraso de propagação das portas, uma das portas prevalecerá na transição para o estado de saída de nível BAIXO. Por sua vez, essa força a saída da porta mais lenta a permanecer em nível ALTO. Nessa situação, não podemos prever com certeza o próximo estado do latch. A Figura 7–3 ilustra a operação do latch S-R com entrada ativa em nível BAIXO para cada uma das quatro combinações possíveis de níveis nas entradas. (As três primeiras combinações são válidas, porém a última não). A Tabela 7–1 resume a operação lógica na forma de tabela-verdade. SET significa que a saída Q é nível ALTO. RESET significa que a saída Q é nível BAIXO. Momentaneamente em nível BAIXO 1 0 S Q G1 1 0 S G2 R 1 (ALTO) Q 1 0 A saída muda de estado quando S vai para nível BAIXO e permanece nesse mesmo estado após S retornar para o nível ALTO. 1 0 G1 1 O latch começa no estado de RESET (Q = 0). 1 Q S R G2 Q 0 Não ocorre transição porque o latch já está setado. O latch começa no estado de SET (Q = 1). (a) Duas possibilidades para a operação SET 1 1 0 S G1 R G2 Q 1 0 Q 1 0 S 1 A saída muda de estado quando vai R para nível BAIXO e permanece nesse mesmo estado após R retornar para o nível ALTO. 1 0 O latch começa no estado de RESET(Q = 1). G1 R G2 Q 0 Q 1 Não ocorre transição porque o latch já está resetado. O latch começa no estado de SET (Q = 0). (b) Duas possibilidades para a operação RESET 1 1 S R Q As saídas não mudam G1 de estado. O latch permanece no estado SET se previamente estava em SET e permanece no estado Q G2 RESET se previamente estava em RESET. Nível ALTO nas duas entradas (c) Condição sem alteração 1 0 S G1 Q 1 Os estados de saída são incertos quando as entradas em nível BAIXO passam para nível ALTO. 䉳 FIGURA 7–3 1 Q Os três modos de operação do 1 G2 R 0 Simultaneamente em nível BAIXO nas duas entradas (d) Condição inválida latch S-R básico (SET, RESET, repouso) e a condição inválida. 390 ■ S I S T E M A S D I G I TA I S A operação do latch de portas NOR com entradas ativas em nível ALTO mostrado na Figura 7–1(a) é similar mas requer o uso de níveis lógicos opostos. 䉴 TA B E L A 7 – 1 Tabela-verdade para um latch S-R com entradas ativas em nível BAIXO – S ENTRADAS – R SAÍDAS Q — Q COMENTÁRIOS 1 1 NC NC Repouso. O latch permanece no estado atual. 0 1 1 0 Latch no estado SET. 1 0 0 1 Latch no estado RESET. 0 0 1 1 Condição inválida. Os símbolos lógicos para os latches com entradas ativas em nível ALTO e entradas ativas em nível BAIXO são mostrados na Figura 7–4. S Q S S Q R Q R R Q 䉴 FIGURA 7–4 Símbolos lógicos para os latches S-R e S-R . (a) Latch S-R com entradas ativas em nível ALTO. (b) Latch S-R com entradas ativas em nível BAIXO. O Exemplo 7–1 ilustra como um latch S-R com entradas ativas em nível BAIXO responde às condições das entradas. Pulsos de nível BAIXO são aplicados em cada entrada numa certa seqüência e a forma de onda da saída Q resultante é observada. A condição S = 0, R = 0 é evitada porque resulta num modo de operação inválido sendo a principal desvantagem de qualquer latch do tipo SET-RESET. EXEMPLO 7–1 Se as formas de onda S e R mostradas na Figura 7–5(a) são aplicadas nas entradas do latch visto na Figura 7–4(b), determine a forma de onda observada na saída Q. Considere que Q está inicialmente em nível BAIXO. S (a) R (b) Q 䉱 FIGURA 7–5 Solução Problema relacionado* Veja a Figura 7–5(b). Determine a saída Q de um latch S-R com entradas ativas em nível ALTO se as formas de onda mostradas na Figura 7–5(a) forem invertidas e aplicadas nas entradas. * As respostas estão no final do capítulo. C A P Í T U LO 7 • L ATC H E S , F L I P- F LO P S E T E M P O R I Z A D O R E S ■ 391 Uma Aplicação Um Latch Usado como Eliminador de Trepidação de Contato Um bom exemplo de uma aplicação de um latch S-R é na eliminação do “repique” (bounce) do contato de uma chave mecânica. Quando o pólo de uma chave comuta fazendo fechar o contato, este contato vibra fisicamente ou repica várias vezes antes de finalmente estabelecer um contato firme. Embora esses repiques sejam de durações muito curtas, eles produzem spikes de tensão que freqüentemente são inaceitáveis em sistemas digitais. Essa situação é ilustrada na Figura 7–6(a). +VCC +VCC +V R1 R R2 2 2 S 0 Transições de tensão errôneas devido ao repique do contato 1 Q S R Posição Posição de 1 para 2 de 2 para 1 R 1 (b) Circuito eliminador de repique de contato (a) Repique do contato de uma chave 䉳 FIGURA 7–6 Uso do latch S-R para eliminar o repique do contato de uma chave. Um latch S-R pode ser usado para eliminar os efeitos do repique de uma chave como mostra a Figura 7–6(b). A chave está normalmente na posição 1, mantendo a entrada R em nível BAIXO e o latch no estado de RESET. Quando a chave é comutada para a posição 2, R vai para nível ALTO por causa do resistor de pull-up para VCC e S vai para nível BAIXO no primeiro contato. Embora S permaneça em nível BAIXO por um intervalo muito curto de tempo antes de a chave repicar, isso é suficiente para setar o latch. Qualquer spike de tensão posterior na entrada S em função do repique da chave, não afeta o latch, que permanece setado. Observe que a saída Q do latch fornece uma transição “limpa” (única) do nível BAIXO para o alto, eliminando assim os spikes de tensão provocados pelo repique do contato. De forma similar, uma transição limpa do nível ALTO para o BAIXO ocorre quando a chave comuta de volta para a posição 1. LATCH SET-RESET (74LS279) O CI 74LS279 contém quatro latches S-R representado pelo diagrama lógico visto na Figura 7–7(a) e o diagrama de pinos na parte (b). Observe que dois dos latches têm duas entradas S . (2) (3) (1) (6) (5) (11) (12) (10) (15) (14) 1S1 1S2 (4) 1Q 1R 2S (7) VCC 4S 4R 4Q 3S2 3S1 3R 3Q 16 15 14 13 12 11 10 9 1 2 3 4 5 6 7 8 1R 1S1 1S2 1Q 2R 2S 2Q GND 2Q 2R 3S1 3S2 (9) 3Q 3R 4S (13) 4Q 4R (a) Diagrama lógico 䉱 FIGURA 7–7 CI contendo quatro latches S-R (74LS279). (b) Diagrama de pinos 392 ■ S I S T E M A S D I G I TA I S Um Latch S-R Controlado Um latch controlado necessita de uma entrada de habilitação, EN (a letra G também é usada para indicar uma entrada de habilitação). O diagrama lógico e o símbolo lógico para um latch S-R controlado são mostrados na Figura 7–8. As entradas S e R controlam o estado para o qual o latch irá quando um nível ALTO é aplicado na entrada EN. O latch não mudará de estado até que EN seja nível ALTO; porém enquanto essa entrada permanecer em nível ALTO, a saída é determinada pelos estados das entradas S e R. Nesse circuito o estado inválido ocorre quando S e R forem simultaneamente nível ALTO. S Q S Q EN EN Q R R Q 䉴 FIGURA 7–8 Um latch S-R controlado. (a) Diagrama lógico (b) Símbolo lógico EXEMPLO 7–2 Determine a forma de onda da saída Q se as entradas mostradas na Figura 7–9(a) forem aplicadas no latch S-R controlado que está inicialmente resetado. S R (a) (b) EN Q 䉱 FIGURA 7–9 A forma de onda Q é mostrada na Figura 7–9(b). Quando S for nível ALTO e R for nível BAIXO, um nível ALTO na entrada EN seta o latch. Quando S for nível BAIXO e R for nível ALTO, um nível ALTO na entrada EN reseta o latch. Solução Problema relacionado Determine a saída Q de um latch S-R controlado se as entradas S e R mostradas na Figura 7–9(a) forem invertidas. Latch D controlado Um outro tipo de latch controlado é denominado de latch D. Esse difere do latch S-R por ter apenas uma entrada além de EN. A entrada mencionada é denominada de entrada D (dado). A Figura 7–10 contém o diagrama lógico e o símbolo lógico de um latch D. Quando a entrada D for nível ALTO e a entrada EN for nível ALTO, o latch será setado. Quando a entrada D for nível BAIXO e a entrada EN for nível ALTO, o latch será resetado. Dito de uma outra forma, a saída Q segue a entrada D quando EN for nível ALTO. C A P Í T U LO 7 • L ATC H E S , F L I P- F LO P S E T E M P O R I Z A D O R E S ■ 393 D D Q EN Q EN Q Q 䉳 FIGURA 7–10 (a) Diagrama lógico Um latch D controlado. (b) Símbolo lógico EXEMPLO 7–3 Determine a forma de onda da saída Q se as entradas mostradas na Figura 7–11(a) são aplicadas num latch D controlado, o qual inicialmente está resetado. D (a) EN 䉴 FIGURA 7–11 (b) Q Solução A forma de onda Q é mostrada na Figura 7–11(b). Quando D for nível ALTO e EN for nível ALTO, Q vai para o nível ALTO. Quando D for nível BAIXO e EN for nível ALTO, Q vai para nível BAIXO. Quando EN for nível BAIXO, o estado do latch não é afetado pela entrada D. Problema relacionado Determine a saída Q do latch D controlado se a entrada D vista na Figura 7–11 for invertida. LATCH D (74LS75) Um exemplo de um latch D controlado é o CI 74LS75 representado pelo símbolo lógico mostrado na Figura 7–12(a). Esse dispositivo tem quatro latches. Observe que cada entrada EN ativa em nível ALTO é compartilhada por dois latches e é indicada como uma entrada de controle (C). A tabela-verdade para cada latch é mostrada na Figura 7–12(b). O X na tabela-verdade representa uma condição “don’t care”. Nesse caso, quando a entrada EN for nível BAIXO, não importa o que tem na entrada D porque as saídas não são afetadas permanecendo nos estados em que estavam. 1D EN (2) (13) 1D C1 C2 2D 3D EN (3) (6) (4) 2D 3D C3 C4 4D (7) 4D (a) Símbolo lógico (16) (1) (15) (14) (10) (11) (9) (8) 1Q 1Q 2Q Entradas Saídas D EN Q Q Comentários 0 1 X 1 1 0 0 1 Q0 1 0 Q0 RESET SET Repouso 2Q 3Q 3Q 4Q 4Q Nota: Q0 é o nível da saída anterior antes que as condições de entrada fossem estabelecidas. (b) Tabela-verdade (cada latch) 䉳 FIGURA 7–12 Quatro latches D controlados (74LS75). 394 ■ S I S T E M A S D I G I TA I S SEÇÃO 7–1 REVISÃO As respostas estão no final do capítulo. 7-2 1. Faça uma lista com três tipos de latches. 2. Desenvolva a tabela-verdade para o latch S-R com entradas ativas em nível ALTO mostrado na Figura 7–1(a). 3. Qual é a saída Q de um latch D quando EN = 1 e D = 1? FLIP-FLOPS DISPARADOS POR BORDA Os flip-flops são dispositivos biestáveis síncronos, também conhecidos como multivibradores biestáveis. Nesse caso, o termo síncrono significa que a saída muda de estado apenas no memento especificado pela entrada de disparo denominada de clock (CLK), a qual é indicada como uma entrada de controle (C); ou seja, as mudanças na saída ocorrem em sincronismo com o clock. Ao final do estudo desta seção você deverá ser capaz de: ■ Definir clock ■ Definir flip-flop disparado por borda ■ Explicar a diferença entre um flipflop e um latch ■ Identificar um flip-flop disparado por borda pelo seu símbolo lógico ■ Discutir a diferença entre um flip-flop disparado por borda positiva e um disparado por borda negativa ■ Discutir e comparar a operação de flip-flops S-R, D e J-K disparados por borda e explicar as diferenças entre as suas tabelas-verdade ■ Discutir as entradas assíncronas de um flip-flop ■ Descrever os CIs de flip-flops 74HC74 e 74HC112 O indicador de entrada dinâmica 䉯 significa que o flip-flop muda de estado apenas na borda de um pulso de clock. Um flip-flop disparado por borda muda de estado na borda positiva (borda de subida) ou na borda negativa (borda de descida) do pulso de clock e é sensível às entradas apenas nas transições do clock. Essa seção aborda três tipos de flip-flops disparados por borda: S-R, D e J-K. Embora o flip-flop S-R não esteja disponível na forma de CI, ele é a base dos flip-flops D e J-K. O símbolo lógico para todos esses flip-flops são mostrados na Figura 7–13. Observe que cada tipo pode ser disparado na borda positiva (sem o pequeno círculo na entrada C) ou disparado na borda negativa (com o pequeno círculo na entrada C). O detalhe do símbolo lógico na identificação de um flipflop disparado por borda é o pequeno triângulo dentro do bloco na entrada de clock (C). Esse triângulo é denominado de indicador de entrada dinâmica. Indicador de entrada dinâmica Q S D C 䉴 FIGURA 7–13 Símbolos lógicos de flip-flops disparados por borda (parte superior: disparo por borda positiva; parte inferior: disparo por borda negativa. Q S Q D C (a) S-R C Q K Q Q J Q C Q C Q (b) D Q J C R R Q K (c) J-K Q C A P Í T U LO 7 • L ATC H E S , F L I P- F LO P S E T E M P O R I Z A D O R E S ■ 395 Flip-Flop S-R Disparado por Borda As entradas S e R do flip-flop S-R são denominadas entradas síncronas porque os dados nessas entradas são transferidos para a saída do flip-flop apenas na borda de disparo do pulso de clock. Quando S for nível ALTO e R for nível BAIXO, a saída Q vai para nível ALTO na borda de disparo do pulso de clock, estando o flip-flop setado. Quando S for nível BAIXO e R for nível ALTO, a saída Q vai para o nível BAIXO na borda de disparo do pulso de clock, estando o flip-flop resetado. Quando as entradas S e R estiverem em nível BAIXO, a saída não muda de estado permanecendo no estado anterior. Uma condição inválida existe quando S e R forem nível ALTO. Essa operação básica de um flip-flop disparado por borda positiva é ilustrada na Figura 7–14, sendo a Tabela 7–2 a tabela-verdade para esse tipo de flip-flop. Lembre-se, o flip-flop não pode mudar de estado exceto na borda de disparo de um pulso de clock. As entradas S e R podem ser alteradas em qualquer momento que a entrada de clock for nível BAIXO ou ALTO (exceto por um intervalo muito curto em torno da transição de disparo do clock) sem afetar a saída. 1 CLK Q 1 0 S 0 t0 C t0 0 Q 1 (a) Com S = 1 e R = 0 o flip-flop é setado na borda positiva do clock (caso já esteja setado, permanecerá setado). 0 S t0 C t0 R Q 1 0 S Q R (b) Com S = 0 e R = 1 o flip-flop é resetado na borda positiva do clock (caso já esteja resetado, permanecerá resetado). Q = Q0 (repouso) C t0 0 R Q (c) Com S = 0 e R = 0 o flip-flop não muda de estado (caso esteja setado, permanecerá setado; caso esteja resetado, permanecerá resetado). 䉱 FIGURA 7–14 Operação de um flip-flop S-R disparado por borda positiva. S ENTRADAS R SAÍDAS CLK Q COMENTÁRIOS 0 0 X Q0 Q0 Repouso 0 1 ↑ 0 1 RESET 1 0 ↑ 1 0 SET 1 1 ↑ ? ? Inválido transição do clock do nível BAIXO para o nível ALTO X irrelevante (“don’t care”) Q0 NOTA: COMPUTAÇÃO As memórias semicondutoras nos computadores consistem de um grande número de células individuais. Cada célula de armazenamento mantém um nível 1 ou um nível 0. Um tipo de memória é a Memória de Acesso Aleatório Estática (SRAM) que usa flip-flops para as células de armazenamento porque um flip-flop retém qualquer um dos dois estados indefinidamente enquanto a alimentação cc estiver aplicada, daí o termo estática. Esse tipo de memória é classificado como memória volátil porque todos os dados armazenados são perdidos quando a alimentação é desligada. Um outro tipo de memória, a Memória de Acesso Aleatório Dinâmica ou DRAM, usa capacitância em vez de flip-flops como elemento básico de armazenamento e tem que ser renovada (refresh) periodicamente para manter o dado armazenado. 䉳 TA B E L A 7 – 2 — Q ↑ Um flip-flop S-R não pode ter as entradas S e R em nível ALTO ao mesmo tempo. nível de saída antes da transição do clock A operação e a tabela-verdade para um flip-flop S-R disparado por borda negativa são as mesmas que para um dispositivo disparado por borda positiva exceto que a borda de descida do pulso de clock é a borda de disparo. Tabela-verdade para um flip-flop S-R disparado por borda positiva 396 ■ S I S T E M A S D I G I TA I S EXEMPLO 7–4 Determine as formas de onda das saídas Q e Q do flip-flop mostrado na Figura 7–15 para as entradas S, R e CLK mostradas na Figura 7–16(a). Considere que o flip-flop disparado por borda positiva esteja inicialmente resetado. Q S C Q R 䉴 FIGURA 7–15 1 CLK S 0 1 2 3 4 5 6 1 0 (a) R 1 0 1 Q Q (b) 0 1 0 䉱 FIGURA 7–16 1. No momento do pulso 1 de clock, S é nível BAIXO e R é nível BAIXO, assim Q não muda de estado. 2. No momento do pulso 2 de clock, S é nível BAIXO e R é nível ALTO, assim Q permanece em nível BAIXO (RESET). 3. No momento do pulso 3 de clock, S é nível ALTO e R é nível BAIXO, assim Q vai para nível ALTO (SET). 4. No momento do pulso 4 de clock, S é nível BAIXO e R é nível ALTO, assim Q vai para nível BAIXO (RESET). 5. No momento do pulso 5 de clock, S é nível ALTO e R é nível BAIXO, assim Q vai para nível ALTO (SET). 6. No momento do pulso 6 de clock, S é nível ALTO e R é nível BAIXO, assim Q permanece em nível ALTO. Solução Uma vez determinada a saída Q, Q é facilmente determinada visto que ela é simplesmente o complemento da saída Q. As formas de onda resultantes para Q e Q são mostradas na Figura 7–16(b) para as formas de onda de entrada dadas na parte (a). Problema relacionado Determine Q e Q para as entradas S e R dadas de acordo com a Figura 7–16(a) se o flipflop for um dispositivo disparado por borda negativa. Um Método de Disparo por Borda Uma implementação simplificada de um flip-flop S-R disparado por borda é ilustrada na Figura 7–17(a) e é usada para demonstrar o conceito de disparo por borda. Essa abordagem tomando como referência o flip-flop S-R não implica que ele seja o tipo mais importante. Na realidade, os flip-flops D e J-K são comercializados na forma de CI e são mais amplamente usados que o tipo C A P Í T U LO 7 • L ATC H E S , F L I P- F LO P S E T E M P O R I Z A D O R E S ■ 397 S-R. Entretanto, é importante entender o método para o tipo S-R porque os flip-flops D e J-K são derivados do flip-flop S-R. Observe que o flip-flop S-R difere do latch S-R controlado apenas no fato de que o primeiro tem um detector de transição de pulso. S CLK G1 G3 Q G4 Q Detector de transição de pulso R G2 Portas direcionadoras Latch (a) Um diagrama lógico simplificado para um flip-flop S-R disparado por borda positiva. Atraso Pulso curto (spike) produzido pelo atraso (quando as duas entradas da porta estiverem no nível ALTO) CLK 䉳 FIGURA 7–17 (b) Um tipo de detector de transição de pulso. Um tipo básico de detector de transição de pulso é mostrado na Figura 7–17(b). Como podemos ver, existe um pequeno atraso numa entrada da porta NAND de forma que o pulso de clock invertido chega à entrada da porta alguns nanossegundos depois do pulso de clock original. Esse circuito produz um spike de duração muito curta na transição positiva do pulso de clock. Num flip-flop disparado por borda negativa, o pulso de clock é invertido primeiro, produzindo assim um spike na borda negativa. O circuito dado na Figura 7–17 é dividido em duas seções, uma denominada Portas Direcionadoras e a outra denominada Latch. As portas direcionadoras encaminham, ou direcionam, o spike de clock para a entrada da porta G3 ou para a entrada da porta G4 dependendo do estado das entradas S e R. Para entender a operação desse flip-flop, comece admitindo que ele está no estado de RESET (Q = 0) e que as entradas S, R e CLK são todas nível BAIXO. Para essa condição, as saídas das portas G1 e G2 estão em nível ALTO. O nível BAIXO na saída Q é acoplado de volta numa entrada da porta G4 tornando a saída Q nível ALTO. Como Q está em nível ALTO, as duas entradas da porta G3 estão em nível ALTO (lembre-se que a saída da porta G1 é nível ALTO), mantendo a saída Q em nível BAIXO. Se um pulso for aplicado na entrada CLK, as saídas das portas G1 e G2 permanecem em nível ALTO porque elas são desabilitadas pelo nível BAIXO presente nas entradas S e R; portanto, não há mudança no estado do flip-flop (ele permanece no estado resetado). Agora vamos fazer com que S seja nível ALTO, deixando R em nível BAIXO e aplicando um pulso de clock. Como a entrada S para a porta G1 é nível ALTO, a saída da porta G1 vai para nível BAIXO por um intervalo de tempo muito curto (spike) quando CLK vai para nível ALTO, fazendo com que a saída Q vá para nível ALTO. Estando agora as duas entradas da porta G4 em nível ALTO (lembre-se que a saída de G2 é nível ALTO porque R é nível BAIXO), forçando a saída Q para nível BAIXO. Esse nível BAIXO em Q é acoplado de volta para uma entrada da porta G3, garantido que a saída Q seja mantida em nível ALTO. O flip-flop agora está no estado SET. A Figura 7–18 ilustra as transições de nível lógico que acontecem dentro do flip-flop para essa condição. Em seguida vamos tornar S nível BAIXO e R nível ALTO e aplicar um pulso de clock. Como a entrada R agora é nível ALTO, a borda positiva do clock produz um spike negativo na saída da porta G2, fazendo com que a saída Q vá para nível ALTO. Por causa desse nível ALTO em Q , as duas entradas da porta G3 estão em nível ALTO (lembre-se, a saída da porta G1 é nível ALTO por causa do nível BAIXO em S), forçando a saída Q para o nível BAIXO. Esse nível BAIXO em Q é acoplado de volta numa das entradas da porta G4, garantido que Q permaneça em nível ALTO. O flip-flop agora está no estado de RESET. Disparo por borda. NOTA: COMPUTAÇÃO Todas as operações lógicas que são realizadas com hardware também podem ser implementadas por software. Por exemplo, a operação de um flip-flop J-K pode ser realizada com instruções específicas de computador. Se dois bits forem usados para representar as entradas J e K, o computador não alteraria o bit de saída (representando a saída Q) para uma entrada 00, esse bit de saída seria setado (1) para uma entrada 10, o bit de saída seria resetado (0) para uma entrada 01 e o mesmo bit seria complementado para uma entrada 11. Embora não possa ser comum o uso de um computador para simular um flip-flop, a questão é que todas as operações de hardware podem ser simuladas usando software. 398 ■ S I S T E M A S D I G I TA I S Esta porta está habilitada Este spike seta o flip-flop 1 Nível ALTO (1) S Borda de disparo Detector de transição de pulso 1 CLK 0 1 0 G1 1 Q G3 Spike positivo 0 1 䉴 FIGURA 7–18 Flip-flop realizando uma transição do estado RESET para o estado SET na borda positiva do pulso de clock. 0 G2 R Nível BAIXO (0) Nível ALTO Q G4 0 Esta porta está desabilitada porque R é nível BAIXO A Figura 7–19 ilustra as transições de nível lógico que ocorrem dentro do flip-flop para essa condição. Assim como com o latch controlado, uma condição inválida existe se um pulso de clock ocorrer quando as entrada S e R estiverem em nível ALTO ao mesmo tempo. Essa é a principal desvantagem do flip-flop S-R. Esta porta está desabilitada porque S é nível BAIXO Nível BAIXO (0) S Borda de disparo 1 CLK 0 Detector de transição de pulso 1 Nível ALTO Q G3 0 1 0 䉴 FIGURA 7–19 R Nível ALTO (1) Flip-flop realizando uma transição do estado SET para o estado RESET na borda positiva do pulso de clock. G1 1 Q G4 G2 0 1 Este spike reseta o flip-flop 0 Esta porta está habilitada Flip-flop D Disparado por Borda A saída Q de um flip-flop D considera o estado da entrada D na borda de disparo do clock. O flip-flop D é usado quando um único bit de dado (1 ou 0) é para ser armazenado. A adição de um inversor num flip-flop S-R cria um flip-flop D básico, conforme a Figura 7–20, a qual mostra um tipo disparado por borda. D 䉴 FIGURA 7–20 Um flip-flop D disparado por borda positiva construído a partir de um flip-flop S-R e um inversor. S CLK Q C R Q Observe que o flip-flop na Figura 7–20 tem apenas uma entrada, a entrada D, além do clock. Caso exista um nível ALTO na entrada D quando um pulso de clock é aplicado, o flip-flop será setado sendo o nível ALTO na entrada D é armazenado pelo flip-flop na borda positiva do pul- C A P Í T U LO 7 • L ATC H E S , F L I P- F LO P S E T E M P O R I Z A D O R E S ■ 399 so de clock. Caso exista um nível BAIXO na entrada D quando o pulso de clock é aplicado, o flip-flop será resetado sendo o nível BAIXO na entrada D armazenado pelo flip-flop na borda de subida do pulso de clock. No estado SET o flip-flop armazena um nível 1 e no estado RESET ele armazena um nível 0. A operação lógica do flip-flop D disparado por borda positiva é resumida na Tabela 7–3. A operação de um dispositivo disparado por borda negativa é evidentemente a mesma, exceto que o disparo ocorre na borda de descida do pulso de clock. Lembre-se, a saída Q segue a entrada D na borda ativa ou de disparo do clock. ENTRADAS D CLK ↑ SAÍDAS Q 䉳 TA B E L A 7 – 3 — Q COMENTÁRIOS 1 ↑ 1 0 SET (armazena um nível 1) 0 ↑ 0 1 RESET (armazena um nível 0) Tabela-verdade para um flip-flop D disparado por borda positiva Transição do clock do nível BAIXO para o ALTO. EXEMPLO 7–5 Dadas as formas de onda na Figura 7–21(a) para a entrada D e o clock, determine a forma de onda na saída Q se o flip-flop começar resetado. CLK Q D (a) D C (b) Q Q 䉱 FIGURA 7–21 Solução Problema relacionado A saída Q passa para o estado da entrada D no instante da transição positiva do clock. A saída resultante é mostrada na Figura 7–21(b). Determine a saída Q para o flip-flop D se a entrada D mostrada na Figura 7–21(a) for invertida. Flip-flop J-K Disparado por Borda O flip-flop J-K é versátil e é um tipo de flip-flop amplamente usado. O funcionamento de um flipflop J-K é idêntico ao do flip-flop S-R nas condições de operação de SET, RESET e repouso. A diferença é que o flip-flop J-K não tem estado inválido como o flip-flop S-R. A Figura 7–22 mostra a lógica interna básica para um flip-flop J-K disparado por borda. Ele difere do flip-flop S-R disparado por borda em que a saída Q é conectada de volta na entrada da porta G2 e a saída Q é conectada de volta na entrada da porta G1. As duas entradas de controle são denominadas J e K em homenagem a Jack Kilby, inventor do circuito integrado. Um flipflop J-K também pode ser do tipo disparado por borda negativa, caso no qual a entrada de clock é invertida. 400 ■ S I S T E M A S D I G I TA I S J 䉴 FIGURA 7–22 G1 CLK Um diagrama lógico simplificado para um flip-flop J-K disparado por borda positiva. G3 Q G4 Q Detector de transição de pulso G2 K Vamos considerar que o flip-flop na Figura 7–23 esteja resetado e que a entrada J seja nível ALTO e que a entrada K seja nível BAIXO diferentemente do que é mostrado. Quando um pulso de clock ocorre, um spike de borda de subida indicado por Q passa através da porta G1 porque Q é nível ALTO e J é nível ALTO. Isso faz com que a parte latch do flip-flop mude para o estado SET. O flip-flop agora está setado. J nível ALTO 1 2 3 Detector de transição de pulso CLK 1 G1 1 3 G3 2 No modo toggle, um flipflop J-K muda de estado a cada pulso de clock. K nível ALTO 1 2 3 3 䉴 FIGURA 7–23 Transições ilustrando a operação toggle (comutação) quando J = 1 e K = 1. Q G4 G2 Q 2 Se fizermos J nível BAIXO e K nível ALTO, o próximo spike de clock indicado por ¡ passará através da porta G2 porque Q é nível ALTO e K é nível ALTO. Isso faz com que a porção latch do flip-flop mude para o estado RESET. Se aplicarmos um nível BAIXO nas entradas J e K, o flip-flop permanecerá no atual estado quando ocorrer um pulso de clock. Um nível BAIXO nas entradas J e K resulta numa condição sem mudança. Até agora, a operação lógica do flip-flop J-K é a mesma que a do tipo S-R para as condições de SET, RESET e sem mudança. A diferença na operação ocorre quando as entrada J e K estiverem em nível ALTO. Para entender isso, considere que o flip-flop esteja no estado de RESET. O nível ALTO em Q habilita a porta G1, assim o spike de clock indicado por ¬ passa setando o flipflop. Agora existe um nível ALTO em Q, permitindo que o próximo spike de clock passe através da porta G2 e resete o flip-flop. Como podemos ver, a cada spike de clock sucessivo, o flip-flop muda para o estado oposto. Esse modo é denominado operação toggle (comutação). A Figura 7–23 ilustra as transições quando o flip-flop está no modo toggle. Um flip-flop J-K conectado para o modo toggle é denominado algumas vezes de flip-flop T. A Tabela 7–4 resume a operação lógica do flip-flop J-K na forma de tabela-verdade. Observe que não existe estado inválido como ocorre com o flip-flop S-R. Essa tabela verdade, para um dispositivo disparado por borda negativa, é idêntica a essa exceto que o flip-flop é disparado na borda de descida do pulso de clock. 䉴 TA B E L A 7 – 4 Tabela-verdade para um flip-flop J-K disparado por borda positiva do clock J 0 0 1 1 ↑ Q0 ENTRADAS K 0 1 0 1 SAÍDAS CLK Q — Q ↑ ↑ ↑ ↑ Q0 0 1 Q0 Q0 1 0 Q0 Transição do clock do nível BAIXO para o ALTO. Nível da saída antes da transição do clock. COMENTÁRIOS Repouso RESET SET Toggle C A P Í T U LO 7 • L ATC H E S , F L I P- F LO P S E T E M P O R I Z A D O R E S ■ 401 EXEMPLO 7–6 As formas de onda mostradas na Figura 7–24(a) são aplicadas nas entradas J, K e clock conforme indicado. Determine a saída Q, considerando que o flip-flop esteja inicialmente resetado. 1 CLK 0 1 J 0 1 (a) K 0 1 2 3 4 5 Q J CLK C K Q 1 Q (b) 0 Toggle Repouso Reset Set Set 䉱 FIGURA 7–24 Solução 1. Primeiro, como esse flip-flop é disparado por borda negativa, conforme indicado pelo pequeno círculo na entrada de clock, a saída Q mudará apenas na borda negativa do pulso de clock. 2. No primeiro pulso de clock, J e K estão em nível ALTO; por ser o modo toggle, Q vai para nível ALTO. 3. No pulso de clock 2, existe uma condição de entrada que coloca o flip-flop no estado de repouso, mantendo Q no nível ALTO. 4. Quando ocorre o pulso de clock 3, J é nível BAIXO e K é nível ALTO, resultando na condição de RESET; assim Q vai para nível BAIXO. 5. No pulso de clock 4, J é nível ALTO e K é nível BAIXO, resultando na condição SET; assim Q vai para nível ALTO. 6. Uma condição SET ainda existe em J e K quando ocorre o pulso de clock 5, assim Q permanece em nível ALTO. A forma de onda Q resultante é indicada na Figura 7–24(b). Problema relacionado Determine a saída Q de um flip-flop J-K se as entrada J e K mostradas na Figura 7–24(a) forem invertidas. EXEMPLO 7–7 As formas de onda vista na Figura 7–25(a) são aplicadas no flip-flop como mostrado. Determine a saída Q para o flip-flop começando no estado RESET. 402 ■ S I S T E M A S D I G I TA I S CLK J Q J C K (a) K Q Q (b) 䉱 FIGURA 7–25 Solução Problema relacionado A saída Q assume o estado determinado pelas entrada J e K na borda positiva (disparo por borda) do pulso de clock. Uma mudança em J ou K após a borda de disparo do clock não tem efeito na saída, conforme mostra a Figura 7–25(b). Troque entre si as entradas J e K e determine a saída Q resultante. Entradas Assíncronas de Preset e Clear Uma entrada preset ativa faz com que a saída Q seja nível ALTO (SET). Uma entrada clear ativa faz com que a saída Q seja nível BAIXO (RESET). Para os flip-flops discutidos, as entradas S-R, D e J-K são denominadas entradas síncronas porque os dados nessas entradas são transferidos para a saída do flip-flop apenas na borda de disparo do pulso de clock; ou seja, os dados são transferidos de forma sincronizada com o clock. A maioria dos flip-flops em circuitos integrados também tem entradas assíncronas. Essas são entradas que afetam o estado do flip-flop independente do clock. Elas são normalmente denominadas preset (PRE) e clear (CLR), ou seta direto (SD) e reseta direto (RD) por alguns fabricantes. Um nível ativo na entrada preset irá setar o flip-flop e um nível ativo na entrada clear irá resetar o flip-flop. Um símbolo lógico para um flip-flop J-K com entradas preset e clear é mostrado na Figura 7–26. Essas entradas são ativas em nível BAIXO, conforme indicado pelos pequenos círculos. Essas entradas de preset e clear têm que ser mantidas em nível ALTO para a operação síncrona. PRE Q J C 䉴 FIGURA 7–26 Símbolo lógico para um flip-flop J-K com entradas preset e clear ativas em nível BAIXO. Q K CLR C A P Í T U LO 7 • L ATC H E S , F L I P- F LO P S E T E M P O R I Z A D O R E S ■ 403 A Figura 7–27 mostra o diagrama lógico para um flip-flop J-K disparado por borda em entradas preset (PRE) e clear (CLR). Essa figura ilustra basicamente como essas entradas funcionam. Como podemos ver, elas são conectadas de forma que o efeito delas se sobrepõem ao das entradas síncronas (J, K e clock). PRE J CLK Q Detector de transição de pulso 䉳 FIGURA 7–27 Q K CLR Diagrama lógico para um flip-flop J-K básico com entradas preset e clear ativas em nível BAIXO. EXEMPLO 7–8 Para o flip-flop J-K disparado por borda positiva com entradas preset e clear visto na Figura 7–28, determine a saída Q para as entradas mostradas no diagrama de temporização na parte (a) se Q estiver inicialmente em nível BAIXO. ALTO PRE Q J C Q K CLR CLK 1 2 3 4 5 6 7 8 9 PRE (a) CLR Q (b) Preset Toggle Clear 䉱 FIGURA 7–28 Abra o arquivo F07-28 para verificar a operação. Solução 1. Durante os pulsos de clock 1, 2 e 3, preset (PRE) é nível BAIXO, mantendo o flipflop setado independente das entradas síncronas J e K. 404 ■ S I S T E M A S D I G I TA I S 2. Para os pulsos de clock 4, 5, 6 e 7 a operação toggle ocorre porque J é nível ALTO, K é nível ALTO e PRE e CLR estão nível ALTO. 3. Para os pulsos de clock 8 e 9, a entrada clear CLR é nível BAIXO, mantendo o flip-flop resetado independente das entradas síncronas. A saída Q resultante é mostrada na Figura 7–28(b). Problema relacionado Se trocarmos entre si as formas de onda de PRE e CLR na Figura 7–28(a), qual será a saída Q? Vamos analisar dois flip-flops disparados por borda específicos. Eles são representantes dos diversos tipos de flip-flops disponíveis na forma de CI e, assim como em outros dispositivos, são comercializados nas famílias lógicas CMOS e TTL. DUPLO FLIP-FLOP D (74HC74) Esse dispositivo CMOS contém dois flip-flops D idênticos que são independentes um do outro exceto pelo compartilhamento de VCC e GND. Esses flip-flops são disparados por borda positiva e têm entradas assíncronas preset e clear. Os símbolos lógicos para os flip-flops individuais dentro do encapsulamento são mostrados na Figura 7–29(a) e o símbolo lógico padrão de bloco único da ANSI/IEEE que representa o dispositivo inteiro é mostrado na parte (b). Os números dos pinos são mostrados entre parênteses. 1PRE 1D 1CLK (4) S (2) (5) D (3) 1Q C (6) R 1Q (1) 1CLR (10) 2PRE 2D 2CLK (12) (11) S D (9) C (8) R 2CLR 2Q (13) (a) Símbolos lógicos individuais 1PRE 1D 1CLK 1CLR 2PRE 2D 2CLK 2CLR (4) (2) (3) (1) (10) (12) (11) (13) S 1D C1 R (5) (6) (9) (8) 1Q 1Q 2Q 2Q 2Q (b) Símbolo lógico de bloco ˙nico Nota: As letras S e R dentro do bloco indicam que PRE seta e CLR reseta. 䉱 FIGURA 7–29 Símbolos lógicos para o duplo flip-flop D disparado por borda positiva 74AHC74. C A P Í T U LO 7 • L ATC H E S , F L I P- F LO P S E T E M P O R I Z A D O R E S ■ 405 DUPLO FLIP-FLOP J-K (74HC112) Esse dispositivo tem dois flip-flops idênticos que são disparados por borda negativa e têm entradas assíncronas preset e clear ativas em nível BAIXO. Os símbolos lógicos são mostrados na Figura 7–30. (4) 1PRE 1J 1CLK 1K 1CLR (2) S (1) (3) (5) J 1Q C K (6) R 1Q (15) (10) 2PRE 2J 2CLK 2K 2CLR (12) (13) (11) S J (9) 2Q C K (7) R 2Q (14) (a) Símbolos lógicos individuais 1PRE 1J 1CLK 1K 1CLR 2PRE 2J 2CLK 2K 2CLR (4) (2) (1) (3) (15) (10) (12) (13) (11) (14) S 1J (5) C1 1K R (6) (9) (7) 1Q 1Q 2Q 2Q (b) Símbolo lógico de bloco único 䉳 FIGURA 7–30 Símbolos lógicos para o CI com duplo flip-flop J-K disparado por borda negativa 74HC112. EXEMPLO 7–9 As formas de onda de 1J, 1K, 1 PRE e 1 CLR mostradas na Figura 7–31(a) são aplicadas em um dos flip-flops disparados por borda negativa do CI 74HC112. Determine a forma de onda da saída 1Q. Pino 1 (1CLK) Pino 2 (1J ) Pino 3 (1K ) Pino 4 (1PRE) (a) Pino 15 (1CLR) (b) Pino 5 (1Q) 䉱 FIGURA 7–31 Solução Problema relacionado A forma de onda 1Q resultante é mostrada na Figura 7–31(b). Observe que cada vez que um nível BAIXO é aplicado em 1 PRE ou 1 CLR , o flip-flop é setado ou resetado independente dos estados das outras entradas. Determine a forma de onda da saída 1Q se as formas de onda para 1 PRE e 1 CLR são trocadas entre si. 406 ■ S I S T E M A S D I G I TA I S SEÇÃO 7–2 REVISÃO 1. Descreva a principal diferença entre um latch S-R controlado e um flip-flop disparado por borda. 2. Em que um flip-flop J-K difere de um flip-flop S-R em sua operação básica? 3. Considere que o flip-flop mostrado na Figura 7–21 seja disparado por borda negativa. Descreva a forma de onda de saída para as mesmas formas de onda para as entradas D e CLK. 7-3 CARACTERÍSTICAS DE OPERAÇÃO DOS FLIP-FLOPS O desempenho, os requisitos de operação e as limitações dos flip-flops são especificados por diversas características de operação ou parâmetros encontrados nas folhas de dados dos dispositivos. Geralmente, essas especificações são aplicáveis a todos os flip-flops CMOS e TTL. Ao final do estudo desta seção você deverá ser capaz de: ■ Definir tempo de atraso de propagação ■ Explicar as diversas especificações do tempo de atraso de propagação ■ Definir tempo de setup e discutir como ele limita a operação do flip-flop ■ Definir tempo de hold e discutir como ele limita a operação do flip-flop ■ Discutir o significado de freqüência de clock máxima ■ Discutir as diversas especificações de largura de pulso? Definir dissipação de potência e calcular o seu valor para um dispositivo especificado ■ Comparar diversas séries de flip-flops em termos dos seus parâmetros de operação Tempos de Atraso de Propagação Um tempo de atraso de propagação é o intervalo de tempo necessário após a aplicação de um sinal de entrada até que a mudança de saída resultante ocorra. Quatro categorias de tempos de atraso de propagação são importantes na operação de um flip-flop: 1. Atraso de propagação tPLH medido a partir da borda de disparo do pulso de clock para a transição de nível BAIXO para nível ALTO na saída. Esse atraso é ilustrado na Figura 7–32(a). 2. Atraso de propagação tPHL medido a partir da borda de disparo do pulso de clock para a transição de nível ALTO para nível BAIXO na saída. Esse atraso é ilustrado na Figura 7–32(b). Ponto de 50% na borda de disparo CLK CLK Ponto de 50% na transição de Q do nível BAIXO para o ALTO Q Ponto de 50% Ponto de 50% na transição de Q do nível ALTO para o BAIXO Q tPLH tPHL (a) (b) 䉱 FIGURA 7–32 Atrasos de propagação, do clock para a saída. C A P Í T U LO 7 • L ATC H E S , F L I P- F LO P S E T E M P O R I Z A D O R E S ■ 407 3. Atraso de propagação tPLH medido a partir da borda de subida da entrada preset para a transição do nível BAIXO para nível ALTO na saída. Esse atraso é ilustrado na Figura 7–3(a) para uma entrada preset ativa em nível BAIXO. 4. Atraso de propagação tPHL medido a partir da borda de subida da entrada de clear para a transição de nível ALTO para nível BAIXO na saída. Esse atraso é ilustrado na Figura 7–33(b) para uma entrada de clear ativa em nível BAIXO. Ponto de 50% PRE Q CLR Ponto de 50% Q Ponto de 50% Ponto de 50% tPHL tPLH (a) (b) 䉱 FIGURA 7–33 Atrasos de propagação, da entrada à saída preset e da entrada à saída clear. Tempo de Setup O tempo de setup (preparação), ts, é o intervalo mínimo necessário para os níveis lógicos se manterem estáveis nas entradas (J e K, ou S e R, ou D) antes da borda de disparo do pulso de clock para que os níveis sejam confiáveis na definição do estado do flip-flop. Esse intervalo é ilustrado na Figura 7–34 para um flip-flop D. D CLK Ponto de 50% Ponto de 50% na borda de disparo Tempo de setup (ts) 䉱 FIGURA 7–34 Tempo de setup (ts). O nível lógico tem que estar presente na entrada D por um tempo igual ou maior que ts antes da borda de disparo do pulso de clock para uma entrada confiável de dados. D ICA P RÁTICA Uma vantagem de um dispositivo CMOS é que ele pode operar ao longo de uma faixa mais ampla de tensões cc de alimentação (tipicamente de 2 V a 6 V) que um dispositivo TTL e, portanto, podem ser usadas fontes de alimentação mais baratas que não necessitam ter uma regulação precisa. Podem ser usadas também baterias como fontes secundárias ou primárias para circuitos CMOS. Além disso, tensões menores implicam em dissipação de potência menor. A desvantagem é que o desempenho de dispositivos CMOS é degradado com tensões de alimentação menores. Por exemplo, a freqüência de clock máxima garantida de um flip-flop CMOS é muito menor para VCC = 2 V que para VCC = 6 V. 408 ■ S I S T E M A S D I G I TA I S Tempo de Hold O tempo de hold (manutenção), th, é o intervalo de tempo mínimo necessário para que os níveis lógicos permaneçam após a borda de disparo do pulso de clock para que os níveis sejam confiáveis na definição do estado do flip-flop. Isso é ilustrado na Figura 7–35 para um flip-flop D. Ponto de 50% D 䉴 FIGURA 7–35 Tempo de hold (th). O nível lógico tem que ser mantido na entrada D por um tempo igual ou maior que th após a borda de disparo do pulso de clock para uma operação confiável. Ponto de 50% na borda de disparo CLK Tempo de hold (th) Freqüência de Clock Máxima A freqüência de clock máxima (fmáx) é a maior taxa na qual um flip-flop pode ser disparado confiavelmente. Nas freqüências de clock acima da máxima, o flip-flop pode não ser capaz de responder de forma suficientemente rápida sendo a sua operação prejudicada. Largura de Pulso As larguras de pulso mínimas (tW) para uma operação confiável são geralmente especificadas pelo fabricante para as entradas de clock, preset e clear. Tipicamente, o clock é especificado pelos seus tempos de nível ALTO e nível BAIXO mínimos. Dissipação de Potência A dissipação de potência de qualquer circuito digital é o consumo de potência total do dispositivo. Por exemplo, se o flip-flop opera com uma fonte cc de 5 V e drena 5 mA de corrente, a dissipação de potência é P ⫽ VCC × ICC ⫽ 5 V × 5 mA ⫽ 25 mW A dissipação de potência é muito importante na maioria das aplicações nas quais a capacidade da fonte de alimentação é um parâmetro importante. Como exemplo, considere um sistema digital que utiliza dez flip-flops e que cada um dissipa 25 mW de potência. A potência total necessária é PT ⫽ 10 × 25 mW ⫽ 250 mW ⫽ 0,25 W Isso nos diz qual deve ser a capacidade de saída necessária da fonte de alimentação cc. Se os flip-flops operam com +5 V cc, então a quantidade de corrente que a fonte tem que fornecer é I = 250 mW = 50 mA 5V Temos que usar uma fonte de alimentação de +5 V cc que seja capaz de fornecer pelo menos 50 mA de corrente. Comparação das Especificações de Flip-Flops A Tabela 7–5 fornece uma comparação, em termos dos parâmetros discutidos nessa seção de quatro CIs de flip-flops CMOS e TTL do mesmo tipo. C A P Í T U LO 7 • L ATC H E S , F L I P- F LO P S E T E M P O R I Z A D O R E S 䉲 TA B E L A 7 – 5 Comparação dos parâmetros de operação para quatro famílias de CIs de flip-flops do mesmo tipo a 25ºC PARÂMETRO CM O S 74HC74A 74AHC74 TTL 74LS74A 74F74 tPHL (CLK para Q) 17 ns 4,6 ns 40 ns 6,8 ns tPLH (CLK para Q) 17 ns 4,6 ns 25 ns 8,0 ns tPHL ( CLR para Q) 18 ns 4,8 ns 40 ns 9,0 ns tPLH ( PRE para Q) 18 ns 4,8 ns 25 ns 6,1 ns ts (tempo de setup) 14 ns 5,0 ns 20 ns 2,0 ns th (tempo de hold) 3,0 ns 0,5 ns 5 ns 1,0 ns tW (CLK ALTO) 10 ns 5,0 ns 25 ns 4,0 ns tW (CLK BAIXO) 10 ns 5,0 ns 25 ns 5,0 ns tW( CLR PRE) 10 ns 5,0 ns 25 ns 4,0 ns fmáx 35 MHz 170 MHz 25 MHz 100 MHz Potência quiescente 0,012 mW 44 mW 88 mW 1,1 mW Potência com ciclo de trabalho de 50% SEÇÃO 7–3 REVISÃO 1. Defina: (a) tempo de setup (b) tempo de hold 2. Qual flip-flop em específico na Tabela 7–5 pode operar numa freqüência maior? 7-4 APLICAÇÕES DE FLIP-FLOPS Nesta seção são discutidas três aplicações gerais de flip-flops para dar ao leitor uma idéia de como eles podem ser usados. Os Capítulos 8 e 9 abordam em detalhes as aplicações de flip-flops em contadores e registradores. Ao final do estudo desta seção você deverá ser capaz de: Discutir aplicações de flip-flops no armazenamento de dados ■ Descrever como os flip-flops são usados para divisão de freqüência ■ Explicar como os flip-flops são usados em aplicações básicas de contadores ■ Armazenamento de Dados em Paralelo Uma necessidade comum em sistemas digitais é armazenar diversos bits de dados em linhas em paralelo simultaneamente num grupo de flip-flops. Essa operação é ilustrada na Figura 7–36(a) usando quatro flip-flops. Cada uma das quatro linhas paralelas de dados é conectada na entrada D de um flip-flop. As entradas de clock dos flip-flops são conectadas juntas, de forma que cada flipflop é disparado pelo mesmo pulso de clock. Nesse exemplo são usados flip-flops disparados por borda positiva, assim os dados nas entradas D são armazenados simultaneamente pelos flip-flops na borda positiva do clock, conforme indicado no diagrama de temporização visto na Figura 7–36(b). Além disso, as entradas assíncronas de reset (R) são conectadas numa linha CLR comum, a qual reseta todos os flip-flops. ■ 409 410 ■ S I S T E M A S D I G I TA I S D0 Q0 D C D0 0 D1 1 R D2 1 D1 Q1 D D3 0 C Entradas de dados em paralelo Saídas de dados em paralelo R D2 CLK Q0 Q2 D CLR Q1 C Q2 R Q3 D3 Q3 D CLK 0 0 0 Flip-flops resetados C 䉴 FIGURA 7–36 Exemplo de flip-flops usados como um registrador básico para armazenamento paralelo de dados. 0 Dados armazenados (b) R CLR (a) Esse grupo de quatro flip-flops é um exemplo de uso de um registrador básico para armazenamento de dados. Em sistemas digitais, os dados são normalmente armazenados em grupos de bits (geralmente oito ou múltiplos dele) que representam números, códigos ou outras informações. Os registradores serão abordados em detalhes no Capítulo 9. Divisão de Freqüência Uma outra aplicação de flip-flops é a divisão (redução) de freqüência de uma forma de onda periódica. Quando uma forma de onda retangular é aplicada na entrada de clock de um flip-flop J-K que é conectado no modo toggle (J = K = 1), a saída Q é uma onda quadrada com metade da freqüência do sinal na entrada de clock. Portanto, um único flip-flop pode ser usado como um dispositivo divisor por 2, conforme ilustrado na Figura 7–37. Como podemos ver, o flip-flop muda de ALTO Q J C CLK K 䉴 FIGURA 7–37 O flip-flop J-K como um dispositivo divisor por 2. Q é a metade da freqüência de CLK. CLK Q C A P Í T U LO 7 • L ATC H E S , F L I P- F LO P S E T E M P O R I Z A D O R E S ■ 411 estado a cada borda de disparo do clock (borda de disparo positiva nesse caso). Isso resulta numa saída que varia com uma freqüência que é metade da freqüência da forma de onda do clock. Divisões posteriores da freqüência de clock podem ser conseguidas usando a saída de um flipflop como entrada de clock de um segundo flip-flop, conforme mostra a Figura 7–38. A freqüência da saída QA é dividida por 2 pelo flip-flop B. Portanto, a saída QB é um quarto da freqüência da entrada de clock original. Os tempos de atraso de propagação não são mostrados nos diagramas de temporização. ALTO ALTO QA J C CLK QB J C K K Flip-flop A Flip-flop B 䉳 FIGURA 7–38 CLK Exemplo do uso de dois flip-flops J-K para dividir a freqüência de clock por 4. QA é metade da freqüência de CLK e QB é um quarto da mesma. QA QB Conectando flip-flops dessa forma, obtemos uma divisão de freqüência por 2n, onde n é o numero de flip-flops. Por exemplo, três flip-flops dividem a freqüência de clock por 23 = 8; quatro flip-flops dividem a freqüência de clock por 24 = 16; e assim por diante. EXEMPLO 7–10 Determine a forma de onda fout para o circuito dado na Figura 7–39 quando uma onda quadrada de 8 kHz for aplicada na entrada de clock do flip-flop A. ALTO J f in QA J C K Flip-flop A QB J C K Flip-flop B QC f out C K Flip-flop C 䉱 FIGURA 7–39 Solução Os três flip-flops são conectados para dividir a freqüência de entrada por oito (23 = 8) e a forma de onda de fout é mostrada na Figura 7–40. Como esses flip-flops são disparados na borda positiva, as saídas mudam na borda positiva do clock. Ocorre um pulso de saída para cada oito pulsos de entrada, assim a freqüência de saída é 1 kHz. As formas de onda de QA e QB também são mostradas. 412 ■ S I S T E M A S D I G I TA I S f in QA QB f out 䉱 FIGURA 7–40 Problema relacionado Quantos flip-flops são necessários para dividir uma freqüência por trinta e dois? Contagem Uma outra aplicação importante de flip-flops é os contadores digitais, os quais serão abordados em detalhes no Capítulo 8. O conceito é ilustrado na Figura 7–41. Os flip-flops são do tipo J-K disparados pela borda negativa. Os dois flip-flops estão inicialmente resetados. O flip-flop A comuta na transição negativa de cada pulso de clock. A saída Q do flip-flop A é o clock do flip-flop B, assim cada vez que QA faz uma transição de nível ALTO para nível BAIXO, o flip-flop B muda de estado (toggle). As formas de onda resultante de QA e QB são mostradas na figura. 1 QA 1 CLK C C K K Flip-flop A 1 QB J J 2 Flip-flop B 3 4 5 6 7 8 CLK 䉴 FIGURA 7–41 Flip-flops usados para gerar uma seqüência de contagem binária. São mostradas dois ciclos (00, 01, 10, 11). QA 0 1 0 1 0 1 0 1 QB 0 0 1 1 0 0 1 1 0 1 2 3 0 1 2 3 Seqüência binária Seqüência binária Observe a seqüência de QA e QB na Figura 7–41. Antes do pulso de clock 1, QA = 0 e QB = 0; após o pulso de clock 1, QA = 1 e QB = 0; após o pulso de clock 2, QA = 0 e QB = 1; e após o pulso de clock 3, QA = 1 e QB = 1. Se tomarmos QA como sendo o bit menos significativo, uma seqüên- C A P Í T U LO 7 • L ATC H E S , F L I P- F LO P S E T E M P O R I Z A D O R E S ■ 413 cia de 2 bits é produzida enquanto os flip-flops recebem clocks. Essa seqüência binária se repete a cada quatro pulsos de clock, conforme mostrado no diagrama de temporização visto na Figura 7–41. Portanto, os flip-flops realizam uma contagem de 0 a 3 (00, 01, 10, 11) e então retornam para 0 começando a seqüência novamente. EXEMPLO 7–11 Determine as formas de onda de saída em relação ao clock para QA, QB e QC no circuito visto na Figura 7–42 e mostre a seqüência binária representada por essas formas de onda. QA 1 QB J CLK J QA C J QB C K QC QC C K K 䉱 FIGURA 7–42 Solução O diagrama de temporização da saída é mostrado na Figura 7–43. Observe que as saídas mudam na borda negativa dos pulsos de clock. As saídas passam pela seqüência binária 000, 001, 010, 011, 100, 101, 110 e 111, conforme indicado. CLK QA 0 1 0 1 0 1 0 1 0 QB 0 0 1 1 0 0 1 1 0 QC 0 0 0 0 1 1 1 1 0 䉱 FIGURA 7–43 Problema relacionado SEÇÃO 7–4 REVISÃO Quantos flip-flops são necessários para produzir uma seqüência binária que representa os números decimais de 0 a 15? 1. Como é denominado o grupo de flip-flops que armazena dados? 2. Quantos flip-flops J-K devem ser conectados para funcionar como um dispositivo divisor por 2? 3. Quantos flip-flops são necessários para produzir um dispositivo divisor por 64?