library ieee; use ieee.std_logic_1164.all; entity vram is generic ( addr_width : natural := 18; video_width : natural := 6 ); port ( wr_clk : in std_logic; wr_en : in std_logic; wr_addr : in std_logic_vector(addr_width-1 downto 0); wr_data : in std_logic_vector(video_width-1 downto 0); rd_clk : in std_logic; rd_addr : in std_logic_vector(addr_width-1 downto 0); rd_data : out std_logic_vector(video_width-1 downto 0) ); end vram; architecture beh of vram is signal wr_en_v : std_logic_vector(0 downto 0); signal wr_data_6 : std_logic_vector(5 downto 0); signal rd_data_6 : std_logic_vector(5 downto 0); begin wr_data_6 <= "00" & wr_data; rd_data <= rd_data_6(3 downto 0); wr_en_v(0) <= wr_en; bmg0 : entity work.blk_mem_gen_0 port map ( ena => '1', enb => '1', clka => wr_clk, wea => wr_en_v, addra => wr_addr, dina => wr_data_6, clkb => rd_clk, doutb => rd_data_6, addrb => rd_addr ); end beh;