Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original
Professores: Renato Lopes Sistemas Digitais I AULA 10 Contadores Assíncronos • Contador Assíncrono porque as saídas dos FF não mudam de estado exatamente com o mesmo sincronismo com que os pulsos de clock são aplicados; apenas o FF A responde aos pulsos de clock. • Este contador também é denominado de contador ondulante. Contadores Assíncronos Contadores Assíncronos Divisão de frequência Qual a frequência do sinal na saída do último FF de um contador de módulo N? Exercício 1 – Projetar um circuito contador para realizar a contagem binária de 000 a 101 (0 à 5). Como projetar contadores de módulo < 2N? • O circuito contador básico pode ser modificado para produzir módulos menores do que 2N, permitindo que o contador pule estados que normalmente fariam parte da sequencia de contagem. Spike ou glitch • Spike ou Glitch Observação na frequência da onda de saída do último FF Exercício 2 – Projete um contador de módulo 60. Exercício 2 – Projete um contador de módulo 8 que realize a contagem de forma decrescente, ou seja, comece em 111 e vai decrescendo até chegar ao estado 000. Exercício 3 – Projete um contador de módulo 8 que permita realizar a contagem crescente ou decrescente de acordo com uma entrada seletora (SEL). Considere SEL = 0 contagem crescente e SEL = 1 contagem decrescente. Simule o circuito projetado. Exercício 4 – Projete um contador para trabalhar como divisor de frequência por 5. Esboce as formas de onda da entrada e saída para tal finalidade. Atraso de propagação em contadores assíncronos Devido ao tempo de atraso de propagação (tpd) inerente a cada FF, o primeiro FF só responde após um intervalo de tempo tpd após a transição ativa do clock. O segundo FF não responderá por um intervalo de tempo igual a 2 x tpd. Em outras palavras, os atrasos de tempo de se acumulam, de modo que o enésimo FF não muda de estado até que um intervalo de tempo igual a N x tpd após a transição do clock tenha ocorrido. Frequencia do clock 1MHz Atraso de propagação em contadores assíncronos • Qual o problema do tempo de atraso? Frequência do clock: 10MHz pdtN f 1 max Atraso de propagação em contadores assíncronos • Exemplo: Considere que um contador ondulante de quatro bits seja construído com um FF JK 74LS112. Este FF apresenta um tPLH = 16 ns e tPHL = 24ns como atrasos de propagação de CLK para a saída Q. a) Calcule a frequência máxima de clock que pode ser utilizado. b) Se aumentarmos o contador para seis bits qual será a nova frequência máxima? MHz nstN f pd 4,10 244 11 max MHz nstN f pd 9,6 246 11 max Contadores Síncronos ou Paralelos • Para corrigir os problemas causados pelo acúmulo dos atrasos de propagação dos FF nos contadores assíncronos são utilizados os contadores síncronos ou contadores paralelos, nos quais os FFs são disparados simultaneamente (em paralelo) pelos pulsos de clock de entrada. • Visto que os pulsos de clock de entrada são aplicados em todos os FFs, algum recurso tem de ser utilizado para controlar o momento em que um FF deve comutar e o momento que deve permanecer inalterado quando ocorrer um pulso de clock. Contadores Síncronos • O circuito do contador síncrono de módulo 16 está mostrado na figura abaixo: Contadores Síncronos • Exemplo: • Para o projeto de contadores síncronos de módulo menor do que 2N o procedimento deve ser o mesmo já visto para os contadores assíncronos, ou seja, deve-se fazer o contador pular os estados não desejados utilizando uma porta NAND. • Relembrando o procedimento geral: • Exemplo: Projete um circuito contador síncrono de módulo 8 para trabalhar de forma crescente ou decrescente segundo um sinal de controle Up/Down. Considere Up/Down = 1, o circuito realiza a contagem crescente e Up/Down = 0 realiza a contagem decrescente. Contadores com Carga Paralela • Muitos contadores síncronos disponíveis na forma de CIs são projetados para serem contadores com carga paralela (presettable), em outras palavras, eles podem ser inicializados com qualquer contagem inicial desejada assíncrona (independente do sinal de clock) ou sincronamente. • Essa operação de inicialização também é denominada carga paralela do contador. • Para ilustrar vamos considerar como exemplo um contador síncrono de três bits (figura seguinte). Neste caso, o contador é carregado com qualquer contagem desejada, a qualquer instante, da seguinte maneira: 1. Aplique a contagem desejada nas entradas paralela de dados, P2, P1 e P0. 2. Aplique um pulso de nível BAIXO na entrada de carga paralela (PARALLEL LOAD), PL Decodificando um contador Strobing (Amostragem) • Mantém as portas AND decodificadoras desabilitadas até os FFs atigirem um estado estável. • O sinal strobe vai para nível ALTO para habilitar as portas ANDs algum tempo, tD, depois do pulso de clock ir para nível BAIXO. • tD é escolhido para ser maior que o intervalo de tempo total necessário para que o contador atinja um estado estável. • Exercício 5: Analise o circuito abaixo e explique o seu funcionamento. Analisando Contadores Síncronos • O processo para projetar circuitos contadores completamente síncronos será visto mais adiante, agora iremos estudar como analisar o projeto de um contador deste tipo prevendo as entradas de controle do FF para cada estado do contador. • Uma tabela de estado ATUAL / PRÓXIMO estado é uma ferramenta muito útil neste processo de análise. 1. O primeiro passo é escrever a expressão lógica para a entrada de controle de cada FF. 2. Em seguida, estabeleça um estado ATUAL para o contador e aplique essa combinação de bits às expressões lógicas do controle. 3. As saídas das expressões de controle nos permitirão prever os comandos para cada FF e o PRÓXIMO estado resultante para o contador depois da aplicação do sinal de clock. 4. Repita esse processo até que toda a sequência de contagem seja determinada. Analisando Contadores Síncronos • Para o contador do exercício anterior temos: CKJ AKJ CK BAJ AA BB C C Analisando Contadores Síncronos • O diagrama de transição de estados para esse contador é o seguinte: Contador Autocorretor • Um contador autocorretor é um contador em que estados normalmente não usados retornam à seqüência de contagem normal. • Se qualquer destes estados não usados não puder retornar à seqüência normal, diz-se que o contador é não autocorretor. • Exercício 6: Analise o circuito contador mostrado na figura abaixo. • Exercício 6: Analise o circuito contador mostrado na figura abaixo. • Exercício 7: Analise o contador síncrono mostrado na figura abaixo. Desenhe o diagrama de tempo e obtenha o módulo do contador. • Exercício 8: Analise o contador síncrono mostrado na figura abaixo. Desenhe o diagrama de tempo e obtenha o módulo do contador. Seqüência não inclui os estados 101, 110 e 111 => Estados indesejáveis • Exercício 9 – Projete um contador para realizar a seguinte seqüência de contagem: 0 – 3 – 6 – 7. • Exercício 10 – Refaça o projeto anterior, mas considerando que os estados indesejados não devam ir diretamente para zero, mas seguir a seqüência: 5 – 4 – 3 – 2 – 1 – 0. • Exercício 11 – Projete o contador para realizar a seguinte contagem: