-- Run some sync intervals with DSP counter data for the real and imag fields
WAITUNTILrising_edge(clk);
FORIIN0TOc_nof_sync-1LOOP
proc_dp_gen_block_data(c_rl,FALSE,c_dsp_data_w,c_dsp_data_w,0,v_re,v_im,c_nof_ch_in/c_wb_factor,0,0,'1',"0",clk,st_en,st_siso_arr(K),st_sosi_arr(K));-- next sync
v_re:=v_re+c_nof_ch_in;
v_im:=v_im+c_nof_ch_in;
FORJIN0TOc_nof_block_per_sync-2LOOP-- provide sop and eop for block reference
proc_dp_gen_block_data(c_rl,FALSE,c_dsp_data_w,c_dsp_data_w,0,v_re,v_im,c_nof_ch_in/c_wb_factor,0,0,'0',"0",clk,st_en,st_siso_arr(K),st_sosi_arr(K));-- no sync
v_re:=v_re+c_nof_ch_in;
v_im:=v_im+c_nof_ch_in;
ENDLOOP;
ENDLOOP;
st_sosi_arr(K)<=c_dp_sosi_rst;
proc_common_wait_some_cycles(clk,100);
-- Run some sync intervals more
WAITUNTILrising_edge(clk);
FORIIN0TOc_nof_sync-1LOOP
proc_dp_gen_block_data(c_rl,FALSE,c_dsp_data_w,c_dsp_data_w,0,v_re,v_im,c_nof_ch_in/c_wb_factor,0,0,'1',"0",clk,st_en,st_siso_arr(K),st_sosi_arr(K));-- next sync
v_re:=v_re+c_nof_ch_in;
v_im:=v_im+c_nof_ch_in;
FORJIN0TOc_nof_block_per_sync-2LOOP-- provide sop and eop for block reference
proc_dp_gen_block_data(c_rl,FALSE,c_dsp_data_w,c_dsp_data_w,0,v_re,v_im,c_nof_ch_in/c_wb_factor,0,0,'0',"0",clk,st_en,st_siso_arr(K),st_sosi_arr(K));-- no sync
v_re:=v_re+c_nof_ch_in;
v_im:=v_im+c_nof_ch_in;
ENDLOOP;
ENDLOOP;
proc_common_wait_some_cycles(clk,10);
tb_end<='1';
WAIT;
ENDPROCESS;
ENDGENERATE;
-- Time stimuli
bsn<=bsn+1WHENrising_edge(clk)AND(st_sosi_arr(0).eop='1');-- OR st_sosi.sync='1');