Mudanças entre as edições de "EDI018702 2020 2 AULA05"

De MediaWiki do Campus São José
Ir para navegação Ir para pesquisar
(Página substituída por 'Em construção. ----- link=EDI018702_2020_2_AULA04 link=EDI018702_2020_2#Aulas Imagem:icone_prox.png|link=E...')
Etiqueta: Substituído
Linha 1: Linha 1:
=Contadores Síncronos=
+
Em construção.
 
 
Como vimos anteriormente, o atraso de propagação dos FF nos contadores assíncronos limita a sua frequência máxima. Esse problema pode ser resolvido fazendo com que  os FF mudem o estado de suas saídas no momento em que ocorre a transição de ''clock''. Essa configuração caracteriza os contadores chamados de síncronos e é mostrada na Figura 1.
 
 
 
 
 
[[Imagem:fig24_DIG222802.png|center|600px]]
 
<center>
 
Figura 1 - Contador síncrono ascendente.
 
</center>
 
 
 
 
 
A análise da lógica do circuito do contador mostra que os FF do tipo JK somente estão no estado ''TOOGLE'' (J = 1 e K = 1) quando todas as saídas dos FF anteriores estão em nível ALTO. Como o sinal de ''clock'' é comum a todos os FF, o atraso de propagação do contador será o atraso de um FF somado ao atraso das portas AND.
 
 
 
;Atraso total (<math>A_T</math>)
 
 
 
<math>A_T=t_{pd}(FF)+t_{pd}(AND)\,</math>
 
 
 
 
 
Desta forma nesse tipo de contador o atraso não depende do número de bits, mas apenas da tecnologia utilizada.  Por outro lado, como o atraso de propagação é menor, o contador síncrono pode trabalhar com frequências maiores que o contador assíncrono.
 
 
 
 
 
==Decrescente==
 
 
 
Do mesmo modo que os contadores assíncronos, os contadores síncronos podem contar de forma decrescente. Para isso devemos usar as saídas  <math>\bar Q</math> no lugar vez das saídas <math>Q\,</math> na lógica de habilitação das entradas J e K. Porém NÃO devemos pegar o sinal de saída (ABCD) das portas <math>\bar Q</math>.
 
 
 
(simulado em sala de aula)
 
 
 
==Carga paralela==
 
 
 
Os contadores podem contar a partir de um valor predeterminado pelo usuário. Nesses contadores o estado inicial de cada FF pode ser determinado através das entradas CLR (<math>Q \rightarrow 0</math>) e PRE (<math>Q \rightarrow 1</math>). A Figura 2 mostra circuito de inicialização de um FF.  Quando LOAD é BAIXO, o FF funciona normalmente. Quando LOAD é ALTO, o valor de D é armazenado na saída do FF através das entradas assíncronas (que não dependem do ''clock'').
 
 
 
 
 
[[Imagem:fig25_DIG222802.png|center|300px]]
 
<center>
 
Figura 2 - Circuito de carga.
 
</center>
 
 
 
 
 
Se fizermos isso para cada FF do contador determinar o valor inicial a ser incrementado. Esse processo é conhecido como carga paralela porque é realizado simultaneamente em todos os FF do contador. Um exemplo prático de um contador síncrono crescente-decrescente de MOD-16 com carga paralela é o '''74193'''. O circuito de carga pode ser utilizado tanto nos contadores síncronos como nos assíncronos. A Figura 3 mostra o contador 74193 síncrono crescente/decrescente.
 
 
 
 
 
[[Imagem:fig26_DIG222802.png|center|300px]]
 
<center>
 
Figura 3 - Contador 74193 síncrono crescente/decrescente.
 
</center>
 
 
 
==Crescente-decrescente==
 
 
 
A construção de um contador síncrono crescente-decrescente é feita de forma semelhante a mostrada para o contador assíncrono.
 
Para analisar um contador síncrono crescente-decrescente com carga paralela, utilizamos o circuito integrado 74LS193, o qual possui as seguintes características:
 
