一种图形处理器并行着色任务调度单元系统的制作方法

文档序号:17488744发布日期:2019-04-23 20:13阅读:189来源:国知局
一种图形处理器并行着色任务调度单元系统的制作方法

本发明涉及计算机硬件技术领域,尤其涉及一种图形处理器并行着色任务调度方法。



背景技术:

随着图形化应用的不断增加,早期单靠cpu进行图形绘制的解决方案已经难以满足成绩和技术增长的图形处理需求,图形处理器(graphicprocessingunit,gpu)应运而生。从1999年nvidia发布第一款gpu产品至今,gpu技术的发展主要经历了固定功能流水线阶段、分离染色器架构阶段、统一染色器架构阶段,其图形处理能力不断提升,应用领域也从最初的图形绘制逐步扩展到通用计算领域。gpu流水线高速、并行的特征和灵活的可编程能力,为图形处理和通用并行计算提供了良好的运行平台。

目前,我国尚无基于统一着色架构的gpu成熟产品出现,各应用领域显示控制系统中大量采用国外进口的商用gpu芯片。尤其是在特定应用领域中,国外进口商用gpu芯片存在温度和环境适应性差、无法保证电路本身或配套软件没有“后门”、包含大量特定应用领域不需要的冗余功能单元,功耗指标无法满足要求。此外,商用gpu芯片更新换代快,随时面临停产、断档,在安全性、可靠性、保障性等方面的存在重大隐患。近来,国外对我国多个领域的关键技术和产品实行技术“封锁”和产品“垄断”,难以获得gpu芯片的底层技术资料,如寄存器资料、详细内部微架构、核心软件源码等,导致gpu功能、性能无法充分发挥,且移植性较差;上述问题严重制约了我国显示系统的独立研制和自主发展。

并行流水线架构3d引擎是提升和增强gpu图形处理能力的关键技术,尤其是突破3d引擎并行着色任务调度关键技术,研制高性能图形处理器芯片迫在眉睫。



技术实现要素:

本发明的目的:

本发明公开了一种图形处理器并行着色任务调度单元系统,能够提高统一着色处理阵列的硬件资源利用率,从而提升顶点处理吞吐率和像素生成能力。

本发明的技术解决方案是:

一种图形处理器并行着色任务调度单元系统,包括依次连接的任务调度单元jsu10和输出控制单元ocu20;

所述任务调度单元jsu10包含顶点着色任务调度单元jsu-v101和像素着色任务调度单元jsu-p102;

所述顶点着色任务调度单元jsu-v101包含依次连接的顶点warp属性命令轮询输入单元100,n个顶点着色输入组装单元vsd110;n个顶点着色输入组装单元vsd110并行实施n个顶点warp输入数据的组装,将vsd110输出的顶点warp任务信息转发到固定关联的ssc403和固定关联的voc211;顶点着色任务调度单元jsu-v101能够并行地将n个顶点warp任务信息和输入数据调度到n个固定关联的统一着色处理阵列ssc403的任务现场;

所述像素着色任务调度单元jsu-p102包含n个像素着色输入组装单元psd112;n个像素着色输入组装单元psd112独立并行将n个像素warp任务信息和输入数据调度到n个统一着色处理阵列ssc403的任务现场,并行实施n个像素warp的任务信息输出;像素着色任务调度单元jsu-p102并行将n个psd112输出的像素warp任务信息转发到n个固定关联的ssc403和n个固定关联的poc212;

所述输出控制单元ocu20包含顶点着色任务输出单元ocu-v201和像素着色任务输出单元ocu-p202;

所述顶点着色任务输出单元ocu-v201包含依次连接的n个顶点着色输出控制单元voc211和顶点warp轮询输出单元200;n个顶点着色输出控制单元voc211并行独立的实施n个顶点warp输出数据的组装和搬移,并行实施n个顶点warp的任务提交;

