INFORME. Diseño de circuitos detectores de secuencia. 23 de Abril de 2012 1
DISEÑO DE CIRCUITOS DETECTORES DE SECUENCIA Sebastian Bedoya, Carlos Andrés Osorio, Maria Camila Bravo Laboratorio de Sistemas Digitales II. Grupo 01 Universidad Del Valle
In this practice, students become familiar with the design of FSM, like Gray counters and sequence detectors. Additionally understand the different between FSM Moore and Mealy and the importance of choose the correct Flip-Flop for these applications.
Abstract —
I.
Comprender la diferencia entre las máquinas de estado tipo Moore y Mealy.
Diseñar y estudiar circuitos detectores de secuencia.
Estudiar y entender la importancia de la selección del flip-flop utilizado para la máquina de estado finito.
INTRODUCCIÓN
L
as máquinas de estado finito FSM por sus siglas en ingles, son circuitos secuenciales en los cuales su comportamiento esta descrito en términos de transiciones de estado y cambios en la salida, salida, estos como respuesta respuesta a todas las posibles combinaciones de las entradas y los estados. Las máquinas de estado se clasifican en dos tipos básicos: máquinas de estados Moore y máquinas de estados Mealy. En la máquina de estados tipo Moore la salida depende sólo del estado presente, sin embargo en las maquinas de estado tipo Mealy la salida depende no únicamente de el estado presente sino también de la entrada correspondiente a este. Objetivos
Introducir al estudiante en el diseño de Sistemas Secuenciales.
II. RESULTADOS Y ANÁLISIS Para diseñar un sistema secuencial que permita contar de manera ascendente y descendente en código gray 3 bits, es necesario comprender que la maquina de estados será de tipo Moore ya que el diseño corresponde a un contador, la Tabla 1 corresponde a los números del 0 al 7 en código Gray.
Decimal Gray 0 1 2 3 4 5 6 7
000 001 011 010 110 111 101 100
Tabla 1. Código Gray de 3 bits.
Estudiar y entender el concepto de máquina de estado finito (FSM).
Estudiar el funcionamiento de un contador código Gray.
Este documento se entregó para revisión el día 23 de Abril de 2012. Carlos Osorio es estudiante de ingeniería electrónica en la Universidad del Valle (
[email protected] [email protected])). Cód. 0937826 Sebastián Bedoya es estudiante de ingeniería electrónica en la Universidad del Valle (
[email protected] [email protected])). Cód. 0934864 Maria C. Bravo es estudiante de ingeniería electrónica en la Universidad del Valle (
[email protected] [email protected])). Cód. 0937464
De acuerdo con la Tabla 1, son necesarios 8 estados en la FSM, un estado para cada numero en Gray, además un bit de entrada para decidir si voy ascendiendo o descendiendo. De acuerdo a lo anterior la Fig. 1 presenta una FSM adecuada para resolver el problema.
INFORME. Diseño de circuitos detectores de secuencia. 23 de Abril de 2012 2 -
El uso total de elementos lógicos es menor al 1%, combinacionales 3 de 33216, registros lógicos 3 de 33216. Se usaron 3 registros de memoria. Se uso el 1% de los pines disponibles en la FPGA.
Fig. 1 FSM Contador Gray.
En la Fig. 1 podemos observar por ejemplo, que si el sistema se encuentra en el estado A, y la entrada del sistema es “1” el siguiente estado será el estado B, así la salida pasara de “000” a “001” conta ndo de manera ascendente, de manera similar sucede que si el sistema esta en el estado E y la entrada es “0”, la salida pasara de “110” a “010” contando de manera descendente . En la Fig. A1 (Apéndice) se encuentra el circuito representativo de la FSM de la Fig.1 codificando los estados en Gray y usando Flip-Flops tipo D, en esta se puede observar que todos los Flip-Flops utilizan el mismo reloj, lo cual significa que es una maquina síncrona, además el reset de los Flip-Flops trabaja con lógica negada.
Fig 4. Resultado de la síntesis del circuito planteado.
Existe un cierto tiempo de retado entre los estímulos y el resultado pero este es casi despreciable ya que el periodo del reloj, se escogió teniendo en cuanta el tiempo de retardo para el peor de los casos y la restricción que se muestra en la Fig. 5.
La Fig. 2 muestra la forma de onda ingresada en Quartus II para la simulación del contador Gray.
Fig. 5. Valores de propagación. Fig. 2 Forma de onda ingresada para simular.
Según la forma de onda planteada el contador debe contar de manera ascendente durante 3 ciclos de reloj, regresar a cero y contar de manera descendente el resto del tiempo. En la Fig. 3 se muestra el resultado de la simulación.
Fig. 3 Resultado de la simulación según la entrada.
La Fig. 4 muestra los resultados arrojados por el reporte de compilación, a partir del cuadro de reporte se pueden realizar las siguientes observaciones: -
No existen errores en el diseño que no permitan la simulación.
De acuerdo a la Fig. 5 el mayor retardo es de 8.54ns el cual es mucho menor al tiempo del periodo 100ns por lo cual es de esperarse tal como ocurrió que este no sea significativo al momento de verificar el funcionamiento del circuito. Se debe diseñar un circuito secuencial basado en una maquina tipo Mealy con dos entradas E1 y E0, y una salida S0. La máquina debe detectar la secuencia E1E0 = 10, 01, 00. La salida S0 debe iniciar en ‘0’ y pasar a pasar a '1' cuando sea detectada la secuencia; sin embargo, esta debe permanecer en '1' hasta detectar la secuencia E1E0 = 00, 01, 10, es decir, la segunda secuencia hace que S0 pase a '0'. De acuerdo con el proceso de diseño expuesto en la clase se realiza la maquina de estados tipo Mealy Fig. A2 y para realizar la comparación también se diseña la FSM tipo Moore Fig. A3.
INFORME. Diseño de circuitos detectores de secuencia. 23 de Abril de 2012 3 Se puede observar por comparación que la FMS Mealy tiene los mismos estados que la Moore, si tuviera menos podría ser ventajoso a la hora de determinar el numero de Flip-Flops que requiere cada circuito, sin embargo el uso de maquinas Mealy conlleva a un retraso en la salida ya que esta depende de un circuito combinacional que relaciona las entradas con las variables de estado, estos retrasos se pueden traducir en un “glish” el cual a su ves puede alterar la salida, como puede verse en la Fig. 6.
Existe un cierto tiempo de retado entre los estímulos y el resultado pero este es casi despreciable ya que el periodo del reloj, se escogió teniendo en cuanta el tiempo de retardo para el peor de los casos y la restricción que se muestra en la Fig. 8.
Fig. 8. Valores de propagación.
Fig. 6 Salida del detector de secuencias.
Los saltos encerrados en rojo repr esentan los “glish” ya mencionados, y si esta salida representara por ejemplo el reloj del contador gray a los 280ns el contador abra visto 3 flancos de reloj en lugar de 1 que es lo correcto. El circuito lógico utilizado para la FSM Mealy FF. D es mostrado en la Fig. A4 usando Flip-Flops tipo D, en esta se puede observar que todos los Flip-Flops utilizan el mismo reloj, lo cual significa que es una maquina síncrona, además el reset de los Flip-Flops trabaja con lógica negada.
De acuerdo a la Fig. 8 el mayor retardo es de 8.54ns el cual es mucho menor al tiempo del periodo 100ns por lo cual es de esperarse tal como ocurrió que este no sea significativo al momento de verificar el funcionamiento del circuito. La Tabla. 2 muestra la codificación de estados directa de la FSM tipo Mealy y la Tabla 3. La tipo Moore codificación directa de la FSM Moore.
Q0 Q1 Q2 Q3 Q4 Q5 X X
La Fig. 7 muestra los resultados arrojados por el reporte de compilación, a partir del cuadro de reporte se pueden realizar las siguientes observaciones: -
No existen errores en el diseño que no permitan la simulación. El uso total de elementos lógicos es menor al 1%, combinacionales 8 de 33216, registros lógicos 3 de 33216. Se usaron 3 registros de memoria. Se uso menos del 1% de los pines disponibles en la FPGA.
Qi 000 001 010 011 100 101 110 111
Tabla 3. Tabla de codificación de estados, FSM Mealy.
Q0 Q1 Q2 Q3 Q4 Q5 X X
Qi Salida 000 0 001 0 010 0 011 1 100 1 101 1 110 X 111 X
Tabla 3. Tabla de codificación de estados, FSM Moore.
De manera similar la Tabla. A1 muestra la tabla de estados codificada completamente en el caso del detector de secuencia tipo Mealy utilizando flip-flop T, flip-flop JK, flip-flop D, se puede ver que el uso de flip-flops D es mas conveniente ya que en estos el próximo estado es también la entrada al F.F. Fig 7. Resultado de la síntesis del circuito planteado.
INFORME. Diseño de circuitos detectores de secuencia. 23 de Abril de 2012 4 IV. CONCLUSIONES Y OBSERVACIONES III. INVESTIGACIÓN APLICACIONES SECUENCIA
DE
LOS
DETECTORES
DE
El control de radio para abrir una puerta solo con una única secuencia se abre.
La distribuidor de empaquetados o de gaseosa electrónicos cada botón que se presione tiene una secuencia y al formarla este manda el paquete o gaseosa elegido. [1] El termómetro digital con 9-bits (0,5 C ) a 12-bits (1/16 C), la resolución y función de alarma no volátil(NV), programable por el usuario donde tiene dos botones que tienen cada una única secuencia de 64 bits donde el numero de registro es programado por cada fabrica en cada uno de los chips donde los datos se transfieren por una única serie como por ejemplo la DS28EA00 tiene una función que hace que este fiable porque tiene una clavija adicional para colocar una secuencia de detección. [2] Un detector de secuencia eje para detectar una secuencia única de accionamiento de cuatro conmutadores de vía de ferrocarril o actuadores. De todas las combinaciones posibles de secuencias, que responde a sólo una, accionando una señal de identificación de secuencias en respuesta a que una secuencia. Se hace caso omiso de todas las secuencias posibles otras. Una aplicación se da cuando los detectores de ejes están dispuestos a lo largo de la línea de movimiento de un tren, el detector de identificación de secuencia de una única activación de los detectores de eje en el orden de "tercera + cuarta + primera + segunda". Inicialmente, las líneas de salida de todos los interruptores o activadores, excepto el tercero están bloqueados por medio de compuerta de control. El accionamiento del interruptor de pista tercera desbloquea un circuito que contiene el interruptor de pista cuarto. La actuación de los últimos desbloquea el interruptor de la pista primero y hace que el interruptor de tercera pista conductora del circuito. El accionamiento del interruptor de pista primero desbloquea el interruptor de circuitos de vía segunda y hace que el interruptor no conductor cuarta pista del circuito. El accionamiento del interruptor de pista segundo desencadena una secuencia señal de salida y hace que la pista no conductor primera interruptor. Cualquier otra secuencia circuito de comandos de reset y empezar de nuevo. [3]
Para realizar circuitos secuenciales es necesaria la utilización de elementos de almacenamiento y compuertas lógicas. Para el diseño de sistemas secuenciales es mas conveniente que la maquina de estado sea de tipo Moore para evitar “glish”, y erres por conmutación. Los datos almacenados por los registros son necesarios para realizar múltiples procedimientos con una señal específica. De ser posible se deben usar las técnicas de codificación, ya que se simplifican los mapas KK. Para el diseño de sistemas secuenciales es recomendable el uso de Flip-Flops D ya que su entrada es igual a su salida facilitando realizar la tabla. V. OBSERVACIONES Y COMENTARIOS El hecho de incluir diseño en el proceso de aprendizaje del laboratorio lo hace mas ameno contribuyendo a un aprendizaje a un nivel superior.
VI. REFERENCIAS [1] Rubén Darío Cárdenas Espinosa (2009). DISEÑO DIGITAL PARA INGENIERIA [Online]. Available: http://www.monografias.com/trabajos-pdf2/disenodigital-ingenieria/diseno-digital-ingenieria.pdf [2] Availabe Online: http://www.es.hukol.net/themenreihe.p?c=Ingenier%C3%AD a_electr%C3%B3nica [3] Universidad de Murcia. ESTRUCTURA Y TECNOLOGÍA DE COMPUTADORES (VERSIÓN 2.0). Available: http://ditec.um.es/etc/apuntes/tema7.pdf
INFORME. Diseño de circuitos detectores de secuencia. 23 de Abril de 2012 5
I.
APENDICE
Fig. A1. Circuito esquemático contador Gray.
Fig. A2. FSM detector de secuencias tipo Mealy.
INFORME. Diseño de circuitos detectores de secuencia. 23 de Abril de 2012 6
Fig. A3. FSM detector de secuencias tipo Moore.
INFORME. Diseño de circuitos detectores de secuencia. 23 de Abril de 2012 7
Fig. A1. Circuito esquemático detector de secuencias FSM Mealy.
INFORME. Diseño de circuitos detectores de secuencia. 23 de Abril de 2012 8
Entrada
E. Pre.
P. Est.
FF T
FF JK
FF D
Salida
E1
E0 q2 q1 q0 Q2 Q1 Q0 T2 T1 T0 J2 K2 J1 K1 J0 K0 D2 D1 D0
S0
0
0
0
0
0
0
0
0
0
0
0
0
x
0
x
0
x
0
0
0
0
0
0
0
0
1
0
0
0
0
0
1
0
x
0
x
x
1
0
0
0
0
0
0
0
1
0
0
1
1
0
0
1
0
x
x
0
1
x
0
1
1
1
0
0
0
1
1
0
1
1
0
0
0
0
x
x
0
x
0
0
1
1
1
0
0
1
0
0
0
1
1
1
1
1
x
1
1
x
1
x
0
1
1
1
0
0
1
0
1
0
1
1
1
1
0
x
1
1
x
x
0
0
1
1
1
0
0
1
1
0
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
0
0
1
1
1
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
0
1
0
0
0
0
0
0
0
0
0
0
x
0
x
0
x
0
0
0
0
0
1
0
0
1
0
1
0
0
1
1
0
x
1
x
x
1
0
1
0
0
0
1
0
1
0
0
0
0
0
1
0
0
x
x
1
0
x
0
0
0
0
0
1
0
1
1
1
0
0
1
1
1
1
x
x
1
x
1
1
0
0
1
0
1
1
0
0
1
0
1
0
0
1
x
0
0
x
1
x
1
0
1
1
0
1
1
0
1
1
0
1
0
0
0
x
0
0
x
x
0
1
0
1
1
0
1
1
1
0
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
0
1
1
1
1
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
1
0
0
0
0
0
0
1
0
0
1
0
x
0
x
1
x
0
0
1
0
1
0
0
0
1
0
0
1
0
0
0
0
x
0
x
x
0
0
0
1
0
1
0
0
1
0
0
0
1
0
1
1
0
x
x
1
1
x
0
0
1
0
1
0
0
1
1
1
0
1
1
1
0
1
x
x
1
x
0
1
0
1
1
1
0
1
0
0
0
0
1
1
0
1
x
1
0
x
1
x
0
0
1
0
1
0
1
0
1
1
0
1
0
0
0
x
0
0
x
x
0
1
0
1
1
1
0
1
1
0
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
1
0
1
1
1
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
1
1
0
0
0
0
0
0
0
0
0
0
x
0
x
0
x
0
0
0
0
1
1
0
0
1
0
0
0
0
0
1
0
x
0
x
x
1
0
0
0
0
1
1
0
1
0
0
0
0
0
1
0
0
x
x
1
0
x
0
0
0
0
1
1
0
1
1
1
0
1
1
1
0
1
x
x
1
x
0
1
0
1
1
1
1
1
0
0
1
0
1
0
0
1
x
0
0
x
1
x
1
0
1
1
1
1
1
0
1
1
0
1
0
0
0
x
0
0
x
x
0
1
0
1
1
1
1
1
1
0
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
1
1
1
1
1
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
Tabla. A1 Tabla de codificación completa FF T, D y JK para la FSM Melay.