Memory Mapped AXI4 Interface - 1.2 English

Multi-Scaler LogiCORE IP Product Guide (PG325)

Document ID
PG325
Release Date
2023-12-20
Version
1.2 English

There is a memory mapped AXI4 interface named m_axi_mm_video. The memory mapped AXI4 interface runs on the ap_clk clock domain. The signals follow the specification as defined in Vivado Design Suite: AXI Reference Guide (UG1037).

Table 1. Pixel Formats Supported by the Memory based Multi-Scaler IP Core
Video Format Description Bits Per Component Bytes per Pixel
RGBX8 Packed RGB 8 4 bytes per pixel
RGB8 Packed RGB 8 3 bytes per pixel
BGRX8 Packed BGR 8 4 bytes per pixel
BGR8 Packed BGR 8 3 bytes per pixel
YUVX8 Packed YUV 4:4:4 8 4 bytes per pixel
YUV8 Packed YUV 4:4:4 8 3 bytes per pixel
YUYV8 Packed YUV 4:2:2 8 2 bytes per pixel
UYVY8 Packed YUV 4:2:2 8 2 bytes per pixel
Y_UV8 Semi-planar YUV 4:2:2 8 1 byte per pixel per plane
Y_UV8_420 Semi-planar YUV 4:2:0 8 1 byte per pixel per plane
Y8 Packed luma only 8 1 byte per pixel
RGBX10 Packed RGB 10 4 bytes per pixel
YUVX10 Packed YUV 4:4:4 10 4 bytes per pixel
Y_UV10 Semi-planar YUV 4:2:2 10 4 bytes per 3 pixels per plane
Y_UV10_420 Semi-planar YUV 4:2:0 10 4 bytes per 3 pixels per plane
Y10 Packed luma only 10 4 bytes per 3 pixel
Note: See Video Frame Buffer Read and Video Frame Buffer Write LogiCORE IP Product Guide (PG278) for information on how these video formats cross reference to software formats.

The following tables explain the expected pixel mappings in memory for each of the mentioned listed formats.

RGBX8

Packed RGB, 8 bits per component. Every RGB pixel in memory is represented with 32 bits, as shown in the following table. The images need be stored in memory in raster order, that is top-left pixel first and the bottom-right pixel last. Bits[31:24] do not contain pixel information.

Table 2. RGBX8 Pixel Format
31:24 23:16 15:8 7:0
X B G R
YUVX8

Packed YUV 4:4:4, 8 bits per component. Every YUV 4:4:4 pixel in memory is represented with 32 bits, as shown in the following table. Bits[31:24] do not contain pixel information.

Table 3. YUVX8 Pixel Format
31:24 23:16 15:8 7:0
X V U Y
YUYV8
Packed YUV 4:2:2, 8 bits per component. Every two YUY 4:2:2 pixels in memory are represented with 32 bits, as shown in the following table.
Table 4. YUYV8 Pixel Format
31:24 23:16 15:8 7:0
V0 Y1 U0 Y0
RGBX10
Packed RGB, 10 bits per component. Every RGB pixel is represented with 32 bits, as shown in the following. Bits[31:30] do not contain any pixel information.
Table 5. RGBX10 Pixel Format
31:30 29:20 19:10 9:0
X B G R
YUVX10

Packed YUV 4:4:4, 10 bits per component. Every YUV 4:4:4 pixel is represented with 32 bits, as shown in the following table. Bits[31:30] do not contain any pixel information.

Table 6. YUVX10 Pixel Format
31:30 29:20 19:10 9:0
X V U Y
Y_UV8
Semi-planar YUV 4:2:2 with 8 bits per component. Y and UV stored in separate planes as shown in the following table. The UV plane is assumed to have an offset of stride × height bytes from the Y plane buffer address.
Table 7. Y_UV8 Pixel Format
  31:24 23:16 15:8 7:0
Y Y3 Y2 Y1 Y0
UV V2 U2 V0 U0
Y_UV8_420
Semi-planar YUV 4:2:0 with 8 bits per component. Y and UV stored in separate planes as shown in the following table. The UV plane is assumed to have an offset of stride × height bytes from the Y plane buffer address.
Table 8. Y_UV8_420 Pixel Format
31:24 23:16 15:8 7:0
Y3 Y2 Y1 Y0
RGB8

Packed RGB, 8 bits per component. Every RGB pixel in memory is represented with 24 bits, as shown in the following table. The images need be stored in memory in raster order, that is, top-left pixel first, bottom-right pixel last.

Table 9. RGB8 Pixel Format
23:16 15:8 7:0
B G R
YUV8
Packed YUV 4:4:4, 8 bits per component. Every YUV 4:4:4 pixel in memory is represented with 24 bits, as shown in the following table. The images need be stored in memory in raster order, that is, top-left pixel first, bottom-right pixel last.
Table 10. YUV8 Pixel Format
23:16 15:8 7:0
V U Y
Y_UV10
Semi-planar YUV 4:2:2 with 10 bits per component. Every 3 pixels is represented with 32 bits. Bits[31:30] do not contain any pixel information. Y and UV stored in separate planes as shown in the following table. The UV plane is assumed to have an offset of stride x height bytes from the Y plane buffer address.
Table 11. Y_UV10 Pixel Format
  63:62 61:52 51:42 41:32 31:30 29:20 19:10 9:0
Y X Y5 Y4 Y3 X Y2 Y1 Y0
UV X V4 U4 V2 X U2 V0 U0
Y_UV10_420
Semi-planar YUV 4:2:0 with 10 bits per component. Every 3 pixels is represented with 32 bits. Bits[31:30] do not contain any pixel information. Y and UV stored in separate planes as shown in the following table. The UV plane is assumed to have an offset of stride x height bytes from the Y plane buffer address.
Table 12. Y_UV10_420 Pixel Format
  63:62 61:52 51:42 41:32 31:30 29:20 19:10 9:0
Y X Y5 Y4 Y3 X Y2 Y1 Y0
UV X V8 U8 v4 X U4 V0 U0
Y8
Packed Luma-Only, 8 bits per component. Every luma-only pixel in memory is represented with 8 bits, as shown in the following table. The images need be stored in memory in raster order, that is, top-left pixel first, bottom-right pixel last.
Table 13. Y8 Pixel Format
7:0
Y
Y10
Packed Luma-Only, 10 bits per component. Every three luma-only pixels in memory is represented with 32 bits, as shown in the following table. The images need be stored in memory in raster order, that is, top-left pixel first, bottom-right pixel last. Bits[31:30] do not contain pixel information.
Table 14. Y10 Pixel Format
31:30 29:20 19:10 9:0
X Y2 Y1 Y0
BGRX8
Packed BGR, 8 bits per component. Every BGR pixel in memory is represented with 32 bits, as shown in the following table. The images need be stored in memory in raster order, that is, top-left pixel first, bottom-right pixel last. Bits[31:24] do not contain pixel information.
Table 15. BGRX8 Pixel Format
31:24 23:16 15:8 7:0
X R G B
UYVY8
Packed YUV 4:2:2, 8 bits per component. Every two YUV 4:2:2 pixels in memory are represented with 32 bits, as shown in the following table.
Table 16. UYVY8 Pixel Format
31:24 23:16 15:8 7:0
Y1 V0 Y0 U0
BGR8
Packed BGR, 8 bits per component. Every BGR pixel in memory is represented with 24 bits, as shown. The images need to be stored in memory in raster order, that is, top-left pixel first, bottom-right pixel last.
Table 17. BGR8 Pixel Format
23:16 15:8 7:0
R G B