所述像素着色任务输出单元ocu-p202包含n个像素着色输出控制单元poc212;n个像素着色输出控制单元poc212并行独立的实施n个像素warp输出数据的组装和搬移,并行实施n个像素warp的任务提交。

所述顶点warp属性命令轮询输入单元100按照轮询算法从n个顶点着色输入组装单元vsd110中选择1个顶点着色输入组装单元vsd110实施顶点warp的组装,将图形绘制单元gdu40输入的顶点属性数据转发到轮询算法所选择的1个顶点着色输入组装单元vsd110。

所述顶点着色输入组装单元vsd110从固定关联的统一着色处理阵列ssc403中预约1个空闲的顶点warp任务现场,持续接收和缓冲顶点warp属性命令轮询输入单元100输入的顶点属性数据,将m个顶点的全部顶点属性数据组装成1个顶点warp的输入数据转发给固定关联的统一着色处理阵列ssc403的任务现场,同时将顶点warp的任务信息转发给固定关联的顶点着色输出控制单元voc211顶点着色任务fifo和固定关联的统一着色处理阵列ssc403的任务现场。

所述像素着色输入组装单元psd112从固定关联的统一着色处理阵列ssc403中预约1个空闲的像素warp的任务现场,接收固定关联的图元光栅化单元rst406输入的像素属性数据,将m个像素的全部属性数据组装为1个像素warp的输入数据转发给固定关联的统一着色处理阵列ssc403的任务现场,同时将像素warp的任务信息转发给固定关联的像素着色输出控制单元poc212的像素着色任务fifo和固定关联的统一着色处理阵列ssc403的任务现场。

所述顶点着色输出控制单元voc211从固定关联的vsd110获取顶点着色的任务信息,将顶点着色任务fifo队首处于完成状态的顶点warp所在的任务现场的任务信息提交给固定关联的顶点着色输入组装单元vsd110,以便释放固定关联的ssc403中顶点warp的任务现场;将固定关联的统一着色处理阵列ssc403中完成顶点着色任务的顶点输出数据搬移到固定关联的顶点着色输出控制器单元voc211的数据缓冲区。

所述顶点warp轮询输出单元200按照轮询算法从n个顶点着色输出控制单元voc211中选择出1个顶点着色输出控制单元voc211,按照图元命令的数据格式并行地组装顶点着色输出控制单元voc211顶点任务fifo队首顶点warp的k个顶点输出数据,并将k个顶点数据转发到统一图元组装单元。

所述像素着色输出控制单元poc212从固定关联的像素着色输入组装单元psd112获取像素着色任务信息,将像素着色任务fifo队首处于完成状态的像素warp任务信息提交给固定关联的像素着色输入组装单元psd112,以便释放固定关联的ssc403中像素warp的任务现场;将固定关联的统一着色处理阵列ssc403任务现场处于完成状态的像素warp的输出数据搬移到固定关联的像素着色输出控制器单元poc212的数据缓冲区,对像素warp的数据执行数据格式转换之后转发给固定关联的渲染输出单元rou404。

本发明的技术效果是:

1.采用并行调度方法,能够提高统一着色处理阵列的硬件资源利用率,从而提升顶点处理吞吐率和像素生成能力。

附图说明

图1是本发明一种图形处理器并行着色任务调度单元系统示意图。

具体实施方式

下面结合附图和具体实施例,对本发明的技术方案进行清楚、完整地表述。显然,所表述的实施例仅是本发明一部分实施例,而不是全部的实施例,基于本发明中的实施例,本领域技术人员在没有做出创造性劳动前提所获得的所有其它实施例,都属于本发明的保护范围。

如图1所示,

一种图形处理器并行着色任务调度单元系统,包括依次连接的任务调度单元jsu10和输出控制单元ocu20;

所述任务调度单元jsu10包含顶点着色任务调度单元jsu-v101和像素着色任务调度单元jsu-p102;

所述顶点着色任务调度单元jsu-v101包含依次连接的顶点warp属性命令轮询输入单元100,n个顶点着色输入组装单元vsd110;n个顶点着色输入组装单元vsd110并行实施n个顶点warp输入数据的组装,将vsd110输出的顶点warp任务信息转发到固定关联的ssc403和固定关联的voc211;顶点着色任务调度单元jsu-v101能够并行地将n个顶点warp任务信息和输入数据调度到n个固定关联的统一着色处理阵列ssc403的任务现场;

所述像素着色任务调度单元jsu-p102包含n个像素着色输入组装单元psd112;n个像素着色输入组装单元psd112独立并行将n个像素warp任务信息和输入数据调度到n个统一着色处理阵列ssc403的任务现场,并行实施n个像素warp的任务信息输出;像素着色任务调度单元jsu-p102并行将n个psd112输出的像素warp任务信息转发到n个固定关联的ssc403和n个固定关联的poc212;

所述输出控制单元ocu20包含顶点着色任务输出单元ocu-v201和像素着色任务输出单元ocu-p202;

所述顶点着色任务输出单元ocu-v201包含依次连接的n个顶点着色输出控制单元voc211和顶点warp轮询输出单元200;n个顶点着色输出控制单元voc211并行独立的实施n个顶点warp输出数据的组装和搬移,并行实施n个顶点warp的任务提交;

所述像素着色任务输出单元ocu-p202包含n个像素着色输出控制单元poc212;n个像素着色输出控制单元poc212并行独立的实施n个像素warp输出数据的组装和搬移,并行实施n个像素warp的任务提交。

所述顶点warp属性命令轮询输入单元100按照轮询算法从n个顶点着色输入组装单元vsd110中选择1个顶点着色输入组装单元vsd110实施顶点warp的组装,将图形绘制单元gdu40输入的顶点属性数据转发到轮询算法所选择的1个顶点着色输入组装单元vsd110。

所述顶点着色输入组装单元vsd110从固定关联的统一着色处理阵列ssc403中预约1个空闲的顶点warp任务现场,持续接收和缓冲顶点warp属性命令轮询输入单元100输入的顶点属性数据,将m个顶点的全部顶点属性数据组装成1个顶点warp的输入数据转发给固定关联的统一着色处理阵列ssc403的任务现场,同时将顶点warp的任务信息转发给固定关联的顶点着色输出控制单元voc211顶点着色任务fifo和固定关联的统一着色处理阵列ssc403的任务现场。

所述像素着色输入组装单元psd112从固定关联的统一着色处理阵列ssc403中预约1个空闲的像素warp的任务现场,接收固定关联的图元光栅化单元rst406输入的像素属性数据,将m个像素的全部属性数据组装为1个像素warp的输入数据转发给固定关联的统一着色处理阵列ssc403的任务现场,同时将像素warp的任务信息转发给固定关联的像素着色输出控制单元poc212的像素着色任务fifo和固定关联的统一着色处理阵列ssc403的任务现场。

所述顶点着色输出控制单元voc211从固定关联的vsd110获取顶点着色的任务信息,将顶点着色任务fifo队首处于完成状态的顶点warp所在的任务现场的任务信息提交给固定关联的顶点着色输入组装单元vsd110,以便释放固定关联的ssc403中顶点warp的任务现场;将固定关联的统一着色处理阵列ssc403中完成顶点着色任务的顶点输出数据搬移到固定关联的顶点着色输出控制器单元voc211的数据缓冲区。

所述顶点warp轮询输出单元200按照轮询算法从n个顶点着色输出控制单元voc211中选择出1个顶点着色输出控制单元voc211,按照图元命令的数据格式并行地组装顶点着色输出控制单元voc211顶点任务fifo队首顶点warp的k个顶点输出数据,并将k个顶点数据转发到统一图元组装单元。

