当前位置: 首页 > 专利查询>辉达公司专利>正文

用于图形处理器的并行阵列结构制造技术

技术编号:3021362 阅读:138 留言:0更新日期:2012-04-11 18:40
本发明专利技术提供一种用于图形处理器的并行阵列结构,其包括:多线程核心阵列,其包括多个处理群集,每一处理群集包括至少一个可操作以执行像素着色器程序的处理核心,所述像素着色器程序从覆盖数据产生像素数据;光栅化器,其经配置以针对多个像素的每一者产生覆盖数据;以及像素分配逻辑,其经配置以将所述覆盖数据从所述光栅化器传递到所述多线程核心阵列中的所述处理群集中的一者。所述像素分配逻辑至少部分基于第一像素在图像区域中的位置而选择将所述第一像素的所述覆盖数据传递到其的所述处理群集中的一者。所述处理群集可在没有交叉开关的情况下直接映射到所述帧缓冲器分区,使得将像素数据直接从所述处理群集传递到适当的帧缓冲器分区。或者,耦合到所述处理群集的每一者的交叉开关经配置以将像素数据从所述处理群集传递到具有多个分区的帧缓冲器。所述交叉开关经配置以使得由所述处理群集的任一者产生的像素数据可传递到所述帧缓冲器分区中的任一者。

