Contador (digital)

format_list_bulleted Contenido keyboard_arrow_down
ImprimirCitar
Número de armazenamento de dispositivos de vezes um evento ou processo ocorreu
A tensão muda nas cinco saídas do contador binário contando de 00000, esquerda para 11111 (ou 31), direita (vertical).

Em lógica e computação digital, um contador é um dispositivo que armazena (e às vezes exibe) o número de vezes que um determinado evento ou processo ocorreu, geralmente em relação a um relógio. O tipo mais comum é um circuito lógico digital sequencial com uma linha de entrada chamada relógio e várias linhas de saída. Os valores nas linhas de saída representam um número no sistema numérico binário ou BCD. Cada pulso aplicado à entrada do relógio aumenta ou diminui o número no contador.

Um circuito contador é geralmente construído com vários flip-flops conectados em cascata. Os contadores são um componente muito utilizado em circuitos digitais, sendo fabricados como circuitos integrados separados e também incorporados como partes de circuitos integrados maiores.

Contadores eletrônicos

Um contador eletrônico é um circuito lógico sequencial que possui um sinal de entrada de clock e um grupo de sinais de saída que representam um inteiro "contagens" valor. A cada borda de clock qualificada, o circuito aumentará (ou diminuirá, dependendo do projeto do circuito) as contagens. Quando as contagens atingirem o final da sequência de contagem (contagens máximas ao incrementar; contagens zero ao diminuir), o próximo relógio fará com que as contagens transbordem ou subfluam, e a sequência de contagem recomeçará. Internamente, os contadores usam flip-flops para representar as contagens atuais e reter as contagens entre os clocks. Dependendo do tipo de contador, a saída pode ser uma representação direta das contagens (um número binário) ou pode ser codificada. Exemplos deste último incluem contadores de anel e contadores que geram códigos Gray.

Muitos contadores fornecem sinais de entrada adicionais para facilitar o controle dinâmico da sequência de contagem, como:

  • Reset – conjuntos conta para zero. Alguns fabricantes IC nomeam-no "claro" ou "master reset (MR)".
  • Habilitar – permite ou inibe a contagem.
  • Direção – determina se as contagens irão incrementar ou decrement.
  • Dados – dados de entrada paralelos que representam um valor de contagem particular.
  • Carga – copia dados de entrada paralelos para as contagens.

Alguns contadores fornecem uma saída Terminal Count que indica que o próximo relógio causará estouro ou estouro. Isso é comumente usado para implementar contadores em cascata (combinando dois ou mais contadores para criar um único contador maior) conectando a saída Terminal Count de um contador à entrada Enable do próximo contador.

O módulo de um contador é o número de estados em sua sequência de contagem. O módulo máximo possível é determinado pelo número de flip-flops. Por exemplo, um contador de quatro bits pode ter um módulo de até 16 (2^4).

Os contadores são geralmente classificados como síncronos ou assíncronos. Em contadores síncronos, todos os flip-flops compartilham um clock comum e mudam de estado ao mesmo tempo. Em contadores assíncronos, cada flip-flop tem um relógio único e os estados do flip-flop mudam em momentos diferentes.

Os contadores síncronos são categorizados de várias maneiras. Por exemplo:

  • Contador Modulus através de um determinado número de estados.
  • Contador de décadas – modulus dez contadores (conta através de dez estados).
  • Contador para cima/para baixo – conta para cima e para baixo, como dirigido por uma entrada de controle.
  • Contador de anel – formado por um registro de turno "circular".
  • Contador de Johnson – um torcido Contador de anel.
  • Contador de código cinza – produz uma sequência de códigos Gray.

Os contadores são implementados de várias maneiras, incluindo como circuitos integrados MSI e LSI dedicados, como contadores embutidos em ASICs, como periféricos de cronômetro e contador de uso geral em microcontroladores e como blocos IP em FPGAs.

Contador assíncrono (ondulação)

Contador assíncrono criado a partir de dois chinelos JK

