Skip to content
Snippets Groups Projects
Commit 16537dbf authored by Pieter Donker's avatar Pieter Donker
Browse files

dp_switch some modifications

parent d5761c33
No related branches found
No related tags found
No related merge requests found
......@@ -83,9 +83,10 @@ ARCHITECTURE str OF dp_switch IS
SIGNAL dp_mux_sel_ctrl : NATURAL;
SIGNAL xonoff_snk_in_arr : t_dp_sosi_arr(g_nof_inputs-1 DOWNTO 0);
SIGNAL xonoff_snk_out_arr : t_dp_siso_arr(g_nof_inputs-1 DOWNTO 0);
SIGNAL inverted_snk_in_arr : t_dp_sosi_arr(0 TO g_nof_inputs-1);
SIGNAL snk_out_arr : t_dp_siso_arr(0 TO g_nof_inputs-1);
SIGNAL inverted_snk_out_arr: t_dp_siso_arr(0 TO g_nof_inputs-1);
BEGIN
......@@ -109,14 +110,6 @@ BEGIN
slv_out => mm_fields_out
);
------------------------------------------------------------------------------
-- invert snk_in_arr, dp_mux uses a TO array.
------------------------------------------------------------------------------
gen_dp_switch_snk_in_arr : FOR i IN 0 TO g_nof_inputs-1 GENERATE
inverted_snk_in_arr(i) <= xonoff_snk_in_arr(i);
END GENERATE;
------------------------------------------------------------------------------
-- put dp_xonoff block inbetween data path to control data flow.
------------------------------------------------------------------------------
......@@ -128,11 +121,19 @@ BEGIN
-- Frame in
in_sosi => snk_in_arr(i),
-- Frame out
out_siso => snk_out_arr(i), -- flush control via out_siso.xon from dp_mux
out_siso => xonoff_snk_out_arr(i), -- flush control done by dp_mux.snk_out_arr
out_sosi => xonoff_snk_in_arr(i)
);
END GENERATE;
------------------------------------------------------------------------------
-- invert snk_in_arr, dp_mux uses a TO array.
------------------------------------------------------------------------------
gen_dp_switch_snk_in_arr : FOR i IN 0 TO g_nof_inputs-1 GENERATE
inverted_snk_in_arr(i) <= xonoff_snk_in_arr(i);
xonoff_snk_out_arr(i) <= inverted_snk_out_arr(i);
END GENERATE;
------------------------------------------------------------------------------
-- Don't allow user to select a non-existent input
-- . If user requests non-existent input, the default input is forwarded instead.
......@@ -146,6 +147,7 @@ BEGIN
u_dp_mux : ENTITY work.dp_mux
GENERIC MAP (
g_mode => 4, -- Use sel_ctrl
g_sel_ctrl_invert => FALSE, -- Dont invert, data is already reverse mapped from DOWNTO >> TO arrays.
g_nof_input => g_nof_inputs,
g_use_fifo => g_use_fifo,
g_bsn_w => g_bsn_w,
......@@ -169,7 +171,7 @@ BEGIN
sel_ctrl => dp_mux_sel_ctrl,
snk_in_arr => inverted_snk_in_arr,
snk_out_arr => snk_out_arr,
snk_out_arr => inverted_snk_out_arr,
src_out => src_out,
src_in => c_dp_siso_rdy
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment