基于渲染模式自适应的图形处理器统一染色阵列旁路结构的利记博彩app

文档序号:12471387阅读:277来源:国知局
本发明涉及计算机硬件
技术领域
,尤其涉及基于渲染模式自适应的图形处理器统一染色阵列旁路结构。
背景技术
:随着图形化应用的不断增加,早期单靠CPU进行图形绘制的解决方案已经难以满足成绩和技术增长的图形处理需求,图形处理器(GraphicProcessingUnit,GPU)应运而生。从1999年Nvidia发布第一款GPU产品至今,GPU技术的发展主要经历了固定功能流水线阶段、分离染色器架构阶段、统一染色器架构阶段,其图形处理能力不断提升,应用领域也从最初的图形绘制逐步扩展到通用计算领域。GPU流水线高速、并行的特征和灵活的可编程能力,为图形处理和通用并行计算提供了良好的运行平台。目前,我国尚无基于统一染色架构的GPU,各领域显示控制系统中大量采用国外进口的商用GPU芯片。尤其是在军用领域中,国外进口商用GPU芯片存在温度和环境适应性差、无法保证电路本身或配套软件没有“后门”、包含大量军用领域不需要的冗余功能单元,功耗指标无法满足要求、商用GPU芯片更新换代快,随时面临停产、断档,难以满足武器装备持续保障等缺陷,在安全性、可靠性、保障性等方面的存在重大隐患。而且,出于政治、军事、经济等原因,国外对我国实行技术“封锁”和产品“垄断”,难以获得GPU芯片的底层技术资料,如寄存器资料、详细内部微架构、核心软件源码等,导致GPU功能、性能无法充分发挥,且移植性较差;上述问题严重制约了我国显示系统的独立研制和自主发展。尤其是高性能低功耗图形处理器设计技术,是GPU图形处理体系结构的核心技术,突破高性能GPU低功耗设计关键技术,研制自主知识产权图形处理器芯片迫在眉睫。技术实现要素:本发明公开了基于渲染模式自适应的图形处理器统一染色阵列旁路结构,能够根据图形绘制场景的行为特征,自适应的选择顶点/像素属性数据的传输通路,在简单图形绘制场景下,将统一染色阵列旁路掉,直接通过顶点/像素旁路数据通路将顶点和像素的属性数据发送到染色任务输出单元,从而大幅降低顶点/像素染色处理延迟和统一染色阵列功耗,提升渲染效率。本发明的技术解决方案是:一种基于渲染模式自适应的图形处理器统一染色阵列旁路结构,包括:染色任务调度单元(1)、顶点染色功能配置寄存器单元(2)、像素染色功能配置寄存器单元(3)、图形绘制简单/复杂模式监测单元(4)、1:2多路选择器(5)、顶点/像素旁路数据通路(6)、统一染色阵列单元(7)和染色任务输出单元(8);所述顶点染色功能配置寄存器单元(2)用来存储由统一染色阵列单元(7)完成处理的所有顶点染色功能时所对应的开/关使能标志位;所述像素染色功能配置寄存器单元(3)用来存储由统一染色阵列单元(7)完成处理的所有像素染色功能时所对应的开/关使能标志位;所述图形绘制简单/复杂模式监测单元(4)负责对当前顶点染色功能配置寄存器单元(2)和像素染色功能配置寄存器单元(3)中的内容进行监测,如果所述顶点染色功能配置寄存器单元(2)中所有开/关使能标志位都是关,输出当前顶点染色的简单模式标志信号分别给染色任务调度单元(1)和1:2多路选择器(5);如果所述顶点染色功能配置寄存器单元(2)中所有开/关使能标志位不都是关,输出当前顶点染色的复杂模式标志信号分别给染色任务调度单元(1)和1:2多路选择器(5);如果所述像素染色功能配置寄存器单元(3)中所有开/关使能标志位都是关,输出当前像素染色的简单模式标志信号分别给染色任务调度单元(1)和1:2多路选择器(5);如果所述像素染色功能配置寄存器单元(3)中所有开/关使能标志位不都是关,输出当前像素染色的复杂模式标志信号分别给染色任务调度单元(1)和1:2多路选择器(5);所述染色任务调度单元(1)负责对顶点和像素染色任务进行调度,根据所述图形绘制简单/复杂模式监测单元(4)输出的当前顶点/像素染色的简单/复杂模式标志信号决定某个顶点或像素染色任务在哪个染色任务现场进行处理,将某个顶点或像素染色任务对应的顶点/像素属性数据发送给1:2多路选择器(5);所述1:2多路选择器(5)在图形绘制简单/复杂模式监测单元(4)输出的顶点/像素染色的简单/复杂模式标志信号的控制下,选择将顶点/像素属性数据发送到旁路数据通路或者统一染色阵列;如果是顶点染色的简单模式标志信号,将顶点属性数据发送到旁路数据通路(6);如果是像素染色的简单模式标志信号,将像素属性数据发送到旁路数据通路(6);如果是顶点染色的复杂模式标志信号,将顶点属性数据发送到统一染色阵列单元(7);如果是像素染色的复杂模式标志信号,将像素属性数据发送到统一染色阵列单元(7);所述顶点/像素旁路数据通路(6)负责在简单图形绘制模式下从染色任务调度单元(1)传输顶点和像素的属性数据到染色任务输出单元(8);所述统一染色阵列单元(7)由多个可以被顶点染色任务和像素染色任务共享的染色任务现场构成,负责在复杂图形绘制模式下并行执行顶点或像素染色程序,对顶点或像素染色任务属性数据进行处理;所述染色任务输出单元(8)负责接收来自顶点/像素旁路数据通路(6)或统一染色阵列单元(7)的处理完成的顶点/像素属性数据,并传递到下级流水线。本发明的技术效果是:1、在已有的GPU设计中,对顶点和像素的渲染处理均需要由固定硬件单元或者可编程统一染色阵列单元完成,目前典型的方式是采用后者,且所有的顶点和像素必须经过统一染色阵列单元处理。统一染色阵列单元是一套定制的处理阵列,以软硬件协同的方式完成顶点和像素的渲染处理。虽然基于统一染色架构的渲染方式使用灵活,资源利用率高,但有些简单图形应用场景无需采用统一染色阵列单元进行渲染。如果所有顶点和像素都要经过统一染色阵列单元进行渲染,必然会增加简单图形绘制场景下,顶点和像素渲染的处理延迟。本发明公开的基于渲染模式自适应的图形处理器统一染色阵列旁路机制,能够根据图形绘制场景的特征,动态识别出顶点渲染和像素渲染的简单/复杂程度,并自适应的选择顶点/像素属性数据的传输通路,在简单图形绘制场景下,将统一染色阵列旁路掉,直接通过顶点/像素旁路数据通路将顶点和像素的属性数据发送到染色任务输出单元,从而大幅降低顶点/像素染色处理延迟和统一染色阵列功耗,提升渲染效率。附图说明图1是本发明基于渲染模式自适应的图形处理器统一染色阵列旁路机制结构图。具体实施方式下面结合附图和具体实施例,对本发明的技术方案进行清楚、完整地表述。显然,所表述的实施例仅是本发明一部分实施例,而不是全部的实施例,基于本发明中的实施例,本领域技术人员在没有做出创造性劳动前提所获得的所有其它实施例,都属于本发明的保护范围。一种基于渲染模式自适应的图形处理器统一染色阵列旁路结构,如图1所示,包括:染色任务调度单元1、顶点染色功能配置寄存器单元2、像素染色功能配置寄存器单元3、图形绘制简单/复杂模式监测单元4、1:2多路选择器5、顶点/像素旁路数据通路6、统一染色阵列单元7和染色任务输出单元8;所述顶点染色功能配置寄存器单元2用来存储由统一染色阵列单元7完成处理的所有顶点染色功能时所对应的开/关使能标志位;所述像素染色功能配置寄存器单元3用来存储由统一染色阵列单元7完成处理的所有像素染色功能时所对应的开/关使能标志位;所述图形绘制简单/复杂模式监测单元4负责对当前顶点染色功能配置寄存器单元2和像素染色功能配置寄存器单元3中的内容进行监测,识别出对于顶点染色和像素染色来说,当前图形绘制处于简单或者复杂模式,如果所述顶点染色功能配置寄存器单元2中所有开/关使能标志位都是关,输出当前顶点染色的简单模式标志信号分别给染色任务调度单元1和1:2多路选择器5;如果所述顶点染色功能配置寄存器单元2中所有开/关使能标志位不都是关,输出当前顶点染色的复杂模式标志信号分别给染色任务调度单元1和1:2多路选择器5;如果所述像素染色功能配置寄存器单元3中所有开/关使能标志位都是关,输出当前像素染色的简单模式标志信号分别给染色任务调度单元1和1:2多路选择器5;如果所述像素染色功能配置寄存器单元3中所有开/关使能标志位不都是关,输出当前像素染色的复杂模式标志信号分别给染色任务调度单元1和1:2多路选择器5;所述染色任务调度单元1负责对顶点和像素染色任务进行调度,根据所述图形绘制简单/复杂模式监测单元4输出的当前顶点/像素染色的简单/复杂模式标志信号决定某个顶点或像素染色任务在哪个染色任务现场进行处理,将某个顶点或像素染色任务对应的顶点/像素属性数据发送给1:2多路选择器5;所述1:2多路选择器5在图形绘制简单/复杂模式监测单元4输出的顶点/像素染色的简单/复杂模式标志信号的控制下,选择将顶点/像素属性数据发送到旁路数据通路或者统一染色阵列;如果是顶点染色的简单模式标志信号,将顶点属性数据发送到旁路数据通路6;如果是像素染色的简单模式标志信号,将像素属性数据发送到旁路数据通路6;如果是顶点染色的复杂模式标志信号,将顶点属性数据发送到统一染色阵列单元7;如果是像素染色的复杂模式标志信号,将像素属性数据发送到统一染色阵列单元7;所述顶点/像素旁路数据通路6负责在简单图形绘制模式下从染色任务调度单元1传输顶点和像素的属性数据到染色任务输出单元8;所述统一染色阵列单元7由多个可以被顶点染色任务和像素染色任务共享的染色任务现场构成,负责在复杂图形绘制模式下并行执行顶点或像素染色程序,对顶点或像素染色任务属性数据进行处理;所述染色任务输出单元8负责接收来自顶点/像素旁路数据通路6或统一染色阵列单元7的处理完成的顶点/像素属性数据,并传递到下级流水线。实施例本发明的核心是增加了图形绘制简单/复杂模式监测单元,能够对当前图形绘制场景下,顶点染色功能和像素染色功能配置寄存器单元中的内容进行监测,进而识别出对于顶点和像素属性数据是否有必要经过统一染色阵列处理。简单绘图场景包括顶点染色的简单场景和像素染色的简单场景;复杂绘图场景包括顶点染色的复杂场景和像素染色的复杂场景。本发明定义了统一染色阵列的顶点染色功能和像素染色功能。所有必须经过统一染色阵列顶点染色功能处理的场景属于顶点染色的复杂场景,其它场景属于顶点染色的复杂场景;所有必须经过统一染色阵列像素染色功能处理的场景属于像素染色的复杂场景,其它场景属于像素染色的复杂场景。统一染色阵列顶点染色功能和像素染色功能的一个实施例定义如表1和表2所示:表1统一染色阵列顶点染色功能定义表2统一染色阵列像素染色功能定义序号软件程序功能1.纹理组合器2.像素级雾处理从表1中所示顶点染色功能,可知统一染色阵列顶点染色功能包括模型视图矩阵变换功能、纹理矩阵变换和纹理坐标自动生成功能(纹理贴图功能)、顶点光照功能,以及顶点雾处理功能。上述顶点染色功能在均可以由图形应用程序接口,如OpenGL,来控制对其的打开或关闭,相关控制寄存器存在于顶点染色功能配置寄存器单元中。如果某一个图形绘制场景中开启了上述顶点染色功能中的任意一个,则当前图形绘制场景属于复杂顶点染色场景,必须经过统一染色阵列的处理。如果某一个图形绘制场景中上述所有顶点染色功能均未开启,则当前图形绘制场景属于简单顶点染色场景。从表2中所示像素染色功能,可知统一染色阵列像素染色功能包括纹理组合器功能,以及像素级雾处理功能。上述像素染色功能在均可以由图形应用程序接口,如OpenGL,来控制对其的打开或关闭,相关控制寄存器存在于像素染色功能配置寄存器单元中。如果某一个图形绘制场景中开启了上述像素染色功能中的任意一个,则当前图形绘制场景属于复杂像素染色场景,必须经过统一染色阵列的处理。如果某一个图形绘制场景中上述所有像素染色功能均未开启,则当前图形绘制场景属于简单像素染色场景。对于某一个图形绘制场景来说,只可能出现如下四种情况:(1)顶点染色场景复杂、像素染色场景复杂;(2)顶点染色场景简单、像素染色场景复杂;(3)顶点染色场景复杂、像素染色场景简单;(4)顶点染色场景简单、像素染色场景简单。上述对统一染色阵列功能,以及顶点染色和像素染色的简单/复杂绘图场景定义只是本发明的一个实施例,不同的定义方式仍属于本发明的保护范围。如图1所示,图形绘制简单/复杂模式监测单元负责对当前顶点染色功能和像素染色功能配置寄存器单元中的染色功能开/关配置寄存器的内容进行监测,识别出对于顶点染色和像素染色来说,当前图形绘制处于简单或者复杂模式,并分别输出当前顶点/像素染色的简单/复杂模式标志信号;染色任务调度单元接收顶点和像素染色任务数据,并根据当前顶点和像素染色场景的简单/复杂模式标志信号,以及统一染色阵列的资源使用情况进行任务调度,决定是否要将染色任务送到统一染色阵列,以及在哪个染色任务现场进行处理。在简单图形绘制模式下,通过1:2多路选择器将顶点/像素属性数据发送到旁路数据通路;在复杂图形绘制模式下,通过1:2多路选择器将顶点/像素属性数据发送到统一染色阵列。顶点/像素旁路数据通路在简单图形绘制模式下从染色任务调度单元传输顶点和像素的属性数据到染色任务输出单元。典型的简单模式顶点和像素属性数据均包括32个32b字,通过典型的128b宽顶点/像素旁路数据通路只需要2个时钟周期就可以传送到染色任务输出单元,而如果通过统一染色阵列的染色功能开关状态判断和数据转发,则至少需要几十至上百个时钟周期,性能相差几十倍。最后应说明的是,以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解;其依然可以对前述各实施例记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1