Este documento describe máquinas de estado, incluyendo su definición, clasificación y análisis y diseño de máquinas de estado síncronas. Explica que las máquinas de estado son circuitos secuenciales con un número determinado de estados posibles y que pueden ser retroalimentados o temporizados con una señal de reloj. Además, clasifica las máquinas de estado en síncronas y asincrónicas y según si sus salidas dependen solo del estado actual (Moore) o también de las entradas (Mealy). Finalmente,
2. Maquinas de estado
• Definición
• Clasificación
• Maquinas de estado síncronas
– Análisis
– Diseño
3. 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.
5. Estructura
• Lógica de estado siguiente(F): Una función de las
entradas y del estado actual.
• Memoria de estados: Es un conjunto de n flip-flops
que almacenan el estado presente de la máquina, que
tiene 2n
estados diferentes. La señal de reloj controla el
cambio de estado en tales flip flops.
• 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
7. Maquina de Moore
• Es la máquina de estado en la cual las salidas solo
dependen del estado presente
Lógica de
estado
siguiente
F
Memoria
de estado
Entrada
reloj
Lógica de
salida
G
Señal de
reloj
Excitación
Estado
presen
te
Salida
s
8. 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
9. Máquina de Mealy
Lógica de
estado
siguiente
F
Memoria
de estado
Entrada
reloj
Lógica de
salida
G
Señal de
reloj
Excitación Estado
present
e
Salida
s
10. Maquinas de estado sincrónicas
• Las que poseen entrada de reloj en la
memoria de estado
11. Análisis
• Asumiendo la definición formal de máquina de Mealy:
– Estado siguiente = F(estado actual, entrada)
– Salida = G(estado actual, entrada)
• La primera ecuación dice que el estado siguiente
estará determinado por la entrada presente y el
estado presente del circuito.
• La segunda precisa que la salida de la máquina la
determinan las dos mismas variables.
• 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.
12. Análisis
• Determinar el estado siguiente y las funciones
de salida F y G.
• 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.
• Diagrama de estados que presente en forma
gráfica la información anterior(opcional).
13. Diseño
• Construir una tabla de estado/salida
correspondiente a la descripción o especificación,
mediante nombres mnemotécnicos para los
estados. (Puede partirse del diagrama de estados
correspondiente.
• 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.
14. 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.
• 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.
15. 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.
16. Ejemplo 1
• Enunciado del problema:
En una señal, 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. (Puede partirse del diagrama de estados
correspondiente)
• Construir plantilla para la tabla de estado.
19. 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
20. 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
DOS INI TRES 0
Han ingresado tres
1
TRES INI CUATR
O
1
21. 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
DOS INI TRES 0
Han ingresado tres
1
TRES INI CUATR
O
1
Han ingresado 4
“1s”
CUATRO INI TRES 1
22. Tres unos seguidos
• Diagrama de estados
INI UNO
DOS
TRES
CUATR
O
1
1
1
1
0
0
0
1
23. 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
DOS INI TRES 0
Han ingresado tres
1
TRES INI CUATR
O
1
Han ingresado 4
“1s”
CUATRO INI TRES 1
24. 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
DOS INI TRES 0
Han ingresado tres
1
TRES INI TRES 1
Han ingresado 4
“1s”
TRES INI TRES 1
25. 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
DOS INI TRES 0
Han ingresado tres
1
TRES INI TRES 1
27. Tres Unos seguidos
• Elegir un conjunto de variables de estado y asignar
combinaciones de variables de estado a cada uno de
los estados.
• 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.
29. 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
30. 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
11 INI TRES 0
Han ingresado tres
1
10 INI TRES 1
31. 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
11 00 10 0
Han ingresado tres
1
10 00 10 1
32. Tres Unos seguidos
• Elegir el tipo de flip flop que hará la memoria
de estado.
– 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.
34. Tres Unos seguidos
• Derivar las ecuaciones de excitación de la
tabla de excitación
SIGNIFICADO S
Q2Q1
A
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
35. Tres Unos seguidos
A’ A
D2‘D1' mo m1
D2'D1 m2 m3
D2D1 m6 m7
D2D1' m4 m5
Para Q1* = Q1A+Q2A
36. Tres Unos seguidos
• Para Q2* = Q2´A
A’ A
D2‘D1' mo m1
D2'D1 m2 m3
D2D1 m6 m7
D2D1' m4 m5
37. Tres Unos seguidos
• Derivar las ecuaciones de salida de la tabla de
transición/salida
SIGNIFICADO S
Q2Q1
Z
Estado inicial 00 0
Ha ingresado un 1 01 0
Han ingresado dos
1s
11 0
Han ingresado tres 1 10 1
Z= D2D1´
38. 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.
39. Tres Unos seguidos
Nombre
del
estado
Asignación
El más
simple
Compues
ta
Q1-Q3
Un solo
uno
Q1-Q5
Casi un 1
Q1-Q4
INI
UNO
DOS
TRES
00
01
10
11
00
01
11
10
0001
0010
0100
1000
000
001
010
100
• Elegir un conjunto de variables de estado y asignar
combinaciones de variables de estado a cada uno de los
estados.
40. Tres Unos seguidos
• tabla de excitación con los valores de
excitación para obtener el estado siguiente
SIGNIFICADO S
Q2Q1
A Z
0
Q2
*
Q1
*
1
Q2
*
Q1
*
Estado inicial 00 00 01 0
Ha ingresado un 1 01 00 10 0
Han ingresado dos
1s
10 00 11 0
Han ingresado tres
1
11 00 11 1
41. • Derivar las ecuaciones de excitación de la
tabla de excitación
SIGNIFICADO S
Q2Q1
A
0
Q2
*
Q1
*
1
Q2
*
Q1
*
Estado inicial 00 00 01
Ha ingresado un 1 01 00 10
Han ingresado dos
1s
10 00 11
Han ingresado tres
1
11 00 11
42. • Para Q2* = Q1A+Q2A
A’ A
Q2‘Q1' mo m1
Q2‘Q1 m2 m3
Q2Q1 m6 m7
Q2Q1' m4 m5
43. • Q1* = Q1
´
A+Q2A
A’ A
Q2‘Q1' mo m1
Q2‘Q1 m2 m3
Q2Q1 m6 m7
Q2Q1' m4 m5
44. Ecuación de salida
SIGNIFICADO S
Q2Q1
Z
Estado inicial 00 0
Ha ingresado un 1 01 0
Han ingresado dos
1s
10 0
Han ingresado tres 1 11 1
Z= Q2Q1