Vous êtes sur la page 1sur 16

Mquinas de estado Mquinas de estados : Circuito digital que sigue una determinada secuencia de estados en una forma ordenada.

Constan de memoria (Flip-Flops) con seal de reloj sincrnico y una lgica combinatoria encargada de suministrar los datos de la secuencia.

Estado :

Coleccin de variables de estado cuyos valores en cualquier tiempo contienen toda la informacin acerca de valores pasados necesarios para estimar un comportamiento futuro
Variable cuyos valores lgicos definen un estado lgico de una mquina

Variables de estado:

Mquinas de estado

Ejemplo: Conteo de nmero de unos en una entrada serial verificando si tiene paridad impar
1

0 Impar(1 )

Par(0) 1

Reset

Estado presente Par Par Impar Impar

Entrada 0 1 0 1

Estado siguiente Par Impar Impar Par

Salida 0 0 1 1

Mquinas de estado
MAQUINA DE ESTADO DE MEALY

Entra das Excitacin Lgica del sgte estado Memoria de estado

Salida Lgica de salida

Ck Estado actual

Seal de reloj

Salida es funcin del estado actual y las entradas

Mquinas de estado
MAQUINA DE ESTADO DE MOORE

Entradas Excitacin Lgica del sgte estado Memoria de estado

Lgica de salida

Salida

Ck Estado actual

Seal de reloj

Salida depende nicamente del estado actual

Mquinas de estado
Anlisis de mquinas de estado

Mquinas de estado
ECUACIONES DE EXCITACION

D0 Q0.EN Q0.EN D1 Q1.EN Q1.Q0.EN Q1.Q0.EN


ECUACIONES DE TRANSICION

Q0* Q0.EN Q0.EN

Q1* Q1.EN Q1.Q0.EN Q1.Q0.EN


MAX Q1.Q0.EN

Mquinas de estado
Q0* Q0.EN Q0.EN
Q1* Q1.EN Q1.Q0.EN Q1.Q0.EN

MAX Q1.Q0.EN

TABLA DE TRANSICION
Estado anterior
EN = 0

Estado siguiente
EN = 1

Q1 0 0 1 1

Q0 0 1 0 1

Q1* 0 0 1 1

Q0* 0 1 0 1

Q1* 0 1 1 0

Q0* 1 0 1 0
EN=0 A

EN=1 MAX=0 B

EN=0

TABLA DE ESTADOS
Estado anterior S A B C D Estado siguiente EN = 0 EN =1 S* MAX S* MAX A 0 B 0 B 0 C 0 C 0 D 0 D 0 A 1

EN=1 MAX=0

EN=1 MAX=0

D EN=0 EN=1 MAX=0

C EN=0

Mquinas de estado
DISEO DE MAQUINAS DE ESTADO
FSM : Mquinas de estado finitas : Nombre dado a las mquinas de estado debido a que la lgica secuencial que las implementa puede estar solamente en un nmero fijo de estados posibles. Los pasos a seguir en el diseo de este tipo de mquinas pueden ser : 1.- Entendimiento del problema: Interprete la descripcin dada de una manera no ambigua; se puede intentar plantear diferentes secuencias de entrada con el fin de verificar si efectivamente las salidas generadas son las pedidas. 2.- Representacin de la FSM : Coloque el problema en una forma tal que sea fcil de manipular por algunos de los diferentes procedimientos para disear FSM (diagramas de estado, ASM, HDL, etc.). 3.- Minimizacin de estados : Si el comportamiento de las seales de entrada y salida es duplicada en algunos tramos del diagrama de estados puede eliminarse la trayectoria llevando a una reduccin del nmero de estados planteado. 4.- Asignacin de estados : Una buena asignacin de estados (asignar a cada estado una combinacin de bits ) puede llevar a una minimizacin del diseo. 5.- Escogencia del tipo de Flip-flop : Generalmente la escogencia de Flip-flops J-K tiende a reducir el nmero de compuertas y el Flip-flop D simplifica el procedimiento de diseo. 6.- Implementacin de FSM : Usando mapas de Karnaugh para las funciones de la lgica del siguiente estado y lgica de salida se lleva a cabo la implementacin de la FSM.

Mquinas de estado
Mquina expendedora de dulces
Planteamiento del problema:

