Storage Requirements - 2024.1 English

Versal Adaptive SoC System and Solution Planning Methodology Guide (UG1504)

Document ID
Release Date
2024.1 English

In AIE1, local tile memory = 32 KB and each tile has access to three neighboring tile memories for a total of 128 KB.

As previously mentioned, you need to store the histogram and the precomputed cos(θ) and sin(θ) across the chosen resolution.

Storage required for the precomputed cos(θ) and sin(θ) = 2 x 2 B x 128 = 512 B.

The storage requirement of the 2D histogram can be calculated using the previously mentioned formula. By plugging in the image dimensions, θ resolution and assuming int16 data type, you arrive at 162 KB of storage for the histogram.

From the three options listed above, you are forced to eliminate option 1 because the storage requirement of the histogram alone is above 128 KB. This means that the solution is expected to require multiple tiles, each computing a partial transform for the whole input image.

The following tables help determine the partial histogram storage requirements as you sweep the number of tiles.

Table 1. Input System Parameters
Parameter Value Units Notes
Image # Rows Pixels "R" 216 Pixels
Image # Column Pixels "C" 240 Pixels
Histogram Data Type Size 2 B Assume <int16>
Theta Resolution (# steps) 128 Over 180°
Target throughput 220 Mpixel/sec
# AIE Tiles 32 tiles Partition over "Theta"
Table 2. Output Storage Parameters
Parameter Value Units Notes
Largest value of "rho" 323 Pixels  
Total histogram storage 161.8 KB Total output storage
Partial histogram storage 5.1 KB Output storage per tile

Using a pivot table from Excel, the following figure shows the histogram tile storage.

Figure 1. Histogram Tile Storage