Um contador assíncrono (ondulação) é uma "cadeia" de flip-flops de alternância (T) em que o flip-flop menos significativo (bit 0) é sincronizado por um sinal externo (o clock de entrada do contador) e todos os outros flip-flops são sincronizados pela saída do mais próximo, menos significativo flip-flop (por exemplo, o bit 0 marca o clock do flip-flop do bit 1, o bit 1 marca o clock do flip-flop do bit 2, etc.). O primeiro flip-flop é cronometrado por bordas ascendentes; todos os outros flip-flops na cadeia são cronometrados por bordas de clock decrescentes. Cada flip-flop introduz um atraso da borda do clock para a alternância de saída, fazendo com que os bits do contador mudem em tempos diferentes e produzindo um efeito cascata à medida que o clock de entrada se propaga pela cadeia. Quando implementados com flip-flops discretos, os contadores de ondulação são comumente implementados com flip-flops JK, com cada flip-flop configurado para alternar quando cronometrado (isto é, J e K são ambos conectados à lógica alta).

No caso mais simples, um contador de um bit consiste em um único flip-flop. Este contador aumentará (alternando sua saída) uma vez por ciclo de clock e contará de zero a um antes de estourar (começando do zero). Cada estado de saída corresponde a dois ciclos de clock; consequentemente, a frequência de saída do flip-flop é exatamente a metade da frequência do clock de entrada. Se esta saída for usada como sinal de clock para um segundo flip-flop, o par de flip-flops formará um contador de ondulação de dois bits com a seguinte sequência de estados:

Ciclo de relógioQ1Q0(Q1:Q0) decimal
0000
1011
2102
3113
4000

Flip-flops adicionais podem ser adicionados à cadeia para formar contadores de qualquer tamanho de palavra arbitrário, com a frequência de saída de cada bit igual a exatamente metade da frequência do bit menos significativo mais próximo.

Os contadores de ondulação exibem estados de saída instáveis enquanto o clock de entrada se propaga pelo circuito. A duração dessa instabilidade (o tempo de estabilização da saída) é proporcional ao número de flip-flops. Isso torna os contadores de ondulação inadequados para uso em circuitos síncronos que exigem que o contador tenha um tempo de estabilização de saída rápido. Além disso, muitas vezes é impraticável usar bits de saída do contador de ondulação como relógios para circuitos externos porque o efeito de ondulação causa distorção de tempo entre os bits. Os contadores de ondulação são comumente usados como contadores de uso geral e divisores de frequência de clock em aplicações onde a contagem instantânea e a distorção de tempo não são importantes.

Contador síncrono

Um contador síncrono de 4 bits usando JK flip-flops

Em um contador síncrono, as entradas de clock dos flip-flops são conectadas e o clock comum aciona simultaneamente todos os flip-flops. Consequentemente, todos os flip-flops mudam de estado ao mesmo tempo (em paralelo).

Por exemplo, o circuito mostrado à direita é um contador síncrono de quatro bits ascendente (contagem progressiva) implementado com flip-flops JK. Cada bit deste contador pode alternar quando todos os bits menos significativos estiverem em um estado lógico alto. Na borda de subida do clock, o bit 1 alterna se o bit 0 for lógico alto; o bit 2 alterna se os bits 0 e 1 estiverem altos; o bit 3 alterna se os bits 2, 1 e 0 estiverem todos altos.

Contador de décadas

Um contador de década de circuito usando JK Flip-flops (74LS112D)

Um contador de décadas conta em dígitos decimais, em vez de binário. Um contador de décadas pode ter cada (ou seja, pode contar em decimal codificado em binário, como o circuito integrado 7490 fez) ou outras codificações binárias. Um contador de década é um contador binário projetado para contar até 1001 (decimal 9). Um contador comum de quatro estágios pode ser facilmente modificado para um contador de décadas adicionando uma porta NAND como no esquema à direita. Observe que FF2 e FF4 fornecem as entradas para o portão NAND. As saídas do portão NAND são conectadas à entrada CLR de cada um dos FFs.". Ele conta de 0 a 9 e depois zera. A saída do contador pode ser ajustada para zero pulsando a linha de reinicialização para baixo. A contagem então incrementa em cada pulso de clock até atingir 1001 (decimal 9). Quando incrementa para 1010 (decimal 10), ambas as entradas do portão NAND ficam altas. O resultado é que a saída NAND fica baixa e redefine o contador para zero. D indo para baixo pode ser um sinal CARRY OUT, indicando que houve uma contagem de dez.

Contador de toques

Um contador de anel é um registrador de deslocamento circular que é iniciado de forma que apenas um de seus flip-flops é o estado um, enquanto os outros estão em seus estados zero.

Um contador em anel é um registrador de deslocamento (uma conexão em cascata de flip-flops) com a saída do último conectada à entrada do primeiro, ou seja, em anel. Normalmente, um padrão que consiste em um único bit é circulado, de modo que o estado se repete a cada n ciclos de clock se n flip-flops forem usados.

