Block Design: diff3dsq() - Block Design: diff3dsq() - 2025.2 English - XD100

Vitis Tutorials: AI Engine Development (XD100)

Document ID
XD100
Release Date
2026-03-27
Version
2025.2 English

The following figure shows details of the diff3dsq() block.

  • 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=256 and 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-08 to compress its dynamic range to the \(1 \le x \lt 4\) range required for the downstream sqrt(). 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 process.

  • 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.

figure