Skip to content
Snippets Groups Projects
Commit 8ffd84b7 authored by Job van Wee's avatar Job van Wee
Browse files

Almost ready for review.

parent c3a0db74
Branches
No related tags found
1 merge request!238Resolve L2SDP-705
Pipeline #28631 passed
...@@ -240,11 +240,8 @@ BEGIN ...@@ -240,11 +240,8 @@ BEGIN
g_wr_data_w => c_io_ddr_data_w, g_wr_data_w => c_io_ddr_data_w,
g_rd_fifo_depth => c_rd_fifo_depth, g_rd_fifo_depth => c_rd_fifo_depth,
g_rd_data_w => c_io_ddr_data_w, g_rd_data_w => c_io_ddr_data_w,
<<<<<<< HEAD g_block_size => g_block_size,
g_block_size => g_block_size
=======
g_rd_fifo_uw_w => c_rd_fifo_uw_w g_rd_fifo_uw_w => c_rd_fifo_uw_w
>>>>>>> L2SDP-704
) )
PORT MAP( PORT MAP(
clk => clk, clk => clk,
......
...@@ -108,7 +108,7 @@ BEGIN ...@@ -108,7 +108,7 @@ BEGIN
v.out_sosi.valid := '0'; -- out_sosi.valid 0 v.out_sosi.valid := '0'; -- out_sosi.valid 0
-- BSN_INPUT -- BSN_INPUT
IF NOT (in_bsn = q_reg.out_bsn) THEN IF NOT (in_bsn = q_reg.s_out_bsn) THEN
v.s_out_bsn := in_bsn; -- a bsn number is saved when the bsn changes v.s_out_bsn := in_bsn; -- a bsn number is saved when the bsn changes
IF g_in_data_w*q_reg.c_v_count+q_reg.out_of >= c_out_data_w THEN IF g_in_data_w*q_reg.c_v_count+q_reg.out_of >= c_out_data_w THEN
v.s_out_bsn_ds := g_in_data_w*q_reg.c_v_count+q_reg.out_of-c_out_data_w; -- the amount of bits between word[0] and data[0] where data is the data with the bsn v.s_out_bsn_ds := g_in_data_w*q_reg.c_v_count+q_reg.out_of-c_out_data_w; -- the amount of bits between word[0] and data[0] where data is the data with the bsn
...@@ -142,7 +142,7 @@ BEGIN ...@@ -142,7 +142,7 @@ BEGIN
v.out_data_count := q_reg.out_data_count+1; -- increase the counter of out_sosi.data with 1 v.out_data_count := q_reg.out_data_count+1; -- increase the counter of out_sosi.data with 1
-- BSN_INPUT -- BSN_INPUT
IF NOT (in_bsn = q_reg.out_bsn) THEN IF NOT (in_bsn = q_reg.s_out_bsn) THEN
v.out_bsn := in_bsn; -- a bsn number is saved when the bsn changes v.out_bsn := in_bsn; -- a bsn number is saved when the bsn changes
IF g_in_data_w*q_reg.c_v_count+q_reg.out_of >= c_out_data_w THEN IF g_in_data_w*q_reg.c_v_count+q_reg.out_of >= c_out_data_w THEN
v.s_out_bsn_ds := g_in_data_w*q_reg.c_v_count+q_reg.out_of-c_out_data_w; -- the amount of bits between word[0] and data[0] where data is the data with the bsn v.s_out_bsn_ds := g_in_data_w*q_reg.c_v_count+q_reg.out_of-c_out_data_w; -- the amount of bits between word[0] and data[0] where data is the data with the bsn
...@@ -180,7 +180,7 @@ BEGIN ...@@ -180,7 +180,7 @@ BEGIN
v.out_data_count := 0; -- reset counter v.out_data_count := 0; -- reset counter
-- BSN_INPUT -- BSN_INPUT
IF NOT (in_bsn = q_reg.out_bsn) THEN IF NOT (in_bsn = q_reg.s_out_bsn) THEN
v.out_bsn := in_bsn; -- a bsn number is saved when the bsn changes v.out_bsn := in_bsn; -- a bsn number is saved when the bsn changes
IF g_in_data_w*q_reg.c_v_count+q_reg.out_of >= c_out_data_w THEN IF g_in_data_w*q_reg.c_v_count+q_reg.out_of >= c_out_data_w THEN
v.s_out_bsn_ds := g_in_data_w*q_reg.c_v_count+q_reg.out_of-c_out_data_w; -- the amount of bits between word[0] and data[0] where data is the data with the bsn v.s_out_bsn_ds := g_in_data_w*q_reg.c_v_count+q_reg.out_of-c_out_data_w; -- the amount of bits between word[0] and data[0] where data is the data with the bsn
......
...@@ -79,14 +79,13 @@ ARCHITECTURE tb OF tb_ddrctrl IS ...@@ -79,14 +79,13 @@ ARCHITECTURE tb OF tb_ddrctrl IS
-- function for making total data vector -- function for making total data vector
FUNCTION c_total_vector_init RETURN STD_LOGIC_VECTOR IS FUNCTION c_total_vector_init RETURN STD_LOGIC_VECTOR IS
VARIABLE temp : STD_LOGIC_VECTOR(c_in_data_w*c_sim_length-1 DOWNTO 0); VARIABLE temp : STD_LOGIC_VECTOR(c_in_data_w*c_sim_length-1 DOWNTO 0);
VARIABLE conv : STD_LOGIC_VECTOR(168-1 DOWNTO 0) := (OTHERS => '0'); -- removes a warning VARIABLE conv : STD_LOGIC_VECTOR(32-1 DOWNTO 0) := (OTHERS => '0'); -- removes a warning
BEGIN BEGIN
FOR I IN 0 TO c_sim_length-1 LOOP FOR I IN 0 TO c_sim_length-1 LOOP
temp((g_data_w*(I+1)*g_nof_streams)-1 DOWNTO g_data_w*I*g_nof_streams) := conv(168-1 DOWNTO 0); conv := TO_UVEC(I, 32);
conv := TO_UVEC(I, 168); FOR J IN 0 TO g_nof_streams-1 LOOP
--FOR J IN 0 TO g_nof_streams-1 LOOP temp(g_data_w*((I*g_nof_streams)+J+1)-1 DOWNTO g_data_w*((I*g_nof_streams)+j)) := conv(g_data_w-1 DOWNTO 0);
--temp(g_data_w*((I*g_nof_streams)+J+1)-1 DOWNTO g_data_w*((I*g_nof_streams)+j)) := conv(g_data_w-1 DOWNTO 0); END LOOP;
--END LOOP;
END LOOP; END LOOP;
RETURN temp; RETURN temp;
END FUNCTION c_total_vector_init; END FUNCTION c_total_vector_init;
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment