Added data mask support
git-svn-id: http://moon:8086/svn/vhdl/trunk@22 cc03376c-175c-47c8-b038-4cd826a8556b
This commit is contained in:
@@ -65,6 +65,8 @@ architecture struct of tb_sdr_ctrl is
|
|||||||
signal u_busy : std_logic;
|
signal u_busy : std_logic;
|
||||||
signal u_data_w : unsigned(2*DDR_DATA_WIDTH-1 downto 0) := (others => '0');
|
signal u_data_w : unsigned(2*DDR_DATA_WIDTH-1 downto 0) := (others => '0');
|
||||||
signal u_dm : unsigned(2*DDR_DM_WIDTH-1 downto 0) := "0000";
|
signal u_dm : unsigned(2*DDR_DM_WIDTH-1 downto 0) := "0000";
|
||||||
|
signal u_dm_rd_in : unsigned(2*DDR_DM_WIDTH-1 downto 0) := "0000";
|
||||||
|
signal u_dm_rd_out : unsigned(2*DDR_DM_WIDTH-1 downto 0) := "0000";
|
||||||
signal u_data_r : unsigned(2*DDR_DATA_WIDTH-1 downto 0) := (others => '0');
|
signal u_data_r : unsigned(2*DDR_DATA_WIDTH-1 downto 0) := (others => '0');
|
||||||
signal u_data_vld : std_logic;
|
signal u_data_vld : std_logic;
|
||||||
signal u_req_wr : std_logic;
|
signal u_req_wr : std_logic;
|
||||||
@@ -121,7 +123,9 @@ begin
|
|||||||
u_cmd_we => u_cmd_we,
|
u_cmd_we => u_cmd_we,
|
||||||
u_data_wr => u_data_w,
|
u_data_wr => u_data_w,
|
||||||
u_data_rd => u_data_r,
|
u_data_rd => u_data_r,
|
||||||
u_dm => u_dm,
|
u_dm_wr_in => u_dm,
|
||||||
|
u_dm_rd_in => u_dm_rd_in,
|
||||||
|
u_dm_rd_out => u_dm_rd_out,
|
||||||
|
|
||||||
-- SDRAM signals
|
-- SDRAM signals
|
||||||
sd_clk_p => part_clk_p,
|
sd_clk_p => part_clk_p,
|
||||||
|
|||||||
@@ -65,6 +65,8 @@ architecture struct of tb_sdr_ctrl_fifo is
|
|||||||
signal u_busy : std_logic;
|
signal u_busy : std_logic;
|
||||||
signal u_data_w : unsigned(2*DDR_DATA_WIDTH-1 downto 0) := (others => '0');
|
signal u_data_w : unsigned(2*DDR_DATA_WIDTH-1 downto 0) := (others => '0');
|
||||||
signal u_dm : unsigned(2*DDR_DM_WIDTH-1 downto 0) := "0000";
|
signal u_dm : unsigned(2*DDR_DM_WIDTH-1 downto 0) := "0000";
|
||||||
|
signal u_dm_rd_in : unsigned(2*DDR_DM_WIDTH-1 downto 0) := "0000";
|
||||||
|
signal u_dm_rd_out : unsigned(2*DDR_DM_WIDTH-1 downto 0) := "0000";
|
||||||
signal u_data_r : unsigned(2*DDR_DATA_WIDTH-1 downto 0) := (others => '0');
|
signal u_data_r : unsigned(2*DDR_DATA_WIDTH-1 downto 0) := (others => '0');
|
||||||
signal u_data_vld : std_logic;
|
signal u_data_vld : std_logic;
|
||||||
signal u_req_wr : std_logic;
|
signal u_req_wr : std_logic;
|
||||||
@@ -205,7 +207,9 @@ begin
|
|||||||
u_cmd_we => u_cmd_we,
|
u_cmd_we => u_cmd_we,
|
||||||
u_data_wr => u_data_w,
|
u_data_wr => u_data_w,
|
||||||
u_data_rd => u_data_r,
|
u_data_rd => u_data_r,
|
||||||
u_dm => u_dm,
|
u_dm_wr_in => u_dm,
|
||||||
|
u_dm_rd_in => u_dm_rd_in,
|
||||||
|
u_dm_rd_out => u_dm_rd_out,
|
||||||
|
|
||||||
-- SDRAM signals
|
-- SDRAM signals
|
||||||
sd_clk_p => part_clk_p,
|
sd_clk_p => part_clk_p,
|
||||||
|
|||||||
@@ -67,6 +67,8 @@ architecture struct of tb_sdr_ctrl is
|
|||||||
signal u_busy : std_logic;
|
signal u_busy : std_logic;
|
||||||
signal u_data_w : unsigned(2*DDR_DATA_WIDTH-1 downto 0) := (others => '0');
|
signal u_data_w : unsigned(2*DDR_DATA_WIDTH-1 downto 0) := (others => '0');
|
||||||
signal u_dm : unsigned(2*DDR_DM_WIDTH-1 downto 0) := "0000";
|
signal u_dm : unsigned(2*DDR_DM_WIDTH-1 downto 0) := "0000";
|
||||||
|
signal u_dm_rd_in : unsigned(2*DDR_DM_WIDTH-1 downto 0) := "0000";
|
||||||
|
signal u_dm_rd_out : unsigned(2*DDR_DM_WIDTH-1 downto 0) := "0000";
|
||||||
signal u_data_r : unsigned(2*DDR_DATA_WIDTH-1 downto 0) := (others => '0');
|
signal u_data_r : unsigned(2*DDR_DATA_WIDTH-1 downto 0) := (others => '0');
|
||||||
signal u_data_vld : std_logic;
|
signal u_data_vld : std_logic;
|
||||||
signal u_req_wr : std_logic;
|
signal u_req_wr : std_logic;
|
||||||
@@ -124,7 +126,9 @@ begin
|
|||||||
u_cmd_we => u_cmd_we,
|
u_cmd_we => u_cmd_we,
|
||||||
u_data_wr => u_data_w,
|
u_data_wr => u_data_w,
|
||||||
u_data_rd => u_data_r,
|
u_data_rd => u_data_r,
|
||||||
u_dm => u_dm,
|
u_dm_wr_in => u_dm,
|
||||||
|
u_dm_rd_in => u_dm_rd_in,
|
||||||
|
u_dm_rd_out => u_dm_rd_out,
|
||||||
|
|
||||||
-- SDRAM signals
|
-- SDRAM signals
|
||||||
sd_clk_p => part_clk_p,
|
sd_clk_p => part_clk_p,
|
||||||
|
|||||||
@@ -67,6 +67,8 @@ architecture struct of tb_sdr_ctrl is
|
|||||||
signal u_busy : std_logic;
|
signal u_busy : std_logic;
|
||||||
signal u_data_w : unsigned(2*DDR_DATA_WIDTH-1 downto 0) := (others => '0');
|
signal u_data_w : unsigned(2*DDR_DATA_WIDTH-1 downto 0) := (others => '0');
|
||||||
signal u_dm : unsigned(2*DDR_DM_WIDTH-1 downto 0) := "0000";
|
signal u_dm : unsigned(2*DDR_DM_WIDTH-1 downto 0) := "0000";
|
||||||
|
signal u_dm_rd_in : unsigned(2*DDR_DM_WIDTH-1 downto 0) := "0000";
|
||||||
|
signal u_dm_rd_out : unsigned(2*DDR_DM_WIDTH-1 downto 0) := "0000";
|
||||||
signal u_data_r : unsigned(2*DDR_DATA_WIDTH-1 downto 0) := (others => '0');
|
signal u_data_r : unsigned(2*DDR_DATA_WIDTH-1 downto 0) := (others => '0');
|
||||||
signal u_data_vld : std_logic;
|
signal u_data_vld : std_logic;
|
||||||
signal u_req_wr : std_logic;
|
signal u_req_wr : std_logic;
|
||||||
@@ -124,7 +126,9 @@ begin
|
|||||||
u_cmd_we => u_cmd_we,
|
u_cmd_we => u_cmd_we,
|
||||||
u_data_wr => u_data_w,
|
u_data_wr => u_data_w,
|
||||||
u_data_rd => u_data_r,
|
u_data_rd => u_data_r,
|
||||||
u_dm => u_dm,
|
u_dm_wr_in => u_dm,
|
||||||
|
u_dm_rd_in => u_dm_rd_in,
|
||||||
|
u_dm_rd_out => u_dm_rd_out,
|
||||||
|
|
||||||
-- SDRAM signals
|
-- SDRAM signals
|
||||||
sd_clk_p => part_clk_p,
|
sd_clk_p => part_clk_p,
|
||||||
|
|||||||
@@ -65,6 +65,8 @@ architecture struct of tb_sdr_ctrl is
|
|||||||
signal u_busy : std_logic;
|
signal u_busy : std_logic;
|
||||||
signal u_data_w : unsigned(2*DDR_DATA_WIDTH-1 downto 0) := (others => '0');
|
signal u_data_w : unsigned(2*DDR_DATA_WIDTH-1 downto 0) := (others => '0');
|
||||||
signal u_dm : unsigned(2*DDR_DM_WIDTH-1 downto 0) := "0000";
|
signal u_dm : unsigned(2*DDR_DM_WIDTH-1 downto 0) := "0000";
|
||||||
|
signal u_dm_rd_in : unsigned(2*DDR_DM_WIDTH-1 downto 0) := "0000";
|
||||||
|
signal u_dm_rd_out : unsigned(2*DDR_DM_WIDTH-1 downto 0) := "0000";
|
||||||
signal u_data_r : unsigned(2*DDR_DATA_WIDTH-1 downto 0) := (others => '0');
|
signal u_data_r : unsigned(2*DDR_DATA_WIDTH-1 downto 0) := (others => '0');
|
||||||
signal u_data_vld : std_logic;
|
signal u_data_vld : std_logic;
|
||||||
signal u_req_wr : std_logic;
|
signal u_req_wr : std_logic;
|
||||||
@@ -121,7 +123,9 @@ begin
|
|||||||
u_cmd_we => u_cmd_we,
|
u_cmd_we => u_cmd_we,
|
||||||
u_data_wr => u_data_w,
|
u_data_wr => u_data_w,
|
||||||
u_data_rd => u_data_r,
|
u_data_rd => u_data_r,
|
||||||
u_dm => u_dm,
|
u_dm_wr_in => u_dm,
|
||||||
|
u_dm_rd_in => u_dm_rd_in,
|
||||||
|
u_dm_rd_out => u_dm_rd_out,
|
||||||
|
|
||||||
-- SDRAM signals
|
-- SDRAM signals
|
||||||
sd_clk_p => part_clk_p,
|
sd_clk_p => part_clk_p,
|
||||||
|
|||||||
@@ -65,6 +65,8 @@ architecture struct of tb_sdr_ctrl is
|
|||||||
signal u_busy : std_logic;
|
signal u_busy : std_logic;
|
||||||
signal u_data_w : unsigned(2*DDR_DATA_WIDTH-1 downto 0) := (others => '0');
|
signal u_data_w : unsigned(2*DDR_DATA_WIDTH-1 downto 0) := (others => '0');
|
||||||
signal u_dm : unsigned(2*DDR_DM_WIDTH-1 downto 0) := "0000";
|
signal u_dm : unsigned(2*DDR_DM_WIDTH-1 downto 0) := "0000";
|
||||||
|
signal u_dm_rd_in : unsigned(2*DDR_DM_WIDTH-1 downto 0) := "0000";
|
||||||
|
signal u_dm_rd_out : unsigned(2*DDR_DM_WIDTH-1 downto 0) := "0000";
|
||||||
signal u_data_r : unsigned(2*DDR_DATA_WIDTH-1 downto 0) := (others => '0');
|
signal u_data_r : unsigned(2*DDR_DATA_WIDTH-1 downto 0) := (others => '0');
|
||||||
signal u_data_vld : std_logic;
|
signal u_data_vld : std_logic;
|
||||||
signal u_req_wr : std_logic;
|
signal u_req_wr : std_logic;
|
||||||
@@ -122,7 +124,9 @@ begin
|
|||||||
u_cmd_we => u_cmd_we,
|
u_cmd_we => u_cmd_we,
|
||||||
u_data_wr => u_data_w,
|
u_data_wr => u_data_w,
|
||||||
u_data_rd => u_data_r,
|
u_data_rd => u_data_r,
|
||||||
u_dm => u_dm,
|
u_dm_wr_in => u_dm,
|
||||||
|
u_dm_rd_in => u_dm_rd_in,
|
||||||
|
u_dm_rd_out => u_dm_rd_out,
|
||||||
|
|
||||||
-- SDRAM signals
|
-- SDRAM signals
|
||||||
sd_clk_p => part_clk_p,
|
sd_clk_p => part_clk_p,
|
||||||
|
|||||||
Reference in New Issue
Block a user