一种基于统一染色技术的gpu体系架构的制作方法_3

文档序号:9865166阅读:来源:国知局
的属性堆栈。对于像素染色任务来说,完成像素的纹理地址的计算以及雾处理操作。
[0033]2.2几何引擎(Geometry Engine Unit,简称GEU):依次包括投影变换单元、图元装配单元、背面消隐单元、平面剪裁单元、三维剪裁单元、齐次坐标与视窗变换单元和光栅化单元。
[0034]2.2.1投影变换模块:投影变换模块根据客户端定义的视景体(正视视景体矩阵或透视视景体矩阵),对空间中的三维物体进行变换,从而实现了空间中三维物体到屏幕上的两种映射方式(即通过透视投影还是正投影)。其次,通过对具体视景体的定义,该模块还实现了对视野中哪些三维物体可见的定义,物体处于视景体外的部分最终将在三维剪裁模块中被视景体的六个面剪裁。
[0035]2.2.2图元装配模块:根据输入的顶点属性信息(包括坐标、颜色、纹理、法向量等信息)和客户端传送的mode参数,按照图元装配算法进行装配,得到点、线和三角形组成的各种图形,并将所装配的图形输出给下级进行裁剪等一系列的处理。
[0036]2.2.3背面消隐处理模块:在三维空间中,一个多边形虽然有两个面,但我们无法看见多边形的背面。如果将无法看见的多边形和可见的多边形同等对待,将降低图形处理效率。本模块可以实现将不可见面剔除的功能。背面消隐模块主要实现的功能包括设置三角形的正面和反面,以及消除设置的面,或者正反面均消除。
[0037]2.2.4平面剪裁模块:所述图形处理器支持使用6个用户自定义剪裁面对空间中的3D图形进行剪裁。平面裁剪模块使用客户指定的剪裁平面对世界空间中的三维物体进行剪裁,不但能够实现用户想要的特殊效果,还能够减少计算量。该模块首先对图元在平面的内外进行判别,如需剪裁还要运用线性插值和SH算法求出图元与裁剪面的交点,从而生成新的三维物体。
[0038]2.2.5三维剪裁模块:三维剪裁模块的功能与平面剪裁类似,差别在与平面剪裁的剪裁面由用户自定义,而三维剪裁的剪裁面就是投影变换单元所定义视景体的6个面。三维裁剪模块将位于视景体之外的所有图元进行裁剪。如果裁剪没有产生新的顶点,就把输入顶点的全部信息输出;如果剪裁产生新的顶点,那么就用CS算法或SH算法计算出新顶点的位置,再经过插值算法求出新点的属性信息,最终将顶点重新装配后的信息传给下一级。
[0039]2.2.6齐次坐标变换和视窗变换模块:本模块将视景体内的物体显示在二维的视口中。根据客户端定义的视口矩阵将三类点(位置性光源的坐标、光栅位置坐标、图元顶点坐标)进行齐次坐标变换后,再将所得的坐标与视窗变换矩阵相乘,将其窗口中的图形信息送到视口中,完成视窗变换。
[0040]2.2.7光栅化模块:本模块主要根据直线和多边形点画模式、直线宽度、点的大小、着色模型以及用于支持抗锯齿处理的覆盖率计算,把顶点连接起来形成直线或者计算填充多边形的内部像素,从而完成三维图形的光栅化。
[0041 ] 2.3片段处理阵列单元(Raster Operat1n Unit,简称ROU):片段处理是片段在写入帧缓存之前所要进行的最后的操作,用来选择要写入帧缓存中的片段,以及根据条件改变帧缓存中的值。这些操作主要包括片段测试、混合、逻辑操作、累积缓冲区以及帧缓存清除和屏蔽等。另外,段处理模块还实现了空间中三维图形的颜色和深度值缓存。
[0042]2.4状态参数与图形处理管理模块(State Parameter and Graphic ProcessingManagement Unit,简称SGU): S⑶单元是整个3D引擎的顶层控制模块,负责维护整个图形函数流的执行,并保证其顺序性。SGU单元是图形函数接口与图形功能的分界线,将众多复杂OpenGL函数通过一套调度和控制逻辑,抽象为对底层图形处理资源接口和数据的统一访问。有利于明确GPU内部硬件的功能划分,提升图形处理资源效率,减少冗余电路,降低设计复杂度。SGU单元由三个功能模块构成,分别是:图形绘制命令处理单元(GDU)、图形功能管理单元(GFU)和状态参数管理单元(SPU)。来自主机的OpenGL图形命令首先经过命令预译码单元,将图形命令分为两种类型:图形绘制类命令和图形处理类命令。图形绘制类命令送入顶点属性命令处理单元进行处理,以便获得高性能;而图形处理类和状态参数配置类命令送入命令处理器,以软硬件协同的方式实现状态参数的设置和对图形功能的预处理。
[0043]2.5任务调度单元(Job Schedule Unit,简称JSU): JSU单元独立并行的对顶点和像素任务进行动态调度,并将顶点和像素任务数据从GDU单元和光栅化单元映射和传输到USA内部选定的执行资源上。
[0044]2.6图像处理子集(Image Processing Unit,简称IPU):图像处理子集主要完成图像数据的打包/解包、像素传输、像素映射、像素缩放,以及颜色查找表、卷积、缩放偏移、颜色矩阵、柱状图和最小最大值功能等操作。
[0045]2.7纹理贴图单元(Texture Mapping Unit,简称TMU):TMU单元是实现纹理映射功能的硬件加速单元,包含由N个并行的纹理贴图单元组成的纹理贴图单元阵列。每个纹理贴图单元是一个功能级的流水线,根据来自USA单元的纹理访问地址,计算出显示存储器中的对应纹素地址,并将该纹素地址对应的纹素数据从显示存储器取出并返回给USA单元。
[0046]2.8染色器输出控制单元(Shader Export Unit,简称SEU): SEU单元分别检测并记录顶点染色任务和像素染色任务进入USA的顺序,并按照该顺序将顶点染色任务的执行结果数据送入GEU单元,将像素染色任务的执行结果数据送入到ROU单元。
[0047]3存储管理模块,该模块由以下子模块构成:
[0048]3.12路独立的访存仲裁与存储保护单元(MMU):其中一路负责图形绘制过程和图形功能处理过程中需要存取的数据和图像,以及从像素Cache写入的图形数据的对帧缓冲区访问的管理;另外一路负责完成数字视频分量输入模块、显示控制模块对帧缓存访问的管理。实现图形处理和显示控制对显示存储器访问的分离。
[0049]3.22路独立的存储器控制器模块:根据2路存储管理单元的存储器访问的AXI仲裁结果,2路独立的存储器控制器分别接收访存请求,并按照配置寄存器中所对应的工作模式访问片外显示存储器。
[0050]4、显示控制模块
[0051]4.1图形数据控制单元:实现从显示存储器中读图像数据,并根据寄存器配置将图像数据分别送入两路独立的显示控制单元中的功能;
[0052]4.2显示控制单元:对图像数据进行颜色索引、格式转换、缩放、抖动、叠加等处理,最后形成显示需要的数字RGB888格式,并通过显示输出单元输出。同时,该模块还实现硬件光标的功能;
[0053]4.3数字视频分量输入接口:接收外部视频源数据,并将接收的视频数据放入显示存储器中。
[0054]5、时钟复位控制模块
[0055]时钟复位控制模块接收来自片外晶振的时钟信号,并通过片内集成的PLL进行倍频或者分配,输出片内不同功能模块正常工作需要的时钟信号。另外,还能够接收来自硬件或者软件的复位信号,复位片内部分硬件逻辑或者整个芯片。
【主权项】
1.一种基于统一染色技术的GPU体系架构,其特征在于:该架构包括基于PCIe的主机接口模块、基于统一染色架构的3D引擎模块、基于AXI的存储控制与管理模块及两路独立显示控制模块,所述主机接口模块和3D引擎模块连接,所述主机接口模块、3D引擎模块、显示控制模块均和存储控制与管理模块连接。2.根据权利要求1所述的基于统一染色技术的GHJ体系架构,其特征在于:所述主机接口模块与主机进行OpenGL图形命令和数据传输,其包括PCIe总线接口,命令处理器、通用输入输出模块、两路I2C总线控制器以及外部ROM接口 ;所述PCIe总线接口后端逻辑包括DMA控制器,该PCIe总线接口用于接收PCIe主设备发送的OpenGL图形命令和数据,同时
当前第3页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1