Commit ff70a363 authored by Dimitris Lampridis's avatar Dimitris Lampridis

hdl: fix assignment of RMQ to MT CPUs

parent 75ed93f4
mock-turtle @ e798aa45
Subproject commit 9b36bddf1701ea392efa0a7cfa18a61472f36633
Subproject commit e798aa45e70d55165e5dda4d3dbd09ea426c3fc7
......@@ -484,6 +484,14 @@ architecture arch of svec_list_top is
-- MT endpoints
signal rmq_endpoint_out : t_mt_rmq_endpoint_iface_out;
signal rmq_endpoint_in : t_mt_rmq_endpoint_iface_in;
signal rmq_src_in : t_mt_stream_source_in;
signal rmq_src_out : t_mt_stream_source_out;
signal rmq_src_cfg_in : t_mt_stream_config_in;
signal rmq_src_cfg_out : t_mt_stream_config_out;
signal rmq_snk_in : t_mt_stream_sink_in;
signal rmq_snk_out : t_mt_stream_sink_out;
signal rmq_snk_cfg_in : t_mt_stream_config_in;
signal rmq_snk_cfg_out : t_mt_stream_config_out;
-- MT fabric.
signal eth_tx_out : t_wrf_source_out;
......@@ -693,41 +701,38 @@ begin -- architecture arch
port map (
clk_i => clk_sys_62m5,
rst_n_i => rst_sys_62m5_n,
rmq_src_i => rmq_endpoint_out.snk_out(0)(0),
rmq_src_o => rmq_endpoint_in.snk_in(0)(0),
rmq_src_config_i => rmq_endpoint_out.snk_config_out(0)(0),
rmq_src_config_o => rmq_endpoint_in.snk_config_in(0)(0),
rmq_snk_i => rmq_endpoint_out.src_out(1)(0),
rmq_snk_o => rmq_endpoint_in.src_in(1)(0),
rmq_snk_config_i => rmq_endpoint_out.src_config_out(1)(0),
rmq_snk_config_o => rmq_endpoint_in.src_config_in(1)(0),
rmq_src_i => rmq_src_in,
rmq_src_o => rmq_src_out,
rmq_src_config_i => rmq_snk_cfg_out,
rmq_src_config_o => rmq_snk_cfg_in,
rmq_snk_i => rmq_snk_in,
rmq_snk_o => rmq_snk_out,
rmq_snk_config_i => rmq_src_cfg_out,
rmq_snk_config_o => rmq_src_cfg_in,
eth_src_o => eth_tx_out,
eth_src_i => eth_tx_in,
eth_snk_o => eth_rx_out,
eth_snk_i => eth_rx_in
);
eth_snk_i => eth_rx_in);
p_rmq_assign : process (rmq_endpoint_out, rmq_snk_cfg_in, rmq_snk_out,
rmq_src_cfg_in, rmq_src_out) is
begin
rmq_endpoint_in <= c_MT_RMQ_ENDPOINT_IFACE_IN_DEFAULT_VALUE;
-- WR->MT (RX, to MT CPU1)
rmq_src_in <= rmq_endpoint_out.snk_out(1)(0);
rmq_endpoint_in.snk_in(1)(0) <= rmq_src_out;
rmq_snk_cfg_out <= rmq_endpoint_out.snk_config_out(1)(0);
rmq_endpoint_in.snk_config_in(1)(0) <= rmq_snk_cfg_in;
-- MT->WR (TX, from MT CPU0)
rmq_snk_in <= rmq_endpoint_out.src_out(0)(0);
rmq_endpoint_in.src_in(0)(0) <= rmq_snk_out;
rmq_src_cfg_out <= rmq_endpoint_out.src_config_out(0)(0);
rmq_endpoint_in.src_config_in(0)(0) <= rmq_src_cfg_in;
rmq_endpoint_in.snk_in(0)(1 to t_maxslot_range'high) <=
(others => c_MT_DUMMY_SINK_IN);
rmq_endpoint_in.snk_config_in(0)(1 to t_maxslot_range'high) <=
(others => c_MT_DUMMY_EP_CONFIG_IN);
rmq_endpoint_in.snk_in(1 to t_maxcpu_range'high) <=
(others => (others => c_MT_DUMMY_SINK_IN));
rmq_endpoint_in.snk_config_in(1 to t_maxcpu_range'high) <=
(others => (others => c_MT_DUMMY_EP_CONFIG_IN));
rmq_endpoint_in.src_in(0) <=
(others => c_MT_DUMMY_SOURCE_IN);
rmq_endpoint_in.src_config_in(0) <=
(others => c_MT_DUMMY_EP_CONFIG_IN);
rmq_endpoint_in.src_in(1)(1 to t_maxslot_range'high) <=
(others => c_MT_DUMMY_SOURCE_IN);
rmq_endpoint_in.src_config_in(1)(1 to t_maxslot_range'high) <=
(others => c_MT_DUMMY_EP_CONFIG_IN);
rmq_endpoint_in.src_in(2 to t_maxcpu_range'high) <=
(others => (others => c_MT_DUMMY_SOURCE_IN));
rmq_endpoint_in.src_config_in(2 to t_maxcpu_range'high) <=
(others => (others => c_MT_DUMMY_EP_CONFIG_IN));
end process p_rmq_assign;
-----------------------------------------------------------------------------
-- The WR PTP core SVEC board package (WB Slave)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment