用纹理单元中的反馈来进行多步纹理处理制造技术

技术编号:19076145 阅读:39 留言:0更新日期:2018-09-29 18:00
本发明专利技术描述用于使用纹理单元来执行着色器处理器的操作的技术。反复地执行着色器处理器的一些操作,直到满足条件为止,且在每一执行重复中,所述着色器处理器存取所述纹理单元。本发明专利技术描述供所述纹理单元执行此类操作直到满足所述条件为止的技术。

【技术实现步骤摘要】
【国外来华专利技术】用纹理单元中的反馈来进行多步纹理处理
本公开涉及图形处理系统,且更确切地说,涉及利用纹理单元的图形处理系统。
技术介绍
计算装置常常利用图形处理单元(GPU)来加速图形数据的渲染以供显示。此类计算装置可包含(例如)计算机工作站、例如所谓的智能电话等移动电话、嵌入式系统、个人计算机、平板计算机和视频游戏控制台。GPU通常执行图形处理管线,所述图形处理管线包含一起操作以执行图形处理命令的多个处理级。主机中央处理单元(CPU)可通过向GPU发出一或多个图形处理命令来控制GPU的操作。
技术实现思路
本公开是针对使用纹理单元来实施图形处理单元(GPU)的着色器处理器的操作,以限制对所述纹理单元的调用。着色器处理器将执行的包含对所述纹理单元的多个调用的操作改为由所述纹理单元执行。着色器处理器将执行的这些操作中的每一者可改为由纹理单元内的硬件组件执行。以此方式,GPU利用所述纹理单元的硬件来执行着色器处理器将执行的操作,并限制对所述纹理单元的调用。在一个实例中,本专利技术描述一种处理数据的实例方法,所述方法包括:用纹理单元接收指令,其基于满足所述指令中定义的条件,指令所述纹理单元反复地执行操作;用所述纹理单元,基于满足还是不满足所述指令中定义的条件,而反复地执行所述操作;以及用所述纹理单元并向图形处理单元(GPU)输出因所述操作的反复执行而产生的数据。在一个实例中,本专利技术描述一种用于处理数据的实例装置,所述装置包括:图形处理单元(GPU),其包括着色器处理器;以及纹理单元,其经配置以:从GPU的着色器处理器接收指令,所述指令基于满足所述指令中定义的条件,指令所述纹理单元反复地执行操作;基于满足还是不满足所述指令中定义的条件,反复地执行所述操作;以及向GPU输出因所述操作的反复执行而产生的数据。在一个实例中,本专利技术描述一种用于处理数据的实例装置,所述装置包括:用于接收指令的装置,所述指令基于满足所述指令中定义的条件,指令纹理单元反复地执行操作;用于基于满足还是不满足所述指令中定义的条件,反复地执行所述操作的装置;以及用于向图形处理单元(GPU)输出因所述操作的反复执行而产生的数据的装置。在一个实例中,本专利技术描述一种存储指令的实例非暂时性计算机可读存储媒体,所述指令在被执行时,致使用于处理数据的装置的一或多个处理器:接收指令,所述指令基于满足所述指令中定义的条件,指令纹理单元反复地执行操作;基于满足还是不满足所述指令中定义的条件,反复地执行所述操作;以及向图形处理单元(GPU)输出因所述操作的反复执行而产生的数据。在附图和以下描述中陈述本公开的一或多个实例的细节。本公开的其它特征、目标和优势将从所述描述和图式以及从权利要求书中显而易见。附图说明图1是说明可用以实施本公开的技术的实例计算装置的框图。图2是进一步详细说明图1的计算装置的CPU、GPU和存储器的框图。图3是进一步详细说明图2的纹理单元的实例的框图。图4是说明根据本公开中所描述的一或多个实例技术的处理数据的实例方法的流程图。具体实施方式本公开是针对利用纹理单元来执行操作,其原本将要求图形处理单元(GPU)的着色器处理器向纹理单元发出多个调用来执行所述操作。对于各种图形处理算法,所述着色器处理器输出对所述纹理单元的多个请求,以检索纹理数据、处理纹理数据,且将经处理的纹理数据(例如纹素)输出到所述着色器处理器。各种图形处理算法中反复地致使着色器处理器存取纹理单元的一个共同因素是在着色器处理器上执行的指令的结构。举例来说,所述指令的所述结构大体上包含具有终止条件的循环,用以推进/修改纹理坐标的逻辑,以及用以计算所述指令中定义的操作的结果的逻辑。在本公开中描述的技术中,并非使着色器处理器执行包含对纹理单元的反复调用的这些指令,而是可映射所述指令,以由纹理单元的硬件组件执行。举例来说,所述纹理单元可包含反馈路径,其中纹理单元的输出馈送回到纹理单元的接收所述输入的组件中。有了所述反馈,所述纹理单元可经配置以实施所述循环的重复,而不需要来自例如着色器处理器等另一单元的对纹理单元的反复调用。以此方式,所述着色器处理器可执行一个指令,其致使所述着色器处理器将一组数据(例如着色器处理器将要对其执行操作的数据)输出到所述纹理单元,且所述纹理单元接着使用内部反馈路径,在循环中执行所述指令的重复,且将结果与最终数据(纹素)一次输出到着色器处理器。因此,所述着色器处理器可需要向纹理单元输出一次,而不是以中间数据输出多次,且从纹理单元接收数据一次,而不是使着色器处理器存取纹理单元多次(例如,并非从纹理单元接收中间输出多次,并用多个调用来调用纹理单元)。在一些实例中,GPU和纹理单元可存在于同一集成电路中,或可存在于不同集成电路中。所述纹理单元可经配置以从GPU的着色器处理器接收指令,所述指令基于所述指令中定义的条件(例如终止条件)的出现,指令所述纹理单元反复地执行操作(例如循环指令)。作为响应,所述纹理单元可反复地执行所述操作,直到满足或不满足所述指令中定义的条件为止,且向GPU输出因所述操作的反复执行而产生的数据。图l是说明可用以实施本公开的技术的实例计算装置2的框图。计算装置2可包括个人计算机、桌上型计算机、膝上型计算机、计算机工作站、视频游戏平台或控制台、无线通信装置(例如,移动电话、蜂窝式电话、卫星电话和/或移动电话手持机)、陆线电话、因特网电话、手持式装置(例如,便携式视频游戏装置或个人数字助理(PDA))、个人音乐播放器、视频播放器、显示装置、电视、电视机顶盒、服务器、中间网络装置、主机计算机、或处理和/或显示图形数据的任何其它类型的装置。如图1的实例中所说明,计算装置2包含用户输入接口4、CPU6、存储器控制器8、系统存储器10、图形处理单元(GPU)12、本地存储器14、显示器接口16、显示器18和总线20。用户输入接口4、CPU6、存储器控制器8、GPU12和显示器接口16可使用总线20彼此通信。总线20可为多种总线结构中的任一者,例如第三代总线(例如,超传输(HyperTransport)总线或无限带宽(InfiniBand)总线)、第二代总线(例如,高级图形端口总线、周边组件互连(PCI)高速总线,或高级eXentisible接口(AXI)总线)或另一类型的总线或装置互连件。应注意,图1中所示的不同组件之间的总线和通信接口的特定配置仅是示范性的,且具有相同或不同组件的计算装置和/或其它图形处理系统的其它配置可用于实施本专利技术的技术。CPU6可包括控制计算装置2的操作的通用或专用处理器。用户可将输入提供到计算装置2,以致使CPU6执行一或多个软件应用程序。在CPU6上执行的软件应用程序可包含(例如)操作系统、文字处理器应用程序、电子邮件应用程序、电子数据表应用程序、媒体播放器应用程序、视频游戏应用程序、图形用户接口应用程序或另一程序。用户可经由一或多个输入装置(未图示)(例如,键盘、鼠标、麦克风、触摸垫或经由用户输入接口4耦合到计算装置2的另一输入装置)将输入提供到计算装置2。在CPU6上执行的软件应用程序可包含指令CPU6以致使向显示器18渲染图形数据的一或多个图形渲染指令。在一些实例中,所述软件指令可符合图形应用编程接口(API),例如开放图形库API、开放图本文档来自技高网...

