Skip to content
Snippets Groups Projects
Commit 8abeacdc authored by Eric Kooistra's avatar Eric Kooistra
Browse files

Do not define function input signal or constant.

parent 356615de
No related branches found
No related tags found
1 merge request!339Resolve L2SDP-959
......@@ -88,12 +88,12 @@ package reorder_pkg is
constant c_reorder_transpose_rst : t_reorder_transpose := (c_mem_copi_rst, 0, 0, 0);
-- Input block has c_nof_ch = c_nof_data_per_block * c_nof_blocks_per_packet
-- Input block has nof_ch = nof_data_per_block * nof_blocks_per_packet
-- data per packet. The transpose.select_copi.address order will yield
-- transposed output, with c_nof_blocks_per_packet and c_nof_data_per_block.
function func_reorder_transpose(constant c_nof_blocks_per_packet : natural;
constant c_nof_data_per_block : natural;
signal transpose : t_reorder_transpose)
-- transposed output, with nof_blocks_per_packet and nof_data_per_block.
function func_reorder_transpose(nof_blocks_per_packet : natural;
nof_data_per_block : natural;
transpose : t_reorder_transpose)
return t_reorder_transpose;
end reorder_pkg;
......@@ -136,9 +136,9 @@ package body reorder_pkg is
-- data_out: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 -- out_sosi
--
-- to restore the original order.
function func_reorder_transpose(constant c_nof_blocks_per_packet : natural;
constant c_nof_data_per_block : natural;
signal transpose : t_reorder_transpose)
function func_reorder_transpose(nof_blocks_per_packet : natural;
nof_data_per_block : natural;
transpose : t_reorder_transpose)
return t_reorder_transpose is
variable v : t_reorder_transpose;
begin
......@@ -147,14 +147,14 @@ package body reorder_pkg is
v.select_copi.address := TO_MEM_ADDRESS(v.addr);
v.select_copi.rd := '1';
-- prepare next read address
if v.blk_cnt <= c_nof_blocks_per_packet - 1 then
if v.data_cnt < c_nof_data_per_block - 1 then
if v.blk_cnt <= nof_blocks_per_packet - 1 then
if v.data_cnt < nof_data_per_block - 1 then
v.data_cnt := v.data_cnt + 1;
v.addr := v.addr + c_nof_blocks_per_packet;
v.addr := v.addr + nof_blocks_per_packet;
else
v.data_cnt := 0;
v.blk_cnt := v.blk_cnt + 1;
if v.blk_cnt = c_nof_blocks_per_packet then
if v.blk_cnt = nof_blocks_per_packet then
v.blk_cnt := 0;
end if;
v.addr := v.blk_cnt;
......
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