一种GPU统一染色处理阵列的调试结构制造技术

技术编号:15438309 阅读:118 留言:0更新日期:2017-05-26 04:15
一种GPU统一染色处理阵列的调试结构,包含GPU与主机之间的总线接口单元、染色任务调度单元、多个统一染色阵列中的控制和状态寄存器、多个染色器簇程序入口寄存器,以及对统一染色阵列内部局部存储器进行访问的窗口访问控制逻辑。基于上述功能单元,本发明专利技术可以连续向统一染色阵列中注入不超过最大任务数量的任意多个染色任务;每一种染色任务的类型可以任意指定;不同种类染色任务的处理方式可以任意指定;主机可以获取所有染色任务的处理结果。

Debugging structure of GPU unified dyeing processing array

A unified GPU staining debugging processing array structure, bus interface unit, between the GPU and the host was the task scheduling unit, a plurality of uniform dyeing control and status registers in the array and a plurality of stainers cluster program entrance register contains, and access to a unified internal local memory array stained window access control logic. Based on the above functional unit, the invention can be continuously injected to the unified array staining does not exceed any maximum number of tasks a plurality of dyeing tasks; each type of dyeing tasks can be arbitrarily designated; handling different kinds of dyeing tasks can be arbitrarily designated; processing results can be obtained for all host dyeing tasks.

