diff --git a/applications/lofar2/libraries/sdp/src/vhdl/sdp_pkg.vhd b/applications/lofar2/libraries/sdp/src/vhdl/sdp_pkg.vhd index 512cdebae0783870097fdcb28c026fc274c3dbfb..a1eede5e5e294ed6c74d0ac00835fafc757fdd2b 100644 --- a/applications/lofar2/libraries/sdp/src/vhdl/sdp_pkg.vhd +++ b/applications/lofar2/libraries/sdp/src/vhdl/sdp_pkg.vhd @@ -849,7 +849,8 @@ PACKAGE BODY sdp_pkg IS VARIABLE v_info : t_sdp_crosslets_info := info_rec; BEGIN FOR I IN 0 TO c_sdp_crosslets_info_nof_offsets-1 LOOP -- step all offsets - v_info.offset_arr(I) := v_info.offset_arr(I) + v_info.step; + -- c_sdp_N_sub = 512 is power of 2, so MOD should be fine in synthesis (simpel skips MSbits, no need for division). + v_info.offset_arr(I) := (v_info.offset_arr(I) + v_info.step) MOD c_sdp_N_sub; END LOOP; RETURN v_info; END func_sdp_step_crosslets_info;