 Hello, and welcome to this presentation of the Graphics Processing Unit, or GPU, embedded in the STM32MP1 microprocessor family. It covers the features of this processor dedicated to graphics creation, which is widely used for the rendering of human-man interface, or HMI, and multimedia content. The STM32MP1 GPU is a powerful 3D graphic processing unit. Its 3D pipeline is built around an ultra-threaded unified shader with a specific 3D rendering engine and a texture engine to efficiently render 3D scenes. A dedicated memory controller optimizes all the transfers from and to the system or external memories. The STM32MP1 GPU is compliant with OpenGL ES 1.1 and 2.0 and OpenVG 1.1 standards. The GPU is built around a powerful ultra-threaded unified shader working at IEEE compliant 32-bit floating point numbers and accelerates all the state-of-the-art graphic functions lowering the CPU load. Each vertex can have up to 12 programmable elements and the GPU supports simultaneous textures for 8 fragment shaders and for vertex shaders. Several sampling techniques are supported, like point sampling, bilinear, trilinear, or cubic. The rendering target and texture size can go up to 8K per 8K pixels. The GPU has a dedicated block to provide best-in-class graphic acceleration. The graphic pipeline front-end takes as an input the high-level graphic primitives and commands. They are transmitted to the ultra-threaded unified shader which is a single instruction multiple data or SIMD processor supporting up to 256 threads. The unified shader acts as a vertex shader for geometry transformation and lighting computation or as a fragment shader to apply textures and compute the colors of each pixel. A specific 3D rendering engine converts triangles and lines into pixels with color attributes and texture coordinates. The texture engine ensures the retrieval of the textures on demand of the fragment shader. The pixel engine performs the final alpha blending and the tiling. The GPU has only one global interrupt. This interrupt is used by the low-level drivers for graphic API implementation. The GPU is active in run and sleep modes. A GPU interrupt can cause the device to exit sleep mode. In stop modes, the GPU is frozen and its registers content is kept. In standby mode, the GPU is powered down and it must be re-initialized afterwards. Embedded applications require low-power management functions together with a high-quality user interface. This can be achieved using the GPU to render advanced graphical user interfaces. You can refer to the training slides related to the RCC block and interrupts for additional information. The GPU is available on STM32 MP1 devices with OpenGL ES 1.1 and 2.0, OpenVG 1.1, EGL 1.4 and OpenGL 2.1 API supports.