【技术实现步骤摘要】
一种GPU统一染色处理阵列的调试结构
本专利技术涉及计算机硬件
,尤其涉及GPU统一染色处理阵列的调试结构。
技术介绍
随着图形化应用的不断增加,早期单靠CPU进行图形绘制的解决方案已经难以满足成绩和技术增长的图形处理需求,图形处理器(GraphicProcessingUnit,GPU)应运而生。从1999年Nvidia发布第一款GPU产品至今,GPU技术的发展主要经历了固定功能流水线阶段、分离染色器架构阶段、统一染色器架构阶段,其图形处理能力不断提升,应用领域也从最初的图形绘制逐步扩展到通用计算领域。GPU流水线高速、并行的特征和灵活的可编程能力,为图形处理和通用并行计算提供了良好的运行平台。目前,我国尚无基于统一染色架构的GPU,各领域显示控制系统中大量采用国外进口的商用GPU芯片。尤其是在军用领域中,国外进口商用GPU芯片存在温度和环境适应性差、无法保证电路本身或配套软件没有“后门”、包含大量军用领域不需要的冗余功能单元,功耗指标无法满足要求、商用GPU芯片更新换代快,随时面临停产、断档,难以满足武器装备持续保障等缺陷,在安全性、可靠性、保障性等方面的存在重大隐患。而且,出于政治、军事、经济等原因,国外对我国实行技术“封锁”和产品“垄断”,难以获得GPU芯片的底层技术资料,如寄存器资料、详细内部微架构、核心软件源码等,导致GPU功能、性能无法充分发挥,且移植性较差;上述问题严重制约了我国显示系统的独立研制和自主发展。尤其是GPU统一染色阵列调试机制,是GPU图形处理流水线微架构的核心设计与验证技术,突破GPU统一染色阵列调试关键技术,研制高性能图形处理器芯片迫在眉睫。
技术实现思路
本专利技术公开了一种GPU统一染色处理阵列的调试结构,能够实现在设计验证和使用过程中,主机对GPU统一染色阵列中所有染色任务属性数据的简便、高效访问。本专利技术的技术解决方案是:一种GPU统一染色处理阵列的调试结构,包括:包含GPU与主机之间的总线接口单元(1)(PCIeEP)、染色任务调度单元(2)、多个统一染色阵列中的控制和状态寄存器(3)(CSR,ControlandStatusRegister)、多个染色器簇程序入口寄存器(4)(SPE,ShaderProgramEntry),以及对统一染色阵列内部局部存储器进行访问的窗口访问控制逻辑(5);主机通过总线接口单元(1)配置染色任务调度单元(2),确定染色任务的调度模式,即每个染色任务中多个独立顶点和像素的MASK标识和染色任务在SSC中的位置信息;主机通过总线接口单元(1)配置控制和状态寄存器(3),确定统一染色阵列中多个SSC的工作模式;主机通过总线接口单元(1)配置染色器簇程序入口寄存器(4),确定统一染色阵列中多个SSC执行染色程序时的入口地址;主机通过总线接口单元(1)配置窗口访问控制逻辑(5),确定窗口控制逻辑的工作模式;主机通过总线接口单元(1)根据染色任务调度单元(2)中的调度模式信息,通过访问窗口访问控制逻辑(5)中的地址窗口寄存器和数据窗口寄存器将要调试的染色任务数据送入统一染色阵列中不同的SSC中,调试准备工作结束;统一染色阵列根据控制和状态寄存器(3)和染色器簇程序入口寄存器(4)并行执行染色程序,并将执行结果写入染色器内核的存储器中;主机通过总线接口单元(1)通过访问窗口访问控制逻辑(5)中的地址窗口寄存器和数据窗口寄存器将调试的染色任务的执行结果从染色器内核的存储器中读回主机,调试工作结束。所述GPU与主机之间的总线接口单元(1)能够对染色任务调度单元(2)、窗口访问控制逻辑(5),以及多个染色器簇程序入口寄存器(4)进行配置访问.所述染色任务调度单元(2)进行顶点和像素染色任务的调度,至少包括对顶点和像素染色任务属性数据的传输,以及对染色任务类型、任务掩码和数据准备好标识的设置。所述统一染色阵列中的控制和状态寄存器(3)包含一组寄存器,用来存储统一染色阵列中某个染色器簇的控制和状态信息,至少包括在当前染色器簇上运行的所有染色任务的类型、所有染色任务的掩码、数据准备好标识,以及染色任务执行完成标志。所述染色器簇程序入口寄存器(4)用来存储统一染色阵列中某个染色器簇上,用来进行顶点和像素染色任务处理的顶点染色程序和像素染色程序在显示存储器中的入口地址;染色器簇程序入口寄存器(4)可以根据用户指定的顶点染色程序和像素染色程序在显示存储器中的实际起始地址随意指定。所述窗口访问控制逻辑(5)包括多个专用的窗口寄存器;通过多个专用的窗口寄存器可以实现对统一染色阵列所有染色器簇中用来存储染色任务属性数据的局部存储器(LocalSRAM)进行访问;所述窗口访问控制逻辑中的多个专用窗口寄存器至少包括地址窗口寄存器、数据窗口寄存器,以及窗口访问模式寄存器;其中,地址窗口寄存器用来存储需要访问的某个染色器簇中局部存储器的地址,以及本次访问的读写控制信号;数据窗口寄存器用来存储要写入某个染色器簇中局部存储器的数据,或者从某个染色器簇中局部存储器读出的数据,根据不同的图形状态参数访问数据通路宽度,包含一个或多个32b寄存器;窗口访问模式寄存器中的标志位用来在正常图形处理模式和调试模式间进行选择。主机可以对窗口访问控制逻辑(5)中的窗口访问模式寄存器进行配置,使窗口工作于正常图形处理模式或者调试模式。统一染色阵列中所有染色器簇中的局部存储器统一编址,不同染色任务的属性数据位于不同的局部存储器的不同地址段中。总线接口单元的寄存器访问通路连接到染色任务调度单元、窗口访问控制逻辑,以及多个染色器簇程序入口寄存器中;染色任务调度单元的染色任务信息设置通路连接到统一染色阵列中的多个控制和状态寄存器单元(CSR)中;窗口寄存器中的地址窗口寄存器、数据窗口寄存器连接到所有统一染色阵列中所有染色器簇中。在调试模式下,只有主机可以通过对多个窗口寄存器对统一染色阵列所有染色器簇中所有局部存储器进行访问,染色任务类型、状态等信息仍由染色任务调度单元负责设置;在正常图形处理模式下,染色任务调度单元可以对统一染色阵列所有染色器簇中所有局部存储器进行访问,并负责对染色任务类型、状态等信息进行设置。本专利技术的技术效果是:1、典型的GPU统一染色阵列中的染色任务的属性数据属于GPU内部状态,主机端无法获得。因此,在设计过程中如何在FPGA平台上验证大量染色任务并行执行时统一染色阵列计算结果的正确性是极为困难的工作。本专利技术中所述窗口访问机制提供了一种手段,可以通过窗口控制逻辑内部有限的几个专用寄存器,就能实现主机对数量众多的统一染色阵列中染色任务属性数据进行访问的目的,降低了FPGA验证过程难度。2、典型的GPU统一染色阵列中包含2000000个以上的32b寄存器用来存储染色任务的属性数据,直接将如此数量众多的染色任务属性数据暴露给主机处理器会占用大量主机总线地址空间,而采用窗口访问机制可以将主机访问染色任务属性数据时需要占用的总线地址空间降低到不超过10个32b字,大幅降低主机需要访问的存储空间范围,为总线上其它设备留出了更大空间。附图说明图1是本专利技术基于窗口的GPU统一染色阵列调试结构框图。具体实施方式下面结合附图和具体实施例,对本专利技术的技术方案进行清楚、完整地表述。显然,所表述的实施例本文档来自技高网
...
一种GPU统一染色处理阵列的调试结构

