library IEEE; use IEEE.std_logic_1164.all; use IEEE.numeric_std.all; package mem_pkg is component r_w_ram is generic ( ADDR_WIDTH : integer range 1 to integer'high; DATA_WIDTH : integer range 1 to integer'high ); port( --System inputs clk : in std_logic; --Input wr_addr, rd_addr : in std_logic_vector(ADDR_WIDTH-1 downto 0); wr_en : in std_logic; data_in : in std_logic_vector(DATA_WIDTH-1 downto 0); --Output data_out: out std_logic_vector(DATA_WIDTH-1 downto 0) ); end component r_w_ram; component r_w_ram_be is generic ( ADDR_WIDTH : integer range 1 to integer'high ); port( clk : in std_logic; waddr, raddr : in std_logic_vector(ADDR_WIDTH-1 downto 0); be : in std_logic_vector (3 downto 0); we : in std_logic; wdata : in std_logic_vector(31 downto 0); q : out std_logic_vector(31 downto 0) ); end component r_w_ram_be; component rom is generic ( ADDR_WIDTH : integer range 1 to integer'high; DATA_WIDTH : integer range 1 to integer'high ); port( --System inputs clk : in std_logic; --Input wr_addr, rd_addr : in std_logic_vector(ADDR_WIDTH-1 downto 0); wr_en : in std_logic; data_in : in std_logic_vector(DATA_WIDTH-1 downto 0); --Output data_out: out std_logic_vector(DATA_WIDTH-1 downto 0) ); end component rom; component r2_w_ram is generic ( ADDR_WIDTH : integer range 1 to integer'high; DATA_WIDTH : integer range 1 to integer'high ); port( --System inputs clk : in std_logic; --Input wr_addr, rd_addr1, rd_addr2 : in std_logic_vector(ADDR_WIDTH-1 downto 0); wr_en : in std_logic; data_in : in std_logic_vector(DATA_WIDTH-1 downto 0); --Output data_out1, data_out2: out std_logic_vector(DATA_WIDTH-1 downto 0) ); end component r2_w_ram; component rw_r_ram is generic ( ADDR_WIDTH : integer range 1 to integer'high; DATA_WIDTH : integer range 1 to integer'high ); port( --System inputs clk : in std_logic; --Input rw_addr, rd_addr : in std_logic_vector(ADDR_WIDTH-1 downto 0); wr_en : in std_logic; data_in : in std_logic_vector(DATA_WIDTH-1 downto 0); --Output rw_out, rd_out: out std_logic_vector(DATA_WIDTH-1 downto 0) ); end component rw_r_ram; end package mem_pkg;