所述像素着色输出控制单元poc212从固定关联的像素着色输入组装单元psd112获取像素着色任务信息,将像素着色任务fifo队首处于完成状态的像素warp任务信息提交给固定关联的像素着色输入组装单元psd112,以便释放固定关联的ssc403中像素warp的任务现场;将固定关联的统一着色处理阵列ssc403任务现场处于完成状态的像素warp的输出数据搬移到固定关联的像素着色输出控制器单元poc212的数据缓冲区,对像素warp的数据执行数据格式转换之后转发给固定关联的渲染输出单元rou404。

假设图形处理器3d引擎并行着色任务调度单元的顶点着色任务调度单元jsu-v101的顶点warp属性命令轮询输入单元100首先按照轮询规则从n个vsd110中选择出第i个vsd110作为输入对象。顶点warp属性命令轮询输入单元100将图形绘制单元gdu40输入的单个顶点属性例如glcolor,glnormal按照输入顺序转发给第i个vsd110。第i个vsd(110)从固定关联的统一着色处理阵列ssc403中选择1个空闲的顶点warp任务现场作为顶点warp的任务现场,第i个vsd110收集够m个顶点的全部属性数据,则启动vertexwarp的组装,第i个vsd110将收集的m个顶点的全部属性数据逐个搬移到固定关联的第i个ssc403的任务现场,全部属性搬移完成后,将顶点warp的任务信息转发给固定关联的第i个voc211的顶点任务fifo。与此同时,顶点warp属性命令轮询输入单元100需要选择下一个vsd110作为顶点属性的输出对象。假设按照轮询规则从n个vsd110中选择第j个vsd110,之后顶点warp属性命令轮询输入单元100将图形绘制单元gdu40输入的单个顶点属性例如glcolor,glnormal按照输入顺序转发给第j个vsd110,依次类推,通过功能级流水操作和并行工作的n个vsd110实现n个顶点warp的并行组装。

像素着色任务调度单元jsu-v101包含n个像素着色组装单元psd112。n个像素着色组装单元psd112并行完成n个像素warp输入数据的组装和转发功能。首先,第i个psd112从固定关联的第i个统一着色处理阵列ssc403中选择1个空闲的像素warp任务现场作为像素warp的任务现场,然后第i个psd112将第i个geu输入的像素属性(texcoord,color)数据逐个转发到第i个ssc403的任务现场。像素warp的全部属性搬移完成后,第i个psd112将像素warp的任务信息转发给第i个poc212的像素任务fifo。

顶点输出控制单元ocu-v201包含n个顶点着色输出控制单元voc211和1个顶点warp轮询输出单元200。n个顶点着色输出控制单元voc211并行完成n个顶点warp输出数据的搬移功能。具体的,第i个voc211将处于顶点任务fifo队头并且处于完成状态的顶点warp任务的输出属性(texcoord,color)数据从固定关联的第i个ssc403任务现场逐个转发到第i个voc211的数据缓冲器。顶点warp轮询输出单元200轮询的输出n个voc211的顶点warp数据。假设顶点warp轮询输出单元200轮询的对象是第i个voc211,仅当第i个voc211处于顶点任务fifo队头的顶点warp处于完成状态,并且固定关联的第i个ssc403输出数据已经全部被搬移到顶点输出缓冲区,则顶点warp轮询输出单元200从第i个voc211每次并行搬移k个顶点属性数据到统一图元装配单元405。

像素输出控制单元ocu-p202包含n个像素着色输出控制单元poc212。n个像素着色输出控制单元poc212并行完成n个像素warp输出数据的组装和转发功能。具体的,第i个poc212将处于像素任务fifo队头并且处于完成状态的像素warp任务像素输出属性(fragcoord,color)数据从固定关联的第i个ssc403逐个转发到固定关联的第i个poc212的数据缓冲器。当像素warp的全部属性搬移完成后,将像素数据逐个转发给固定关联的第i个rou404。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1