TD Apunte7

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 23

Contadores

Apunte N° 7
Contadores
Los contadores son sistemas digitales secuenciales que tienen el propósito de contar sucesos
electrónicos, como los impulsos, avanzando a través de una secuencia de estados binarios. Cuenta o
memoriza el número de veces que llega un pulso a la entrada. Se utilizan para contar eventos (número
de pulsos de reloj), para medir frecuencias o como divisores de frecuencia (Reloj digital).
El módulo de un contador es el número de estados distintos por el que el contador puede pasar de
forma secuencial. El número máximo de posibles estados (módulo máximo) de un contador es 2n, donde
n representa el número de Flip-Flops del contador. También se pueden diseñar contadores que tengan
un número de estados en su secuencia que sea menor que el máximo de 2n. La secuencia resultante se
denomina secuencia truncada.
Los contadores tienen un sentido de cuenta:
 cuenta progresiva up-counter
 cuenta regresiva down-counter
 cuenta progresiva-regresiva up-down counter
Los contadores se clasifican en:
 Binarios
 De décadas
 Especiales
www.profmatiasgarcia.com.ar
Tipos de Contadores
 De las diversas secuencias que puede seguir un contador, la secuencia binaria directa es la mas
simple y la mas directa. Un contador que sigue la secuencia binaria se denomina contador binario n
bits, consta de n Flip-Flops y puede contar en binario desde 0 hasta 2n-1.
Un contador con n Flip-Flops no necesariamente debe contar 2n números Puede truncarse la
secuencia para contar un numero menor de estados.
 Un módulo típico en los contadores con secuencia truncada es diez (denominado MOD10). Los
contadores que tienen diez estados en su secuencia se denominan contadores de décadas. Un
contador de décadas,cuya secuencia de cuenta vaya de cero (0000) a nueve (1001), es un contador
de décadas BCD, ya que su secuencia de diez estados corresponde al código BCD. Este tipo de
contadores resulta muy útil en las aplicaciones de displays, en las que se necesitan códigos BCD
para la conversión a código decimal.
 Para obtener una secuencia truncada, es necesario forzar al contador a que inicie un nuevo ciclo
antes de haber pasado por todos los estados normales. Por ejemplo, el contador BCD de decadas
tienen que comenzar de nuevo en el estado 0000 después de pasar por el estado 1001. Un contador
de décadas requiere cuatro Flip-Flops (tres serían insuficientes, ya que 23 = 8).
 Un contador especial puede ser el de un minutero o segundero, ya sea de un reloj digital o de un
marcador deportivo de 0 a 59 en forma ascendente, o de 59 a 0 en forma descendente.
www.profmatiasgarcia.com.ar
Estado inicial
Antes de comenzar la cuenta se lleva al contador a un estado inicial
predeterminado, accionando sobre las entradas de puesta a cero (clear) o las de
puesta a uno (preset).

www.profmatiasgarcia.com.ar
Contadores

www.profmatiasgarcia.com.ar
Contadores Asincrónicos y Sincrónicos
Asincrónicos:
Su funcionamiento se basa en el hecho que el pulso a contar ataca solo al primer FF. Cuando este cambia, los otros irán
cambiando sucesivamente dando así nuevos estados. El pulso de cuenta se propaga por el contador demandando para ello
un cierto tiempo. El estado final se podrá definir recién cuando hayan ocurrido todas las transiciones necesarias, es decir al
cabo de un tiempo de transporte llamado carry time. Ese tiempo de transporte será n veces el retardo introducido por un
FF. El módulo se puede incrementar introduciendo otro FF.
Así de un contador de módulo ocho con tres FF, al agregar un cuarto FF se obtiene un contador de módulo 16.
Debido a los retardos de cada uno de los FF. aparecen estados espurios, es decir salidas momentáneas no deseadas o que
no pertenecen a la secuencia del código. Una solución a ese inconveniente sería habilitar las salidas del decodificador
luego de transcurrido el tiempo de transporte.
A medida que aumenta la cantidad de biestables, la velocidad del contador va disminuyendo.
Si se necesita un contador con módulo distinto de 2n se deberán eliminar estados mediante compuertas realimentadas
entre las salidas y las entradas de los FF. Tienen limitaciones de velocidad y por ello se usan para aplicaciones industriales.