*É um contador síncrono de 4 bits e módulo 16, com saídas <math>Q_A,\, Q_B,\, Q_C,\, Q_D</math>
 
*As entradas DOWN e UP são entradas de ''clock''. A aplicação do sinal a uma dessas entradas determina se a contagem será crescente ou decrescente.
 
*A entrada assíncrona de CLR (limpar) zera o contador (0000b).
 
*A entrada assíncrona (carregar) permite determinar o valor inicial de contagem (DCBA) através das entradas A, B, C e D.
 
*As saídas  (vai um) e  (empresta um) indicam o reinicio da contagem crescente (<math>15 \rightarrow 0</math>) e decrescente(<math>0 \rightarrow 15</math>), respectivamente. A Figura 4 apresenta o diagrama de funcionamento do 74LS193.
 
 
 
 
 
 
 
[[Imagem:fig27_DIG222802.png|center|600px]]
 
<center>
 
Figura 4 - Diagrama de funcionamento do 74LS193.
 
</center>
 
 
 
=Aplicações com contadores=
 
 
 
==Contadores BCD==
 
 
 
Os contadores BCD são bastante usados em circuitos onde pulsos devem ser contados e mostrados em um ''display''. A Figura 5 mostra um arranjo de contadores BCD que realiza a contagem de 000 a 999. A Figura 5 apresenta como pode ser implementado um circuito contador de décadas, como o utilizado pelo CI 7490.
 
 
 
 
 
[[Imagem:fig28_DIG222802.png|center|500px]]
 
<center>
 
Figura 5 - Contador BCD de 000 a 999.
 
</center>
 
 
 
Inicialmente todos os contadores estão em 0 e o ''display'' mostra 000. A cada borda de descida do ''clock'', o contador de unidades é incrementado e o valor do contador é mostrado no ''display''. Quando o valor atinge 009 (1001b), a próxima transição de descida do ''clock'' fará com que o contador de unidades retorne para 0. Nesse momento ocorrerá uma transição de 1 para 0 (borda de descida) da saída D desse contador, a qual está ligada a entrada de ''clock'' do contador de dezenas.  Essa transição da saída D do contador de unidades faz com que o contador de dezenas seja incrementado e o display passa a mostrar o valor 010. As contagens prosseguem até atingir 999. Nesse estado com mais uma transição de descida do ''clock'' os contadores reiniciam com 000.
 
 
 
 
 
==Contadores como divisores de frequência==
 
 
 
 
 
Uma outra aplicação de contadores é geração digital de um sinal de ''clock'' de menor frequência (<math>f_{clk}</math>) a partir de uma onda quadrada de frequência superior (<math>f_{osc}</math>).  Usando a característica de divisão de frequência dos contadores, determina-se a contagem N que o contador deve realizar.
 
 
 
<math>N=\frac{f_{osc}}{f_{clk}}\,</math>
 
 
 
 
 
Em seguida configura-se o contador para realizar N contagens.  O sinal de saída do último estágio do contador é um sinal que tem a frequência desejada (<math>f_{clk}</math>).  Esse sinal pode não ser uma onda quadrada, mas isso pode ser resolvido fazendo uma contagem N/2, seguido de um divisor por 2 (FF do tipo T).
 
 
 
 
 
;Exemplo:
 
 
 
Deseja-se obter uma frequência de 1Hz (1 segundo), a partir de um sinal digital com frequência de 60Hz obtido a partir da rede de energia elétrica.
 
 
 
 
 
<math>N=\frac{f_{osc}}{f_{clk}}=\frac{60}{1}=60\,</math>
 
 
 
Ou seja, eu preciso realizar uma contagem até 60 (MOD-60) para obter uma frequência de 1Hz.
 
 
 
 
 
Nota: Se não houver nenhuma restrição quanto a forma do sinal, basta dividimos diretamente o sinal de 60Hz por 60 e obter o sinal de 1 Hz.
 
 
 
<br>
 
<center>
 
