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

Store 64 visibility packets in DB output to fit all channels for one beamlet...

Store 64 visibility packets in DB output to fit all channels for one beamlet (as supported in r 18616 apertif_unb1_correlator_full).
parent 77e9c626
No related branches found
No related tags found
No related merge requests found
...@@ -91,12 +91,21 @@ ARCHITECTURE str OF node_apertif_unb1_correlator_output IS ...@@ -91,12 +91,21 @@ ARCHITECTURE str OF node_apertif_unb1_correlator_output IS
-- Output DB -- Output DB
CONSTANT c_vis_header_size : NATURAL := 21; -- (pad(2) + eth(14) + ip(20) + udp(8) + app_id(16) + app_flags(24)) / 4 = 84 bytes / 4 = 21 words CONSTANT c_vis_header_size : NATURAL := 21; -- (pad(2) + eth(14) + ip(20) + udp(8) + app_id(16) + app_flags(24)) / 4 = 84 bytes / 4 = 21 words
CONSTANT c_vis_payload_size : NATURAL := c_nof_complex*g_nof_visibilities; CONSTANT c_vis_payload_size : NATURAL := c_nof_complex*g_nof_visibilities;
CONSTANT c_vis_packet_size : NATURAL := c_vis_header_size + c_vis_payload_size; CONSTANT c_vis_packet_size : NATURAL := c_vis_header_size + c_vis_payload_size; -- = 21 + 600 = 621
CONSTANT c_vis_nof_packets_per_sync : NATURAL := g_nof_beamlets * g_nof_channels; CONSTANT c_vis_nof_packets_per_sync : NATURAL := g_nof_beamlets * g_nof_channels;
CONSTANT c_vis_nof_data_per_sync : NATURAL := c_vis_nof_packets_per_sync * c_vis_packet_size; CONSTANT c_vis_nof_data_per_sync : NATURAL := c_vis_nof_packets_per_sync * c_vis_packet_size;
CONSTANT c_db_nof_data_hw : NATURAL := 1024; -- on HW at least 1 packet (21 header + 600 payload words) CONSTANT c_vis_nof_data_per_beamlet : NATURAL := g_nof_channels * c_vis_packet_size; -- = 64 * 621 = 39744
CONSTANT c_db_nof_data_hw : NATURAL := ceil_value(c_vis_nof_data_per_beamlet, 1024); -- = 39 * 1024 = 39936, on HW at least 64 packets to fit all channels for one beamlet
--CONSTANT c_db_nof_data_hw : NATURAL := ceil_value(c_vis_packet_size, 1024); -- = 1024, on HW at least 1 packet (21 header + 600 payload words)
CONSTANT c_db_nof_data_sim : NATURAL := c_vis_nof_data_per_sync; -- in sim at least one sync interval CONSTANT c_db_nof_data_sim : NATURAL := c_vis_nof_data_per_sync; -- in sim at least one sync interval
CONSTANT c_db_nof_data : NATURAL := sel_a_b(g_sim, c_db_nof_data_sim, c_db_nof_data_hw); CONSTANT c_db_nof_data : NATURAL := sel_a_b(g_sim, c_db_nof_data_sim, c_db_nof_data_hw);
-- load tb_apertif_unb1_correlator_full, as 8, to see value of dbg_c_db_nof_data_hw on hardware
SIGNAL dbg_c_vis_packet_size : NATURAL := c_vis_packet_size;
SIGNAL dbg_c_vis_nof_data_per_beamlet : NATURAL := c_vis_nof_data_per_beamlet;
SIGNAL dbg_c_db_nof_data_hw : NATURAL := c_db_nof_data_hw;
SIGNAL dbg_c_db_nof_data_sim : NATURAL := c_db_nof_data_sim;
SIGNAL dbg_c_db_nof_data : NATURAL := c_db_nof_data;
SIGNAL db_sosi_arr : t_dp_sosi_arr(0 DOWNTO 0); SIGNAL db_sosi_arr : t_dp_sosi_arr(0 DOWNTO 0);
SIGNAL db_data : STD_LOGIC_VECTOR(c_32-1 DOWNTO 0); SIGNAL db_data : STD_LOGIC_VECTOR(c_32-1 DOWNTO 0);
......
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