Académique Documents
Professionnel Documents
Culture Documents
Digitales II EE-636M
Kenny Cucho Meza, Luis De la Cruz Painado
Facultad de Ingeniera Ele ctrica y Electro nica
Universidad Nacional de Ingeniera
Lima, Peru
E-mails: {kenny.cucho.m, luis11.dlcp}@gmail.com
AbstractEste presente informe previo muestra un avance en la solucin del segundo laboratorio del curso de Sistemas
Digitales II - EE-636, el cual relata la problemtica de una pila FIFO de estructura especial, resuelta en VHDL .
B. Controlador
El controlador posee entradas y salidas que permitirn controlar el datapath como son: el ingreso de datos en funcin de que tan
llena este la pila, la salida de instrucciones de la pila, y otros que se muestran en la tabla siguiente:
El controlador del FIFO, es puramente secuencial, el cual se basa en leer la informacin del datapath como retroalimentacin y leer
las seales de entrada globales, como tambin tener prioridad en el reset.
Para esta solucin se opta por leer estados y realizar las operaciones lgicas, como no se necesita una seal de reloj, este circuito es
combinacional puro, el cual lo ms conveniente es que trabaje todo en paraleo siendo una tabla de salida para ciertas descripciones
de entrada.
Para el datapath, en la simulacin se not un error en la aparicin de la primera seal en alto del full_fifo, el cual deber
corregirse en el transcurso.
Se oberv que es para hacer este tipo de datapath, se necesitan signal insternos el cual nos facilitan en tener menos cdigo
en el entorno.
V. ANEXOS
Cdigo en VHDL para la parte del Datapath:
entity fifo is
generic (
width : positive := 32;
ancho : integer := 4); -- cantidad de registros manejados en el fifo
port ( -- definimos los puertos
instruction : in std_logic_vector(width-1 downto 0);
out_fifo : out std_logic_vector(width-1 downto 0);
clock : in std_logic;
push_fifo : in std_logic;
pop_fifo : in std_logic;
resetn : in std_logic;
reset_fifo : in std_logic;
empty_fifo : out std_logic;
full_fifo : out std_logic);
end fifo;
end if;
end if;
end process;
--process()
--begin
-- if()
--end process;
end datapath;