data_st.vhd 881 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. library ieee;
  2. use ieee.std_logic_1164.all;
  3. use ieee.numeric_std.all;
  4. use work.mem_pkg.all;
  5. use work.cache_pkg.all;
  6. use work.single_clock_rw_ram_pkg.all;
  7. entity data_st is
  8. generic (
  9. SETS_LD : natural := SETS_LD;
  10. WAYS_LD : natural := WAYS_LD
  11. );
  12. port (
  13. clk : in std_logic;
  14. we : in std_logic;
  15. rd : in std_logic;
  16. way : in c_way_type;
  17. index : in c_index_type;
  18. byteena : in mem_byteena_type;
  19. data_in : in mem_data_type;
  20. data_out : out mem_data_type
  21. );
  22. end entity;
  23. architecture impl of data_st is
  24. begin
  25. -- structural
  26. -- forward to 1 way implementation
  27. data_st_1w_inst : entity work.data_st_1w
  28. generic map (
  29. SETS_LD => SETS_LD
  30. )
  31. port map (
  32. clk => clk,
  33. we => we,
  34. rd => rd,
  35. index => index,
  36. byteena => byteena,
  37. data_in => data_in,
  38. data_out => data_out
  39. );
  40. end architecture;