2. ET ST=f(ET,QT-ΔT)
CIRCUITO
COMBINACIONAL
QT-ΔT QT
MEMORIA
Almacena el estado interno del sistema
DISEÑO DE SISTEMAS SECUENCIALES:
1.- Identificar los distintos estados internos y las transiciones
entre ellos
2.- Diseñar el circuito combinacional para producir las transiciones
internas y las señales de salida deseadas
3. Máquina (autómata) de estados finitos
Modelo matemático que define el funcionamiento de un sistema
(máquina) secuencial síncrono
Elementos de una máquina de estados finitos:
E entradas
S salidas
Q estados
λ funciones de salida
δ funciones de transición entre estados
4. Autómata de Moore
ET
QT+ΔT QT ST
δ MEM λ
QT
CLK
la salida solo depende de las
variables de estado
ST = λ(QT)
QT+ΔT = δ(ET, QT)
LA SALIDA SÓLO CAMBIA EN LOS FLANCOS
ACTIVOS DE LA SEÑAL DE RELOJ
Función de salida más sencilla
5. Autómata de Mealy
ET
ST
λ
QT+ΔT QT
QT δ MEM
la salida depende tanto de las
variables de estado como de
las señales de entrada
CLK
ST = λ(ET, QT)
QT+ΔT = δ(ET, QT)
LA SALIDA PUEDE CAMBIAR EN EL INSTANTE EN
QUE CAMBIEN LAS ENTRADAS,
INDEPENDIENTEMENTE DE LA SEÑAL DE RELOJ
Menos estados; menos circuitos de memoria
6. Descripción de sistemas: diagramas de estado
Cada estado se representa por un círculo
Cada transición se representa por flechas entre los estados:
Moore: la salida está definida únicamente por el estado
Mealy: la salida está definida por el estado y las entradas
E E/S
A/S1 B/S2 A B
Transición entre el estado A y el B Transición entre el estado A y el B
para un autómata de Moore para un autómata de Mealy
7. Ejemplo: Análisis de un sistema secuencial (I)
Función de salida:
E S
S(t) = E(t) ⋅ Q1T ⋅ Q2T
Q1 J1
Funciones de transición:
Q1 K1 J1T = ET + Q1T ⋅ Q2T
K1T = ET
Q2 J2 J2T = ET
Q2 K2 K2T = Q2T
CLK
9. Ejemplo: Análisis de un sistema secuencial (III)
Tabla de transiciones:
estado en el
instante T
estado en el
instante T+ΔT / salida
10. Ejemplo: Análisis de un sistema secuencial (IV)
Tabla de estados: “Bautizamos” cada combinación de
variables de estado
0/0
Diagrama de estados: 1/0 A
0/0
0/0 D
estado
B 1/0
entrada
X/0 C 1/1
salida
11. Diseño de un sistema secuencial
• Descripción del funcionamiento del sistema
• Tabla y diagrama de estados
• Minimización de estados
• Moore: mismas salidas y mismo estado
• Mealy: mismo estado
• Asignación de variables de estado
• Tabla de transiciones
• Tabla de excitación (tabla de verdad)
• Moore: una para las variables de estado y otra para las
salidas
• Mealy: única
12. Diseño de un sistema secuencial: Ejemplo (I)
• Descripción del funcionamiento del sistema:
Se tiene una confluencia de dos vías férreas con el mismo
sentido de circulación. Cada vía está dotada de un
dispositivo que detecta si hay un vehículo en ella ( A y B)
y de un semáforo (LA y LB), ambos a cierta distancia del
punto de unión.
Cuando llega un vehículo a cualquiera de los detectores A
o B debe activarse la luz de detención de la otra vía, LB o
LA respectivamente, con el fin de detener a cualquier
vehículo que llegue por esa vía hasta que el primero haya
abandonado su detector.
A LA
Vía A
Vía B
B LB
13. Diseño de un sistema secuencial: Ejemplo (II)
• Diagrama y tabla de estados (Mealy)
En la máquina de estados de Mealy, las salidas cambian cuando lo hacen
las entradas
01/10
00/00 10/01 1: Ningún vehículo
2: Llega vehículo por B
1 2 3: Llega vehículo por A
11/01 4: Entró vehículo por A y llega por B
00/00
5: Entró vehículo por B y llega por A
01/10 10/01
00/00
01/10 4
3
10/01
11/10
5 11/10
11/01
14. Diseño de un sistema secuencial: Ejemplo (III)
• Diagrama y tabla de estados (Moore)
En la máquina de estados de Moore, las salidas sólo dependen de las
variables de estado
01
00 10 1: Ningún vehículo
2: Llega vehículo por B
1/00 2/10 3: Llega vehículo por A
11
00 4: Entró vehículo por A y llega por B
5: Entró vehículo por B y llega por A
01 10
00
01 4/10
3/01
10
11 5/01 11
11
15. Diseño de un sistema secuencial: Ejemplo (IV)
• Minimización de estados
Se pueden fusionar líneas de la tabla de estado que tengan los mismos
números (estado) en las columnas y que tengan las mismas salidas (Moore)
o distintas (Mealy)
Por Moore podemos fusionar los estados 2/4 y el 3/5
Por Mealy podemos fusionar los estados 1/2/4 y el 3/5
Asignamos la salida
correspondiente al
estado estable
16. Diseño de un sistema secuencial: Ejemplo (V)
• Asignación de variables de estado
Codificamos cada estado con las variables de estado necesarias para
asignar un código diferente a cada estado.
Por Moore tenemos que diferenciar tres estados: necesitamos dos
variables de estado.
Podemos asignar valores de
las variables de estado con
cualquier criterio. Aquí
hemos hecho coincidir estos
valores con las salidas
Por Mealy tenemos que diferenciar dos estados: necesitamos una
variable de estado.
17. Diseño de un sistema secuencial: Ejemplo (VI)
• Tabla de transiciones:
En la tabla de estados simplificada sustituimos cada estado por el valor
de las variables de estado que le hemos asignado en la codificación
Moore
Valor de las
variables de
estado en el
instante T Mealy Valor de las variables
de estado en el
instante T+Δt para una
entrada determinada
18. Diseño de un sistema secuencial: Ejemplo (VII)
• Tabla de excitación (tabla de verdad)
Por Moore tenemos dos tablas de verdad, una para las salidas en
función exclusivamente de las variables de estado y otra para las
variables de estado en función del estado anterior y de las entradas
19. Diseño de un sistema secuencial: Ejemplo (VIII)
• Tabla de excitación (tabla de verdad)
Por Mealy tenemos una única tabla de verdad