Está en la página 1de 4

Diseo de contadores sncronos.

Por jcrls.
Para comenzar, debes tener en cuenta que la principal caracterstica de estos contadores radica en la conexin del reloj a todos los flip flops al mismo tiempo. En los asncronos, la seal de reloj se propaga en cascada entre los flip flops. A partir de las tablas de funcionamiento de cada flip flop, es posible obtener las propias de excitacin, las cuales son fundamentales para el diseo asncrono. Dividiremos este documento en dos aproximaciones: diseo sncrono sin variables de control y diseo sncrono con variables de control de direccin.

Contadores sncronos sin variable adicional de control.


La primera aproximacin se refiere a contadores cuya nica condicin de conteo radica en el pulso de reloj; es decir, slo esperan por un cambio en la seal de reloj para pasar al estado siguiente y mantener una direccin determinada. Considrese el diseo de un contador descendente de nmeros primos de 3 bits. Utilizaremos flip flops J-K para nuestra solucin. A continuacin se aprecian las tablas de funcionamiento y de excitacin del flip flop en cuestin.
Tabla de funcionamiento del flip flop J-K J K Q Q+ 0 0 0 0 0 0 1 1 0 1 0 0 0 1 1 0 1 0 0 1 1 0 1 1 1 1 0 1 1 1 1 0 Tabla de excitacin del flip flop J- K Q Q+ J K 0 0 0 X 0 1 1 X 1 0 X 1 1 1 X 0

El diagrama de estados propuesto es el siguiente. Obsrvese que la nica condicin de cambio es el pulso de reloj y estamos regresando al estado 0 (000) despus del estado 1 (001); idealmente no debera pasar por cero, ms que al iniciar la mquina de estados.

La tabla que resuelve el diseo es la siguiente. C, B y A son los estados presentes en orden de significancia. Debido a que no se tiene ninguna condicin que controle la direccin del conteo (siempre es descendente), se utiliza la misma columna de estados presentes para determinar los estados siguientes. De acuerdo a la tabla de excitacin y refirindonos exclusivamente al flip flop C tenemos que la primera combinacin determina pasar de 0 a 1, por lo que JC tendr 1 y KC una condicin dont care; tal y como se aprecia con la flecha indicada en la misma tabla.
C 0 1 1 0 0 0 Estados presentes B A 0 0 1 1 0 1 1 1 1 0 0 1 JC 1 X X 0 0 0 KC X 0 1 X X X Flip flops J-K JB KB 1 X X 1 1 X X 0 X 1 0 X JA 1 X X X 1 X KA X 0 0 1 X 1

Los mapas que entregan las ecuaciones son los siguientes. Existen algunos estados (4 y 6) que no son parte de la solucin, por lo que se consideran como dont care y se indican de diferente color.

00 0 1 A 1 0 JC = BA 00 0 1 A 1 0 JB = A + C 00 1 X

CB 01 0 0 CB 01 X X CB 01 1 X

11 X X

10 X X

00 0 X A 1 X KC = B

CB 01 X X

11 X 0

10 X 1

11 X X

10 X 1

CB 00 01 0 X 1 A 1 X 0 KB = A + C 00 X 1 CB 01 X 1

11 X 1

10 X X

0 A 1 JA = 1

11 X X

10 X X

0 A 1 KA = C

11 X 0

10 X 0

Finalmente, las ecuaciones obtenidas son las siguientes. El apstrofe despus de una variable indica negacin. JC = BA KC = B JB = A + C KB = A + C JA = 1 KA = C

El siguiente diagrama fue capturado y simulado en CircuitMaker. Los flip flops utilizados son J-K, 74LS112.

Contadores sncronos con una variable adicional de control

Para un diseo con una variable que permita controlar la direccin del conteo (ascendente o descendente), es necesario considerar una tabla con n flip flops ms la variable mencionada. Como ejemplo disearemos un contador de 3 bits, que de manera ascendente muestre nmeros pares y de manera descendente nmeros primos. En la tabla, la variable p permite el cambio en el sentido del conteo. Los flip flops a utilizar sern de tipo T. El diagrama de estados que cumple el conteo es el siguiente. Obsrvese que cuando la variable de control p es 0, el conteo es ascendente; y cuando p = 1, ser descendente. La seal de reloj se obvia para pasar de un estado a otro. En el conteo descendente de nmeros primos, no se regresa al estado 0; es decir, no se considera el 0 como nmero primo.

