Circuitos Lógicos Registradores e Contadores - ufjf.br Lógicos – Prof. Daniel D. Silveira 7.4)...
Transcript of Circuitos Lógicos Registradores e Contadores - ufjf.br Lógicos – Prof. Daniel D. Silveira 7.4)...
Circuitos Lógicos – Prof. Daniel D. Silveira
Circuitos LógicosRegistradores e Contadores
Prof.: Daniel D. Silveira
1
Circuitos Lógicos – Prof. Daniel D. Silveira
• Como Q1 muda de estado na borda de descida, J2 e Q2 mudará de estado quando receber a mesma borda de descida. Qual o estado de Q2?
2
Problemas de temporização
• Q1 comuta para baixo depois do tpHL, que deve ser maior que o tempo de hold de Q2, tH, ou a resposta será imprevisível
Circuitos Lógicos – Prof. Daniel D. Silveira
Problemas de temporização • Felizmente, os FF disparados por borda tem tempo tH de 5ns ou menos, e praticamente não necessitam de tH. Logo, o problema acima não acontece• Consideraremos então que: A saída do FF vai para o estado determinado pelos níveis lógicos imediatamente presentes nas entradas de controle síncronas ANTES da transição ativa do clock
3
Circuitos Lógicos – Prof. Daniel D. Silveira
Problemas de temporização • Seja um FF J-K disparado por borda negativa, considere Q=0 e tH=0
•Observar sempre o estado presente antes do instante T (borda de descida)!
4
Circuitos Lógicos – Prof. Daniel D. Silveira
Exemplos de aplicações • Detectando uma seqüência de entrada:A saída é ativada apenas quando as entradassão ativadas em uma determinada seqüência• Saída em ALTO apenas se A for alto e B
for para ALTO um tempo depois
5
Circuitos Lógicos – Prof. Daniel D. Silveira
• Grupos de FF para armazenamento de dados: Registradores• Transferência síncrona de dados entre FF
6
Armazenamento e transferência de dados
Circuitos Lógicos – Prof. Daniel D. Silveira
• Transferência simultânea de todos os dados• Não altera o conteúdo do registradores, que são a fonte dos dados
7
Transferência paralela de dados
Circuitos Lógicos – Prof. Daniel D. Silveira
• Registrador de deslocamento: grupo de FF organizados para que os números binários sejam deslocados de um FF para outro (Ex: calc. eletrônica)
8
Transferência serial de dados
Circuitos Lógicos – Prof. Daniel D. Silveira
• Cada FF recebe o valor armazenado no FF à sua esquerda antes da ocorrência do pulso. Quantos pulsos até a transferência total?
9
Transferência serial entre regist.
Circuitos Lógicos – Prof. Daniel D. Silveira
• Paralela: transferência simultânea, com um único pulso (maior rapidez)• Paralela: requer mais conexões entre o transmissor e o receptor (problema quanto à distância)• Paralela: os dados permanecem no registrador• A escolha depende da aplicação em particular. Muitas vezes é usada uma combinação dos dois tipos de transmissão.
10
Transferência Paralela X Serial
Circuitos Lógicos – Prof. Daniel D. Silveira
• A forma de onda em Q0 tem a metade da freq. dos pulsos de clk. Para N FF, a freq. de saída é de 1/2N. O contador é módulo 8(2N)
11
Divisão de freqüência/contagem
Circuitos Lógicos – Prof. Daniel D. Silveira
Exemplo • Exemplo 5.15) Considere um circuito de um contador que possui
seis FF conectados, segundo o diagrama abaixo (isto é, Q5, Q4, Q3, Q2, Q2, Q0). a) Determine o módulo do contador. b) Determine a frequência de saída do último FF (Q5) quando a frequência do clock de entrada for de 1MHz. c) Qual é a faixa de estados de contagem desse contador? d) Considere como estado (contagem) inicial o valor 000000. Qual será o estado do contador após 129 pulsos?
12
Circuitos Lógicos – Prof. Daniel D. Silveira13
Exercício proposto
Circuitos Lógicos – Prof. Daniel D. Silveira
• Também chamados de ondulante (ripple counter)• O tipo mais simples de contador binário
14
Contadores assíncronos
Circuitos Lógicos – Prof. Daniel D. Silveira
• Cada FF é disparado pela transição de saída do FF precedente• Os atrasos de propagação dos FF se acumulam (exemplo p/ Tckl=1000 ns e 100 ns)
15
Atraso de propagação
Circuitos Lógicos – Prof. Daniel D. Silveira
Tclock≥N. tpd fmax=1/(N. tpd)N → número de FFtpd → atraso de propagaçãoPara tpd=24 ns4 FFs fmax=1/(4.24 ns) = 10,4 MHz6 FFs fmax=1/(6.24 ns) = 6,9 MHz* Quanto maior o número de FFs, menor deve ser a freqüência de operação máxima do contador assíncrono. Como corrigir tal problema?
16
Atraso de propagação
Circuitos Lógicos – Prof. Daniel D. Silveira
• Os FF são disparados simultaneamente pelos pulsos de clock de entrada• O contador síncrono requer um circuito maior que o assíncrono
17
Contadores síncronos (paralelos)
* Cada FF deve ter suas entradas J e K conectadas de modo que elas estejam no nível ALTO apenas qdo as saídas de todos os FFs de mais baixa ordem estiverem no estado ALTO
Circuitos Lógicos – Prof. Daniel D. Silveira
• Todos os FF mudam de estado simultaneamente• Os atrasos de propagação não são somadosAtraso total=tpd do FF + tpd da porta AND• Este atraso não depende no número de FF• Logo, um contador síncrono pode operar em uma freqüência muito maior
18
Vantagem dos contadores síncronos
Circuitos Lógicos – Prof. Daniel D. Silveira
• O contador básico pode ser modificado para gerar um módulo menor que 2N, fazendo com que o contador pule estados
19
Contadores de módulo <2N
Circuitos Lógicos – Prof. Daniel D. Silveira
• Qualquer contador com 10 estados distintos• Se for a seqüência de 00002 a 10012 (0 a 9)
20
Contadores decádicos
Circuitos Lógicos – Prof. Daniel D. Silveira
• Contador de módulo 60, para dividir a freqüência da rede de 60 Hz para 1 Hz
21
Exemplo prático
Circuitos Lógicos – Prof. Daniel D. Silveira
• Usa-se as saídas invertidas de cada FF para controlar as entradas J e K de ordem mais alta
22
Contadores síncronos decrescentes
Circuitos Lógicos – Prof. Daniel D. Silveira
• Sinal de controle Up/~Down controla se as entradas J e K serão acionadas pelas saídas normais ou invertidas
Contador crescente/decrescente síncrono de módulo 8
23
Contador síncr. crescente/decr.
Circuitos Lógicos – Prof. Daniel D. Silveira
• Podem ser inicializados com qualquer contagem inicial assincronamente
24
Contadores com carga paralela
• Aplicar a contagem desejadanas entradas paralelas de dadosP2, P1 e P0
• Aplicar um pulso de nível BAIXO na entrada de carga paralela
Circuitos Lógicos – Prof. Daniel D. Silveira
• Circuito lógico que gera X saídas diferentes, cada uma decodifica um estado particular do contador
25
Decodificação de contadores
Circuitos Lógicos – Prof. Daniel D. Silveira
• Utilizando NANDs e um outro FF p/ obter um pulso entre 2 estados diferentes do contador
26
Decodificação de contadores
Circuitos Lógicos – Prof. Daniel D. Silveira
7.4) Um contador ondulante de 10 bits tem um sinal de clock de 256kHz aplicado a ele. a) Qual o número de módulo desse contadorb) Qual será a frequência de saída do MSB?c) Qual será o ciclo de trabalho do sinal MSB?d) Suponha que o contador inicie em zero. Qual a contagem em hexa após 1000 pulsos de entrada?7.7) Desenhe o diagrama do circuito para um contador síncrono de módulo 32.Determine fmax para esse contador se cada FF tiver um tpd=20 ns e cada porta tiver um tpd=10ns7.12) Projete um contador síncrono que tenha como saída um sinal de 10 kHz quando um clock de 1 MHz lhe é aplicado.
27
Exercícios propostos
Circuitos Lógicos – Prof. Daniel D. Silveira
7.37) Analise o contador síncrono da figura 7.103a. Desenhe o diagrama de tempo e obtenha o módulo do contador.7.38) Repita o problema anterior para a figura 7.103b
28
Exercícios propostos