并行平铺引擎管线中的图元块的处理的制作方法_5

文档序号:8528005阅读:来源:国知局
在计算机可读媒介上。程序代码可以存储于一个或者多个计算机可读介质中。在此所述的技术的特性是平台无关的,这意味着该技术可以在具有各种处理器的各种计算平台上实现。
[0070]本领域的技术人员也将理解,功能、技术或者方法的全部或者一部分可以由专用电路、专用集成电路、可编程逻辑阵列、现场可编程门阵列等执行。例如,模块、功能、组件、方框、单元或者逻辑可以包括电路形式的硬件。这样的电路可以包括晶体管和/或在制造过程中可用的其他硬件元素。这样的晶体管和/或其他元素可以被用于形成电路或者结构,该电路或者结构实现和/或包括存储器,比如寄存器、触发器或者锁存器、逻辑运算器,比如布尔运算、数学运算器,比如加法器、乘法器或者移位器、以及互连。这样的元素可以作为定制电路或者标准单元库、宏或者在其他抽象级别来提供。这样的元素可以按照特定的布置进行互连。模块、功能、组件、方框、单元或者逻辑可以包括固定功能的电路或者可以被编程为执行一个或者多个功能的电路;这样的编程可以从固件或者软件更新或者控制机制提供。在一个示例中,硬件逻辑具有实现固定的功能操作、状态机或者过程的电路。
[0071]还旨在包括“描述”或者定义硬件的配置的软件,该硬件实现以上所述的模块、功能、组件或者逻辑,比如HDL(硬件描述语言)软件,用于设计集成电路或者配置可编程芯片以执行期望的功能。即,可以提供在其上编码有计算机可读程序代码的计算机可读存储媒介用于生成被配置为执行在此所述的任何方法的平铺单元,或者用于生成包括在此所述的任何装置的平铺单元。
[0072]术语“处理器”和“计算机”在此用于指代具有处理能力使得它可以执行指令的任何设备或者设备的部分,或者能够执行功能或者方法的全部或者一部分的专用电路,或者它们的任意组合。
[0073]尽管用特定语言描述主题的结构特征和/或方法的行为,应当理解,在所附权利要求中定义的主题不一定被限制于以上所述的特定的特征或者行为。而是,以上所述的特定的特征和行为作为实现权利要求的示例形式被公开。应当理解,以上所述的益处和优点可以涉及一个示例或者可以涉及几个示例。
[0074]对于技术人员明显的是,在此给出的任何范围或者值在不失去所寻求的效果的情况下可以被扩展或者改变。在此所述方法的步骤可以以任何适当地顺序执行,或者在适当时同时执行。在不失去所寻求的效果的情况下,以上所述的任何示例的方面可以与以上所述的任何其他示例的方面合并,从而形成进一步的示例。
【主权项】
1.一种在图形处理系统内处理多个平铺引擎管线中的图元块的序列的方法,所述图形处理系统配置以使用被子划分为多个瓦片的绘制空间,其中所述平铺引擎管线被设置以并行地处理相应图元块,以及其中所述绘制空间内的所述图元块中的每个图元块的位置是由相应位置指示符来指示的,以及所述图元块的序列内的所述图元块中的每个图元块的位置是由相应序列指示符来指示的,所述方法包括,对于多个所述相应图元块的中的每个相应图兀块: 确定对于所述相应图元块的多个区域中的每个区域的优先级,所述区域中的每个区域包括一个或者多个瓦片,其中如果在并行平铺引擎管线中当前正在被处理的所述图元块的所述位置指示符指示所述相应图元块的特定区域内存在重叠图元块,则针对所述特定区域的所述优先级是基于所述重叠图元块的所述序列指示符被确定的;以及 被设置以处理所述相应图元块的所述平铺引擎管线基于针对所述区域确定的所述优先级来按照瓦片顺序,处理针对所述相应图元块的所述区域的瓦片的所述相应图元块的图元,由此针对所述相应图元块的所述区域的所述瓦片中的每个瓦片,如果所述相应图元块的图元存在于所述瓦片内的话,确定所述相应图元块的哪个图元存在于所述瓦片内。
2.根据权利要求1所述的方法,其中针对所述特定区域的所述优先级是通过比较所述相应图元块的所述序列指示符与一个或者多个其他重叠图元块中的每个重叠图元块的所述序列指示符,基于所述重叠图元块的所述序列指示符被确定的,其中对于所述一个或者多个其他重叠图元块中的每个重叠图元块: 如果所述相应图元块的所述序列指示符大于所述重叠图元块的所述序列指示符,则所述相应图元块的所述特定区域的所述优先级被降低;以及 如果所述相应图元块的所述序列指示符小于所述重叠图元块的所述序列指示符,则所述相应图元块的所述特定区域的所述优先级被提高。
3.根据权利要求1或2所述的方法,进一步包括:通过确定在所述并行平铺引擎管线中当前正在被处理的所述图元块的重叠区域来确定所述区域。
4.根据权利要求1或2所述的方法,其中所述区域中的每个区域是瓦片,从而针对所述相应图元块的所述瓦片中的每个瓦片来确定优先级。
5.根据前述权利要求中的任一项所述的方法,其中当平铺引擎管线开始处理新的图元块时,包括所述新的图元块的所述序列指示符和所述位置指示符的信号被发送至所述其他平铺引擎管线。
6.根据权利要求5所述的方法,其中包括所述新的图元块的所述序列指示符和所述位置指示符的所述信号从以下中的任一项被发送:(i)开始处理所述新的图元块的所述平铺引擎管线,或者(ii)控制模块。
7.根据前述权利要求中的任一项所述的方法,其中所述平铺引擎管线中的正在处理相应图元块的每个平铺引擎管线被配置以执行以下步骤: (i)接收包括另一平铺引擎管线正在开始处理的新的图元块的序列指示符和位置指示符的信号;以及 (?)响应于接收所述信号,基于接收的所述信号来重新确定针对所述相应图元块的区域的优先级。
8.根据从属于权利要求3时的权利要求7所述的方法,其中正在处理相应图元块的所述平铺引擎管线中的每个平铺引擎管线响应于接收所述信号而重新确定所述区域。
9.根据权利要求1至6中的任一项所述的方法,其中控制模块基于第二平铺引擎管线正在开始处理的新的图元块的序列指示符和位置指示符来重新确定第一平铺引擎管线正在处理的第一图元块的区域的优先级。
10.根据从属于权利要求3时的权利要求9所述的方法,其中所述控制模块基于所述新的图元块的所述位置指示符来重新确定由所述平铺引擎管线正在处理的所述图元块的所述区域。
11.根据前述权利要求中的任一项所述的方法,其中当平铺引擎管线结束处理重叠区域中的图元块的图元时,所述平铺引擎管线发送指示所述重叠区域中的所述图元块的所述图元已经被处理的信号,其中在所述重叠区域中存在至少一个重叠图元块在至少一个其他平铺引擎管线中当前正在被处理。
12.根据前述权利要求中的任一项所述的方法,其中所述平铺引擎管线中的正在处理相应图元块的每个平铺引擎管线被配置以执行以下步骤: (i)接收指示重叠区域中的另一图元块的图元在另一平铺引擎管线中已经被处理的信号;以及 (?)响应于接收所述信号,基于接收的所述信号来提高针对所述相应图元块的所述重叠区域的所述优先级。
13.根据权利要求1至11中的任一项所述的方法,其中控制模块执行以下步骤: (i)接收指示重叠区域中的第一图元块的图元在第一平铺引擎管线中已经被处理的信号;以及 (?)响应于接收所述信号,提高针对第二图元块的所述重叠区域的所述优先级。
14.根据前述权利要求中的任一项所述的方法,其中所述处理所述相应图元块的图元包括: 在多个迭代中的每个迭代中针对一个或者多个瓦片的集合处理图元,其中在每个迭代中,从尚未针对所述相应图元块而被处理的所述瓦片中基于所述区域的所述优先级来选择一个或者多个瓦片的所述集合。
15.根据权利要求14所述的方法,其中: (i)如果一个或者多个瓦片的多个集合是来自针对尚未被处理的瓦片的具有相等最高优先级的区域,则基于所述瓦片的光栅扫描顺序而选择一集合;或者 (?)如果一个或者多个瓦片的多个集合是来自针对尚未被处理的并且与当前正在被处理的所述图元块的不同的其他图元块重叠的瓦片的、具有相等最高优先级的区域,则基于所述图元块的所述重叠的其他图元块的所述序列指示符来选择一集合。
16.根据前述权利要求中的任一项所述的方法,其中所述处理针对所述相应图元块的所述区域的瓦片的所述相应图元块的图元包括:向所述瓦片的显示列表写入被确定存在于所述相应瓦片内的所述相应图元块的所述图元的图元标识符, 其中所述向瓦片的所述显示列表写入所述相应图元块的所述图元的图元标识符包括:检查在另一平铺引擎管线中当前正在被处理的具有较早序列号的图元块不具有要写入所述瓦片的所述显示列表的进一步的图元标识符。
17.根据前述权利要求中的任一项所述的方法,其中图元块的所述位置指示符是所述图元块的包围盒。
18.一种配置以在图形处理系统内处理图元块的序列的平铺单元,所述图形处理系统配置以使用被子划分为多个瓦片的绘制空间,其中所述平铺单元被配置以使用相应位置指示符来指示所述绘制空间内的所述图元块中的每个图元块的位置,以及使用相应序列指示符来指示所述图元块的序列内的所述图元块中的每个图元块的位置, 其中所述平铺单元包括多个平铺引擎管线,所述多个平铺引擎管线配置以并行地处理相应图元块, 以及其中对于多个所述相应图元块的中的每个相应图元块,所述平铺单元被配置以: 确定对于所述相应图元块的多个区域中的每个区域的优先级,所述区域中的每个区域包括一个或者多个瓦片,其中如果在并行平铺引擎管线中当前正在被处理的所述图元块的所述位置指示符指示所述相应图元块的特定区域内存在重叠图元块,则针对所述特定区域的所述优先级是基于所述重叠图元块的所述序列指示符被确定的;以及 使用被设置以处理所述相应图元块的所述平铺引擎管线基于针对所述区域的确定的所述优先级来按照瓦片顺序,针对所述相应图元块的所述区域的瓦片来处理所述相应图元块的图元,由此针对所述相应图元块的所述区域的所述瓦片中的每个瓦片,如果所述相应图元块的图元存在于所述瓦片内的话,确定所述相应图元块的哪个图元存在于所述瓦片内。
19.根据权利要求18所述的平铺单元,其中所述平铺单元配置以使用以下中的任一项来确定针对所述相应图元块的所述多个区域的所述优先级:(i)被设置以处理所述相应图元块的所述平铺引擎管线,或者(ii)所述平铺单元的控制模块。
20.一种具有在其上编码的计算机可读代码的计算机可读存储介质,当所述代码在计算机上运行时被适配以执行根据权利要求1至17中的任一项所述的方法的步骤。
21.—种具有在其上编码的计算机可读代码的计算机可读存储介质,所述计算机可读代码用于生成根据权利要求18或19的平铺单元。
【专利摘要】本申请涉及并行平铺引擎管线中的图元块的处理。平铺单元被设置以使用多个并行平铺引擎管线来处理图元块的序列。每个平铺引擎管线处理相应图元块,并且基于图元块与在并行平铺引擎管线中当前正在被处理的任何其他图元块是否重叠,来确定针对相应图元块的区域的优先级。每个平铺引擎管线基于区域的优先级按照瓦片顺序处理其图元块的区域。当图元标识符被写入显示列表时,应当维护图元块的提交顺序。由此,如果第一图元块与具有较高(或较低)序列号并且当前在另一平铺引擎管线中正在被处理的另一图元块重叠,则第一图元块的区域的优先级被提高(或降低)。这缩减了平铺引擎管线处于空闲的时间。
【IPC分类】G06F9-44
【公开号】CN104850393
【申请号】CN201510075863
【发明人】X·杨, R·席德
【申请人】想象技术有限公司
【公开日】2015年8月19日
【申请日】2015年2月12日
【公告号】DE102015101543A1, US20150228049
当前第5页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1