ARM GPU 架构简介

1. 架构

 

2. 开发流程



3. Mali GPU Linux 内核设备驱动程序

  Mali GPU DDK 的 Linux 版本包含在内核中运行的以下三个组件:

  1)设备驱动程序:
     它是最重要的组件,提供对 Mali-200 或 Mali-400 GPU 的低级访问。其主要功能如下:
      •对 Mali GPU 硬件的访问
      •中断处理
      •低级内存管理 

  2) 统一内存提供程序 (UMP): 
      它是重要的辅助组件为,可以各种不同方式使用以实现驱动程序堆栈中的零拷贝操作。
       •通过安全 ID 访问分配的 UMP 内存。这可在不同的应用程序、驱动程序和硬件组件之间共享内存,以实现零拷贝操作
       •设置 MMU 或 MPU 表所需的物理地址信息
       •将 UMP 内存映射至 CPU 地址空间的方法,以实现读取和写入

  3) Mali 直接渲染管理器 (DRM):
    它将 Mali GPU DDK 集成到 X11 环境之中并启用直接渲染接口 (DRI2)。

4. Mali GPU组成

4.1 Utgard架构(Mali-x00,支持1.1/2.0)  

    Mali GPU可包含如下组件:

    • 顶点处理器(Vertex processor)
    • 像素处理器(Fragment processors)
    • 内存管理单元Memory Management Units (MMUs)
    • 电源管理单元Power Management Unit (PMU)
    • L2缓存(L2 cache)

    


    

4.2 Midgard架构(Mali-T6xx/支持1.1/2.0/3.0)

     Mali GPU 包含如下组件:
    • Shader cores:处理图形管道的顶点处理、像素处理、光栅化等阶段,并最后产生在屏幕上显示的Framebuffer结果。
    • Memory Management Units.
    • L2 cache.
    • Hierarchical tiler.



5. OpenGL ES图形管理


6. 应用程序与Shader程序间的通信




猜你喜欢

转载自blog.csdn.net/jscese/article/details/51280581