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
No related branches found
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.
Finish editing this message first!
Please register or to comment