The following figure shows the graph view for the SAR BP engine.
The graph has two inputs,
ifft_i,image_i, and one outputimage_o. GMIO drives theifft_i, whereas the other two are both driven by PLIO.The
ifft()andlut()kernels execute one time per graph iteration to compute the iFFT and populate the slope & offset LUTs required for linear interpolation.The
range_gen()kernel also executes one time per graph iteration to compute the \((x,y,z)\) coordinates of the target image.All remaining kernels execute 256 times per graph iteration, processing 1024 pixels per kernel invocation.
Two separate kernels
interp1_re()andinterp1_im()implement theinterp1()graph. Each kernel uses asynchronous input buffers to manage its input LUTs.Two separate kernels
cos()andsin()implement theexpjx()graph. These are instantiations offunc_approx()from the Vitis DSP Library.