Maquinas de estado

Maquinas de estado
• Definición
• Clasificación
• Maquinas de estado síncronas
– Análisis
– Diseño

Definición
• Son ciertos circuitos secuenciales que tienen
un número determinado de estados (2n).
• Pueden ser:
– retroalimentados (flip flops, biestables) o
– máquinas sincrónicas temporizadas cuando
utilizan las primeras para crear circuitos cuyas
entradas son examinadas y cuyas salidas
cambian con respecto a una señal de reloj
controlada.

• En cualquier caso, se tienen unas entradas,
unas salidas y unos estados.

Estructura
Lógica
de
estado
siguient
e
F

Señal de
reloj

Excitació
n

Memori
a de
estado

Entrada
reloj

Estad
o
prese
nte

Lógica
de
salida
G

Salid
as

Estructura • Lógica de estado siguiente(F): Una función de las entradas y del estado actual. • La señal de reloj: dispone el funcionamiento de los flip-flops ya sea por disparo de flanco o por disparo de pulso • Lógica de salida(G): Una función del estado actual y/o de las entradas . que tiene 2n estados diferentes. • Memoria de estados: Es un conjunto de n flip-flops que almacenan el estado presente de la máquina. La señal de reloj controla el cambio de estado en tales flip flops.

Clasificación • Sincrónicas vs Asincrónicas • Máquinas de Moore • Máquina de Mealy .

Maquina de Moore • Es la máquina de estado en la cual las salidas solo dependen del estado presente Lógica de estado siguient e F Señal de reloj Excitaci ón Memori a de estado Estad o prese nte Lógica de salida G Entrada reloj Salid as .

Máquina de Mealy • Es la máquina de estado en la cuál la salida depende tanto del estado presente como de las entradas externas .

Máquina de Mealy Lógica de estado siguient e F Señal de reloj Excitació n Memoria de estado Entrada reloj Estad o prese nte Lógica de salida G Salid as .

Maquinas de estado sincrónicas • Las que poseen entrada de reloj en la memoria de estado .

• La segunda precisa que la salida de la máquina la determinan las dos mismas variables.Análisis • Asumiendo la definición formal de máquina de Mealy: –   Estado siguiente = F(estado actual. entrada) – Salida = G(estado actual. • El propósito del análisis de los circuitos secuenciales es determinar el estado siguiente y las funciones de salida para poder predecir el comportamiento del circuito. entrada) • La primera ecuación dice que el estado siguiente estará determinado por la entrada presente y el estado presente del circuito. .

• Usar F y G para construir una tabla de estados/salidas que especifique por completo el estado siguiente y la salida del circuito para cada combinación posible de estado actual y entrada.Análisis • Determinar el estado siguiente y las funciones de salida F y G.  . • Diagrama de estados que presente en forma gráfica la información anterior(opcional).