【技术保护点】
一种GPU统一染色处理阵列的调试结构,其特征在于,包括:包含GPU与主机之间的总线接口单元(1)(PCIe EP)、染色任务调度单元(2)、多个统一染色阵列中的控制和状态寄存器(3)(CSR,Control and Status Register)、多个染色器簇程序入口寄存器(4)(SPE,Shader Program Entry),以及对统一染色阵列内部局部存储器进行访问的窗口访问控制逻辑(5);主机通过总线接口单元(1)配置染色任务调度单元(2),确定染色任务的调度模式,即每个染色任务中多个独立顶点和像素的MASK标识和染色任务在SSC中的位置信息;主机通过总线接口单元(1)配置控制和状态寄存器(3),确定统一染色阵列中多个SSC的工作模式;主机通过总线接口单元(1)配置染色器簇程序入口寄存器(4),确定统一染色阵列中多个SSC执行染色程序时的入口地址;主机通过总线接口单元(1)配置窗口访问控制逻辑(5),确定窗口控制逻辑的工作模式;主机通过总线接口单元(1)根据染色任务调度单元(2)中的调度模式信息,通过访问窗口访问控制逻辑(5)中的地址窗口寄存器和数据窗口寄存器将要调试的染色任务数据送入统一染色阵列中不同的SSC中,调试准备工作结束;统一染色阵列根据控制和状态寄存器(3)和染色器簇程序入口寄存器(4)并行执行染色程序,并将执行结果写入染色器内核的存储器中;主机通过总线接口单元(1)通过访问窗口访问控制逻辑(5)中的地址窗口寄存器和数据窗口寄存器将调试的染色任务的执行结果从染色器内核的存储器中读回主机,调试工作结束。...

【技术特征摘要】
1.一种GPU统一染色处理阵列的调试结构,其特征在于,包括:包含GPU与主机之间的总线接口单元(1)(PCIeEP)、染色任务调度单元(2)、多个统一染色阵列中的控制和状态寄存器(3)(CSR,ControlandStatusRegister)、多个染色器簇程序入口寄存器(4)(SPE,ShaderProgramEntry),以及对统一染色阵列内部局部存储器进行访问的窗口访问控制逻辑(5);主机通过总线接口单元(1)配置染色任务调度单元(2),确定染色任务的调度模式,即每个染色任务中多个独立顶点和像素的MASK标识和染色任务在SSC中的位置信息;主机通过总线接口单元(1)配置控制和状态寄存器(3),确定统一染色阵列中多个SSC的工作模式;主机通过总线接口单元(1)配置染色器簇程序入口寄存器(4),确定统一染色阵列中多个SSC执行染色程序时的入口地址;主机通过总线接口单元(1)配置窗口访问控制逻辑(5),确定窗口控制逻辑的工作模式;主机通过总线接口单元(1)根据染色任务调度单元(2)中的调度模式信息,通过访问窗口访问控制逻辑(5)中的地址窗口寄存器和数据窗口寄存器将要调试的染色任务数据送入统一染色阵列中不同的SSC中,调试准备工作结束;统一染色阵列根据控制和状态寄存器(3)和染色器簇程序入口寄存器(4)并行执行染色程序,并将执行结果写入染色器内核的存储器中;主机通过总线接口单元(1)通过访问窗口访问控制逻辑(5)中的地址窗口寄存器和数据窗口寄存器将调试的染色任务的执行结果从染色器内核的存储器中读回主机,调试工作结束。2.如权利要求1所述的一种GPU统一染色处理阵列的调试结构,其特征在于,所述GPU与主机之间的总线接口单元(1)能够对染色任务调度单元(2)、窗口访问控制逻辑(5),以及多个染色器簇程序入口寄存器(4)进行配置访问。3.如权利要求1所述的一种GPU统一染色处理阵列的调试结构,其特征在于,所述染色任务调度单元(2)进行顶点和像素染色任务的调度,至少包括对顶点和像素染色任务属性数据的传输,以及对染色任务类型、任务掩码和数据准备好标识的设置。4.如权利要求1所述的一种GPU统一染色处理阵列的调试结构,其特征在于,所述统一染色阵列中的控制和状态寄存器(3)包含一组寄存器,用来存储统一染色阵列中某个染色器簇的控制和状态信息,至少包括在当前染色器簇上运行的所有染色任务的类型、所有染色任务的掩码、数据准备好标识,以及染色任务执行完成标志。5.如权利要求1所述...

【专利技术属性】
技术研发人员:张骏田泽任向隆韩立敏郑新建牛少平
申请(专利权)人:中国航空工业集团公司西安航空计算技术研究所
类型:发明
国别省市:陕西,61

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1