对图形处理系统中的处理引擎的区片分配技术方案

技术编号:15724260 阅读:47 留言:0更新日期:2017-06-29 09:45
图形处理系统使用被再分成区片的渲染空间来处理基元片段。图形处理系统包括处理引擎,其被配置为将纹理化和/或阴影化应用于基元片段。图形处理系统还包括用于存储基元片段的图形数据的高速缓存系统,该高速缓存系统包括多个高速缓存子系统。高速缓存子系统中的每个高速缓存子系统被耦合到一个或多个处理引擎的相应集合。图形处理系统还包括区片分配单元,其在一个或多个分配模式中操作以将区片分配给处理引擎。(一个或多个)分配模式包括空间分配模式,其中空间相邻区片组根据空间分配方案而被分配给处理引擎,其确保空间相邻区片组中的每组被分配给耦合到相同高速缓存子系统的处理引擎的集合。

【技术实现步骤摘要】
对图形处理系统中的处理引擎的区片分配
技术介绍
图形处理系统通常被配置为(例如从在计算机系统上运行的应用)接收图形数据,并且渲染图形数据以提供渲染输出。例如,向图形处理系统提供的图形数据可以描述待渲染的三维(3D)场景内的几何形状,并且渲染输出可以是场景的经渲染的图像。一些图形处理系统(其可以被称为“基于区片的(tile-based)”图形处理系统)使用被再分成多个区片的渲染空间。“区片”是渲染空间的区域,并且可以具有任何适合的形状,但是通常是矩形(其中术语“矩形”包括正方形)。为了给出一些示例,区片可以覆盖待渲染的图像的16×16像素块或32×32像素块。如本领域中已知的,存在将渲染空间再分成区片的许多益处。例如,将渲染空间再分成区片允许图像以逐区片方式渲染,其中针对区片的图形数据可以在区片的渲染期间被临时存储“在芯片上”,由此降低在系统存储器与实现图形处理系统的图形处理单元(GPU)所在的芯片之间传送的数据量。基于区片的图形处理系统通常在两个阶段中操作:几何处理阶段和栅格化阶段。在几何处理阶段中,针对渲染的图形数据被分析,以针对区片中的每个区片确定哪些图形数据项存在于该区片中。然后,在栅格化阶段中,可以通过处理被确定为存在于该区片内的那些图形数据项来渲染区片(而不需要处理在几何处理阶段中被确定为不存在于特定区片内的图形数据项)。图形数据项可以表示几何形状,其描述场景中的结构的表面并且其被称为“基元(primitive)”。常见基元形状是三角形,但是基元可以是其他2D形状或也可以是线或点。对象可以由一个或多个(例如,数百、数千或数百万个)这样的基元组成。图1示出了可以被用于渲染3D场景的图像的图形处理系统100的一些元件。该图形处理系统100包括图形处理单元(GPU)102和存储器1041和存储器1042的两个部分。存储器1041和存储器1042的两个部分可以是或可以不是相同物理存储器的部分。GPU102包括预处理模块106、区片化单元108和栅格化模块110,其中栅格化模块110包括隐藏表面移除(HSR)单元112和纹理化/阴影化单元114。纹理化/阴影化单元114包括一个或多个处理引擎,其可以被称为“统一阴影化聚类”(USC)。对图形处理系统100进行布置,使得在预处理模块106处接收由应用提供的基元的序列。在几何处理阶段中,预处理模块106执行诸如包括修剪和裁剪的几何处理的功能以移除未落到可见视图中的基元。该预处理模块106还可以将基元投影到屏幕空间中。从预处理模块106输出的基元被传递到区片化单元108,其确定哪些基元存在于图形处理系统100的渲染空间的区片中的每个区片中。区片化单元108通过创建针对区片的显示列表来将基元分配给渲染空间的区片,其中针对区片的显示列表包括存在于区片内的基元的指示。该显示列表和基元从区片化单元108输出并且被存储在存储器1041中。在栅格化阶段中,栅格化块110从存储器1041获取针对区片的显示列表和与该区片有关的基元。HSR单元112执行隐藏表面移除,由此移除隐藏在场景中的基元的片段(fragment)。执行隐藏表面移除的方法在本领域中是已知的。术语“片段”指代采样点处的基元的样本,其将被处理为渲染图像的像素。在一些示例中,可以存在片段到像素的一一映射。在其他示例中,可以存在比像素更多的片段,并且该过采样可以考虑到像素值的较高的质量渲染,例如,通过促进可以应用到用于渲染像素值中的每个像素值的多个片段的反混叠和其他滤波。剩余的片段从HSR单元112被传递到纹理化/阴影化单元114,其对片段执行纹理化和/或阴影化以确定可以传递到存储器1042以用于存储在帧缓冲器中的渲染图像的像素颜色值。纹理化/阴影化单元114可以从存储器1041接收纹理数据以便将纹理化应用到基元片段,如本领域中已知的(例如,通过运行阴影器程序)。纹理化/阴影化单元114可以将进一步的处理应用到基元片段(例如,alpha混合和其他过程),如本领域中已知,以便确定图像的经渲染的像素值。栅格化块110处理区片中的每个区片中的基元并且当全部图像已经被渲染并且被存储在存储器1042中时,经渲染的图像可以从图形处理系统100输出并且以任何适合的方式使用(例如,被显示在显示器上,或被存储在存储器中,或被发送到另一设备等)。纹理化/阴影化单元114可以包括可以并行处理不同的数据的多于一个处理引擎,由此改进由纹理化/阴影化单元114所执行的纹理化和/或阴影化的效率。栅格化块110可以被配置为一次渲染针对单个区片的基元。
技术实现思路
提供该概述以引入以在详细描述中下文进一步描述的简化形式的概念的选择。该概述不旨在标识所要求保护的主题的关键特征或基本特征,其也不旨在被用于限制所要求保护的主题的范围。提供了一种图形处理系统,其被配置为使用被再分成多个区片的渲染空间来处理基元片段,该系统包括:多个处理引擎,其被配置为将纹理化和阴影化中的一者或二者应用到基元片段;高速缓存系统,其被配置为存储图形数据以用于在处理基元片段中使用,该高速缓存系统包括多个高速缓存子系统,其中多个高速缓存子系统中的每个高速缓存子系统被耦合到处理引擎中的一个或多个处理引擎的相应集合;以及区片分配单元,其被配置为在一个或多个分配模式中操作以将区片分配给处理引擎,其中一个或多个分配模式包括空间分配模式,在空间分配模式中,空间相邻区片组根据空间分配方案而被分配给处理引擎,空间分配方案确保空间相邻区片组中的每组被分配给耦合到相同高速缓存子系统的处理引擎的集合。提供了一种使用被再分成多个区片的渲染空间来在图形处理系统中处理基元片段的方法,该方法包括:在多个处理引擎处将纹理化和阴影化中的一者或二者应用到基元片段;在高速缓存系统中存储图形数据所以用于在处理基元片段中使用,高速缓存系统包括多个高速缓存子系统,其中多个高速缓存子系统中的每个高速缓存子系统被耦合到处理引擎中的一个或多个处理引擎的相应集合;并且在一个或多个分配模式中将区片分配给处理引擎,其中一个或多个分配模式包括空间分配模式,在空间分配模式中,空间相邻区片组根据空间分配方案而被分配给处理引擎,空间分配方案确保空间相邻区片组中的每组被分配给耦合到相同高速缓存子系统的处理引擎的集合。可以提供计算机可读代码,其适于当代码被运行在计算机上时执行本文所描述的方法中的任一种方法的步骤。该计算机可读代码可以被编码在计算机可读存储介质上。还可以提供一种在集成电路制造系统处制造根据本文所描述的示例中的任一个示例的图形处理系统的方法。还可以提供一种集成电路定义数据集,其当在集成电路制造系统中处理时将系统配置为制造如本文中的示例中的任一个示例中所描述的图形处理系统。该集成电路定义数据集可以被存储在计算机可读存储介质上。如对于技术人员而言将是明显的,以上特征可以在适当时被组合并且可以与本文所描述的示例的各方面中的任一个方面一起组合。附图说明现在将参考附图详细描述示例,在附图中:图1示出了现有技术图形处理系统的示例;图2示出了根据本文所描述的实施例的图形处理系统;图3表示区片块内的基元;图4是示出在图形处理系统中处理基元片段的方法的流程图;图5示出了待分配给处理引擎的区片块;图6指示将区片从块分配给处理引擎;图7图示了被分配本文档来自技高网
...
对图形处理系统中的处理引擎的区片分配