{|| border="1" cellpadding="15" cellspacing="5" style="background:#E0FFFF; color:#151515;"
 
! rowspan="4" style="text-align: center;" | 60Hz
 
! rowspan="4" colspan="3" style="text-align: center; font-weight: bold;" | MOD-60
 
! rowspan="4" style="text-align: center;" | 1Hz
 
|}
 
</center>
 
 
 
;Outro exemplo:
 
 
 
Deseja-se obter uma frequência de 20Hz, a partir de um sinal digital com frequência de 1kHz.
 
 
 
 
 
<math>N=\frac{f_{osc}}{f_{clk}}=\frac{1000}{20}=50\,</math>
 
 
 
 
 
No entanto, para obter um sinal quadrado de 1Hz, é necessário dividimos primeiro o sinal de 60Hz por 30 e em seguida dividir esse sinal por 2 para obter o sinal de 1Hz.
 
 
 
 
 
<center>
 
{|| border="1" cellpadding="15" cellspacing="5" style="background:#E0FFFF; color:#151515;"
 
! rowspan="4" style="text-align: center;" | 60Hz
 
! rowspan="4" colspan="3" style="text-align: center; font-weight: bold;" | MOD-30
 
! rowspan="4" style="text-align: center;" | 2Hz
 
! rowspan="4" style="text-align: center;" | FF tipo T
 
! rowspan="4" style="text-align: center;" | 1Hz
 
|}
 
</center>
 
 
 
=Circuitos Integrados de Contadores=
 
 
 
Existem vários circuitos integrados de contadores, tanto TTL como CMOS. Nos ''Datasheet'' os contadores assíncronos são simplesmente identificados como ''COUNTERS'', enquanto que os contadores síncronos são identificados como ''SYNCHRONOUS COUNTERS''. A seguir são mostrados as pinagens e os diagramas de alguns contadores.
 
 
 
*74XX90 – Contador assíncrono decádico
 
*74XX92 – Contador assíncrono módulo doze
 
*74XX93 – Contador assíncrono binário de 4 bits
 
*74XX73 – 2 FF do tipo JK para construir contadores síncronos ou assíncronos.
 
*CD4040 – Contador assíncrono binário de 12 bits
 
*74XX163 – Contador síncrono binário de 4 bits
 
*74XX169 – Contador síncrono binário de 4 bits crescente-decrescente
 
*74XX190 – Contador síncrono decádico de 4 bits crescente-decrescente
 
*74XX390 – Duplo contador assíncrono decádico
 
*74XX393 – Duplo contador assíncrono binário de 4 bits
 
 
 
=Exercícios=
 
 
 
[1] Explique o funcionamento do contador '''síncrono''' crescente visto da figura abaixo.
 
 
 
[[Imagem:fig79_DIG222802.png|center|400px]]
 
 
 
[2] Quantos FF e portas lógicas eu preciso para fazer um contador síncrono que conte 0 até 100.
 
 
 
[3] Quantos FF são necessários para gerar um sinal de onda quadrada com uma frequência de 24Hz a partir de um sinal original de 2,4GHz.
 
 
 
[4] Quantos CI 74193 seriam necessários para mostrar uma contagem, em display de 7 segmentos, de 0 até 1000.
 
 
 
[5] Que frequência eu tenho no pino QD do CI 74193 sendo uma frequência de clock de 8kHz, numa configuração de contador crescente de 4 bits.
 
 
 
 
 
 
 
;Lista de exercícios de contadores
 
 
 
http://wiki.sj.ifsc.edu.br/images/1/11/EX2_DIG222802.pdf
 
 
 
;Lista de exercícios de contadores e registradores
 
 
 
http://wiki.sj.ifsc.edu.br/images/2/2a/EX1_DIG222802.pdf
 
 
 
=Referências=
 
 
 
[1] Apostila do CURSO DE ELETRÔNICA DIGITAL. CEFET/SC: São José, 2011.
 
  
  

Edição das 18h41min de 9 de novembro de 2020

Em construção.




Icone voltar.png Icone menu.png Icone prox.png