core_tb.vhdl 796 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. library ieee;
  2. use ieee.std_logic_1164.all;
  3. use ieee.numeric_std.all;
  4. library work;
  5. use work.common.all;
  6. use work.wishbone_types.all;
  7. entity core_tb is
  8. end core_tb;
  9. architecture behave of core_tb is
  10. signal clk, rst: std_logic;
  11. -- testbench signals
  12. constant clk_period : time := 10 ns;
  13. begin
  14. soc0: entity work.soc
  15. generic map(
  16. SIM => true,
  17. MEMORY_SIZE => (384*1024),
  18. RAM_INIT_FILE => "main_ram.bin",
  19. CLK_FREQ => 100000000
  20. )
  21. port map(
  22. rst => rst,
  23. system_clk => clk
  24. );
  25. clk_process: process
  26. begin
  27. clk <= '0';
  28. wait for clk_period/2;
  29. clk <= '1';
  30. wait for clk_period/2;
  31. end process;
  32. rst_process: process
  33. begin
  34. rst <= '1';
  35. wait for 10*clk_period;
  36. rst <= '0';
  37. wait;
  38. end process;
  39. jtag: entity work.sim_jtag;
  40. end;