Eletrônica Digital II ELT013 Engenharia de Computação Aula 7 CONTADORES ELT013 - Eletrônica Digital II Aula 7 - Contadores 2 Introdução Flip-flops podem ser conectados para funcionar como registradores e contadores Sistemas digitais empregam muitas variações de circuitos contadores CIs básicos, PLDs ou CIs full custom Temporização desse tipo de circuito é crítica na operação em altas frequências Estudo de diagramas de tempo para avaliar as relações entre os sinais de um sistema digital ELT013 - Eletrônica Digital II Aula 7 - Contadores 3 CONTADORES ASSÍNCRONOS ELT013 - Eletrônica Digital II Aula 7 - Contadores 4 Contadores Assíncronos (1) Clock aplicado apenas na entrada CLK para flip-flop A Flip-flop A comuta de estado em cada borda de descida do clock J e K são altos (1) em todos os flip-flops. Saída de flip-flop A é clock de entrada para o flip-flop B. Flip-flop B comuta quando a saída de A passa de 1 para 0 Flip-flop C comuta quando a saída de B passa de 1 para 0 Flip-flop D comuta quando a saída de C passa de 1 para 0 ELT013 - Eletrônica Digital II Aula 7 - Contadores 5 Contadores Assíncronos (2) As saídas dos flip-flops D, C, B e A são um número binário de 4 bits, sendo o D o MSB. Considere que todos os FFs tenham sido resetados antes do início da contagem (CLEAR não é mostrado) A contagem é cíclica, entre 0000 e 1111 Contador assíncrono pois os FFs não mudam de estado exatamente com o mesmo sincronismo do clock. ELT013 - Eletrônica Digital II Aula 7 - Contadores 6 Operação do Contador Assíncrono ELT013 - Eletrônica Digital II Aula 7 - Contadores 7 Operação do Contador Assíncrono Após a borda de descida do 15º pulso do clock, os flipflops do contador estão na condição 1111. Contador é dito ondulante pois os FFs respondem um após o outro como tipo um efeito de ondulação ELT013 - Eletrônica Digital II Aula 7 - Contadores 8 Convenções básica para estudo de contadores ELT013 - Eletrônica Digital II Aula 7 - Contadores 9 Fluxo de Sinal Nos circuitos elétricos usualmente seguimos a convenção de desenhá-los da esquerda para a direita Entradas na esquerda Saídas na direita Em circuitos com contadores essa convenção é quebrada Facilita o acompanhamento da contagem do contador, já que a ordem dos FFs representa a ordem binária da contagem Exemplo anterior: FF D é o MSB e FF A é o LSB. ELT013 - Eletrônica Digital II Aula 7 - Contadores 10 Módulo (MOD) O número MOD é igual ao número de estados pelos quais o contador passa antes da reciclagem. Logo o contador da figura apresenta 16 estados sendo um contador ondulante de módulo 16 Adicionando FFs o número MOD irá aumentar. Módulo 2 N Onde N é o número de FFs ELT013 - Eletrônica Digital II Aula 7 - Contadores 11 Divisão de Frequência Cada FF terá uma frequência de saída de metade da entrada. A frequência de saída do último FF será a frequência do clock dividida pelo MOD do contador. No contador da figura a saída do FF D é 1/16 da frequência de clock de entrada ELT013 - Eletrônica Digital II Aula 7 - Contadores 12 Ciclo de Trabalho (1) Na primeira borda de descida a saída de FF A irá comutar Como o clock é constante, saída FF A ficará BAIXA por um montante de tempo igual ao CLOCK Saída FF A ficará ALTA também por um montante de tempo igual ao CLOCK Montante de tempo que a saída do FF A permanece ALTA é conhecida como largura do pulso, tw. ELT013 - Eletrônica Digital II Aula 7 - Contadores 13 Ciclo de Trabalho (2) FF A produz uma forma de onda que se repete. O período (T) da forma de onda é a soma do tem BAIXO com o ALTO do sinal Ciclo de trabalho é definido como sendo a razão da largura do pulso ALTO e o período, T, da forma de onda tw Ciclo de trabalho x 100% T ELT013 - Eletrônica Digital II Aula 7 - Contadores 14 ATRASO DE PROPAGAÇÃO EM CONTADORES ASSÍNCRONOS ELT013 - Eletrônica Digital II Aula 7 - Contadores 15 Atraso em contadores ondulantes assíncronos (1) São o tipo mais simples de contadores binários Requerem poucos componentes para que uma determinada contagem seja produzida. Desvantagem consiste no princípio básico de operação Cada FF é disparado pela transição do FF precedente Tempo de atraso de propagação (tpd) é o tempo que o FF demora para responder ao sinal de entrada Isso que implica que o segundo FF não responderá por um tempo tpd, após o primeiro FF receber uma transição ativa de clock Mesmo acontece do terceiro com relação ao segundo, etc. ELT013 - Eletrônica Digital II Aula 7 - Contadores 16 Atraso em contadores ondulantes assíncronos (2) O atraso de propagação é cumulativo e pode causar problemas em altas frequências. Se o período entre os pulsos de entrada é maior do que o atraso de propagação total do contador, os problemas podem ser evitados. Para o funcionamento adequado: Tclock ≥ N x tpd Frequência máxima: Fmax = 1/N x tpd Onde N é o número de FF 3 x tpd ELT013 - Eletrônica Digital II 2 x tpd Aula 7 - Contadores 1 x tpd 17 Atraso em contadores ondulantes assíncronos (3) ELT013 - Eletrônica Digital II Aula 7 - Contadores 18 CONTADORES SÍNCRONOS ELT013 - Eletrônica Digital II Aula 7 - Contadores 19 Contadores Síncronos ou Paralelos Todos os FFs são disparados simultaneamente, em paralelo, pelos pulsos de clock da entrada. Todos os pulsos de clock são aplicados em todos os FFs Contadores síncronos podem operar em frequências mais altas do que os contadores assíncronos. Recursos adicionais devem ser implementados para controlar quando a saída do FF irá comutar de estado ELT013 - Eletrônica Digital II Aula 7 - Contadores 20 Comparação Contador Assíncrono x Contador Síncrono As entradas estão conectadas juntas, de modo que o sinal de clock é aplicado simultaneamente em cada FF ELT013 - Eletrônica Digital II Aula 7 - Contadores 21 Comparação Contador Assíncrono x Contador Síncrono Apenas no FF A as entradas J e K permanecem em nível ALTO. As entradas dos demais FFs são acionadas por uma combinação lógica das saídas dos FFs. ELT013 - Eletrônica Digital II Aula 7 - Contadores 22 Comparação Contador Assíncrono x Contador Síncrono O contador síncrono requer um circuito maior que o contador assíncrono. ELT013 - Eletrônica Digital II Aula 7 - Contadores 23 Operação do Circuito Cada FF tem entradas J e K que são ALTAS apenas quando as saídas de todos os FFs de ordem inferior forem ALTAS. O atraso de propagação total será o mesmo para qualquer número de FFs. ELT013 - Eletrônica Digital II Aula 7 - Contadores 24 Sequência de Contagem (1) Para este circuito contar corretamente em determinada borda de descida do clock, apenas aqueles FFs que supostamente devem comutar nessa borda de descida do clock devem ter J = K = 1, quando ocorrer essa transição. ELT013 - Eletrônica Digital II Aula 7 - Contadores 25 Sequência de Contagem (2) Flip-flop A comuta a saída a cada sinal de clock, logo suas entradas são fixas em 1 Flip-flop B comuta a saída quando o sinal de clock for para BAIXO e a saída de A = 1 Flip-flop C comuta a saída quando o sinal de clock for para BAIXO e a saída A = B = 1 Flip-flop D comuta a saída quando o sinal de clock for para BAIXO e a saída A = B = C = 1 ELT013 - Eletrônica Digital II Aula 7 - Contadores 26 Vantagens do Contador Síncrono Como todos os FF mudam de estado simultaneamente, eles estão sincronizados com as transições negativas do pulso de clock da entrada Atrasos de propagação não são somados para se obter o atraso total Para o contador síncrono temos: Atraso total = tpd do FF + tpd da porta AND Tempo de atraso total é muito menor que o do contator assíncrono ELT013 - Eletrônica Digital II Aula 7 - Contadores 27 CONTADORES DE MÓDULO < 2N ELT013 - Eletrônica Digital II Aula 7 - Contadores 28 Contadores Síncrono Básico O contador síncrono básico mostrado é limitado aos números MOD iguais a potências de 2. Valor máximo da contagem é 2N Pode-se gerar um módulo menor que 2N fazendo com que o contador pule estados ELT013 - Eletrônica Digital II Aula 7 - Contadores 29 Contadores de Módulo < 2N (1) Desconsiderando a porta NAND da figura, temos um contador de módulo 8 e três bits. Porém a porta NAND altera a sequência de contagem conectada nas entradas assíncronas do CLR (clear) de cada FF Contadores MOD-6 produzidos a partir de um contador MOD-8 quando ocorre uma contagem de seis (110). ELT013 - Eletrônica Digital II Aula 7 - Contadores 30 Contadores de Módulo < 2N (2) Com a saída da NAND em ALTO, nada acontece e a sequencia de contagem ocorre normalmente. Com a saída em BAIXO todos os FF são reiniciados e o contador volta imediatamente para 000 O contador até atinge o estado 110, mas mantem essa saída por apenas alguns nanosegundos antes de reciclar o valor para 000. ELT013 - Eletrônica Digital II Aula 7 - Contadores 31 Contadores de Módulo < 2N (2) Com a saída da NAND em ALTO, nada acontece e a sequencia de contagem ocorre normalmente. Com a saída em BAIXO todos os FF são reiniciados e o contador volta imediatamente para 000 A forma de onda em C não é simétricamente quadrada, pois permanece ALTO por dois ciclos de clock e BAIXO por quatro ciclos ELT013 - Eletrônica Digital II Aula 7 - Contadores 32 Alteração do Módulo (MOD) 1. Encontre o menor módulo necessário para que 2N seja menor ou igual a exigência 2. Conecte a porta NAND para as entradas assíncronas de todos os FFs 3. Conecte na entrada da NAND as saídas dos FF que tem nível ALTO para a contagem que vai ser ignorada Determinar quais são FFs ALTO na contagem desejada e conectar as saídas desses FFs às entradas NAND. ELT013 - Eletrônica Digital II Aula 7 - Contadores 33 Diagrama de transição de estados para o contador MOD-6 Cada círculo representa um dos possíveis estados do contador As setas indicam uma mudança de estado para outro em resposta a um pulso de clock de entrada. Não há seta para o estado 111 pois o contador não pode avançar esse estado. O estado 111 pode ocorrer em power-up quando os FFs podem cair em qualquer estado. ELT013 - Eletrônica Digital II Aula 7 - Contadores 34 Contadores “Especiais” ELT013 - Eletrônica Digital II Aula 7 - Contadores 35 Contador Decádico ou de Década Decádicos são contadores amplamente utilizados para a contagem de eventos e para exibir os resultados na forma decimal. Um contador de década é qualquer contador com 10 estados distintos, independentemente da sequência. Um contador BCD é um contador que conta década de binário 0000-1001. ELT013 - Eletrônica Digital II Aula 7 - Contadores 36 Contador de Módulo 60 Quantos Flip-flops são necessários para se obter um contador de módulo 60? Qual a contagem que será realizada por ele? 25 = 32 26 = 64 0 - 59 ELT013 - Eletrônica Digital II Aula 7 - Contadores 37 Contador de Módulo 60 Como devem estar conectados os clock e as entradas dos Flip-flops para que ele seja um contador síncrono? Clock comum em todas as entradas dos FFs Entrando do FF Q0 fixa em 1, Q1 = Q0, demais FFs sendo acionados por um AND entre as saída dos FFs antecessores. ELT013 - Eletrônica Digital II Aula 7 - Contadores 38 Contador de Módulo 60 Como deve ser a conexão do pino CLR para que ele seja MOD 60? Conexão com uma porta NAND que detecte a sequencia 111100 = 60 ELT013 - Eletrônica Digital II Aula 7 - Contadores 39 CONTADORES SÍNCRONOS DECRESCENTES E CRESCENTES/ DECRESCENTES ELT013 - Eletrônica Digital II Aula 7 - Contadores 40 Contadores Síncronos Decrescentes (1) Um contador síncrono decrescente é construído de forma semelhante a um contador crescente. Ele usa as saídas FFs invertidas para controlar as entradas J e K de ordem mais alta. ELT013 - Eletrônica Digital II Aula 7 - Contadores 41 Contadores Síncronos Decrescentes (2) Os FF comutam a saída na borda de descida do clock, sendo assim: FF B comuta quando A = 0 (A = 1) FF C comuta quando A = B = 0 (A.B = 1) Contagem seguirá como 15, 14,..., 1, 0, 15, 14,... ELT013 - Eletrônica Digital II Aula 7 - Contadores 42 Contadores Síncronos Crescentes/Decrescentes (1) No contador crescente/decrescente (up/down counter) , a entrada de controle controla se as entradas J e K dos FFs UP/Down = 1, ANDs 1 e 2 são habilitadas e a contagem é crescente UP/Down = 0, ANDs 3 e 4 são habilitadas e a contagem é decrescente ELT013 - Eletrônica Digital II Aula 7 - Contadores 43 Amostra de diagrama de tempo do contador crescente/decrescente Primeiros cinco pulsos de clock Contador conta Up Últimos cinco pulsos Contador conta Down ELT013 - Eletrônica Digital II Aula 7 - Contadores 44 Diagrama de transição de estados As setas representam transições de estado que ocorrem na borda de descida do sinal de clock. Há duas setas partindo de cada círculo de estado. O próximo estado para esse contador depende do nível lógico aplicado na entrada de controle. ELT013 - Eletrônica Digital II Aula 7 - Contadores 45 CONTADORES COM CARGA PARALELA ELT013 - Eletrônica Digital II Aula 7 - Contadores 46 Contador síncrono com carga paralela assíncrona Contadores projetados para serem “pré-setados” Inicializado com um determinado valor de contagem inicial Essa carga paralela inicial pode ser síncrona ou assíncrona Assíncrona: independe do sinal de clock Síncrona: depende da transição ativa do sinal de clock Pré-configurar também é chamado de carregamento paralelo do contador. ELT013 - Eletrônica Digital II Aula 7 - Contadores 47 EXERCÍCIOS PROPOSTOS ELT013 - Eletrônica Digital II Aula 7 - Contadores 48 Exercícios Propostos Recomendo fortemente que façam do livro texto: Seção 7.1 até seção 7.6 ELT013 - Eletrônica Digital II Aula 7 - Contadores 49