Post on 05-Oct-2015
description
5/19/2018 Clase DIseo Secuencial de Juan Angel
1/10
SOLUCIN SISTEMTICA DE SISTEMAS DIGITALESSECUENCIALES MODO NIVEL
Juan Angel Garza Garza1Cesar Augusto Leal Chapa2
Guadalupe Ignacio Cant Garza3
RESUMEN
Esta ponencia propone un mtodo sistemtico que nos permite solucionar sistemas digitales
secuenciales de modo nivel (asncronos), mediante una secuencia de pasos y con la ayuda de la
computadora personal y programas de aplicacin que nos permiten minimizar, sintetizar y
simular dichos sistemas y asegurar su correcto funcionamiento antes de su implementacin
fsica ya sea con dispositivos lgicos programables (PLDs) o con controladores lgicos
programables (PLCs).
INTRODUCCIN
Los Sistemas secuenciales asncronos caracterizados mediante niveles, son los primeros sistemas
secuenciales que se desarrollaron y se disean mediante una metodologa que puede considerase
como intuitiva. Se pueden realizar por medio de retroalimentacin directa o mediante celdas asncronas
bsicas activadas por niveles, que reciben el nombre de biestables asncronos, o activadas por cambios
de nivel o flancos (Mandado Perez, 2008).
Otra definicin de un Sistema Secuencial modo nivel: es aqul sistema en donde los valores de salidas
(Z1...Zn) no dependen nicamente de las combinaciones de entrada (X1Xn) sino tambin del estado
presente (Y1Yp) sin incluir una seal adicional de sincrona (Roth, Fundamentals Logic Design,
1992), tal como se muestra en la figura 1.
Figura 1. Descripcin a Bloques de un sistema secuencial asncrono
1Profesor y Coordinador de Informtica, Facultad de Ingeniera Mecnica y Elctrica, U.A.N.L. 2. Profesor, Facultad de Ingeniera Mecnica y Elctrica, U.A.N.L3. Profesor, Facultad de Ingeniera Mecnica y Elctrica, Univ. Autnoma de Nuevo Len.
++
5/19/2018 Clase DIseo Secuencial de Juan Angel
2/10
Estos sistemas son utilizados en aplicaciones en donde los eventos que determinan la secuencia no
dependen del tiempo sino de valores especficos de una variable; por ejemplo, en los circuitos de
arranque, paro y control de aceleracin para motores elctricos (Cantu Garza & Garza Garza, 2010).
Las formas ms comunes de representacin grfica del comportamiento de un sistema digital
secuencial de modo nivel son:
Diagrama de Tiempos figura 2.
Diagrama de Transicin figura 3.
Figura 2. Diagrama de Tiempos Figura 3. Diagrama de transicin
Caractersticas de los sistemas secuenciales asncronos:
No necesita del reloj como seal de control.
La salida cambia cuando una variable de entrada cambia (por eventos).
Se implementan a partir de operadores And, Or y Not, utilizando retroalimentacin.
Tambin a partir de Flip Flop R-S bsico (sin reloj).
No requieren de Flip Flops estndar (J-K, T o D).
Ms rpidos en su respuesta por no depender de una seal adicional de sincrona,
slo de un cambio de nivel.
Tabla de flujo primitiva. Es la manera ms simple para describir el comportamiento relativo al sistema
digital a disear, consiste en la construccin de una tabla en donde se consideran todas las posibles
transiciones en el contexto de un problema de diseo.
Tambin se considera que tiene nicamente un estado estable por fila, con salidas especificadas slo
para estados estables (Balabanian, 2002).
En una tabla de flujo (o transiciones) se tiene la misma informacin que en un diagrama de estados,
pero organizada de forma tabular. Una tabla de flujo se considera primitiva si en la construccin de
ella se establecen las siguientes condiciones:
a).- Solo debe de haber un estado estable por fila.
b).- Solo cambia una variable de entrada a la vez.
5/19/2018 Clase DIseo Secuencial de Juan Angel
3/10
OBJETIVO
Que el estudiante de ingeniera de los programas educativos relacionados con las especialidades de
electrnica y automatizacin desarrollen la competencia (Martinez Alonso, Garza Garza, & Portuondo Padrn,
2008) del diseo de sistemas digitales modo nivel teniendo como recurso el mtodo propuesto en esta
ponencia y lo puedan aplicar en su mbito profesional.
JUSTIFICACIN
El tradicional proceso de diseo est basado en la intuicin, habilidad y experiencia de quien disea, limitando
el desarrollo de aplicaciones solo para quienes cumplen ese perfil, considerndose un recurso artesanal no
necesariamente ingenieril. En este escrito se presenta una solucin sistemtica de diseo con la que se
resuelve la dificultad planteada anteriormente con la posibilidad de que se pueda en una forma didctica
disear dichos sistemas sin necesidad de tener una gran experiencia
METODOLOGIA
La propuesta de esta ponencia es aplicar un mtodo sistemtico para disear sistemas secunciales
modo nivel, para la automatizacin de procesos industriales con el uso de la programacin por eventos
discretos, en donde su implementacin fsica puede realizarse en un Dispositivo Lgico Programable
(PLD) por medio de un Lenguaje de Descripcin de Hardware (HDL) o tambin en Controlador Lgico
Programable (PLC) utilizando el diagrama escalera, las ecuaciones obtenidas o el diagrama
esquemtico(Garza Garza, Sistemas Digitales y Electrnica Digital, 2006). Por medio de este mtodo
es posible solucionar problemas de automatizacin de procesos industriales, que tradicionalmente se
basan en mdulos o soluciones anteriormente ya planeadas sin conocer la eficiencia de estos, adems
presentan una lgica en la que otro diseador le tomara tiempo comprenderla para hacer
adecuaciones o en su caso reparaciones.
A continuacin se muestran 14 pasos sugeridos para el desarrollo y diseo de sistemas secuenciales
asncronos:
1.- Especificar el Sistema.
2.- Tabla de Flujo Primitiva.
3.- Eliminacin de estados redundantes.4.- Mezcla de filas.
5.- Expandir tabla de salidas.
6.- Tabla de estados internos.
7.- Asignacin de valores a los Estados.
8.- Tabla de Estados Totales.
9.- Completar Tabla de Salidas.
10.- Obtencin de las ecuaciones por
medio de minimizacin.11.- Elaborar el archivo en formato ABEL-
HDL.
12 Simulacin.
13.- Representacin grafica.
14.- Implementacin
5/19/2018 Clase DIseo Secuencial de Juan Angel
4/10
Para la demostracin de la efectividad del mtodo, a continuacin se muestra su aplicacin en
un ejemplo, as como los resultados obtenidos. Seleccionamos un sistema digital secuencial
asncrono capaz de detectar el sentido de giro de un motor por medio de dos sensores
llamados A y B, en el que la direccin de giro se indica por medio del valor de una salida Z.
El sistema cuenta con un dispositivo con dos crculos
concntricos distribuidos en cdigo GRAY, de modo que si el
giro es a favor de las manecillas del reloj (Derecha, Z=1) la
secuencia de valores que se obtendran en A y B seran: 00, 01,
11 y 10 sucesivamente; pero si el giro es en sentido contrario de
las manecillas del reloj (Izquierda, Z=0) la secuencia de valores
de A y B seran: 00, 10, 11 y 10 sucesivamente. En cualquier
instante que cambie la direccin de giro, la salida Z deber de
cambiar su valor como lo muestra la figura 4.
Figura 4. Dispositivo sensor
1.- Especificar el Sistema.
Para describir el funcionamiento del mtodo
propuesto, utilizaremos como recurso el diagrama de
transicin descrito en la figura 5.
Figura 5. Diagrama de transicin
2.- Tabla de Flujo Primitiva.
En la tabla siguiente se describe completamente el
comportamiento del sistema y adems se comprueba
que todas las transiciones estn definidas.
En la tabla hay que considerar que los estados
subrayados son estados persistentes (estables) y los
no subrayados son estados transitorios(inestables),
adems las casillas marcadas con X se refieren a
transiciones que no son posibles porque implica un
cambio simultaneo de dos o ms entradas (A y B).
Entradas ABSalida
Z00 01 11 10
0 E0 E1 X E4 D
1 E7 E1 E2 X D
2 X E6 E2 E3 D
3 E0 X E5 E3 D
4 E0 X E5 E4 I
5 X E6 E5 E3 I
6 E7 E6 E2 X I
7 E7 E1 X E4 I
5/19/2018 Clase DIseo Secuencial de Juan Angel
5/10
3.- Eliminacin de Estados Redundantes (equivalentes).
Dos estados son equivalentes y por lo tanto uno de ellos redundante si:
a) Son estados estables en la misma columna (misma combinacin de entradas).
b) Tienen la misma salida.
c) Sus estados siguientes son equivalentes.
En la tabla anterior podemos apreciar que en la columna 00 los estados E0 y E7 son estables
pero tienen salida diferente, as mismo en la columna 01 con los estados E1 y E6, en la 11 con
E2 y E5, tambin en la columna 10 con E3 y E4, por lo que podemos concluir que no hay
estados equivalentes por contar con salidas diferentes.
4.- Mezcla de Filas.
En este proceso, la tabla de flujo primitiva se transforma en una tabla de estados totales (Aquel
formado por la combinacin de las entradas y el estado presente).
Dos filas o mas se pueden mezclar siempre y cuando no haya ningn conflicto sobre qu
estado debe ocupar cada columna, entendindose por conflicto la ocupacin simultnea de una
columna por dos estados diferentes. La salida no se considera como un factor de conflicto en la
mezcla de filas. Esto es, dos filas con salidas diferentes pueden mezclarse.
Con el propsito de tener una visualizacin completa sobre las posibilidades de mezcla de las
filas, se construye un diagrama de mezcla, el cual se inicia asignando un punto por cada fila
(figura 6) y se termina uniendo esos puntos por lneas, cuando los estados pueden mezclarse
(figura 7), sin considerar el valor de la salida.
Figura 6. Diagrama inicial de mezcla de filas Figura 7. Diagrama final de mezcla de filas
5/19/2018 Clase DIseo Secuencial de Juan Angel
6/10
La siguiente tabla muestra las filas ya mezcladas sin considerar la salida.
Entradas AB
00 01 11 10
0, 4 E0 E1 E5 E4
1, 7 E7 E1 E2 E4
2, 6 E7 E6 E2 E3
3, 5 E0 E6 E5 E3
5.- Expandir Tabla de Salidas.
Si para una hilera se tiene la posibilidad de mezclar filas, pero los estados estables tienensalidas diferentes, es necesario expandir las salidas como se muestra en la siguiente tabla.
Entradas AB Salida Z
00 01 11 10 00 01 11 10
0, 4 E0 E1 E5 E4 D I1, 7 E7 E1 E2 E4 I D
2, 6 E7 E6 E2 E3 I D
3, 5 E0 E6 E5 E3 I D
En las salidas la D significa giro a favor de las manecillas del reloj (Derecha) e I giro contrario a
las manecillas del reloj (Izquierda).
6.- Tabla de Estados Internos.
La tabla de estados totales obtenida al mezclar las filas, se debe convertir en una tabla de
estados internos (Aquella que incluye solo al estado presente). Para ello, se sustituye cada fila
por una variable, quedando asignados con esa variable los estados estables de esa fila. De
modo que, en este caso:
La fila marcada E0 y E4 =a,E1 y E7 =b,E6 y E2 =c yE3 y E5 =d.
Ocurriendo las siguientes transiciones:
En la columna 00: cb, da
En la columna 01: ab, dcEn la columna 11: ad, bcEn la columna 10: ba, cd
Entradas AB Salida Z
00 01 11 10 00 01 11 10
a a b d a D I
b b b c a I D
c b c c d I D
d a c d d I D
5/19/2018 Clase DIseo Secuencial de Juan Angel
7/10
7.- Asignacin de Valores a los Estados.
Para cumplir con las transiciones descritas anteriormente para cada
columna, se asignan valores a los estados de modo que, entre
aquellos estados en donde haya una transicin, cambie una sola
variable, para evitar una condicin de carrera.
La forma ms simple de cumplir estas condiciones es aprovechar la
estructura de un mapa de Karnaugh, como puede apreciarse en figura
8 en donde se ha establecido una asignacin que cumple con las
transiciones presentes en el diseo.
Figura 8. Mapa deasignaciones
De modo que los valores de Q1 y Q0 para cada estado son: Q1 Q0
a 0 0b 0 1
c 1 1
d 1 0
8.- Tabla de Estados Asignados.
En esta tabla se sustituyen los estados internos por
el valor de la asignacin propuesta en el paso
anterior.
Entradas AB Salida Z
00 01 11 10 00 01 11 10
00 00 01 10 00 D I
01 01 01 11 00 I D
11 01 11 11 10 I D
10 00 11 10 10 I D
9.- Completar Tabla de Salidas.
En este diseo las salidas no estn
completamente definidas y esto puede
generar transiciones no deseadas (Glitches),
inconvenientes para el sistema. Por tal razn,
es necesario asignar un valor a las salidas no
asignadas de modo que no se presenten
dichas transiciones no deseadas.Nota: La salida definida como D se asign el valor 1 ya la definida como I el valor 0
Entradas AB Salida Z
00 01 11 10 00 01 11 10
00 00 01 10 00 D=1 D=1 I=0 I=001 01 01 11 00 I=0 D=1 D=1 I=0
11 01 11 11 10 I=0 I=0 D=1 D=1
10 00 11 10 10 D=1 I=0 I=0 D=1
5/19/2018 Clase DIseo Secuencial de Juan Angel
8/10
10.- Obtencin de las ecuaciones por medio de minimizacin.
De la tabla anterior se obtiene la siguiente tabla de verdad, que utilizando el programa de
aplicacin LogicAid se obtienen las siguientes ecuaciones mnimas;
m A B Q1 Q0 Q1+ Q0+ Z Ecuaciones mnimas:
Q1 = B Q1 + A Q1 + A B
Q0 = A'Q0 + A'B + B Q0
Z = A Q1 Q0 + B Q1'Q0 + B'Q1 Q0'+ A'Q1'Q0'
Z = A B Q0 + A B'Q1 + A'B Q1'+ A'B'Q0'
En donde la salida Z tiene dos posibles resultados.
0 0 0 0 0 0 0 11 0 0 0 1 0 1 02 0 0 1 0 0 0 13 0 0 1 1 0 1 04 0 1 0 0 0 1 15 0 1 0 1 0 1 16 0 1 1 0 1 1 0
7 0 1 1 1 1 1 0
8 1 0 0 0 0 0 0
9 1 0 0 1 0 0 010 1 0 1 0 1 0 111 1 0 1 1 1 0 112 1 1 0 0 1 0 0
13 1 1 0 1 1 1 114 1 1 1 0 1 0 015 1 1 1 1 1 1 1
11.- Elaborar el Archivo en formato ABEL-HDL.
Por medio de esta herramienta en el programa ISPlever Projet Navigator de la compaa
Lattice Semiconductor nos permite efectuar la simulacin y si cumple correctamente con lo
esperado implementarlo fsicamente en un Dispositivo Lgico Programable (PLD).
MODULE SIMULA"EntradasA,B pin 1,2;"SalidasZ,Q1,Q0 pin 19..17 istype 'com';equations"Q1+ = B Q1 + A Q1 + A B"Q0+ = A'Q0 + A'B + B Q0"Z = A B Q0 + A B'Q1 + A'B Q1' + A'B'Q0'Q1 = B&Q1# A&Q1# A&B;Q0 = !A&Q0# !A&B#B&Q0;Z = A&B&Q0#A&!B&Q1#!A&B&!Q1#!A&!B&!Q0;
test_vectors([A,B]->Z)[0,0]->.x.;[0,1]->.x.;[1,1]->.x.;[1,0]->.x.;[0,0]->.x.;[1,0]->.x.;[1,1]->.x.;[0,1]->.x.;[0,0]->.x.;
END
12 Simulacin.
En la figura 9 se muestra la
simulacin del diseo, en donde sepropone una secuencia de los
valores de entrada A y B en donde
se obtiene la salida Z,
adicionalmente se obtienen los
valores de Q1 y Q0.
Figura 9. Simulacin por medio de un diagrama de tiempo
5/19/2018 Clase DIseo Secuencial de Juan Angel
9/10
13.- Representacin grafica.
Figura 10. Diagrama esquemtico Figura 11. Diagrama escalera
CONCLUSIONES
Como hemos demostrado en este documento a travs de un ejemplo sencillo e ilustrativo, la
aplicacin del mtodo de diseo de sistemas digitales secuenciales asncronos (Modo nivel),
presenta la ventaja de la sistematizacin, comparado con el mtodo de diseo tradicional, en
donde el proceso es ms intuitivo que sistemtico y; por tanto, exige un alto grado de
experiencia para llevar a cabo un diseo exitoso.
Con un proceso de diseo sistemtico, se obtienen soluciones simplificadas, ahorrando
elementos en la implementacin y tiempo en el diseo; as mismo, con el uso de herramientas
computacionales, el diseo propuesto pude probarse, usando el recurso de la simulacin, antes
de la implementacin fsica.
Por otro lado, la tendencia de los sistemas educativos actuales es el desarrollo de
competencias. Una de las principales en el rea de ingeniera es la aplicacin del
conocimiento, y con respecto a ello, un recurso para lograrlo es la sistematizacin del
conocimiento terico, ya que esto facilita que el alumno pueda producir e implementar diseos
exitosos a bajo costo, aprendiendo por cuenta propia.
5/19/2018 Clase DIseo Secuencial de Juan Angel
10/10
Bibliografa
Balabanian, N. (2002). Diseo Logico Digital. Florida, EUA: CECSA.
Brown, S. (2006). Fundamentos de Logica Digital con diseo VHDL. Toronto, Canada: Mc
Graw Hill.
Cantu Garza, G. I., & Garza Garza, J. A. (2010). Control Electrnico de Motores (Primera
edicion ed.). Mxico: FIME UANL.
Garza Garza, J. A. (2006). Sistemas Digitales y Electrnica Digital. Mxico: PEARSON.
Garza Garza, J. A., Cantu Garza, G. I., Hernndez Venegas, J. E., & Martinez Luna, S. (2002).
Laboratorio de Electrnica Digital. Monterrey: FIME UANL.
Leal Chapa, C. A. (1990). Fundamentos de Diseo Digital. Monterrey, Mxico: FIME UANL.
Mandado Perez, E. (2008). Sistemas Electrnicos Digitales. Barcelona, Espaa: Marcombo.
Martinez Alonso, G. F., Garza Garza, J. A., & Portuondo Padrn, R. (2008). El Curriculo Basado
en competencias y su implementacin en cursos de ingenieria. Ingenierias XI nm 41 , 40-50.
Roth, C. H. (1992). Fundamentals Logic Design. EUA: WEST.