16. Neo-Chrom graphic processor (GPU2D)

16.1 GPU2D introduction

GPU2D is a dedicated graphics processing unit accelerating numerous 2.5D graphics applications such as graphical user interface (GUI), menu display or animations.

The GPU2D peripheral works together with an optimized software stack designed for state of the art graphic rendering.

16.2 GPU2D main features

Main features

2D drawing features

Image transformations

Blit support

Text rendering support

Color formats

Full alpha blending with hardware blender

16.3 GPU2D general description

16.3.1 GPU2D block diagram

Figure 137. GPU2D block diagram

Figure 137. GPU2D block diagram. The diagram shows the internal architecture of the GPU2D. On the left, external connections include three 64-bit AXI buses, gpu2d_aclk, gpu2d_hclk, gpu2d_it, gpu2d_sys_it, gpu2d_flag[3:0], and a 32-bit AHB bus. These connect to a Command list processor, a Register file, and a Bus interface unit. The Bus interface unit connects to a Texture map unit and a Render output unit. The Texture map unit, Rasterizer, Fragment processing core, and Render output unit are grouped into a dashed box labeled 'Graphic pipeline'. The Command list processor and Register file are also connected to the Rasterizer and Fragment processing core. The Render output unit has a bidirectional connection with the Bus interface unit. The diagram is labeled MSV66000V2 in the bottom right corner.
Figure 137. GPU2D block diagram. The diagram shows the internal architecture of the GPU2D. On the left, external connections include three 64-bit AXI buses, gpu2d_aclk, gpu2d_hclk, gpu2d_it, gpu2d_sys_it, gpu2d_flag[3:0], and a 32-bit AHB bus. These connect to a Command list processor, a Register file, and a Bus interface unit. The Bus interface unit connects to a Texture map unit and a Render output unit. The Texture map unit, Rasterizer, Fragment processing core, and Render output unit are grouped into a dashed box labeled 'Graphic pipeline'. The Command list processor and Register file are also connected to the Rasterizer and Fragment processing core. The Render output unit has a bidirectional connection with the Bus interface unit. The diagram is labeled MSV66000V2 in the bottom right corner.

16.3.2 GPU2D pins and internal signals

The internal signals of the GPU2D peripheral are given in the following table.

Table 129. GPU2D internal input/output signals

Internal signal nameSignal typeDescription
gpu2d_aclkInputGPU2D AXI clock
gpu2d_hclkInputGPU2D AHB clock
gpu2d_itOutputGPU2D interrupt request (GPU2D)
Table 129. GPU2D internal input/output signals (continued)
Internal signal nameSignal typeDescription
gpu2d_sys_itOutputGPU2D system interrupt request (GPU2D_SYS)
gpu2d_flag[3:0]OutputGPU2D general purpose flags
Table 130. GPU2D trigger connections
Trigger nameDirectionTrigger source/destination
gpu2d_flag[0]Outputhpdma_trigsel[13]
gpu2d_flag[1]Outputhpdma_trigsel[14]
gpu2d_flag[2]Outputhpdma_trigsel[15]
gpu2d_flag[3]Outputhpdma_trigsel[16]