Sincrónicos:
Los pulsos a contar atacan a todos los FF simultáneamente. Son por lo tanto más rápidos que los sincrónicos y se utilizan
en aplicaciones que requieran alta velocidad de trabajo y de decodificación.
Los contadores sincrónicos pueden ser con transporte serie, con transporte paralelo, o con transporte mixto. Estas
configuraciones quedan determinadas por la forma de conexión de las compuertas.
www.profmatiasgarcia.com.ar
Contadores Asíncronos
El término asíncrono se refiere a los sucesos que no poseen una relación temporal
fija entre ellos y que, generalmente, no ocurren al mismo tiempo. Un contador
asíncrono es aquél en el que los Flip-Flops (FF) del contador no cambian de estado
exactamente al mismo tiempo, dado que no comparten el mismo impulso de reloj.
El reloj (CLK) está conectado únicamente a la entrada de reloj del primer Flip-Flop
FF0. El segundo Flip-Flop FF1, se dispara mediante la salida Q0 de FF0. FF0 cambia
de estado durante el flanco positivo de cada impulso de reloj, pero FF1 sólo cambia
cuando es disparado por una transición positiva de la salida Q0 de FF0. Debido al
retardo de propagación inherente al paso de las señales por un Flip-Flop, las
transiciones de los impulsos de entrada del reloj y de la salida Q0 de FF0 no pueden
ocurrir nunca al mismo tiempo. Por tanto, los dos Flip-Flops nunca se disparan de
forma simultánea, por lo que el modo de funcionamiento de este contador es
asíncrono.

www.profmatiasgarcia.com.ar
Contadores Asíncronos
El inicio de un nuevo ciclo (recycle, término que se aplica comúnmente al funcionamiento de los
contadores) se refiere a la transición del contador de su estado final a su estado original.
A los contadores asíncronos también se les denomina contadores con propagación por la
siguiente razón: el efecto de un impulso en la entrada de reloj lo “siente” primero FF0. Este
efecto no llega inmediatamente a FF1, debido al retardo de propagación a través de FF0. Del
mismo modo, se produce un retardo de propagación a través de FF1, antes de que FF2 pueda ser
disparado. Por tanto, el efecto de un impulso en la entrada de reloj se “propaga” a través del
contador, tardando un cierto tiempo en alcanzar el último de los Flip-Flops, debido a los retardos
de propagación.

www.profmatiasgarcia.com.ar
Contadores Síncronos
El término síncrono se refiere a los eventos que tienen una relación temporal fija entre sí. Un contador síncrono es
aquel en el que todos los Flip-Flops del contador reciben en el mismo instante la señal de reloj.
El funcionamiento de este contador síncrono es el siguiente: en primer lugar, se supone que el contador se
encuentra inicialmente en el estado binario 0; es decir, los dos Flip-Flops se encuentran en estado RESET. Cuando se
aplica el flanco positivo del primer impulso de reloj, FF0 bascula, por lo que Q 0 se pone a nivel ALTO. ¿Qué le ocurre
a FF1 en el flanco positivo de CLK1? Para averiguarlo, vamos a fijarnos en las condiciones de entrada de FF1. Las
entradas J1 y K1 están ambas a nivel BAJO, ya que están conectadas a Q0, y esta todavía no se ha puesto a nivel
ALTO. Recuerde que existe un retardo de propagación desde el flanco de disparo del impulso de reloj hasta que,
realmente, se realiza la transición en la salida Q. Por tanto, J = 0 y K = 0 cuando se aplica el flanco anterior del
primer impulso de reloj. Ésta es una condición de no cambio y, por tanto, FF1 no cambia de estado.
Después de CLK1, Q0 = 1 y Q1 = 0 (que corresponde al estado binario 1). Cuando se produce el flanco anterior de
CLK2, FF0 bascula y Q0 se pone a nivel BAJO. Puesto que FF1 tiene un nivel ALTO (Q0 = 1) en sus entradas J1 y K1
durante el flanco de disparo del impulso de reloj, el Flip-Flop bascula y Q1 pasa a nivel ALTO. Por tanto, después de
CLK2, Q0 = 0 y Q1 = 1 (que corresponde al estado binario 2).
Cuando se produce el flanco anterior de CLK3, FF0 bascula de nuevo al estado SET (Q0 = 1) y FF1 permanece en
estado SET (Q1 = 1), ya que sus entradas J1 y K1 están ambas a nivel BAJO (Q0 = 0). Tras este flanco de disparo, Q0
= 1 y Q1 = 1 (que corresponde al estado binario 3).
Finalmente, durante el flanco anterior de CLK4, Q0 y Q1 se ponen a nivel BAJO, dado que ambos Flip-Flops están en
modo de basculación debido al valor presente en sus entradas J y K. El contador acaba de iniciar un nuevo ciclo a
partir de su estado original, 0 binario. www.profmatiasgarcia.com.ar
Contadores Síncronos

www.profmatiasgarcia.com.ar
Diseño de contadores
Describe gráficamente el circuito secuencial, el contador en este caso, indicando
cual es el estado siguiente en función del estado actual y de las entradas, que para
el caso de contadores no existen.
En este diagrama, un estado se representa por un circulo, y las transición se indica
con lineas o arcos que conectan los círculos.

000
111 001

Diagrama de estados
110 010

