diff --git a/applications/lofar2/designs/lofar2_unb2b_sdp_station/lofar2_unb2b_sdp_station.fpga.yaml b/applications/lofar2/designs/lofar2_unb2b_sdp_station/lofar2_unb2b_sdp_station.fpga.yaml index 45b59ccbbf6b7fb0fbe7dd498c1c760736014cc4..35ca819e6d42eb2f958e072ed62251d636cd526d 100644 --- a/applications/lofar2/designs/lofar2_unb2b_sdp_station/lofar2_unb2b_sdp_station.fpga.yaml +++ b/applications/lofar2/designs/lofar2_unb2b_sdp_station/lofar2_unb2b_sdp_station.fpga.yaml @@ -30,6 +30,7 @@ parameters: - { name: c_W_beamlet_scale, value: 16 } - { name: c_W_beamlet_resolution, value: 0 - 15 } # EK: FIXME: support passing on negative values, workaround use 0 - positive - { name: c_W_beamlet, value: 8 } + - { name: c_stat_data_sz, value: 2 } - { name: c_nof_clk_per_pps, value: c_f_adc_MHz * 10**6 } # = 200000000 peripherals: @@ -230,6 +231,7 @@ peripherals: - peripheral_name: reorder/reorder_col_wide number_of_peripherals: c_N_beamsets + peripheral_span: ceil_pow2(c_P_pfb) * ceil_pow2(c_S_sub_bf * c_Q_fft) * MM_BUS_SIZE # number_of_ports = c_P_pfb, mm_port_span = ceil_pow2(c_S_sub_bf * c_Q_fft) words parameter_overrides: - { name: g_wb_factor, value: c_P_pfb } - { name: g_nof_ch_in, value: c_N_sub * c_Q_fft } @@ -239,14 +241,13 @@ peripherals: - peripheral_name: sdp/sdp_bf_weights number_of_peripherals: c_N_beamsets - parameter_overrides: - - { name: g_nof_instances, value: c_N_pol_bf * c_A_pn } # A_pn = P_pfb = 6 - - { name: g_nof_gains, value: c_N_pol * c_S_sub_bf } # N_pol = Q_fft = 2 + peripheral_span: ceil_pow2(c_N_pol_bf * c_P_pfb) * ceil_pow2(c_Q_fft * c_S_sub_bf) * MM_BUS_SIZE # number_of_ports = c_N_pol_bf * c_P_pfb, mm_port_span = ceil_pow2(c_Q_fft * c_S_sub_bf) words mm_port_names: - RAM_BF_WEIGHTS - peripheral_name: sdp/sdp_bf_scale number_of_peripherals: c_N_beamsets + peripheral_span: 2 * MM_BUS_SIZE # number_of_ports = 1, mm_port_span = 2 words parameter_overrides: - { name: g_gain_w, value: c_W_beamlet_scale } - { name: g_lsb_w, value: 0 - c_W_beamlet_resolution} @@ -255,11 +256,13 @@ peripherals: - peripheral_name: sdp/sdp_beamformer_output_hdr_dat number_of_peripherals: c_N_beamsets + peripheral_span: 64 * MM_BUS_SIZE # number_of_ports = 1, mm_port_span = 64 words mm_port_names: - REG_HDR_DAT - peripheral_name: dp/dp_xonoff number_of_peripherals: c_N_beamsets + peripheral_span: 2 * MM_BUS_SIZE # number_of_ports = 1, mm_port_span = 2 words parameter_overrides: - { name: g_nof_streams, value: 1 } - { name: g_combine_streams, value: False } @@ -267,18 +270,22 @@ peripherals: - REG_DP_XONOFF - peripheral_name: st/st_bst_for_sdp + number_of_peripherals: c_N_beamsets + peripheral_span: ceil_pow2(c_stat_data_sz * c_S_sub_bf * c_N_pol_bf) * MM_BUS_SIZE # number_of_ports = 1, mm_port_span = ceil_pow2(c_stat_data_sz * c_S_sub_bf * c_N_pol_bf) words mm_port_names: - RAM_ST_BST - + - peripheral_name: common/common_variable_delay peripheral_group: bst number_of_peripherals: c_N_beamsets + peripheral_span: 2 * MM_BUS_SIZE # number_of_ports = 1, mm_port_span = 2 words mm_port_names: - REG_STAT_ENABLE_BST - peripheral_name: sdp/sdp_statistics_offload_hdr_dat_bst peripheral_group: bst number_of_peripherals: c_N_beamsets + peripheral_span: 64 * MM_BUS_SIZE # number_of_ports = 1, mm_port_span = 64 words mm_port_names: - REG_STAT_HDR_DAT_BST