Sie sind auf Seite 1von 4

INFORME DE SISTEMAS DIGITALES PROGRAMABLES

HDL
Nicols Alejandro Balczar Rengifo
nicolas.balcazar@uao.edu.co
Universidad Autnoma de Occidente

RESUMEN: Este documento detalla la En la figura anterior se puede ver un ejemplo de


investigacin realizada sobre lo que son las una maquina moore en la cual su salida solo est
mquinas de estado finito para con esto en funcin de su estado actual.
posteriormente llevar a cabo el diseo de un
contador descendente de cero a nueve con un
reset asincrnico en quartus (vhdl).

PALABRAS CLAVE: Maquinas de estado.

1 INTRODUCCIN
La implementacin de mquinas de estado para la
abstraccin computacional que describe el
comportamiento de un sistema reactivo mediante
un determinado nmero de estados y un nmero
determinado de transiciones entre dichos estados.

2 MAQUINA DE ESTADOS FINITO Figura 2. Ejemplo mquina de estado mealy


Son una herramienta para especificar aspectos En La figura 2 se muestra un ejemplo de la
relacionados con tiempo real, dominios reactivos o formacin del diseo de una mquina de estado
autnomos, computacin reactiva, protocolos, mealy, en donde sus salidas dependen tanto del
circuitos, etc. El modelo Finite State Machine, es estado actual como de sus entradas.
un modelo que posee sintaxis y semntica
formales y que sirve para representar aspectos
3 DIFERENCIAS ENTRE FSM
dinmicos que no se expresan en otros
diagramas. En estos tipos de modelos se MOORE Y FSM MEALY
presentan las mquinas de estado mealy y moore.
En el modelo mealy, la salida es funcin
tanto del estado actual como de la
entrada, mientras que en el modelo
moore, la salida solo es funcin del
estado actual.

4 TIPO DE DATO ENUMERARO EN


VHDL
En este tipo se define el conjunto de posibles
valores del tipo especificado, presentando una
lista que contiene a todos los valores. El primer
identificador es el nombre del tipo y sirve para
Figura 1. Ejemplo mquina de estado moore. referenciarlo, y entre parntesis, y separados por
comas se adjuntan todos los valores legales del
tipo.
4.1 SINTAXIS E9=1001

Type identificador is (identificador | carcter {,...}); DIAGRAMA DE ESTADOS

4.2 EJEMPLOS
Type vocales (a,e,i,o,u);

Type direcciones is (izquierda, derecha, arriba,


abajo, centro);
Figura 3. Mquina de estado moore del contador
Si no est especificado ningn valor inicial, el objeto se descendente
inicializa con el valor ms a la izquierda de los especificados
En la imagen anterior se puede observar el diseo
en la declaracin del tipo. Es decir, un objeto del tipo vocales
que se realiz de la mquina de estados para el
toma el valor a por defecto.
contador descendente asncrono
El ejemplo ms clsico es una mquina de estados finitos,
DESCRIPCION EN VHDL
representando un diseo secuencial. Para propsitos de
sntesis, cada estado es codificado con variables de estado library IEEE;
(flip-flops) para almacenar la informacin del estado actual. use IEEE.STD_LOGIC_1164.all;
entity conta1 is
5 CONCLUSIONES port (reset, clk: in bit;
conteo: out std_logic_vector (3 downto 0))
La implementacin de las mquinas de estado es ;
end conta1;
una herramienta muy til en el mbito de la
architecture contador of conta1 is
descripcin de hardware puesto que de esta forma type estados is (e0,e1,e2,e3,e4,e5,e6,e7,e8,e9);
se puede llevar a cabo un correcto procedimiento signal estado_act,estado_sig: estados;
de los diseos a implementar. begin
process (reset, clk)
6 ANEXOS begin
if (reset = '1') then
estado_act<=e0;
ENTRADAS
elsif (clk'event and clk='1') then
estado_act<=estado_sig;
Reset (1 bit)
end if;
Clk (1 bit) end process;
process (estado_act)
SALIDA begin
case estado_act is
Conteo (4 bits) when e0 =>

ESTADOS conteo<="1001";

e0,e1,e2,e3,e4,e5,e6,e7,e8,e9
estado_sig<=e1;
when e1 =>
CODIFICACIN DE ESTADOS

E0=1001 conteo<="1000";
E1=1000
E2=0111 estado_sig<=e2;
E3=0110 when e2 =>
E4=0101
E5=0100 conteo<="0111";
E6=0011
E7=0010 estado_sig<=e3;
E8=0001 when e3 =>
La figura anterior muestra lo que interpreto
conteo<="0110"; quartus sobre el cdigo presentado anteriormente,
y de esta forma lo convirti en el cdigo que se
estado_sig<=e4; muestra.
when e4 =>

conteo<="0101";

estado_sig<=e5; SIMULACIN EN VHDL


when e5 =>

conteo<="0100";

estado_sig<=e6;
when e6 =>
Figura 5. Simulacin del contador descendente
conteo<="0011";
En la figura anterior se puede observar el
resultado de la simulacin realizada en vhdl sobre
estado_sig<=e7;
el contador descendente propuesto, como tal en la
when e7 =>
imagen se observa la descendencia
completamente hasta el nmero 4 en binario, sin
conteo<="0010";
embargo la simulacin lo hace completamente
hasta el 0 y despus vuelve a empezar en el
estado_sig<=e8; numero 9.
when e8 =>
7 REFERENCIAS
conteo<="0001";
[1] PARDO CARPIO, Fernando. Vhdl lenguaje
estado_sig<=e9; para descripcin y modelo de circuitos. Pg. 38
when e9 =>
[2]ftp://ftp.unicauca.edu.co/Facultades/FIET/DEIC/
conteo<="0000"; Materias/SEDS/Material%20Auxiliar/FSM.pdf

[3] BROWN Stephen, VRANESIC Zvonko.


estado_sig<=e0;
Fundamentos de lgica digital con diseo VHDL.
end case;
end process; Segunda edicin. Pg. 778.
end contador;
[4] BROWN Stephen, VRANESIC Zvonko.
DIAGRAMA PRESENTADO POR VHDL Fundamentos de lgica digital con diseo VHDL.
Segunda edicin. Pg. 817.

Figura 4. Rtl_viewer

Das könnte Ihnen auch gefallen