Contador Johnson

Um contador Johnson (ou contador de anel switch-tail, contador de anel torcido, contador de anel ambulante ou contador Möbius) é um contador de anel modificado, onde a saída do último estágio é invertida e realimentada como entrada para o primeiro estágio. O registrador percorre uma sequência de padrões de bits, cujo comprimento é igual a duas vezes o comprimento do registrador de deslocamento, continuando indefinidamente. Esses contadores encontram aplicações especializadas semelhantes ao contador de décadas, conversão digital para analógico, etc. Eles podem ser implementados facilmente usando flip-flops do tipo D ou JK.

Contadores de ciência da computação

Na teoria da computabilidade, um contador é considerado um tipo de memória. Um contador armazena um único número natural (inicialmente zero) e pode ser arbitrariamente longo. Um contador geralmente é considerado em conjunto com uma máquina de estado finito (FSM), que pode executar as seguintes operações no contador:

  • Verifique se o contador é zero
  • Incrementar o balcão por um.
  • Decremento o contador por um (se já é zero, isso deixa-o inalterado).

As máquinas a seguir estão listadas em ordem de poder, sendo cada uma estritamente mais poderosa que a seguinte:

  1. Deterministic ou não-deterministic FSM mais dois contadores
  2. Não determinístico FSM mais uma pilha
  3. Não determinístico FSM mais um contador
  4. Deterministic FSM mais um contador
  5. Deterministic ou não-deterministic FSM.

Para o primeiro e o último, não importa se o FSM é um autômato finito determinístico ou um autômato finito não determinístico. Eles têm o mesmo poder. Os dois primeiros e o último são níveis da hierarquia de Chomsky.

A primeira máquina, uma FSM mais dois contadores, é equivalente em potência a uma máquina de Turing. Veja o artigo sobre máquinas de contador para uma prova.

Contador da Web

Um contador da web ou contador de visitas é um programa de computador que indica o número de visitantes ou acessos que uma determinada página da web recebeu. Depois de configurados, esses contadores serão incrementados em um toda vez que a página da Web for acessada em um navegador da Web.

O número geralmente é exibido como uma imagem digital em linha ou em texto simples ou em um contador físico, como um contador mecânico. As imagens podem ser apresentadas em uma variedade de fontes ou estilos; o exemplo clássico são as rodas de um odômetro.

O

contador da Web era popular em meados do final dos anos 1990 e início dos anos 2000, posteriormente substituído por medidas de tráfego da Web mais detalhadas e completas.

Contadores baseados em computador

Muitos sistemas de automação usam PC e laptops para monitorar diferentes parâmetros de máquinas e dados de produção. Os contadores podem contar parâmetros como o número de peças produzidas, o número do lote de produção e as medições das quantidades de material usado.

Contadores mecânicos

Muito antes de a eletrônica se tornar comum, dispositivos mecânicos eram usados para contar eventos. Estes são conhecidos como contadores de contagem. Eles normalmente consistem em uma série de discos montados em um eixo, com os dígitos de zero a nove marcados em suas bordas. O disco mais à direita move um incremento a cada evento. Cada disco, exceto o mais à esquerda, tem uma saliência que move o próximo disco para a esquerda um incremento após a conclusão de uma revolução. Esses contadores foram usados como hodômetros para bicicletas e carros e em gravadores, bombas de combustível, em máquinas de produção, bem como em outras máquinas. Um dos maiores fabricantes era a empresa Veeder-Root, e seu nome era frequentemente usado para esse tipo de contador.

Os contadores portáteis são usados principalmente para fazer o inventário e contar as pessoas que participam de eventos.

Contadores eletromecânicos foram usados para acumular totais em máquinas de tabulação pioneiras na indústria de processamento de dados.

Contenido relacionado

Transporte no Kuwait

Durante a Primeira Guerra do Golfo, grande parte da infraestrutura do Kuwait foi danificada ou...

Leonardo da Vinci

Leonardo di ser Piero da Vinci era um polímata italiano do alto renascimento que era ativo como pintor, desenhista, engenheiro, cientista, teórico...

História do hardware de computação

A história do hardware de computação abrange os desenvolvimentos desde os primeiros dispositivos simples para auxiliar no cálculo até os computadores...
Más resultados...
Tamaño del texto:
undoredo
format_boldformat_italicformat_underlinedstrikethrough_ssuperscriptsubscriptlink
save