. mediante nombres mnemotécnicos para los estados. • Minimizar el número de estados en la tabla de estado/salida(opcional) • Elegir un conjunto de variables de estado y asignar combinaciones de variables de estado a cada uno de los estados. (Puede partirse del diagrama de estados correspondiente.Diseño • Construir una tabla de estado/salida correspondiente a la descripción o especificación.

. • Construir una tabla de excitación que muestre los valores de excitación requeridos para obtener el estado siguiente deseado para cada combinación de estado/entrada.Diseño • Sustituir las combinaciones de variable de estado en la tabla de estado/salida para crear una tabla de transición/salida que muestre la combinación de variable de estado siguiente y la salida para cada combinación de estado/salida • Elegir el tipo de flip flop que hará la memoria de estado.

.Diseño • Derivar las ecuaciones de excitación de la tabla de excitación • Derivar las ecuaciones de salida de la tabla de transición/salida • Dibujar el diagrama lógico que muestre los elementos de almacenamiento de las variables de estado y realice las ecuaciones requeridas de excitación y salida.

detectar tres “1” seguidos utilizando una máquina de Moore y biestables tipo D – Construir una tabla de estado/salida correspondiente a la descripción o especificación. mediante nombres mnemotécnicos para los estados. .Ejemplo 1 • Enunciado del problema: En una señal. (Puede partirse del diagrama de estados correspondiente) • Construir plantilla para la tabla de estado.

Tres unos seguidos SIGNIFICADO Estado inicial S INI A Z 0 1 INI UNO 0 .

Tres Unos seguidos SIGNIFICADO S A Z 0 1 Estado inicial INI INI UNO 0 Ha ingresado un 1 UNO INI DOS 0 .

Tres unos segudos SIGNIFICADO S A Z 0 1 Estado inicial INI INI UNO 0 Ha ingresado un 1 UNO INI DOS 0 Han ingresado dos 1s DOS INI TRES 0 .

Tres unos seguidos SIGNIFICADO S A Z 0 1 Estado inicial INI INI UNO 0 Ha ingresado un 1 UNO INI DOS 0 Han ingresado dos 1s Han ingresado tres 1 DOS INI TRES 0 TRES INI CUATR O 1 .

Tres unos seguidos SIGNIFICADO S A Z 0 1 Estado inicial INI INI UNO 0 Ha ingresado un 1 UNO INI DOS 0 Han ingresado dos 1s Han ingresado tres 1 Han ingresado 4 “1s” DOS INI TRES 0 TRES INI 1 CUATRO INI CUATR O TRES 1 .

Tres unos seguidos • Diagrama de estados 1 INI UNO 1 0 0 0 1 CUAT RO DOS TRES 1 1 .

Tres Unos seguidos – Minimizar el número de estados en la tabla de estado/salida(opcional) SIGNIFICADO S A Z 0 1 Estado inicial INI INI UNO 0 Ha ingresado un 1 UNO INI DOS 0 Han ingresado dos 1s Han ingresado tres 1 Han ingresado 4 “1s” DOS INI TRES 0 TRES INI 1 CUATRO INI CUATR O TRES 1 .

Tres Unos seguidos SIGNIFICADO S A Z 0 1 Estado inicial INI INI UNO 0 Ha ingresado un 1 UNO INI DOS 0 Han ingresado dos 1s Han ingresado tres 1 Han ingresado 4 “1s” DOS INI TRES 0 TRES INI TRES 1 TRES INI TRES 1 .

Tres Unos seguidos SIGNIFICADO S A Z 0 1 Estado inicial INI INI UNO 0 Ha ingresado un 1 UNO INI DOS 0 Han ingresado dos 1s Han ingresado tres 1 DOS INI TRES 0 TRES INI TRES 1 .

Tres Unos seguidos 1 INI UNO 1 0 0 0 DOS 1 TRES 1 .

• Estado inicial solo 000 o solo 111 (estados repetitivos) • minimizar el número de variables de estado que cambian • maximizar el número de variables de estado que no cambian en un grupo de estados relacionados • facilita el análisis del circuito. .Tres Unos seguidos • Elegir un conjunto de variables de estado y asignar combinaciones de variables de estado a cada uno de los estados.

Tres Unos seguidos Nombre del estado El más simple INI UNO DOS TRES 00 01 10 11 Asignación Compues Un solo Casi un 1 ta uno Q1-Q4 Q1-Q3 Q1-Q5 00 0001 000 01 0010 001 11 0100 010 10 1000 100 .

Tres Unos seguidos • Sustituir las combinaciones de variable de estado en la tabla de estado/salida para crear una tabla de transición/salida que muestre la combinación de variable de estado siguiente y la salida para cada combinación de estado/salida .

Tres Unos seguidos SIGNIFICADO S A Z 0 1 Estado inicial 00 INI UNO 0 Ha ingresado un 1 01 INI DOS 0 Han ingresado dos 1s Han ingresado tres 1 11 INI TRES 0 10 INI TRES 1 .

Tres Unos seguidos SIGNIFICADO S A Z 0 1 Estado inicial 00 00 01 0 Ha ingresado un 1 01 00 11 0 Han ingresado dos 1s Han ingresado tres 1 11 00 10 0 10 00 10 1 .

. – Para este caso es D por solicitud del ejercicio • Construir una tabla de excitación que muestre los valores de excitación requeridos para obtener el estado siguiente deseado para cada combinación de estado/entrada.Tres Unos seguidos • Elegir el tipo de flip flop que hará la memoria de estado.

Tres Unos seguidos • Resumen de tablas de excitación .

Tres Unos seguidos • Derivar las ecuaciones de excitación de la tabla de excitación SIGNIFICADO S A Q2Q1 0 Q2*Q1* 1 Q2*Q1* Estado inicial 00 00 01 Ha ingresado un 1 01 00 11 Han ingresado dos 1s 11 00 10 Han ingresado tres 1 10 00 10 .

Tres Unos seguidos A’ A D2‘D1' mo m1 D2'D1 m2 m3 D2D1 m6 m7 D2D1' m4 m5 Para Q1* = Q1A+Q2A .

Tres Unos seguidos • Para Q2* = Q2´A A’ A D2‘D1' mo m1 D2'D1 m2 m3 D2D1 m6 m7 D2D1' m4 m5 .

Tres Unos seguidos • Derivar las ecuaciones de salida de la tabla de transición/salida SIGNIFICADO S Z Q2 Q1 Estado inicial 00 0 Ha ingresado un 1 01 0 Han ingresado dos 1s Han ingresado tres 1 11 0 10 1 Z= D2D1´ .

Tres Unos seguidos • Dibujar el diagrama lógico que muestre los elementos de almacenamiento de las variables de estado y realice las ecuaciones requeridas de excitación y salida. .

Nombre del estado El más simple INI UNO DOS TRES 00 01 10 11 Asignación Compues Un solo Casi un 1 ta uno Q1-Q4 Q1-Q3 Q1-Q5 00 0001 000 01 0010 001 11 0100 010 10 1000 100 .Tres Unos seguidos • Elegir un conjunto de variables de estado y asignar combinaciones de variables de estado a cada uno de los estados.

Tres Unos seguidos • tabla de excitación con los valores de excitación para obtener el estado siguiente SIGNIFICADO S A Z Q2Q1 0 Q2*Q1* 1 Q2*Q1* Estado inicial 00 00 01 0 Ha ingresado un 1 01 00 10 0 Han ingresado dos 1s Han ingresado tres 1 10 00 11 0 11 00 11 1 .

• Derivar las ecuaciones de excitación de la tabla de excitación SIGNIFICADO S A Q2Q1 0 Q Q1* 1 Q Q1* Estado inicial 00 00 01 Ha ingresado un 1 01 00 10 Han ingresado dos 1s Han ingresado tres 1 10 00 11 11 00 11 * 2 * 2 .

• Para Q2* = Q1A+Q2A A’ A Q2‘Q1' mo m1 Q2‘Q1 m2 m3 Q2Q1 m6 m7 Q2Q1' m4 m5 .

• Q1* = Q1´A+Q2A A’ A Q2‘Q1' mo m1 Q2‘Q1 m2 m3 Q2Q1 m6 m7 Q2Q1' m4 m5 .

Ecuación de salida Z= Q2Q1 SIGNIFICADO S Z Q2Q1 Estado inicial 00 0 Ha ingresado un 1 01 0 Han ingresado dos 1s Han ingresado tres 1 10 0 11 1 .

Diagrama .