Para escribir la tabla de funcionamiento del contador completo, es obligatorio considerar la variable adicional que controla la direccin del conteo. En la tabla siguiente, C es el flip flop ms significativo y A es el menos significativo.
Estados presentes C 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 B 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 A 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 p 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 Estados siguientes C B A 0 1 0 1 1 1 0 1 0 1 1 1 1 0 0 0 0 1 1 0 0 0 1 0 1 1 0 0 1 1 1 1 0 0 1 1 0 0 0 1 0 1 0 0 0 1 0 1

Para obtener los datos de excitacin del flip flop en cuestin, es posible aplicar dos mecanismos de bsqueda: horizontal y vertical. Cualquiera de ambas bsquedas es vlida; aunque visiblemente, la primera tcnica deriva en ecuaciones ms reducidas que la segunda. Adems, cuando se trabaja con la bsqueda vertical posiblemente se requiera forzar al circuito con un reset para comenzar un conteo lgico (no siempre es necesario). La bsqueda horizontal permite obtener la tabla de los flip flops comparando directamente el bit del estado presente contra el estado siguiente, como lo indican las flechas marcadas en la tabla siguiente. Recuerda que el flip flop utilizado es de tipo T.
Tabla de funcionamiento del flip flop tipo T T Q Q+ 0 0 0 0 1 1 1 0 1 1 1 0 Tabla de excitacin del flip flop tipo T Q Q+ T 0 0 0 0 1 1 1 0 1 1 1 0

De acuerdo a la columna de la variable C, en la primera combinacin se aprecia que cuando el conteo es ascendente con p = 0, pasaremos de un estado presente 0 a un estado siguiente 0, con respecto a una linealidad horizontal.
Estados presentes C 0 0 0 0 B 0 0 0 0 A 0 0 1 1 P 0 1 0 1 Estados siguientes C B A 0 1 0 1 1 1 0 1 0 1 1 1 Flip Flops T TC 0 1 0 1 TB 1 1 1 1 TA 0 1 1 0

0 0 0 0 1 1 1 1 1 1 1 1

1 1 1 1 0 0 0 0 1 1 1 1

0 0 1 1 0 0 1 1 0 0 1 1

0 1 0 1 0 1 0 1 0 1 0 1

1 0 1 0 1 0 1 0 0 1 0 1

0 0 0 1 1 1 1 1 0 0 0 0

0 1 0 0 0 1 0 1 0 1 0 1

1 0 1 0 0 1 0 1 1 0 1 0

1 1 1 0 1 1 1 1 1 1 1 1

0 1 1 1 0 1 1 0 0 1 1 0

Los resultados de los mapas de Karnaugh son: TC = B $ p TB = C + B + A + p TA = A $ p + (CBA) El caracter $ representa el operador xor. Para la bsqueda vertical, slo se utilizan los estados siguientes de C, B y A. La comparacin se realiza de acuerdo a la flecha dibujada.
Estados presentes C 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 B 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 A 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 P 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 Estados siguientes C B A 0 1 0 1 1 1 0 1 0 1 1 1 1 0 0 0 0 1 1 0 0 0 1 0 1 1 0 0 1 1 1 1 0 0 1 1 0 0 0 1 0 1 0 0 0 1 0 1 Flip Flops T TC 1 1 1 0 1 1 1 1 1 1 1 0 1 1 1 1 TB 0 0 0 1 0 0 1 0 0 0 0 1 0 0 0 1 TA 1 1 1 1 1 1 0 0 1 1 1 1 1 1 1 1

Los resultados de los mapas de Karnaugh son: TC = A + B + p TB = A (Bp + Cp + CBp) TA = A + C + B Tambin es recomendable realizar el diseo con otros flip flops, buscando el circuito mnimo a alambrar. Con flip flops tipo D, obtienes las siguientes ecuaciones a travs de la bsqueda vertical: DC = CAp + Bp + C DB = B (C + A + p) DA = p (A + B + C) Si lo realizas con J-K, obtienes las siguientes ecuaciones. JC = KC = B $ p JB = 1 KB = p + (C $ A) JA = p KA = p+ CB El caracter $ representa una operacin xor. JC y KC son iguales, JB se conecta a Vcc, KB contiene una operacin xor negada, JA y KA son complementos entre s.

Juan Carlos Herrera Lozada, jlozada@ipn.mx CIDETEC IPN, Mxico

También podría gustarte