本发明专利技术描述基于图块的调度。本文所描述的图形处理单元配置成使用细分成多个图块的渲染空间来处理图形数据。所述图形处理单元包括分块单元和渲染逻辑。所述分块单元布置成生成每个图块的图块控制列表,所述图块控制列表标识存在于所述图块中的每个图形数据项。所述渲染逻辑布置成使用由所述分块单元生成的所述图块控制列表来渲染所述图块。所述分块单元包括每图块散列生成逻辑,所述每图块散列生成逻辑布置成针对每个图块,基于将在所述渲染逻辑中处理所述图块时存取的一组纹理来生成每图块散列值,并且所述分块单元还布置成将图块的所述每图块散列值存储在所述图块的所述图块控制列表内。控制列表内。控制列表内。
【技术实现步骤摘要】
基于图块的调度
[0001]本申请是申请日为2019年12月19日,申请号为201911317873.4,专利技术名称为“基于图块的调度”的申请的分案申请。
[0002]本申请涉及图形处理。
技术介绍
[0003]图形处理系统通常配置成例如从在计算机系统上运行的应用程序接收图形数据,并且渲染图形数据以提供渲染输出。例如,提供到图形处理系统的图形数据可描述要渲染的三维(3D)场景内的几何形状,并且渲染输出可以是场景的被渲染图像。一些图形处理系统(其可称作“基于图块的”图形处理系统)使用细分成多个图块的渲染空间。“图块”是渲染空间的区域,并且可具有任何合适的形状,但通常是矩形的(其中,术语“矩形”包含方形)。举例来说,图块可占要渲染的图像的16
×
16个像素块或32
×
32个像素块。如所属领域中已知,将渲染空间细分成图块存在许多益处。例如,将渲染空间细分成图块允许图像以逐图块方式渲染,其中图块的图形数据可在图块的渲染期间临时存储在“芯片上”。
[0004]基于图块的图形处理系统通常有两个操作阶段:几何形状处理阶段和渲染阶段。在几何形状处理阶段,分析用于渲染的图形数据,以针对每个图块确定哪些图形数据项存在于该图块内。接着,在渲染阶段,可通过处理确定存在于图块内的那些图形数据项(不需要处理在几何形状处理阶段中确定不存在于特定图块内的图形数据项)来渲染该图块。图形数据项可表示几何形状,其描述场景中的结构的表面并且被称为“图元”。常见图元形状是三角形,但图元可以是其它2D形状,或者还可以是线或点。对象可由一个或多个(例如,数百个、数千个或数百万个)此类图元构成。
[0005]下文描述的实施例仅作为示例而提供,并非是对解决已知基于图块的图形处理系统的任一或所有缺点的实施方案的限制。
技术实现思路
[0006]提供此
技术实现思路
旨在用简化形式介绍下文在具体实施方式中进一步描述的一系列概念。此
技术实现思路
并非旨在标识所要求主题的关键特征或基本特征,也并非旨在用于限制所要求主题的范围。
[0007]本文所描述的图形处理单元配置成使用细分成多个图块的渲染空间来处理图形数据。所述图形处理单元包括分块单元和渲染逻辑。所述分块单元布置成生成每个图块的图块控制列表,所述图块控制列表标识存在于所述图块中的每个图形数据项。所述渲染逻辑布置成使用由所述分块单元生成的所述图块控制列表来渲染所述图块。所述分块单元包括每图块散列生成逻辑,所述每图块散列生成逻辑布置成针对每个图块,基于将在所述渲染逻辑中处理所述图块时存取的一组纹理来生成每图块散列值,并且所述分块单元还布置成将图块的每图块散列值存储在所述图块的所述图块控制列表内。
[0008]第一方面提供一种图形处理单元,其配置成使用细分成多个图块的渲染空间来处理图形数据,所述图形处理单元包括:分块单元,其布置成生成每个图块的图块控制列表,图块的图块控制列表标识存在于图块中的图形数据项;高速缓存,其用于存储用于渲染图块的纹理数据;以及渲染逻辑,其布置成使用由分块单元生成的图块控制列表和存储在高速缓存中的纹理数据来渲染图块;其中所述图形处理单元包括每图块散列生成逻辑,所述每图块散列生成逻辑布置成针对每个图块,基于将在渲染逻辑中处理图块时存取的一组纹理来生成每图块散列值,并且其中所述图形处理单元还布置成存储图块的每图块散列值以供渲染逻辑使用。
[0009]所述渲染逻辑可包括调度逻辑和处理逻辑。
[0010]所述调度逻辑可布置成基于图像的图块的两个或更多个每图块散列值的比较来选择要调度用于供处理逻辑处理的下一图块。
[0011]所述调度逻辑可布置成标识图块候选集,并且基于当前调度的图块的每图块散列值与候选集中的至少一个图块的每图块散列值的比较来选择要调度用于供处理逻辑处理的下一图块。
[0012]当前调度的图块可以是(i)正处理的当前图块,或(ii)最近调度的图块。
[0013]所述调度逻辑可布置成至少部分地基于空间次序方案来标识图块候选集。
[0014]候选集可包括根据空间次序方案的随后N个图块,其中N是整数。候选集可包括根据空间次序方案的来自随后N组图块中的每一组的第一图块,其中N是整数。候选集可包括邻近正处理的当前图块的一个或多个图块。
[0015]所述图形处理单元还可包括高速缓存控制器,所述高速缓存控制器配置成基于对两个或更多个每图块散列值的分析而选择要从高速缓存逐出的纹理数据项。
[0016]所述渲染逻辑可包括多个处理核心,其中所述高速缓存可被所述多个处理核心中的每个处理核心存取。
[0017]所述高速缓存控制器可布置成基于对两个或更多个每图块散列值的分析来标识一个或多个最不可能使用的纹理,并且选择对应于最不可能使用的纹理的纹理数据项从高速缓存逐出。
[0018]所述高速缓存控制器可布置成基于对正由渲染逻辑处理的至少一个图块的每图块散列值的分析来标识一个或多个最不可能使用的纹理。
[0019]两个每图块散列值的比较可包括逐位比较以标识这两个每图块散列值中的数个匹配位。
[0020]每个每图块散列值可以是固定大小的概率性数据结构。所述固定大小的概率性数据结构可以是布隆过滤器(Bloom filter)。
[0021]所述每图块散列生成逻辑可布置成针对每个图块,通过以下操作来生成每图块散列值:对于将在渲染逻辑中处理图块时存取的每个纹理,标识布隆过滤器中的位位置;以及将布隆过滤器中每个所标识位位置处的位设置成默认值。所述每图块散列生成逻辑可布置成针对每个图块,通过以下操作来生成每图块散列值:对于将在渲染逻辑中处理图块时存取的每个纹理,使用多个散列函数中的每个散列函数标识布隆过滤器中的位位置;以及将布隆过滤器中每个所标识位位置处的位设置成默认值。
[0022]所述每图块散列生成逻辑可包含在所述分块单元中。
[0023]所述图形处理单元可布置成将图块的每图块散列值存储在所述图块的图块控制列表内。
[0024]第二方面提供一种使用细分成多个图块的渲染空间处理图形数据的方法,所述方法包括:在图形处理单元中生成每个图块的图块控制列表,图块的图块控制列表标识存在于所述图块中的图形数据项;针对每个图块,基于将在图形处理单元中的渲染逻辑中处理图块时存取的一组纹理来生成每图块散列值;存储图块的每图块散列值以供渲染逻辑使用;以及使用图块控制列表和存储在高速缓存中的纹理数据来在渲染逻辑中渲染图块。
[0025]所述方法还可包括基于对两个或更多个每图块散列值的比较,由渲染逻辑中的处理逻辑选择要调度用于处理的下一图块。
[0026]选择要调度用于处理的下一图块可包括:标识图块候选集;以及基于当前调度的图块的每图块散列值与候选集中的至少一个图块的每图块散列值的比较来选择要调度用于供处理逻辑处理的下一图块。
[0027]所述方法还可包括在高速缓存控制器中,基于对两个或更多个每图块散列值的分析而选择要从高速缓存逐出的纹理数据项。基于对两个或更多个每本文档来自技高网...
【技术保护点】
【技术特征摘要】
1.一种图形处理单元(102),其配置成使用细分成多个图块的渲染空间来处理图形数据,所述图形处理单元包括:分块单元(108),其布置成生成每个图块的图块控制列表,图块的所述图块控制列表标识存在于所述图块中的图形数据项;高速缓存(126),其用于存储用于渲染图块的纹理数据;以及渲染逻辑(110),其布置成使用由所述分块单元生成的所述图块控制列表以及存储在所述高速缓存中的纹理数据来渲染所述图块;其中所述图形处理单元包括每图块散列生成逻辑(120),所述每图块散列生成逻辑布置成针对每个图块,基于将在所述渲染逻辑中处理所述图块时使用的资源来生成每图块散列值,其中每个每图块散列值是固定大小的概率性数据结构,并且其中所述图形处理单元还布置成存储图块的所述每图块散列值以供所述渲染逻辑使用。2.根据权利要求1所述的图形处理单元,其中,所述每图块散列值是基于在所述渲染逻辑中处理所述图块时使用的着色器程序生成的。3.根据权利要求1或2所述的图形处理单元,其中所述渲染逻辑包括调度逻辑(116)和处理逻辑(113),并且其中所述调度逻辑布置成基于两个或更多个每图块散列值的比较来选择要调度用于供所述处理逻辑处理的下一图块。4.根据权利要求3所述的图形处理单元,其中所述调度逻辑布置成标识图块的候选集以及基于对当前调度的图块的每图块散列值与所述候选集中的所述图块中的至少一个图块的每图块散列值的比较来选择要调度用于供所述处理逻辑处理的下一图块。5.根据权利要求4所述的图形处理单元,其中所述当前调度的图块是(i)正处理的当前图块,或(ii)最近调度的图块。6.根据权利要求4或5所述的图形处理单元,其中所述调度逻辑布置成至少部分地基于空间次序方案来标识图块的候选集。7.根据权利要求6所述的图形处理单元,其中所述候选集包括根据所述空间次序方案的随后N个图块,其中N是整数。8.根据权利要求6所述的图形处理单元,其中所述候选集包括根据所述空间次序方案的来自随后N组图块中的每一组的第一图块,其中N是整数。9.根据权利要求4或5所述的图形处理单元,其中所述候选集包括邻近正处理的所述当前图块的一个或多个图块。10.根据前述权利要求中任一项所述的图形处理单元,其还包括高速缓存控制器(127),所述高速缓存控制器配置成基于对两个或更多个每图块散列值的分析而选择要从所述高速缓存逐出的纹理数据项。11.根据前述权利要求中任一项所述的图形处理单元,其中所述渲染逻辑包括多个处理核心(114A
‑
F),其中所述高速缓存(126)能够被所述多个处理核心中的每个处理核心存取。12.根据权利要求10或11所述的图形处理单元,其中所述高速缓存控制器布置成基于对两个或更多个每图块散列值的分析而标识一个或多个最不可能使用的纹理,以及选择要从所述高速缓存逐出的对应于最不可能使用的纹理的纹理数据项。13.根据权利要求10
‑
12中任一项所述的图形处理单元,其中所述高速缓存控制器布置
成基于对正由所述渲染逻辑处理的至少一个图块的每图块散列值的分析来标识所述一个或多个最不可能使用的纹理。14.根据权利要求3
‑
13中任一项所述的图形处理单元,其中对两个每图块散列值的比较包括逐位比较以标识所述两个每图块散列值...
【专利技术属性】
技术研发人员:伊苏鲁,
申请(专利权)人:想象技术有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。