View
23
Download
5
Category
Preview:
DESCRIPTION
FSM FINITE STATE MACHINE
Citation preview
DESCRIPCIN DE CIRCUITOS DIGITALES Circuitos secuenciales Y Maquinas de estados Ejercicios
EJERCICIO 1 Moore (sincrnico)
Definicin de entity:
entity MOORE is port(
X: in BIT;
CLOCK: in BIT;
Z: out BIT
);
end entity;
Definicin de entity:
entity MOORE is port(
X: in BIT;
CLOCK: in BIT;
Z: out BIT
);
end entity;
architecture BEHAVIOR of MOORE is
type STATE_TYPE is (S0, S1, S2, S3);
signal CURRENT_STATE, NEXT_STATE: STATE_TYPE;
begin
Definicin de Arquitectura (definicin de los estados):
Definicin de entity:
entity MOORE is port(
X: in BIT;
CLOCK: in BIT;
Z: out BIT
);
end entity;
architecture BEHAVIOR of MOORE is
type STATE_TYPE is (S0, S1, S2, S3);
signal CURRENT_STATE, NEXT_STATE: STATE_TYPE;
begin
Definicin de Arquitectura (definicin de los estados):
Definicin de Arquitectura (definicin de una transicin de estado):
case CURRENT_STATE is
when S0 =>
Z
Definicin de entity:
entity MOORE is port(
X: in BIT;
CLOCK: in BIT;
Z: out BIT
);
end entity;
architecture BEHAVIOR of MOORE is
type STATE_TYPE is (S0, S1, S2, S3);
signal CURRENT_STATE, NEXT_STATE: STATE_TYPE;
begin
Definicin de Arquitectura (definicin de los estados):
Definicin de Arquitectura (definicin de una transicin de estado):
case CURRENT_STATE is
when S0 =>
Z
process(CURRENT_STATE, X)
begin
case CURRENT_STATE is
when S0 =>
Z
process(CURRENT_STATE, X)
begin
case CURRENT_STATE is
when S0 =>
Z
process(CURRENT_STATE, X)
begin
case CURRENT_STATE is
when S0 =>
Z
SYNCH: process(CLOCK)
begin
if rising_edge(CLOCK) then
CURRENT_STATE
SYNCH: process(CLOCK)
begin
if rising_edge(CLOCK) then
CURRENT_STATE
EJERCICIO 2 Mealy (sincrnico)
entity MEALY is port
(
X: in BIT;
CLOCK: in BIT;
Z: out BIT
);
end;
architecture BEHAVIOR of MEALY is
type STATE_TYPE is (S0, S1, S2, S3);
signal CURRENT_STATE, NEXT_STATE: STATE_TYPE;
begin
Definicin de entity:
Definicin de Arquitectura (definicin de los estados):
case CURRENT_STATE is
when S0 =>
if X = 0 then Z
entity MEALY is port
(
X: in BIT;
CLOCK: in BIT;
Z: out BIT
);
end;
architecture BEHAVIOR of MEALY is
type STATE_TYPE is (S0, S1, S2, S3);
signal CURRENT_STATE, NEXT_STATE: STATE_TYPE;
begin
Definicin de entity:
Definicin de Arquitectura (definicin de los estados):
case CURRENT_STATE is
when S0 =>
if X = 0 then Z
process(CURRENT_STATE, X)
begin
case CURRENT_STATE is
when S0 =>
if X = 0 then Z
Transicin de estados sincrnica:
SYNCH: process(CLOCK)
begin
if rising_edge(CLOCK) then;
CURRENT_STATE
Transicin de estados sincrnica:
SYNCH: process(CLOCK)
begin
if rising_edge(CLOCK) then;
CURRENT_STATE
Ejercicio SEMFORO
En la interseccin de una carretera y un camino vecinal se instala un semforo con el siguiente comportamiento:
En el estado inicial indica verde para la carretera y rojo en el camino.
Existen sensores (sensor) que detectan la presencia de vehculos en el camino, cuando esto ocurre se habilita el trnsito por el camino durante 10 segundos.
Transcurrido los 10 segundos, se pone verde la carretera y durante 20 segundos no se atiende la seal del sensor.
Se dispone de una seal de reloj de frecuencia de 1Hz.
La evolucin de los semforos es la estndar (verde, amarillo, rojo)
Caja negra para modelar segn una Red de Petri
Ejercicio SEMFORO
En la interseccin de una carretera y un camino vecinal se instala un semforo con el siguiente comportamiento:
En el estado inicial indica verde para la carretera y rojo en el camino.
Existen sensores (sensor) que detectan la presencia de vehculos en el camino, cuando esto ocurre se habilita el trnsito por el camino durante 10 segundos.
Transcurrido los 10 segundos, se pone verde la carretera y durante 20 segundos no se atiende la seal del sensor.
Se dispone de una seal de reloj de frecuencia de 1Hz.
La evolucin de los semforos es la estndar (verde, amarillo, rojo)
Red de Petri
Red de Petri
En el estado inicial indica verde para la carretera V1 y rojo en el camino R2.
Red de Petri
En el estado inicial indica verde para la carretera V1 y rojo en el camino R2.
Sensor detecta la presencia de vehculos en el camino, cuando esto ocurre se habilita el trnsito por el camino durante 10 segundos. R1 y V2.
Red de Petri
En el estado inicial indica verde para la carretera V1 y rojo en el camino R2.
Sensor detecta la presencia de vehculos en el camino, cuando esto ocurre se habilita el trnsito por el camino durante 10 segundos. R1 y V2.
Transcurrido los 10 segundos, se pone verde la carretera y durante 20 segundos no se atiende la seal del sensor. R2 y V1.
Red de Petri
En el estado inicial indica verde para la carretera V1 y rojo en el camino R2.
Sensor detecta la presencia de vehculos en el camino, cuando esto ocurre se habilita el trnsito por el camino durante 10 segundos. R1 y V2.
Transcurrido los 10 segundos, se pone verde la carretera y durante 20 segundos no se atiende la seal del sensor. R2 y V1.
La evolucin de los semforos es la estndar (verde, amarillo, rojo, verde).
La evolucin de los semforos es la estndar (verde, amarillo, rojo, verde).
Diagrama de estados
Mquina Expendedora de Refresco
La mquina expende un refresco siempre y cuando el usuario introduzca una
cantidad de dinero igual o superior a 2.5 BsF dado que la mquina no da vuelto ni
acumula la cantidad. Se pueden introducir dos tipos de monedas y un solo tipo de
billete, donde las monedas son de 0,50 BsF y 1 BsF, y el billete de 2 BsF.
La mquina expendedora solo puede admitir dos tipos de monedas y un solo tipo
billete. El costo del refresco es de 2,5 Bs.F y la mquina solo expende un tipo de
refresco.
Disee el sistema de control que cumpla con el requerimiento anterior.
Definicin de estados (3 bits Q1, Q2 y Q3):
Definicin de estradas:
Definicin de salida: S
A y B son los resultados de una logica combinacional a partir de las combinaciones de monedas.
case ESTADO_ACTUAL is
when VACIO =>
S
La Mquina de estados algortmica (ASM) es un mtodo para el diseo de Mquina de
estados finitos. Se utiliza para representar los diagramas de circuitos integrados digitales.
El diagrama de ASM es como un diagrama de estado, pero menos formal y por tanto ms
fcil de entender.
Un grfico de ASM es un mtodo para describir las operaciones por orden de un sistema
digital.
ASM
El mtodo de ASM se compone de los siguientes pasos:
1 . Crear un algoritmo, utilizando pseudocdigo , para describir la
operacin deseada del dispositivo.
2 . Convertir el pseudocdigo en un diagrama ASM .
3 . Disear la Ruta de Datos o Camino de Datos basado en el diagrama ASM.
4 . Crear diagrama ASM detallado basado en la ruta o camino de datos.
5 . Disear la lgica de control o Unidad de Control basada en el diagrama
ASM detallado.
La Mquina de estados algortmica (ASM) es un mtodo para el diseo de Mquina de
estados finitos. Se utiliza para representar los diagramas de circuitos integrados digitales.
El diagrama de ASM es como un diagrama de estado, pero menos formal y por tanto ms
fcil de entender.
Un grfico de ASM es un mtodo para describir las operaciones por orden de un sistema
digital.
ASM
El mtodo de ASM se compone de los siguientes pasos:
1 . Crear un algoritmo, utilizando pseudocdigo , para describir la
operacin deseada del dispositivo.
2 . Convertir el pseudocdigo en un diagrama ASM .
3 . Disear la Ruta de Datos o Camino de Datos basado en el diagrama ASM.
4 . Crear diagrama ASM detallado basado en la ruta o camino de datos.
5 . Disear la lgica de control o Unidad de Control basada en el diagrama
ASM detallado.
DataPath ControlPath
cuadro de Estado. caja de salida condicional. cuadro de decisin
Cuadro de estado: Un estado de ASM, representada como un rectngulo, corresponde a
un estado de un diagrama de estado regular o mquina de estados finitos. El nombre del
estado se indica fuera de la caja en la esquina superior izquierda. En el tipo Moore, se
enumeran dentro de la caja.
Cuadro de decisin: Un diamante indica que la expresin condicin establecida es de
pruebas, y la ruta de salida es a elegir en consecuencia. La expresin de condicin
contiene una o ms entradas a las Mquinas de Estados.
Caja de salida condicional: un valo indica las seales de salida que son de tipo Mealy.
Estos resultados dependen no slo del estado sino tambin las aportaciones al FSM.
Muoz Gerardo, Un mtodo simple para pasar de un algoritmo a
un modelo en VHDL, Revista de ingeniera, Universidad distrital
FJC, Vol. 7, No 2. 2002.
Lectura de apoyo:
Recommended