Contador
O contador é um contador crescente síncrono pronto. A cada borda de subida do clock ele incrementa seu valor armazenado e o apresenta no barramento Value; quando a contagem atinge a entrada Max Value, ela retorna a 0 na próxima borda. Um Reset assíncrono força a contagem a 0 imediatamente, sobrepondo o clock, e uma saída Zero vai a alto sempre que a contagem é 0. Ele empacota toda uma cadeia de flip-flops e portas em um único bloco, ideal para temporização, endereçamento, contagem de eventos e sequenciamento.
Contar pulsos de clock
Conecte um Clock à entrada CLK e leia o barramento Value em um Output ou display de 7 segmentos. Cada borda de subida avança a contagem em um. Acione Reset (ou pulse a entrada Reset) para voltar direto a 0 sem esperar uma borda de clock: é isso que «assíncrono» significa aqui.
Retorno no Valor Máximo
Forneça um Max Value para definir o topo da faixa. Um contador de 3 bits com Max Value 5, por exemplo, percorre 0-1-2-3-4-5 e depois retorna a 0, dando um ciclo módulo 6 útil para coisas como um sequenciador de 6 estados. O sinalizador Zero pulsa uma vez por ciclo, e você pode usá-lo como vai-um para um segundo contador a fim de estender a faixa.
| Edge | Count (Max=5) |
|---|---|
| 0 | 0 |
| 1 | 1 |
| 2 | 2 |
| 3 | 3 |
| 4 | 4 |
| 5 | 5 |
| 6 | 0 (wrap) |
Uma contagem visível em um display
Encadeie Clock, Counter e um display de 7 segmentos: o clock avança, o contador incrementa e o display mostra um total em marcha em hexadecimal. Habilite o clock com um Button através de uma porta AND e você terá um contador de eventos que só avança enquanto pressionado, o núcleo de um cronômetro, um placar ou uma contagem de produção.
Citações
- Park, C.-M. (2010). A study on counter design using sequential systems based on synchronous techniques. Journal of Information and Communication Convergence Engineering, 8(4), 421-425.. Referência 1
- Mano, M. M., & Ciletti, M. D. (2018). Digital design: With an introduction to the Verilog HDL, VHDL, and SystemVerilog (6th ed.). Pearson.. Referência 2