Una mquina expendedora de dulces suministra uno cuando ha recibido 15 centavos en monedas. La mquina posee una ranura que acepta monedas de 10c y 5 c, una a la vez. Un sensor mecnico identifica el valor de la moneda insertado. Un controlador de salida libera un dulce a travs de una ventanilla. Esta mquina no suministra cambio.
Paso 1.- Diagrama de bloques de funcionamiento e interpretacin: D es vlido por un perodo de reloj cuando es insertada una moneda de 10c, y N lo es cuando una moneda de 5c es insertada. La mquina coloca un 1 por un perodo de reloj cuando 15c ms han sido depositados.

Mquinas de estado
Paso 2.- Representacin de la FSM: Una manera de realizar una buena especificacin es enumerar las posibles secuencias nicas de entradas configuraciones del sistema, ayudando a definir los probables estados de la FSM. Posibles secuencias : 3 monedas de 5c en secuencia : N,N,N 2 monedas de 5c y una de 10c : N,N,D Una de 5c seguida de una de 10c : N,D Una de 10c seguida de una de 5c : D,N Dos monedas de 10c : D,D.
Reset N 1 N D 3 N 7 D 8 4 N 0 D 2 D

Mquinas de estado
Paso 3.- Minimizacin de estados:
Como los estados 4, 5, 6, 7 y 8 tienen el mismo comportamiento se pueden combinar en uno solo. Se puede pensar que cada estado representa una cantidad de monedas recibidas.

Reset 0c

N 5c

N 10c

N,D 15c

Mquinas de estado
Paso 4.- Codificacin de estados:
Una buena asignacin en la codificacin de los estados permitir tener una menor cantidad de hardware necesario para implementar la mquina
Presente Estado 0c Entrada D 0 0 Entrada N 0 1 Siguiente Estado 0c 5c Salida 0 0

1
1 5c 0 0 1

0
1 0 1 0

10c
X 5c 10c 15c

0
X 0 0 0

1
10c 0 0 1 1 15c X

1
0 1 0 1 X

X
10c 15c 15c X 15c

X
0 0 0 X 1

Mquinas de estado
Paso 5.- Escogencia del tipo de flip-flop: A modo de comparacin se
implementar este diseo con flip-flops D primero y luego con Flip-flop J-K.
Presente Estado Q1,Q0 0 0 0 0 0 0 0 0 0 1 0 1 0 1 0 1 1 0 1 0 1 0 1 0 1 1 1 1 1 1 1 1 Entrada D Entrada N Siguiente Estado Q1*,Q0* (D1, D0) 0 0 0 1 1 0 X X 0 1 1 0 1 1 X X 1 0 1 1 1 1 X X 1 1 1 1 1 1 X X Salida

0
0 1 1 0 0 1 1 0 0 1 1 0 0 1 1

0
1 0 1 0 1 0 1 0 1 0 1 0 1 0 1

0
0 0 X 0 0 0 X 0 0 0 X 1 1 1 X

Mquinas de estado
Paso 6.- Implementacin de la FSM:
Elabore los mapas de Karnaugh para las entradas D1, D0 y salida.

D1 Q1 D Q0 .N
SALIDA Q1 .Q0

D0 N .Q0 Q0 .N Q1 .N Q1 .D

Mquinas de estado
Paso 5.- Escogencia del tipo de flip-flop:
Presente Estado Q1,Q0 0 0 0 0 0 0 0 0 0 1 1 1 1 0 0 0 1 1 1 1 0 0 0 0 Entrada D 0 0 1 1 0 0 1 1 0 0 1 1 Entrada N 0 1 0 1 0 1 0 1 0 1 0 1 Siguiente Estado Q1*,Q0* 0 0 0 1 X 0 1 1 X 1 1 1 X 1 0 X 1 0 1 X 0 1 1 X Sali da 0 0 0 X 0 0 0 X 0 0 0 X

J1 0 0 1 X 0 1 1 X X X X X

K1 X X X X X X X X 0 0 0 X

J0 0 1 0 X X X X X 0 1 1 X

K0 X X X X 0 1 0 X X X X X

1 1
1 1 1 1 1 1

0
0 1 1

0
1 0 1

1 1
1 1 X 1 1 X

X
X X X

0
0 0 X

X
X X X

0
0 0 X

1
1 1 X

Mquinas de estado
Paso 6.- Implementacin de la FSM:

J 1 D Q0 .N
K1 0

J 0 N Q1 .D

K 0 Q1 .N