【技术保护点】
一种图形处理系统,所述图形处理系统被配置为使用被再分成多个区片的渲染空间来处理基元片段,所述系统包括:多个处理引擎,所述多个处理引擎被配置为将纹理化和阴影化中的一者或二者应用到基元片段;高速缓存系统,所述高速缓存系统被配置为存储图形数据以用于在处理所述基元片段中使用,所述高速缓存包括多个高速缓存子系统,其中所述多个高速缓存子系统中的每个高速缓存子系统被耦合到所述处理引擎中的一个或多个处理引擎的相应集合;以及区片分配单元,所述区片分配单元被配置为在一个或多个分配模式中操作以将区片分配给所述处理引擎,其中所述一个或多个分配模式包括空间分配模式,在所述空间分配模式中,空间相邻区片组根据空间分配方案而被分配给所述处理引擎,所述空间分配方案确保所述空间相邻区片组中的每组被分配给耦合到相同高速缓存子系统的处理引擎的集合。

【技术特征摘要】
2015.12.21 GB 1522540.21.一种图形处理系统,所述图形处理系统被配置为使用被再分成多个区片的渲染空间来处理基元片段,所述系统包括:多个处理引擎,所述多个处理引擎被配置为将纹理化和阴影化中的一者或二者应用到基元片段;高速缓存系统,所述高速缓存系统被配置为存储图形数据以用于在处理所述基元片段中使用,所述高速缓存包括多个高速缓存子系统,其中所述多个高速缓存子系统中的每个高速缓存子系统被耦合到所述处理引擎中的一个或多个处理引擎的相应集合;以及区片分配单元,所述区片分配单元被配置为在一个或多个分配模式中操作以将区片分配给所述处理引擎,其中所述一个或多个分配模式包括空间分配模式,在所述空间分配模式中,空间相邻区片组根据空间分配方案而被分配给所述处理引擎,所述空间分配方案确保所述空间相邻区片组中的每组被分配给耦合到相同高速缓存子系统的处理引擎的集合。2.根据权利要求1所述的图形处理系统,其中在所述空间分配模式中,所述区片分配单元被配置为在一个分配过程中将区片块分配给所述处理引擎,由此向所述多个处理引擎中的每个处理引擎分配来自所述区片块的相应的一个或多个区片,其中所述区片块包括多个空间相邻区片组。3.根据权利要求2所述的图形处理系统,其中所述区片分配单元被配置为处理区片块的序列。4.根据任何前述权利要求所述的图形处理系统,其中所述一个或多个分配模式包括负载平衡分配模式,在所述负载平衡分配模式中,区片基于所述处理引擎的计算负载而被分配给所述处理引擎。5.根据任何前述权利要求所述的图形处理系统,其中所述区片分配单元被配置为:针对所述处理引擎中的每个处理引擎,维持被分配用于由该处理引擎处理的已分配的区片的队列。6.根据当从属于权利要求2时的权利要求5所述的图形处理系统,其中所述区片分配单元被配置为:监视所述队列的状态,并且响应于检测到所述队列中的每个队列中的已分配的区片的数目不大于分配阈值,在所述空间分配模式中实现分配过程,由此将区片块分配给所述处理引擎。7.根据当从属于权利要求4时的权利要求5所述的图形处理系统,其中所述区片分配单元被配置为:监视所述队列的状态,并且响应于检测到所述队列中的任一个队列中的已分配的区片的数目小于加载阈值,在所述负载平衡分配模式中将区片分配给所述处理引擎。8.根据权利要求7所述的图形处理系统,其中所述区片分配单元被配置为:响应于检测到所述队列中的任一个队列中的已分配的区片的所述数目小于所述加载阈值,在所述负载平衡分配模式中将足够的区片分配给所述处理引擎以填充所述队列中的每个队列。9.根据任何前述权利要求所述的图形处理系统,其中所述高速缓存系统是多级高速缓存,并且其中所述高速缓存子系统是所述多级高速缓存中的第1级高速缓存子系统,并且其中所述高速缓存子系统中的每个高速缓存子系统被耦合到所述处理引擎的相应对。10.根据任何前述权利要求所述的图形处理系统,其中所述高速缓存系统进一步包括第2级高速缓存。11.根据任何前述权利要求所述的图形处理系统,其中所述空间相邻区片组是2×2区片组,...

【专利技术属性】
技术研发人员:J·里德肖Y·C·富
申请(专利权)人:想象技术有限公司
类型:发明
国别省市:英国,GB

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

1