Diseño de un contador sincrónico con flip-Flop JK, haciendo uso de mapas de karnaugh
1. DISEÑO DE UN CONTADOR SINCRONICO CON FLIP-FLOP TIPO JK,
HACIENDO USO DE MAPAS DE KARNAUGH.
Francisco Asdrúbal Flores Luna1,2
1
Universidad Autónoma del Perú, sistemas, Panamericana Sur Km. 16.3, Villa el
Salvador, Lima.
2
Universidad Nacional del Callao, Ciudad Universitaria, Av. Juan Pablo II 306,
Bellavista, El Callao, Perú.
ffloresl@gmail.com
Resumen
Una de las metodologías que no lo consideran varios autores, se basa en la obtención de un
contador sincrónico a partir de la formación de grupos en los mapas de Karnaugh,
considerando los diagramas de flujos de los estados del contador, en el código binario que
desean codificar y el orden que decida el diseñador, de manera rápida y sencilla. Una vez
obtenido el diseño basado en FF-JK, estos por su equivalencia se podrán reemplazar por el Flip
Flop más adecuado, como FF-T, FF-D, optimizándose el costo del producto.
1. INTRODUCCIÓN
Los diseños de contadores han sido suplidos por la programación de los microcontroladores o
dispositivos lógicos programables, estos se aplican a sistemas de mayor complejidad, pero en
sistemas sencillos y rudos se pueden aplicar directamente los Flip Flop JK o uno equivalente
con costos reducidos y optimizando el uso de dispositivos digitales.
Los contadores comerciales tienen el módulo de conteo definido, y el código binario natural
como base numérica, dejando de lado los contadores especiales, cuya sucesión podrían ser
números pares, números impares, números primos, etc., con dirección ascendente o
descendente, aplicando códigos binarios conocidos y/o propios que pudiesen crear, como BCD
Aiken, Código Gray, etc.
Esta versatilidad se podrá aplicar a sistemas de control de seguridad, llaves y códigos de
seguridad, sistemas codificados de envió de información, que podrán fácilmente ensamblados
en pequeños circuitos o fabricar en serie el diseño reducido a un solo chip.
Como fundamento se utiliza la ecuación de estado del Flip Flop JK , que contiene el estado
anterior y posterior, lo que trasladaremos a los mapas de Karnaugh
2. Qt +1 = J .Qt + K .Qt
Para reducir las variables de estado posterior o anterior, solo lo identificaremos con una
variable literal, para cada uno de los Flip Flop, sus entradas y salidas respectivas
t +1
t
QA = A; QA = a ⇒
A = J A .a + K A .a
t +1
t
QB = B; QB = b ⇒ B = J B .b + K B .b
t +1
t
QC = C ; QC = c ⇒ C = J C .c + K C .c
t +1
t
QD = D; QD = d
⇒ D = J D .d + K D .d
3. 2. DISEÑO DEL CONTADOR.
Para el diseño de un contador, debemos contar con algunos parámetros predeterminados, como
es su módulo de conteo, la dirección, el código binario, con los cuales tendremos los siguientes
pasos:
a)
b)
c)
d)
e)
f)
g)
Diagrama de Flujo
Codificación
Tabla estados en Mapas de Karnaugh
Desagregación de Mapas de Karnugh por variable
Agrupación según zona de variable a agrupar
Obtención de las variables de entrada de los FF-JK
Circuito
Como ejemplo Diseñaremos un contador sincrónico módulo 12, en binario natural ascendente.
PASOS:
a) Diagrama de Flujo
4. Nota: Los estados N0 considerados, que pudiesen darse, por ser un sistema secuencial, es
necesario asegurarse de enviarlos a un estado definido, en caso se produzca por error del
sistema al estado inicial “O”
b) Codificación
Estado
0
1
2
3
4
5
6
7
8
9
10
11
Codificación
(BN)
0000
0001
0010
0011
0100
0101
0110
0111
1000
1001
1010
1011
c) Tabla estados en Mapas de Karnaugh.
d) Desagregación de Mapas de Karnugh por variable
5. e) Agrupación según zona de variable a agrupar y obtención de variables de entrada del FFJK
Variable A
A = abcd + abd + abc
(
)
A = ( bcd ) a + bd + bc a
tenemos
A = J A .a + K A .a
∴ J A = bcd
y
K A = bd + bc
K A = ( b + d )( b + c ) = b + d .c
Nota: región verde pertenece a la negación de A (agrupar por zonas, para igualar a las ecuaciones
de estado)
Variable B
6. B = a bc d + ab d + ab c
(ac d )b + (a d
B =
)
+ ac b
te n e m o s
B = J B .b + K B . b
∴ J B = ac d
K
B
=
(a
y
+ d
K
)( a
B
= ad + ac
+ c ) = a + d .c
Variable C
C = a c d + b c d + a c d + bc d
C =
(ad
)
(
)
y
KC = ad + bd
+ bd c + a d + b d c
te n e m o s
C = J C .c + K C .c
∴ J C = a d + bd
KC =
Variable D
(a
+ d
) (b
+ d
)=
d + a .b
7. D =
(a + b ) d
+ (0 ) d
te n e m o s
D = J D .d + K
∴ JD = a + b
K
C
D
.d
y
K
C
=0
= 1 = V cc
f) Circuito
3. Conclusiones
4.
No interesa si es flanco de bajada o subida
Las entradas de Preset o Reset pueden ser usadas para ampliar la gama de controles
Esta técnica visual puede aplicarse a niños, en talleres de robótica.
Bibliografía.
8. [1] Thomas Floyd “Digital Funtamentals” 8 edición, Cap. Diseño de circuitos secuenciales,
Editor Prentice Hall, México 2003
[2] M. Morris Mano “Diseño Digital” 3 edición Pearson. Cap.6 Pág. 217. México 2003.
[3] Ronald J. Tooci, Neal S. Widmer, Gregory L. Moss “Sistemas Digitales Principios y
Aplicaciones” 10 edición Pearson. México 2007.
[4] Norman Balabanian, Bradley Carlson “Principios de Diseño lógico Digital” 1 edición
CECSA. México 2002.