Projete um contador assíncrono de módulo 13 crescente (contagem de 0 a 12).
Passo 1
Beleza, vamos lá! Você pediu para projetar um contador assíncrono de módulo 13 que conta de 0 a 12. Isso está relacionado à eletrônica digital, especificamente ao design de contadores utilizando flip-flops. Para resolver isso, vamos entender como funciona um contador assíncrono, escolher os componentes certos e configurar as ligações para que ele reinicie a contagem após 12.
Passo 2
Primeiro, vamos entender o que é um contador assíncrono. É um tipo de contador digital onde cada flip-flop é acionado pelo flip-flop anterior, e não por um sinal de clock comum. Isso significa que o sinal de saída de um flip-flop atua como o clock para o próximo, causando um pequeno atraso conhecido como “ripple effect”.
Passo 3
Agora, precisamos decidir quantos flip-flops serão usados. Um contador de módulo 13 precisa representar 13 estados diferentes (de 0 a 12). Para determinar o número mínimo de flip-flops necessários, usamos a fórmula:
Onde
é o número de flip-flops. Testando:
Então, usaremos 4 flip-flops.
Passo 4
Cada flip-flop representará um bit binário, formando um número de 4 bits capaz de contar até 15 (de 0 a 15). Mas como queremos apenas até 12, precisamos adicionar uma lógica de reset que volta o contador a 0 quando ele atinge 13 (1101 em binário).
Passo 5
Vamos escolher flip-flops JK para facilitar a configuração. Configuramos cada flip-flop para alternar de estado a cada pulso de clock (modo toggle). Para isso, conectamos tanto J quanto K a 1.
Passo 6
A próxima etapa é implementar a lógica de reset. Queremos que, quando o contador atingir 13 (1101), ele seja resetado. Para isso, usamos uma porta lógica AND que detecta quando os bits Q3, Q2 e Q0 estão em 1 (já que 1101 tem Q3=1, Q2=1 e Q0=1). Quando essa condição é verdadeira, enviamos um sinal de reset que coloca todos os flip-flops de volta a 0.
Passo 7
Por último, conectamos os flip-flops em cascata:
- O clock do primeiro flip-flop é conectado à fonte de clock externa.
- O clock do segundo flip-flop é conectado à saída Q do primeiro.
- O clock do terceiro flip-flop é conectado à saída Q do segundo.
- O clock do quarto flip-flop é conectado à saída Q do terceiro.
Resposta
Então, para projetar um contador assíncrono de módulo 13 crescente:
- Utilize 4 flip-flops JK configurados no modo toggle.
- Conecte os flip-flops em cascata, com cada um recebendo o clock da saída do anterior.
- Implemente uma lógica de reset usando uma porta AND que detecta quando o contador alcança 13 (Q3=1, Q2=1, Q0=1) e reseta todos os flip-flops a 0.
- Isso fará com que o contador cicle de 0 a 12 continuamente.
Exercícios relacionados
Suponha que, agora, todo nó
da árvore AVL tem um novo campo chamado parent que nada mais é que um ponteiro para nó pai. Como a raiz não tem pai, seu campo parent aponta para nulo).
Implemente todas as funções da árvore AVL vistas em sala iterativamente (sem usar recursão) e atualize os campos parent de cada nó adequadamente.
Implemente todas as funções da árvore AVL vistas em sala iterativamente (sem usar recursão) e atualize os campos parent de cada nó adequadamente.
São dadas duas árvores AVL
e
. Escreva uma função que faça a intercalação (merge) das duas árvores AVL fornecidas gerando, ao final, uma árvore AVL válida. Dado que a primeira árvore tem
nós e a segunda árvore tem
nós, sua função de intercalação deve levar tempo
. Suponha que os números de nós
e
das árvores também sejam dados como entrada.
Projete um contador Johnson de 5 bits disparado na borda de subida de um sinal de clock. O que você deve mudar para que esse circuito vire um contador em anel? Descreva o comportamento de ambos os circuitos.
Diferencie um latch de um flip-flop. Com relação aos flip-flops, descreva o funcionamento dos 4 tipos existentes e as possíveis formas de dispará-los.