【技术实现步骤摘要】
【国外来华专利技术】
本专利技术大体上涉及图形处理器,且明确地说,涉及用于图形处理器的并行阵列结构
技术介绍
当需要执行多个独立计算时,并行处理技术会增强处理器或多处理器系统的处理 量。可将计算划分成通过程序定义的若干任务,其中将每一任务作为单独线程执行。(如 本文使用的,"线程"大体上是指使用特定输入数据来执行特定程序的实例,且"程序" 是指从输入数据产生结果数据的可执行指令序列。)使用处理器内部的不同处理引擎来 同时执行并行线程。许多现有处理器结构支持并行处理。最早的此类结构使用联网在一起的多个离散处 理器。更近一些,已经在单个芯片上制作了多个处理核心。采用各种方式控制这些核心。 在称为多指令多数据(MIMD)机器的一些实例中,每一核心独立地取出其自己的指令 并将所述指令发布到其自己的处理引擎(或多个引擎)。在称为单指令多数据(SIMD) 机器的其它实例中,核心具有单个指令单元,其将同一指令并行发布到多个处理引擎, 所述多个处理引擎对不同输入操作数执行所述指令。SIMD机器通常在芯片面积方面具 有优点(因为仅需要一个指令单元)且因此在成本方面具有优点;缺点是并行性只能使 得可同时执行同一指令的多个实例。常规的图形处理器使用非常宽的SIMD结构来实现图像渲染应用中的高处理量。此 类应用通常需要对大量物体(顶点或像素)执行相同程序(顶点着色器或像素着色器)。 由于每一物体是独立于所有其它物体但使用同一操作序列加以处理的,所以SIMD结构 以合理的成本提供相当可观的性能增强。通常,GPU包括一个执行顶点着色器程序的SIMD核心和另一个执行像素着色器程序的具有可比大小的SIMD核心。在高端GPU 中,有时提供多组SIMD核心以支持甚至更高程度的并行性。这些设计具有若干缺点。首先,单独设计并测试用于顶点和着色器程序的单独处理 核心,从而常常导致至少一些重复劳动。其次,顶点操作与像素操作之间的图形处理负 荷的划分在很大程度上因应用而不同。如此项技术中所已知的,可通过下列方式向图像 添加细节使用许多小基元,这会增加顶点着色器核心的负荷;和/或使用复合的纹理 映射与像素着色操作,这会增加像素着色器核心的负荷。在大多数情况下,负荷并未得 到完美平衡,且一个核心或另一个核心并未得到充分利用。举例来说,在像素密集应用 中,像素着色器核心可以最大处理量运行,而顶点核心处于闲置,等待已经处理的顶点 移动进入管线的像素着色器级。相反,在顶点密集应用中,顶点着色器核心可以最大处 理量运行,而像素核心处于闲置,等待新顶点得以供应。在任一情况下,实际上浪费了 可用处理循环的某部分。因此,将需要提供一种图形处理器,其可适应于不同着色器上的变化负荷,同时维 持较高程度的并行性。
技术实现思路
本专利技术实施例提供图形处理器,其使用可縮放多线程核心阵列以在渲染操作期间执 行顶点着色器程序、几何着色器程序和/或像素着色器程序的任何组合。所述核心阵列 包括布置成一个或一个以上群集的许多多线程处理核心,其中同一群集中的核心由共享 核心接口控制。在待执行像素着色器程序的实施例中,有利地基于像素在图像区域内的位置而选择 待在其中执行所述程序的群集或核心。在一个实施例中,将屏幕分成瓦片,其中将每一 瓦片指派给处理群集中的一者或另一者(或指派给处理群集内的特定核心)。指派给给 定处理群集或核心的瓦片有利地散布在整个屏幕上,以提供近似负荷平衡。在一些实施例中,处理核心或群集包括光栅操作单元,其将新近产生的像素数据与 帧缓冲器中的现有数据集成。可将帧缓冲器分割为与处理群集的数目匹配,其中每一群 集将其全部数据写入到一个分区中。在其它实施例中,帧缓冲器的分区数目不需要与使 用中的处理群集的数目匹配。交叉开关或类似电路结构可提供处理群集与帧缓冲器分区 之间的可配置耦合,使得可将任何处理群集耦合到任何帧缓冲器分区;在一些实施例中, 省略所述交叉开关,从而改进存储器局域性。下列详细描述连同附图将提供对本专利技术的性质和优点的更好了解。附图说明图1是根据本专利技术实施例的计算机系统的方框图2是根据本专利技术实施例的可在图形处理器中实施的渲染管线的方框图3是根据本专利技术实施例的用于图形处理器的多线程核心阵列的方框图4说明根据本专利技术实施例的将图像区域分成许多瓦片的一种可能瓦片分割;图5是说明根据本专利技术实施例的处理群集与帧缓冲器之间的耦合的简化方框图;以及图6是说明根据本专利技术另一实施例的处理群集与帧缓冲器之间的耦合的简化方框图。具体实施例方式系统概述图1是根据本专利技术实施例的计算机系统100的方框图。计算机系统IOO包括中央处 理单元(CPU) 102和系统存储器104,其经由包括存储器桥接器105的总线路径进行 通信。存储器桥接器105经由总线路径106而连接到I/0 (输入/输出)桥接器107。 I/O 桥接器107从一个或一个以上用户输入装置108 (例如,键盘、鼠标)接收用户输入, 并经由总线106和存储器桥接器105将所述输入转发到CPU 102。在基于像素的显示装 置IIO (例如,常规的基于CRT或LCD的监视器)上提供视觉输出,所述显示装置在 图形子系统112的控制下操作,所述图形子系统112经由总线U3而耦合到存储器桥接 器105。系统盘114也连接到I/O桥接器107。开关116提供I/O桥接器107与其它组 件(例如网络适配器U8和各种插卡120、 121)之间的连接。包括USB或其它端口连 接、CD驱动器、DVD驱动器等的其它组件(未明确展示)也可连接到1/0桥接器107。 可使用总线协议(例如PCI (外围组件互连)、PCI Express (PCI-E)、 AGP (加速图形 端口)、超级传送(HyperTransport)或任何其它总线协议)来实施各种组件间的总线连 接,且不同装置之间的连接可使用不同协议,如此项技术中所已知的。图形处理子系统112包括图形处理单元(GPU) 122和图形存储器124,其可(例 如)使用一个或一个以上集成电路装置(例如可编程处理器、专用集成电路(ASIC) 和存储器装置)来实施。GPU 122可经配置以执行与从由CPU 102和/或系统存储器104 经由存储器桥接器105和总线U3供应的图形数据产生像素数据、与图形存储器124交 互以存储并更新像素数据等相关的各种任务。举例来说,GPU 122可从由在CPU 102 上执行的各种程序提供的2D或3D场景数据产生像素数据。GPU 122还可在具有或不具有进一步处理的情况下将经由存储器桥接器105接收的像素数据存储到图形存储器 124。 GPU 122还包括扫描输出模块,其经配置以将像素数据从图形存储器124传递到 显示装置110。CPU102作为系统100的主处理器进行操作,控制并协调其它系统组件的操作。明 确地说,CPU 102发布控制GPU 122的操作的命令。在一些实施例中,CPU 102将用 于GPU 122的命令流写入到命令缓冲器中,所述缓冲器可位于系统存储器104、图形存 储器124或可由CPU 102和GPU 122两者存取的另一存储位置中。GPU 122从所述命 令缓冲器读取命令流,并与CPU 102的操作不同步地执行命令。所述命令可包括用于 产生图像的常规渲染命令以及通用本文档来自技高网
...

【技术保护点】
一种图形处理器,其包含: 多线程核心阵列,其包括多个处理群集,每一处理群集包括至少一个可操作以执行像素着色器程序的处理核心,所述像素着色器程序从覆盖数据产生像素数据; 光栅化器,其经配置以针对多个像素的每一者产生覆盖数据;以及 像素分配逻辑,其经配置以将所述覆盖数据从所述光栅化器传递到所述多线程核心阵列中的所述处理群集中的一者, 其中所述像素分配逻辑至少部分基于第一像素在图像区域内的位置而选择将所述第一像素的所述覆盖数据传递到其的所述处理群集中的所述一者。

【技术特征摘要】
【国外来华专利技术】...

【专利技术属性】
技术研发人员:约翰M丹斯金约翰S蒙特里约翰埃里克林霍尔姆史蒂文E莫尔纳马克J弗伦奇
申请(专利权)人:辉达公司
类型:发明
国别省市:US[美国]

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

1
相关领域技术
  • 暂无相关专利