3-7 Maquinas de Estados
3-7 Maquinas de Estados
3-7 Maquinas de Estados
ÍNDICE
• Bibliografía
• Introducción
• Tipos de máquinas finitas de estados
• Síntesis de máquinas finitas de estados
§ Síntesis de máquinas de Mealy
§ Síntesis de máquinas de Moore
• Análisis de máquinas finitas de estados
§ Análisis de máquinas de Mealy
§ Análisis de máquinas de Moore
2
Máquinas finitas de estados
BIBLIOGRAFÍA
3
Máquinas finitas de estados
INTRODUCCIÓN
• En los sistemas combinacionales la salida Z en un determinado instante de
tiempo ti sólo depende de X en ese mismo instante de tiempo ti, es decir
que no tienen capacidad de memoria y que se puede obviar la variable de
tiempo t
4
Máquinas finitas de estados
INTRODUCCIÓN
• Un sistema secuencial dispone de elementos de memoria cuyo contenido
puede cambiar a lo largo del tiempo. Estos elementos de memoria
determinan el estado del sistema.
• Los sistemas secuenciales suelen tener una señal que inicia los elementos
de memoria con un valor determinado: señal de inicio (reset).
§ La señal de inicio determina el estado del sistema en el momento del
arranque (normalmente pone toda la memoria a cero).
• La salida en un instante concreto viene dada por la entrada y por el estado
del sistema.
• El estado actual del sistema, junto con la entrada, determinará el estado
en el instante siguiente ⇒ realimentación.
5
Máquinas finitas de estados
INTRODUCCIÓN
• Ejemplo: sistema secuencial que recibe datos a través de una entrada de 1 bit e
indica si ha recibido un número impar de 1s.
Ejemplo de secuencia:
En t=0, condición inicial, hay 0 1s lo que significa un número par de 1s
0 0
t: 0 1 2 3 4 5 6 7 8 9 10 ...
S: P P P I P I I I I I P ...
X: 0 0 1 1 1 0 0 0 0 1 0 ... 1
Inicio
S+1: P P I P I I I I I P P ... PAR 1 IMPAR
Z: 0 0 1 0 1 1 1 1 1 0 0 ...
En cualquier instante de tiempo sólo hay dos posibles clases de secuencias, las que han
recibido un nº par o un nº impar de 1s, esto significa que todos los datos recibidos se pueden
clasificar en dos clases o estados (S): PAR e IMPAR. Por tanto, es una Máquina Finita de
Estados (FSM).
6
Máquinas finitas de estados
Nivel alto
Clk
Nivel bajo
Flanco Flanco
de subida de bajada
Ciclo de reloj
7
Máquinas finitas de estados
ÍNDICE
• Bibliografía
• Introducción
• Tipos de máquinas finitas de estados
• Síntesis de máquinas finitas de estados
§ Síntesis de máquinas de Mealy
§ Síntesis de máquinas de Moore
• Análisis de máquinas finitas de estados
§ Análisis de máquinas de Mealy
§ Análisis de máquinas de Moore
8
Máquinas finitas de estados
9
Máquinas finitas de estados
Funciones
de salida Z Salidas
Entradas Funciones
X G externas
externas de cambio S+1 Elementos S
de estado de
H Z memoria
(NS)
Clk, reset, set
Realimentación
10
Máquinas finitas de estados
Entradas Funciones
X de cambio Elementos Funciones
externas S+1 S
de estado de de salida Z Salidas
H G externas
Z memoria
(NS)
Clk, reset, set
Realimentación
11
Máquinas finitas de estados
Máquina
de Mealy Funciones
de salida Z Salidas
Entradas Funciones
X G externas
externas de cambio S+1 Elementos S
de estado de
H Z memoria
(NS)
Clk, reset, set
Máquina Realimentación
de Moore
Entradas Funciones
X de cambio Elementos Funciones
externas S+1 S
de estado de de salida Z Salidas
H G externas
Z memoria
(NS)
Clk, reset, set
Realimentación 12
Máquinas finitas de estados
ÍNDICE
• Bibliografía
• Introducción
• Tipos de máquinas finitas de estados
• Síntesis de máquinas finitas de estados
§ Síntesis de máquinas de Mealy
§ Síntesis de máquinas de Moore
• Análisis de máquinas finitas de estados
§ Análisis de máquinas de Mealy
§ Análisis de máquinas de Moore
13
Máquinas finitas de estados
Diagrama de transición de
estados
Representación formal
Minimización de estados
Sistema X ∈ {a,b}
X Z
secuencial Z ∈ {p, q}
16
Máquinas finitas de estados
X ∈ {a, b} Sistema
q si los últimos tres datos son : abb
X Z =
Z ∈ {p, q} secuencial
p caso contrario
17
Máquinas finitas de estados
18
Máquinas finitas de estados
X D Q Z X D Q Z
Biestable Biestable
D _ _ D _ _
Clk Clk Q Z Clk Clk Q Z
Q1 Q0 0 1 Q1 Q0 X Q’1 Q’0 Z
0 0 01/0 00/0 0 0 0 0 1 0
0 1 01/0 10/0 0 0 1 0 0 0
1 0 01/0 00/1 0 1 0 0 1 0
0 1 1 1 0 0
Set 1 0 0 0 1 0
X D Q Z
Biestable 1 0 1 0 0 1
_
D _
Clk Clk Q Z 1 1 0 X X X
Reset
1 1 1 X X X 21
Máquinas finitas de estados
S(t), X S(t+1), Z
Función de transición
Q'0 (Q 1 , Q 0 , X0 ) = ∑ m(0,2,4) + ∑ Φ(6,7) ⇒
Q1 Q0 X Q’1 Q’0 Z
Q'0 = D0 = X0
0 0 0 0 1 0
0 0 1 0 0 0
Q'1 (Q 1 , Q 0 , X0 ) = ∑ m(3) + ∑ Φ(6,7) ⇒
0 1 0 0 1 0
Q'1 = D1 = X0 ⋅ Q 0
0 1 1 1 0 0
1 0 0 0 1 0
1 0 1 0 0 1 Función de salida
1 1 0 X X X Z 0 (Q 1 , Q 0 , X0 ) = ∑ m(5) + ∑ Φ(6,7) ⇒
1 1 1 X X X Z 0 = X0 ⋅ Q 1
Realimentación
Q’1 Q1
La salida depende
Q’0 Q0 del estado y de la
entrada (Mealy)
23
Máquinas finitas de estados
24
Máquinas finitas de estados
X ∈ {a, b} Sistema
q si los últimos tres datos son : abb
X Z =
Z ∈ {p, q} secuencial
p caso contrario
25
Máquinas finitas de estados
S(t) X0 Z
S(t), X S(t+1) S(t) Z
Q1 Q0 0 1 Z0
Q1 Q0 X Q’1 Q’0 Q1 Q0 Z0
0 0 01 00 0
0 0 0 0 1 0 0 0
0 1 01 10 0
0 0 1 0 0 0 1 0
1 0 01 11 0
0 1 0 0 1 1 0 0
1 1 01 00 1
0 1 1 1 0 1 1 1
Set 1 0 0 0 1
X D Q Z
Biestable 1 0 1 1 1
_
D _
Clk Clk Q Z 1 1 0 0 1
Reset
1 1 1 0 0 27
Máquinas finitas de estados
1 1 1
Realimentación
Q’1
X0 D Q
Q1
Q
Z0
La salida
depende
Q’0 sólo del
D Q
Q0 estado
Clk Q (Moore)
29
Máquinas finitas de estados
ÍNDICE
• Bibliografía
• Introducción
• Tipos de máquinas finitas de estados
• Síntesis de máquinas finitas de estados
§ Síntesis de máquinas de Mealy
§ Síntesis de máquinas de Moore
• Análisis de máquinas finitas de estados
§ Análisis de máquinas de Mealy
§ Análisis de máquinas de Moore
30
Máquinas finitas de estados
31
Máquinas finitas de estados
32
Máquinas finitas de estados
Q’1 Q1
• Entradas: X0 ∈ {0,1}
• Salidas: Z0 ∈ {0,1}
• Variables de estado: 2 {Q1,Q0} darán lugar a 4 estados como máximo.
33
Máquinas finitas de estados
S(t), X S(t+1), Z
La salida depende del estado y de la
Q1 Q0 X Q’1 Q’0 Z entrada: es una máquina de Mealy.
0 0 0 0 1 0
0 0 1 0 0 0
S(t) X0
0 1 0 0 1 0
Q1 Q0 0 1
0 1 1 1 0 0
0 0 01/0 00/0
1 0 0 0 1 0
0 1 01/0 10/0
1 0 1 0 0 1
1 0 01/0 00/1
1 1 0 0 1 0
1 1 01/0 10/1
34
1 1 1 1 0 1
Máquinas finitas de estados
X0 D Q
Z0
D Q
Clk Q
36
Máquinas finitas de estados
Q’1
X0 D Q
Q1
Q
Z0
• Entradas: X0 ∈ {0,1}
• Salidas: Z0 ∈ {0,1}
• Variables de estado: 2 {Q1,Q0} darán lugar a 4 estados como máximo. 37
Máquinas finitas de estados
0 1 1 1 0 0 0 01 00 0 0 0
1 0 0 0 1 0 1 01 10 0 1 0
1 0 1 1 1 1 0 01 11 1 0 0
1 1 0 0 1 1 1 01 00 1 1 1
1 1 1 0 0 38
Máquinas finitas de estados
Estado Entradas
actual
a b Estado Salida
S0 S1 S0 S0 p
S1 S1 S2 S1 p
S2 S1 S3 S2 p
S3 S1 S0 S3 q
Máquinas finitas de estados
S1 S1 S2 S1 p
S2 S1 S3 S2 p
S3 S1 S0 S3 q
a
b
b
a
S2/p
S1/p a
S0/p
a
b
Inicio b
S3/q
40