101 011
100
www.profmatiasgarcia.com.ar
Ejemplo de diseño
Sigamos los pasos para diseñar un contador sincrono binario ascendente de 3 bits.

La cuenta sera 000 – 001 – 010 – 011 – 100 – 101 – 110 – 111 (en decimal corresponde a
la cuenta 0-1-2-3-4-5-6-7.
Paso 1: Diagrama de estado 000
Se describe el contador mediante 111 001
un diagrama de estado, que
muestra la manera como avanza
la secuencia cada vez que se 110 010
aplica un pulso de reloj.
El numero de estados por los que
101 011
pasa el contador es de 7 por lo
que se necesitaran 3 FF para 100
diseñarlo.

www.profmatiasgarcia.com.ar
Ejemplo de diseño
Paso 2: Tabla de transiciones
Consiste en tres columnas denominadas estado presente, estado futuro y entradas de los
Flip-Flops.
El estado presente denota el estado de los Flip-Flops antes de la ocurrencia de pulso de reloj
El estado futuro muestra el estado de los Flip-Flops después del pulso de reloj.
Las entradas de los Flip-Flops muestran que valores deben recibir las entradas para pasar del
estado presente al estado
futuro después del pulso
de reloj.
q qn+1 J K
0 0 0 X
0 1 1 X
1 0 X 1
1 1 X 0

www.profmatiasgarcia.com.ar
Ejemplo de diseño
Paso 3: Minimizacion de funciones de entrada de los Flip-Flops
De la tabla de transiciones para cada una de las entradas de los FF obtenemos los
Mapas de Karnaugh en funcion del estado presente y simplificando obtenemos las
funciones de las entradas de cada Flip-Flop.

www.profmatiasgarcia.com.ar
Ejemplo de diseño
Paso 4: Diagrama circuital
El paso final es obtener el circuito, para lo que utilizaremos las funciones de
entrada de los Flip-Flops para dibujar la logica combinacional y formar el contador.

www.profmatiasgarcia.com.ar
Ejemplo de diseño 2
Para ilustrar el principio de los contadores truncados, vamos a utilizar un contador asíncrono de 4
bits, en el que modificaremos su secuencia. Una manera de hacer que un contador inicie un nuevo
ciclo después de haber llegado a nueve (1001) consiste en decodificar el diez (1010) con una puerta
NAND y conectar la salida de la puerta NAND a las entradas de borrado (CLR) de los Flip-Flops.
Observe que únicamente Q1 y Q3 están conectadas a las entradas de la puerta NAND. Esta disposición
es un ejemplo de decodificación parcial, mediante la cual dos únicos estados (Q1 = 1 y Q3 = 1) son
suficientes para decodificar el valor diez, ya que ninguno de los otros estados (de cero a nueve)
tienen Q1 y Q3 a nivel ALTO al mismo tiempo. Cuando el contador llega al numero diez (1010), la salida
de la puerta decodificadora pasa a nivel BAJO y pone a cero asincronamente todos los Flip-Flops.
Observe en el diagrama de tiempo que hay un glitch en la forma de onda Q1. La razón de este glitch es
que Q1 tiene que pasar primero por el nivel ALTO antes de que el número diez pueda decodificarse.
Hasta unos nanosegundos después de que el contador llegue al número diez, la salida de la puerta
decodificadora no se pone a nivel BAJO (las dos entradas están a nivel ALTO). Por tanto, el contador
se encuentra en el estado 1010 durante un período de tiempo corto antes de que se reinicialice a
0000, produciendo, por tanto, el glitch en Q1 y en la línea (CLR ) que sirve para poner a cero el
contador.

www.profmatiasgarcia.com.ar
Ejemplo de diseño 2

www.profmatiasgarcia.com.ar
Ejemplo de diseño 3
Contador de décadas síncrono de 4 bits
Como ya sabemos, un contador de décadas BCD dispone de una secuencia binaria
truncada que va desde 0000 hasta el estado 1001. En lugar de pasar al estado 1010,
inicia un nuevo ciclo a partir del estado 0000.
El funcionamiento de este contador se puede entender examinando la secuencia
de estados. En primer lugar, observe que FF0 (Q0) bascula en cada impulso de reloj,
por lo que la ecuación lógica para sus entradas J0 y K0 es: J0 = K0 = 1

www.profmatiasgarcia.com.ar
Ejemplo de diseño 3
Observe que FF1 (Q1) cambia en el siguiente impulso de reloj cada vez que Q0 = 1 y
Q3 = 0, por lo que la ecuación lógica para las entradas J1 y K1 es: J1 = K1 = Q0·Q3
Esta ecuación se implementa aplicando la operación AND a las salidas Q0 y Q3 , y
conectando la salida de la puerta a las entradas J1 y K1 de FF1.
El FF2 (Q2) cambia de estado en el siguiente impulso de reloj cada vez que Q0 = 1 y
Q1 = 1. Luego la ecuación lógica de entrada es: J2=K2=Q0· Q1
Finalmente, FF3 (Q3) cambia de estado en el siguiente
impulso de reloj cada vez que
Q0 = 1, Q1 = 1 y Q2 = 1 (estado 7),
o cuando Q0 = 1 y Q3 = 1 (estado 9). La ecuación
que rige esto es la siguiente:
J3 = K3 = Q0·Q1·Q2 + Q0·Q3
www.profmatiasgarcia.com.ar
Ascendente/Descendente
Un contador ascendente/descendente (up/down) es aquel capaz de progresar en cualquier dirección a lo largo de una cierta secuencia. Un
contador ascendente/descendente, algunas veces también denominado contador bidireccional, puede tener cualquier secuencia de
estados especificada. Un contador binario de 3 bits que avanza en modo ascendente a través de la secuencia (0, 1, 2, 3, 4, 5, 6, 7) y que luego
puede invertirse para recorrer la secuencia en sentido contrario (7, 6, 5, 4, 3, 2, 1, 0) es un ejemplo de un modo de operación secuencial
ascendente/descendente.
En general, la mayoría de los contadores ascendentes/descendentes pueden invertirse en cualquier punto de su secuencia. Por ejemplo, el
contador binario de 3 bits se puede configurar para que realice la siguiente secuencia:
DESCENDENTE DESCENDENTE
0,1,2,3,4,5, 4,3,2 3,4,5,6,7, 6,5, etc.
ASCENDENTE ASCENDENTE
En la Tabla se muestra la secuencia ascendente/descendente (up/down) completa de un contador binario de 3 bits. Las flechas indican los
movimientos entre los estados del contador, tanto para el modo ASCENDENTE como para el modo DESCENDENTE. Un examen de Q 0 para
ambas secuencias, ascendente y descendente, muestra que FF 0 bascula con cada impulso de reloj. Luego las entradas de FF 0 son J0 = K0 =1
Para la secuencia ascendente, Q1 cambia de estado en el siguiente impulso de reloj cuando Q 0 = 1. Para la secuencia descendente, Q1 cambia
en el siguiente impulso de reloj cuando Q 0 = 0. Por tanto, las entradas J1 y K1 de FF1 tienen que ser igual a 1, para las condiciones
expresadas en la siguiente ecuación: J 1 = K1 = (Q0 ⋅ UP) + ( Q0 ⋅ DOWN )
Para la secuencia ascendente, Q 2 cambia de estado en el siguiente impulso de reloj cuando Q 0 = Q1 = 1.
Para la secuencia descendente, Q2 cambia en el siguiente impulso de reloj cuando Q0 = Q1 = 0. Por tanto, las entradas J 2 y K2 de FF2 tienen
que ser igual a 1, para las condiciones expresadas en la siguiente ecuación:
J 2 = K2 = (Q0 ⋅ Q1 ⋅ UP) + (Q0 ⋅ Q1 ⋅ DOWN)
Cada una de las condiciones para las entradas J y K de cada Flip-Flop produce una basculación en el punto apropiado de la secuencia del
contador.
www.profmatiasgarcia.com.ar
Ascendente/Descendente
Observe que, la entrada de control UP / DOWN (ascendente / descendente) está a
nivel ALTO cuando trabaja en modo ascendente y a nivel BAJO cuando trabaja en
modo descendente.

Impulso ASC Q2 Q1 Q0 DESC

0 0 0 0
1 0 0 1
2 0 1 0
3 0 1 1
4 1 0 0
5 1 0 1
6 1 1 0
7 1 1 1

www.profmatiasgarcia.com.ar
Análisis de contadores

www.profmatiasgarcia.com.ar
Bibliografía y Licencia
 Acha, Santiago, Castro, Manuel, Rioseras, Miguel, “Electrónica Digital Introducción a la
Lógica Digital” 2da Ed. (Ra-Ma 2010)
 Floyd, Thomas, “Fundamentos de sistemas digitales” 9na Ed. (Pearson 2006)
 Gonzalez Gomez, Juan,“Circuitos y Sistemas Digitales” (Madrid 2002)
 Este documento se encuentra bajo Licencia Creative Commons Attribution –
NonCommercial - ShareAlike 4.0 International (CC BY-NC-SA 4.0), por la cual se permite su
exhibición, distribución, copia y posibilita hacer obras derivadas a partir de la misma,
siempre y cuando se cite la autoría del Prof. Matías E. García y sólo podrá distribuir la obra
derivada resultante bajo una licencia idéntica a ésta.
 Autor:

Matías E. García
.
Prof. & Tec. en Informática Aplicada
www.profmatiasgarcia.com.ar
[email protected]
www.profmatiasgarcia.com.ar

También podría gustarte