【技术保护点】
1.一种处理数据的方法,所述方法包括:用纹理单元接收指令,所述指令基于满足所述指令中定义的条件而指令所述纹理单元反复地执行操作;用所述纹理单元,基于满足还是不满足所述指令中定义的所述条件而反复地执行所述操作;以及用所述纹理单元且向图形处理单元GPU输出因所述操作的所述反复执行而产生的数据。

【技术特征摘要】
【国外来华专利技术】2016.02.18 US 15/047,4721.一种处理数据的方法,所述方法包括:用纹理单元接收指令,所述指令基于满足所述指令中定义的条件而指令所述纹理单元反复地执行操作;用所述纹理单元,基于满足还是不满足所述指令中定义的所述条件而反复地执行所述操作;以及用所述纹理单元且向图形处理单元GPU输出因所述操作的所述反复执行而产生的数据。2.根据权利要求1所述的方法,其中接收所述指令包括从所述GPU的着色器处理器接收所述指令,且其中输出包括将所述数据输出到所述GPU的所述着色器处理器。3.根据权利要求1所述的方法,其进一步包括:用所述纹理单元,在所述操作的所述反复执行的第一重复期间,读取纹素值;用所述纹理单元,通过将基于所述纹素值的值与所述指令中定义的变量进行比较,来确定满足还是不满足所述条件;用所述纹理单元,基于满足还是不满足所述指令中定义的所述条件的所述确定,确定是否需要所述操作的执行的第二重复,其中反复地执行所述操作包括用所述纹理单元,基于需要所述操作的执行的所述第二重复的所述确定,将所述纹理单元的输出作为反馈信号输出到所述纹理单元的输入,且其中输出数据包括基于不需要所述操作的执行的所述第二重复的所述确定,输出因所述操作的所述反复执行而产生的所述数据。4.根据权利要求1所述的方法,其中反复地执行所述操作包括基于满足还是不满足所述指令中定义的所述条件来反复地执行所述操作,而不接收执行所述操作的任何额外指令。5.根据权利要求1所述的方法,其中所述操作包括着色器程序的操作。6.根据权利要求1所述的方法,其中所述操作包括修改纹理坐标的操作。7.根据权利要求1所述的方法,其中所述操作包括用于视差遮挡映射POM、屏幕空间光线追踪SSRT、景深DoF处理、体渲染或具有动态高度场的水体或地形渲染中的一或多者的操作。8.根据权利要求1所述的方法,其中反复地执行所述操作包括反复地执行所述操作直到满足所述条件为止,或只要满足所述条件就反复地执行所述操作。9.根据权利要求1所述的方法,其中输出因所述操作的所述反复执行而产生的所述数据包括仅在所述操作的所述反复执行的所有重复完成之后,将所述数据输出到着色器处理器。10.一种用于处理数据的装置,所述装置包括:图形处理单元GPU,其包括着色器处理器;以及纹理单元,其经配置以:从所述GPU的所述着色器处理器接收指令,所述指令基于满足所述指令中定义的条件,指令所述纹理单元反复地执行操作;基于满足还是不满足所述指令中定义的所述条件,反复地执行所述操作;以及向所述GPU输出因所述操作的所述反复执行而产生的数据。11.根据权利要求10所述的装置,其中所述纹理单元经配置以将因所述操作的所述反复执行而产生的所述数据输出到所述GPU的所述着色器处理器。12.根据权利要求10所述的装置,其中所述纹理单元包括:输入单元;读取单元,其经配置以在所述操作的所述反复执行的第一重复期间读取纹素值;以及输出单元,其经配置以:通过将基于所述纹素值的值与所述指令中定义的变量进行比较,来确定满足还是不满足所述条件;基于满足还是不满足所述指令中定义的所述条件的所述确定,来确定是否需要所述操作的执行的第二重复,其中为了反复地执行所述操作,所述输出单元经配置以基于需要所述操作的执行的所述第二重复的所述确定,将反馈信号输出到所述纹理单元的所述输入单元,且其中为了输出数据,所述输出单元经配置以基于不需要所述操作的执行的所述第二重复的所述确定,输出因所述操作的所述反复执行而产生的所述数据。13.根据权利要求10所述的装置,其中所述纹理单元经配置以基于满足还是不满足所述指令中定义的所述条件来反复地执行所述操作,而不接收执行所述操作的任何额外指令。14.根据权利要求10所述的装置,其中所述操作包括着色器程序的操作。15.根据权利要求10所述的装置,其中所述操作包括修改纹理坐标的操作。16.根据权利要求10所述的装置,其中所述操作包括用于视差遮挡映射POM、屏...

【专利技术属性】
技术研发人员:尤萨梅·杰伊兰维尼特·戈尔尤拉伊·奥伯特李亮
申请(专利权)人:高通股份有限公司
类型:发明
国别省市:美国,US

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

1