Maquinas de estado
⋅1⋅
Diseño de Sistemas Electrónicos-DB4
Unidad 8. Diseño Basado en Máquinas de Estado Finitas (F.S.M.)
CONTENIDO
Unidad 8. Diseño Basado en Máquinas de Estado Finitas (F.S.M.). 8.1. Introducción. 8.1.1. Concepto de estado. 8.1.2. Máquinas tipo Mealy y Moore. 8.1.3. Tablas y Diagramas de Estados. 8.2. Análisis de máquinas de estados. 8.2.1. Estructura de una máquina deestados. 8.2.2. Lógica de salida. 8.2.3. Ecuaciones características. 8.3. Diseño de Máquinas de Estados. 8.3.1. Asignación de estados. 8.3.2. Minimización de estados. 8.3.3. Ecuaciones de Transición. 8.3.4. Ecuaciones de Excitación. 8.4. Descripción VHDL de máquinas de estados. 8.5. Ejemplo de aplicación: Diseño del circuito de control de llenado de un depósito de líquidos.
OBJETIVOS ESPECÍFICOS
• •• • • • Repasar los conceptos de estado y variable de estado. Distinguir entre comportamientos tipo Mealy y Moore. Conocer la estructura de diseño de una máquina de estados. Ser capaz de deducir las ecuaciones características de un sistema secuencial. Poder minimizar un diagrama de estados. Ser capaz de obtener un diagrama de estados partiendo de unas especificaciones dadas. • Poder afrontar conéxito el diseño de una máquina de estados. • Aprender a modelar estos componentes en VHDL.
⋅2⋅
Diseño de Sistemas Electrónicos-DB4
Unidad 8. Diseño Basado en Máquinas de Estado Finitas (F.S.M.)
8.1 INTRODUCCIÓN
Concepto de estado. En la unidad anterior se han definido los circuitos secuenciales como aquellos que recuerdan lo que les ha sucedido en instantes de tiempo anteriores y soncapaces de alterar su comportamiento futuro en base a esta información. Un contador es un claro ejemplo de este tipo de circuitos, ya Q que es capaz de recordar su valor actual (estado actual) a fin CLK de sumarle ‘1’ para evolucionar al siguiente valor (estado). El valor actual del contador se define como su “estado actual”, el cual a su vez sirve para determinar cómo va evolucionar para llegaral estado siguiente. De forma general, se puede considerar que un circuito secuencial ha de memorizar una serie de situaciones, de forma que su comportamiento puede considerarse como la evolución de una situación a otra (o incluso a la misma). Cada una de estas situaciones será lo que se denominará un “estado” y el cambio de una situación a otra será lo que se denominará “transición”. Por ejemplo,si el contador actualmente presenta el valor de cuenta 5, en la próxima activación del reloj deberá incrementarse para pasar al estado 6. Este cambio del estado 5 al estado 6 es lo que se denomina transición. Como ya se ha comentado, el circuito secuencial ha de memorizar los posibles estados. Para ello usará biestables, los cuales constituyen los elementos mínimos de almacenamiento deinformación. Como un biestable puede codificar dos estados (‘1’ ó ‘0’), para codificar un sistema secuencial que presente E estados, se deberá usar un número de biestables (B) tal que 2B≥ E. En consecuencia: Nº Biestables = log2(Nº estados) La forma en que se codifica cada posible situación (estado) según los posibles valores que presenten los biestables es lo que se denomina “asignación de estados”.
⋅3⋅Diseño de Sistemas Electrónicos-DB4
Unidad 8. Diseño Basado en Máquinas de Estado Finitas (F.S.M.)
Máquinas de Mealy y Moore. En una máquina de estados, cada estado siempre será función del estado anterior y de las entradas. Sin embargo, atendiendo a la forma en que se generan las salidas es posible hablar de dos tipos diferentes de máquinas de estado finitas: Máquina de Moore.
EstadoSiguiente = F(Estado Actual, Entrada) Salida = G(Estado Actual)
Máquina de Mealy
Estado Siguiente = F(Estado Actual, Entrada) Salida = G(Estado Actual, Entrada)
Tablas y Diagramas de estado. Para describir el funcionamiento de un circuito secuencial se utilizan las denominadas tablas de estados (o tablas de excitación) y unos dibujos denominados diagramas de estados. Supongamos el caso de...
Regístrate para leer el documento completo.