Details of the diff3dsq() block are shown in the the following figure.
The
diff3dsq()graph computes the squared Euclidean distance between the antenna platform $(A_X,A_Y,A_Z)$ and every position \((x,y,z)\) in the target scene.The graph contains a single kernel that uses a
repetition_count=256and a I/O buffer size of 1024 samples to perform the full compute workload of the target image in one graph iteration.The graph also scales its output by a fixed factor
sqrt_compress = 1.025640994e-08to compress its dynamic range to the $1 \le x \lt 4$ range required for the downstreamsqrt(). This constant was identified by examining the full dynamic range over the GOTCHA data set (but could be parameterized in principle).The graph uses a vector RTP of tuples $(A_X,A_Y,A_Z)$ to define the array platform coordinates for each radar pulse to be processed.
The initiation interval \(II=47\) is not the best pipelined solution here, but its throughput of 410 Msps is sufficient to meet the 400 Msps target of the design.