LIBRARY IEEE;
USE IEEE.std_logic_1164.ALL;
--
LIBRARY EXEMPLAR;
USE EXEMPLAR.exemplar_1164.ALL;
USE EXEMPLAR.exemplar.ALL;
--
LIBRARY WORK;
USE WORK.ALL;
USE WORK.synthesis_utilities.ALL;
USE WORK.synthesis_parameters.ALL;
USE WORK.global_environment.ALL;
--
ENTITY parwan_tester IS
END parwan_tester;
--
ARCHITECTURE input_output OF parwan_tester IS
COMPONENT parwan
PORT (interrupt : IN std_logic; read_mem, write_mem : OUT std_logic);
END COMPONENT;
FOR cpu : parwan USE ENTITY WORK.par_central_processing_unit(Concurrent);
COMPONENT parmem PORT (read, write,dump : IN std_logic); END COMPONENT;
FOR mem : parmem USE ENTITY WORK.ram (mem_con);
SIGNAL clock, interrupt, read, write,dump_signal : std_logic := '0';
SIGNAL data : byte;
SIGNAL address : twelve;
BEGIN
clk : clock <= NOT clock AFTER 2 US WHEN halt = '0' ELSE clock;
int : interrupt <= '1', '0' AFTER 4500 NS;
ck2 : cck <= clock;
PROCESS (clock) BEGIN data <= databus.val; address <= adbus.val; END PROCESS;
cpu : parwan PORT MAP (interrupt, read, write);
mem : parmem PORT MAP (read, write, dump_signal);
dump_signal <= '1' WHEN halt='1';
END input_output;