使用多图形处理单元的改进的图形去阶梯的制作方法

文档序号:6454753阅读:146来源:国知局
专利名称:使用多图形处理单元的改进的图形去阶梯的制作方法
技术领域
0001本发明总体上涉及图形处理系统。特别地,本发明涉及 在实现多图形处理单元(GPU)的图形处理系统中用于执行图形去阶 梯操作的方法。
背景技术
0002已知的用于增加图形处理系统的处理能力的方法是并行 地操作多图形处理单元(GPU)或者视频处理单元(VPU),其中每 个处理单元与其它的单元在共用总线上进行通信。在此,词语GPU和 VPU可互换使用。多GPU系统的一个优点是它可以补充现有微处理 技术以实现增强的性能,因此提供了更便宜的替代方案以投资新的、 更快的GPU。多GPU系统通过在多图形元件上并行地执行计算实现 增强的性能。
0003使用图形处理系统的一个例子是利用多GPU以提供提 高的性能,在共有的、同时待审的U.S.专利申请No.11/140,156 (公开 号20060267991 )中描述,标题是"Antialiasing Method and System", 发明人为Preetham等人,于2005年5月27日提交,这里引入参考 其全部内容。前述的申请部分地描述了一种图形处理系统,其中多
GPU被并行地操作以在相同的图形画面上执行图形去阶梯。
0004阶梯是在所显示的画面中由绘制过程的不希望的缺陷的 出现所造成的公知效应。边缘阶梯是一种特定类型的阶梯,其在应当 看上去平滑的边缘造成阶梯。现有的用于减轻边缘阶梯效应的图形去 阶梯技术是多采样技术。多采样技术通过获得被用于在像素之间生成 中间点的像素的多个采样解决了边缘阶梯。釆样(或者"子像素") 被平均以确定所显示的像素颜色值。所显示的在多釆样图像中的边缘具有柔和化的阶梯效应。
0005前述的U,S,专利申请No.ll/140,156描述了一种图形处 理系统,其中两个GPU分别对相同的画面应用不同的多采样模式。即 每个GPU使用不同的采样位置用于在相同的画面中采样和绘制像素。 然后这种采样/绘制的结果在总线上(例如PCI-Express总线)从一个 GPU被传送到另一个GPU,其结果被混合以生成将被显示的画面。 最终结果是将被显示的画面的图形去阶梯采样因子被有效地加倍了 。 例如,如果每个GPU执行2X多采样,将被显示的画面包括4X多采 样。
0006关于上述方法,其中结果在总线上从一个GPU被传送 到另一个GPU的步骤可能由于在连接这两个GPU的总线上可获得的 带宽量有限而造成瓶颈。例如,在其中总线是PCI Express ( PCIE ) 总线的实施例中,带宽可以被限制于大约1千兆比特每秒(Gb/sec)。 然而,在执行该方法的系统中在总线上传送的数据量是非常大的,特 别是当将被显示的画面是由大量像素组成的高解析率画面时。此外, 上述方法本身是低效率的,因为尽管基于多采样的图形去阶梯是一种 用于边缘增强的技术,但在两个GPU之间传送的大量数据与边缘像素 完全无关。
0007那么想要的是一种用于在使用多GPU的图形处理系统 中执行图形去阶梯的改进的方法和设备。改进的方法和设备应该减少 在多个GPU之间所传送的数据量和/或提高这种数据传送的效率。改 进了的方法和设备应该还提供区分与边缘像素相关联的数据和与边缘 数据不相关联的数据的手段。

发明内容
0008本发明提供了一种用于在使用多GPU的图形处理系统 中执行图形去阶梯的改进了的方法和设备。改进了的方法和设备减少 了在多GPU之间所传送的数据量并且提高了这种数据传送的效率。本 发明还提供了 一种区分在所绘制的图像中的边缘和非边缘像素的手
8段。
0009
一种根据本发明的特别实施例的方法可以被用于在包括 第一 GPU和第二 GPU的系统中执行基于多采样的图形去阶梯。该方 法包括在第一 GPU中使用第 一多采样模式绘制画面的第 一版本,在第 二 GPU中使用第二多采样模式绘制该画面的第二版本。然后边缘像素 在该画面的第二版本中被识别。然后在该画面的第一版本中的像素仅 与那些在该画面的第二版本中的已经被识别为边缘像素的像素相结合 以生成结合的画面。
0010
一种根据本发明的特别实施例的系统包括被配置为使用 第 一多采样模式绘制画面的第 一版本的第一 GPU、被配置为使用第二 多采样模式绘制画面的第二版本的第二 GPU和连接第一 GPU和第二 GPU的总线。第二 GPU还被配置为识别在该画面的第二版本中的边 缘像素并且仅把那些在该画面的第二版本中已经识别为边缘像素的像 素通过总线传送到第一 GPU。第一 GPU还被配置为把在画面的第一 版本中的像素与从第二GPU传送的像素结合以生成结合的画面。
0011
一种根据本发明的特别实施例的方法可以被用于识别在 由多个矩形块组成的绘制图像中的边缘像素,所述多个矩形块中的每 个由多个像素组成。该方法包括访问数据以确定在多个矩形块中所选 择的矩形块是否被完全压缩,识别所选择的矩形块为仅包括对应于确 定所选择的矩形块完全压缩的非边缘像素,和识别所选择的矩形块为 包括对应于确定所选择的矩形块未完全压缩的一个或多个非边缘像 素。
0012
一种根据本发明的特别实施例的方法可以被用于在包括 第一 GPU和第二 GPU的系统中执行基于多采样的图形去阶梯。该方 法包括在第一 GPU中使用第一多采样模式绘制画面的第一版本和在 第二 GPU中使用第二多采样模式绘制与画面的第二版本相关联的边 缘像素。然后边缘像素从第二 GPU被传送到第一 GPU。然后从第二 GPU传送的边缘像素与在该画面的第一版本中的像素结合以生成结 合的画面。0013本发明的其它特征和优点以及本发明的各实施例的结构 和操作将在以下参考附图详细描述。需要注意的是本发明不限于这里 所描述的特定实施例。这里呈现的这些实施例仅是为了说明的目的。 对于本领域和相关领域的技术人员来说附加的实施例基于这里包含的 指导是清楚的。


0014这里引入并作为说明书的一部分的附图和描述了本发 明,还用于解释本发明的主旨并使本领域的技术人员能够实现和使用 本发明。
0015图1是在包括多GPU的图形处理系统中用于执行图形 去阶梯的方法的流程图。
0016图2是根据本发明的实施例的执行图形去阶梯的图形处 理系统的框图。
0017图3是根据本发明的实施例的在包括多GPU的图形处
理系统中用于执行图形去阶梯的方法的流程图。
0018图4是根据本发明的实施例的第一多采样模式的例子。0019图5是根据本发明的实施例的第二多采样模式的例子。0020图6是根据本发明的实施例的结合的第一和第二多采样
模式的例子。
0021图7是根据本发明的实施例的用于压缩多采样的图形去 阶梯的颜色数据的示例性处理器和存储器配置。
0022图8是根据本发明的实施例的用于部分压缩多釆样的图 形去阶梯颜色数据的指针格式的例子。
0023图9是根据本发明的实施例的用于确定一个矩形块是否 仅包含非边缘像素或者包含至少 一个边缘像素的方法的流程图。
0024图10A和10B分别是根据本发明的实施例对在2 -采样 边缘检测图形去阶梯緩冲器中像素的矩形块进行解析操作的应用。
0025图11描述了可以被用于实现本发明的示例计算机系统。与附图结合将变得更加明显,其中相似的附图标记表示通篇中对应的 元件。在附图中,相似的附图标记总体上表示相同、功能相似的和/ 或结构相似的元件。其中元件第一次出现的附图由在对应的附图标记 中最左边的数字表示。
具体实施例方式
A. —种用于在包括多GPU的图形处理系统中执行图形去阶梯的方法0027图1的流程图100表示在包括多GPU的图形处理系统 中执行图形去阶梯的方法。在图1中,流程图的左手边代表由第一GPU 执行的处理步骤,由"GPU0"表示,而右手边代表由第二GPU执行 的处理步骤,由"GPU1"表示。为了该例子的目的,假设每个GPU 都具有到它自己的本地存储器的访问入口,用于緩冲诸如在绘制过程 期间使用的采样数据的数据。
0028现在将描述由GPU 0执行的头三个步骤。首先,在步 骤102, GPU 0建立用于在所要绘制的画面中堆每个像素进行多采样 的第一模式,其中该模式由"多釆样模式A"表示。其次,在步骤106, GPU 0绘制画面,其中绘制画面包括在GPU 0的本地多釆样图形去阶 梯(AA )緩沖器中存储对应于每个像素的多个采样。如在此所使用的, 词组"存储采样"是指存储如颜色值等与每个采样相关联的数据。基 于多采样模式A选择每个像素的多个采样位置。第三,在步骤110, GPU 0把在AA緩冲器中存储的多个釆样的每个集合解析为存储在 GPUO的由"绘图緩冲器A"表示的本地绘图緩沖器中的单个采样。 一种把多个采样解析成单个采样的方法需要在线性空间中平均多个样 品点。
0029除了使用由"多采样模式B"表示的多采样模式来绘制 画面外,由GPU1执行的头三个处理步骤(步骤104、 108和112)与 由GPU 0执行的头三个处理步骤并行地执行并且基本上相同,多个 采样的集合被存储在位于GPU 1的本地存储器中的AA緩冲器中,并且该画面被解析到由"绘图緩冲器B"表示的也位于GPU1的本地存 储器中的绘图緩冲器中。
0030在步骤114, GPU 1把绘图緩沖器B的内容复制到由"临 时緩冲器A"表示的GPUO的本地临时緩冲器。在步骤116,和GPU 0位于相同的图形卡上的合成器执行把在绘图緩冲器A中呈现的每个 像素与在临时緩冲器A中呈现的对应像素线性混合以生成将被显示的 画面。作为替代,这种线性混合可以由没有位于图像卡上但是GPU 0 和GPU 1都与之相通信的独立部件的合成器来执行。在步骤118,将 被显示的画面被输出到显示装置。画面有效地把由每个单个GPU应用 的多采样的数量加倍。
0031关于上述的方法,步骤114 (其中绘图緩冲器B的内容 被复制到临时緩冲器A)可能由于在把GPU O连接到GPU 1的总线 上可获得的带宽的数量有限而造成瓶颈。例如,在其中总线是PIC Express ( PCIE )总线的实施例中,带宽可以被限制在大约1兆比特 每秒(Gb/sec)。然而,在执行流程图100的方法的系统中在总线上 传送的数据的量是非常大的,特别是当将被显示的画面是由大量的像 素组成的高解析率画面时。此外,上述的流程图100的方法本身是低 效率的,因为尽管基于多釆样的图形去阶梯是一种用于边缘增强的技
术,在两个GPU之间传送的大量数据与边缘像素完全无关。
0032以下描述一种用于在使用多GPU的图形处理系统中执 行图形去阶梯的改进的方法和设备。改进的方法和设备减少了在多个 GPU之间所传送的数据量和/或改进了这种数据传送的效率。改进了的
关联的数据的手段。
B.根椐本发明的实施例的图形处理系统
0033图2是根据本发明的实施例的使用多GPU执行图形去 阶梯的示例图形处理系统200的框图。图形处理系统200包括各种在 主机计算机系统上执行并且与图形硬件单元、如第一GPU A208和第 二 GPU B210交互以绘制用于输出到显示器230的画面的软件单元,
12如应用程序202、应用程序编程接口 (API) 204和驱动程序206。图 形硬件单元位于安装在主机计算机系统上的一个或多个图形卡上,尽 管本发明不仅局限与此。现在将详细描述系统200的各个单元。
0034如在图2中所示,系统200包括应用程序202。应用程 序202是需要图形处理能力的终端用户应用程序,如视频游戏应用程 序。应用程序202使用API 204通信。在图形处理环境中多个API是 可用的。API作为应用程序软件、如应用程序202和其上运4亍应用程 序软件的图形硬件之间的中介而被开发。使用新的芯片集和甚至以增 长的速度显现的全新的硬件技术,对于应用程序开发者来说考虑并且 利用最新的硬件特征是困难的。特别是为每个可预知的硬件的集合编 写应用程序变得不可能。API避免了应用程序变得太过对于硬件特定。 应用程序可以把图形数据和命令以标准化的格式输出到API,而不是 直接输出到硬件。可用的API的例子包括DirectX⑧或者OpenGL⑧。 API204可以是用于运行图形应用程序的可用的API中的任意一种。
0035API 204与驱动程序206相通信。驱动程序206通常由 图形硬件的制造商编写的,并且把从API接收的标准代码翻译成可被 图形硬件理解的本机格式。驱动程序还接收输入以指导图形硬件的性 能设置。例如,用户可以通过用户接口 (UI)、如和驱动程序206 — 起被提供给用户的图形用户接口 (GUI)提供输入。与这里描述的实 施例特别相关的一个性能设置是图形硬件使用用于执行图形去阶梯的 多采样因子。
0036图形硬件包括两个图形处理单元,GPU A 208和GPU B 210。在该实施例中,GPU A 208和GUP B 210是分别包括一个图形 处理器和其它相关联硬件的图形卡,尽管本发明不仅局限于此。而是, 如在此所使用的,词语GPU泛指任何装置、装置的集合或者被配置为 执行图形处理任务的装置的子集(例如在集成电路芯片中的处理内 核)c
0037驱动器206发布命令和数据到GPU A 208和GPU B 210。 GPU A 208和GPU B 210从驱动器206通过各自的环形緩沖器A 222和B 224接收命令和数据。这些命令指示GPU A 208和GPU B 210执 行各种对数椐的操作,从而最终产生用于输出到显示器230的绘制画 面。如在图2中所示,GPU A 208和GPUB210均具有到各自的本地 图形存储器A 226和B 228的访问入口,用于执行这种操作。此外, 驱动程序206、 GPU A 208和GPU B 210均具有到共享存储器205的 访问入口 。 GUP和共享存储器205之间的通信在PCI Express( PCIE ) 总线234上被执行。此外,GPUA 208和GPUB210彼此间可以使用 点到点协议在PCIE总线234上直接通信。
0038这里将更加详细地进行描迷,由GPU A 208和GPU B 210在驱动程序206的指令下执行地操作包括基于多采样图形去阶梯 地操作。根据这个操作,GPUA 208和GPUB210中的每个并行地处 理将要显示的相同画面。特别地,GPU A 208和GPUB210中的每个 通过不同的多采样模式的各个应用程序绘制相同画面的不同版本,其 中由驱动器206选择不同的多釆样模式。在该实施例中,驱动器206 可编程为指导GPU A 208和GPU B 210通过可选择的加倍因子执行多 采样。
0039还根据该基于多采样的图形去阶梯操作,由GPU B 210 所执行的绘制过程得到的画面数据通过PCIE总线234被传送到GPU A 208。作为位于GPU A 208上的互连模块(IM ) 212的部件的合成 器操作用于经由线性混合把从GPU B 210传送的画面数据与由GUP A 208生成的画面数据相结合,以获得将要显示的最终画面。在将要 被显示的画面中,多采样因子由GPU的数目有效地相乘。例如,如果 每个GPU执行2X多采样,将被显示的画面包括4X多釆样。
0040这里将更加详细地进行描述,在PCIE总线234上传送 由绘制过程产生的画面数据之前,GPU B 210首先在绘制画面中执行 识别边缘像素和非边缘(或者"内部")像素的操作。当画面数据被 从GPU B 210传送到GPU A 208时,与边缘像素相关联的采样数据被 传送但是与非边缘像素相关联的采样数据不被传送。与非边缘像素相 关联的采样数据可以被排除,因为这里描述的多釆样操作被用于边缘增强,这样仅影响边缘像素的呈现。因此,在由GPUB210所绘制的 画面中的非边缘像素将与在由GPU A 208所绘制的画面中的非边缘像 素相同。因此,没有必要传送和结合与这些像素相关联的数据。
0041上述把与边缘像素相关联的釆样数据从GPU B 210传送 到GPU A 208、但是排除了与非边缘像素相关联的采样数据的技术将 在以下更加详细地描述。该技术是有益的,因为它可操作用于减少将 要在PCIE总线234上传送的数据量,从而增加了传送操作的速度, 使得该操作不会变成处理瓶颈。另外,通过减少将要在PCIE总线234 上传送的数据量,其它共用相同总线的部件可使用更多带宽。
0042需要注意的是,示例图形处理系统200已经通过例子的 方式进行了描述,并且不试图限制本发明。基于这里提供的指导,本 领域的技术人员应理解本发明可以在任何多GPU彼此通信并且被用 于执行图形去阶梯的系统中实现。该类型的各种系统详细地在共有的、 同时待审的U.S.专利申请No.11/140,156中描述,其标题是 "Antialiasing System and Method",发明人为Preetham等,申请日 为2005年5月27日,这里引入参考其全部内容。基于这里提供的指
里描述的图形去阶梯技术。
C.根据本发明的实施例的图形去阶梯方法0043图3是根据 本发明的实施例的在使用多GPU的图形处理系统中用于执行图形去 阶梯的方法300的流程图。将参考以上参考图2描述的示例图形处理 系统200描述方法300,尽管本发明不仅局限于此。在图3中,流程 图的左手边表示由GPU A 208执行的处理步骤,而右手边表示由GPU B 210执行的处理步骤。
0044现在将描述由GPU A 208执行的头四个处理步骤。在步 骤302中,GPU A 208建立在将要绘制的画面中对每个像素进行多采 样的第一模式,其中该模式由"多采样模式A"表示。图4表示可以 用作多采样模式A的多采样模式400。多釆样模式400用于对由12 x 12个釆样位置组成的像素进行2X多采样。在图4中,像素的中心被表示为固体黑框,而为2X采样所选择的采样位置用斜线填充。本领 域的技术人员应理解可以使用其它多种像素尺寸和采样位置。
0045在步骤306, GPUA绘制画面,其中绘制画面包括把针 对多采样图形去阶梯(AA )緩冲器中的每个像素所选择的采样存储到 本地图形存储器A中。如在此所使用的,词组"存储采样"包括存储 诸如与采样相关联的颜色数据等的数据。
0046在步骤310, GPU A 208把存储在AA緩冲器中的多个 采样的每个集合解析成由"绘图緩沖器A"表示的位于本地图形存储 器A 226内的绘图緩沖器中的单个采样。 一种用于把多个采样解析成 单个采样的方法需要在线性空间中平均多个采样,尽管本发明不仅局 限于此。该操作的更多细节在共有的、同时待审的U.S.专利申请 No.11/140,156中提供,标题是"Antialiasing Method and System", 发明人为Preetham,申请日为2005年5月27日,这里引入参考其全 部内容。
0047在步骤314, GPUA 208执行识别在绘图緩冲器A中所 呈现的像素中哪些是边缘像素的操作。下面将参考图7-9,10A和10B 详细描述用于执行这种操作的一种特定方法,尽管本发明不仅局限于 该特定方法。该操作的输出是一个数据集合,这里称为"边缘数据掩 码",其被存储在本地图形存储器A 226中并且识别在绘图緩冲器A 中存储的画面中哪些像素是边缘像素。如在此所使用的,词组"识别
边缘像素"可以包括在一个像素接一个像素的基础上识别边缘像素或 者识别包括至少一个边缘像素的像素的矩形方块或者"矩形块"。
0048现在将描迷由GPUB210执行的头四个处理步骤。优选 地,这头四个步骤基本上与由GPU A 208执行的头四个处理步骤并行 地被执行。尽管本发明不仅局限于此。
0049由GPU B 210执行的头三个处理步骤(步骤304、 308 和312 )与由GPU A 208执行的头三个处理步骤(步骤302、 306和 310)基本上相同,除了使用由"采样模式B"表示的不同的多采样模 式来绘制画面,对每个像素所选择的采样被存储在位于本地图形存储
16器B 228内的AA緩冲器中,并且画面被解析到由"绘图緩冲器B" 表示的绘图緩冲器其位于本地图形存储器B 228内。图5表示可以被 用作多采样模式B的示例多采样模式500。多采样才莫式500用于对由 12xl2个采样位置组成的像素进行2X多采样。在图5中,像素的中 心被表示为实心的黑框,而为2X多采样所选择的采样位置用棋盘形 图案填充。
0050在步骤316, GPUB210执行识别在绘图緩冲器B中呈 现的哪些像素是边缘像素的操作。下面将参考图7-9, IOA和IOB详 细描述用于执行这种操作的一种特别方法,尽管本发明不仅局限于该 特别方法。该操作的输出是存储在本地图形存储器B 228中的边缘数 据掩码并且识别存储在绘图緩沖器B中的画面中哪些像素是边缘像 素。
0051在此处,GPUA 208已经生成识别存储在绘图緩冲器A 中的画面中哪些像素是边缘像素的边缘像素掩码,并且GPUB210已 经生成识别存储在绘图緩冲器B中的画面中哪些像素是边缘像素的边 缘像素掩码。在步骤318, GPU A 208把它的边缘像素掩码传送到GPU B210,以及在步骤320,来自GPU A 208的边缘像素掩码与来自GPU B210的边缘掩码在本地存储器中结合,以生成结合的边缘像素掩码。 该结合的边缘像素掩码是单个边缘像素掩码的合并(与相交相反), 因为它把一个像素识别为边缘像素,如果该像素已经由GPU A 208或 者GPUB210识别为边缘像素。在优选实施例中,这种结合通过把从 GPU A 208传送的边缘像素掩码直接叠加到由GPU B 210存储在本地 存储器中的边缘像素上来实现,使得步骤318和320实际上结合成一 个步骤。
0052在步骤322, GPU A 208在位于本地图形存储器A 226 内的临时緩冲器(由"临时緩沖器A"表示)中存储绘图緩冲器A的 内容的拷贝。在步骤324, GPUB210仅经由PCIE总线234传送在绘 图緩沖器B中由结合的边缘像素掩码识别为边缘像素的那些像素的拷 贝以叠加到存储在临时緩冲器A中的数据上。实际上,GPU B 210从对应于由结合的边缘像素掩码所指定的非边缘像素的该传送数据排除
或者"屏蔽"。该处理步骤的最终结果是临时緩沖器A保持由GPUB 210绘制的画面的完整表示。这是因为由GPU A 208绘制的非边缘像 素,其拷贝位于临时緩冲器A并且在步骤318期间不被重叠,这些非 边缘像素与由GPUB210绘制的非边缘像素相同,因为多采样/解析操 作仅改变边缘像素的颜色。
0053现在将描述由GPUA210执行的最后两个步骤。在步骤 326,位于与GPU A 208相同的图形卡上的IM 212的合成器部分执行 在绘图緩冲器A中呈现的每个像素与在临时緩冲器A中呈现的对应像 素的线性混合以生成将被显示的画面。在步骤328,将被显示的画面 被输出到显示装置230。画面有效地把由每个GPU应用的多釆样的数 目加倍。这在图6中被示出,其示出了从把使用2X多采样模式400 的像素与使用2X多采样模式500的结合得到的4X多采样模式600。
0054因为方法300不把与非边缘像素相关联的采样数据从 GPU B 210传送到GPU A 208,它有益地减少了在PCIE总线234上 传送的数据量。因此,传送操作的速度被加快了,使得操作不会变成 处理的瓶颈。此外,该方法使其它共用相同总线的部件可使用更多带 宽。
D.根据本发明的实施例识别边缘像素的方法
0055如上述参考图3的流程图所讨论的,在步骤314, GPU A 208执行识别存储在绘图緩冲器A中的画面中的边缘像素的操作,以 及在步骤316, GPU B 210执行识别存储在绘图緩冲器B中的画面中 的边缘像素的操作。在一个实施例中,GPU A 208和GPU B 210均使 用图形处理器内部的存储器、这里被称为矩形块格式表(TFT)执行 该操作,其跟踪在与将被显示的画面中的每个像素相关联的釆样颜色 数据是被完全压缩、部分压缩还是未压缩。该压缩方案的完整描述和 TFT的使用在共有的、同时待审的U.S.专利申请No.10/672,707中阐 述,标题是"Method and Apparatus for Compression of Multi-Sample Anti-Aliasing Color Data",申请日为2003年9月26日,这里引入参考其全部内容。
1.根据本发明的实施例的采样颜色数据压缩
0056图7示出了根据U.S,专利申请No.10/672,707的指导的 示例性处理器和存储器配置700。在本发明的一个实施例中,该配置 未由多GPU系统中的至少一个GPU使用并且^皮补充以通过将在下面 更加详细描述的方式把边缘像素从非边缘像素区分出来。
0057如在图7中所示,图形处理器703可通信地被连接到高 速緩冲存储器702,其接着可通信地被连接到主存储器701。在绘制用 于显示的画面的过程期间,像素数据被从主存储器701传送到高速緩 沖存储器702供图形处理器703使用。如U.S.专利申请No.腸72,707 中所阐述的,像素数据被作为多个相邻像素的矩形方块或者"矩形块" 传送。在图7中所示的例子中,像素以相邻像素的2x2矩形块传送, 其中像素由A、 B、 C和D表示。然而,对于本领域的技术人员来说, 明显可以使用其它尺寸的矩形块。
0058在矩形块中的每个像素都已经被多釆样了,这样与每个 像素相关联的数据包括对应于在像素中的每个釆样的颜色值。在U.S. 专利申请No.10/672,707中阐述的一个例子中,每个像素包括四个采 样,并且每个采样与一个颜色值相关联。颜色值的长度可以是一个字。
0059在从主存储器701到高度緩冲存储器702的传送期间, 每个矩形块被分析,并且基于分析的结果,在矩形块中与每个像素相 关联的颜色值可以被压缩。根据申请No.10/672,707中所描述的实施 例,所分析的矩形块可以以三种方式之一处理它可以是"完全压缩"、 "部分压缩,,或者它可以保持未压缩。
0060如果在每个多采样的像素中的所有采样颜色相同,选择 完全压缩。例如,这可能是当矩形块被单个三角形完全覆盖时发生。 当矩形块被完全压缩时,为矩形块中的每个像素仅存储一个颜色值。
0061如果在每个多采样的像素中的所有采样是仅有的两种颜 色之一,选择部分压缩。例如,这可能是当矩形块由不多于两个三角 形覆盖时发生。当矩形块被部分压缩时,由矩形块中的每个像素存储
19两个颜色值,并且使用指针对压缩进行编码。图8示出了 4x多采样 像素A、 B、 C和D的部分压缩2x2的矩形块的示例指针的比特位。 在指针中的每个比特或者是"0",其意味对于那个像素使用第一颜色 (称为"原始颜色"),或者是"1",其意味对于那个像素使用第二 颜色(称为"替代颜色")。例如在像素A中,对于像素A所有四个 采样都是原始颜色。因此所有四个比特位被编码为"0"。在像素C 中,对于像素C头三个采样都是原始颜色。这样头三个比特位被编码 为"0"。最后一位被编码为'T,,以表示像素C的第四个采样使用 替代颜色。同样的逻辑对于像素B和C适用。使用该指针,每个像素 仅需存储两个颜色值,其中一个颜色值针对原始颜色和另一个针对替 代颜色。
0062如果在多釆样的像素的任何一个中的子像素可以多于两
种颜色,颜色数据保持未压缩。例如,如果矩形块由超过两种颜色覆
盖这可能会发生。在该例子中,为矩形块中的每个像素中的每个采样 存储单个颜色值。
0063根据申请No.10/672,707的指导,图形处理器"703包括 称作矩形块格式表(TFT) 704的片上存储器,以跟踪存储在高速緩 沖存储器702中的矩形块数据的格式。存储在高速緩冲存储器702中 的矩形块当需要处理时被传送到图形处理器703。在图形处理器703 中矩形块不需要解压缩,因为图形处理器703使用TFT7(M跟踪到来 的矩形块的格式。图形处理器703可以对矩形块以它的压缩格式操作, 从而加速整个操作。
0064在一个实施例中,对于给定画面中的每个矩形块存在 TFT 704中的条目。每个条目具有两位比特压缩编码,以表明特定矩 形块的格式。在一个实施例中,两位比特对以下四个状态进行编码
1. 清零
2. 完全压缩
3. 部分压缩
4. 未压缩。0065在TFT中的两位比特压缩编码提醒处理器来自高速緩 冲存储器的矩形块数据的格式。第一状态表明其中高速緩冲存储器被 置于对应于缺省空数据状态的"清零值"的状态。TFT条目的第二、 第三和第四状态描迷矩形块的前述三种压缩级别完全压缩、部分压 缩和未压缩。通过两比特编码,图形处理器703可以适当地处理从高 速緩沖存储器702接收到的数据。
0066如上所述,在图2中所示的实施例种的GPU A 208和 GPU B 210执行解析操作以把多个采样结合在一起以得到代表给定像 素的单个采样(例如参见图3中的步骤310和312和相关的文本)。 换句话说,在解析操作期间,数据从本地存储器被拉出,然后把每个 像素仅剩余的像素数据写回本地存储器(即没有子像素或者采样数据 剩余)
0067使用上迷的压缩方案,解析操作更加有效地被执行。其 中解析操作被执行的方式取决于矩形块的压缩级别。第一,如果矩形
块被完全压缩,即每个像素仅有一种颜色,不需要作什么,并且在矩 形块中的每个像素被简单地写回到存储器中。第二,如果矩形块被部 分地压缩或者未压缩,即在每个像素中存在不同的颜色釆样,那么采 样被结合以解析成最终像素颜色。在一个实施例中,具有相同颜色的 采样对被处理一次。例如,对于由图8的指针所表示的矩形块,像素 C具有一种颜色的三个釆样和另一种颜色的另一个采样。解析操作将 把与头三个采样相关联的单个颜色值乘以三,并且把它与剩余采样的 颜色值结合一次。然后,把所结合的值除以四,以荻得最终像素颜色 值。这节省了不得不读取相同的颜色值多次的过程。对于未压缩的矩 形块,与每个采样相关联的颜色值被加在一起并且结果以常规的方式
被釆样的数目除。
2.根据本发明的实施例的矩形块格式表(TFT)的使用和区分边缘和 非边缘像素的解析操作
0068在本发明的一个实施例中,在多GPU系统中的至少一 个GPU补充TFT和解析在上述部分中讨论的用于区分在将被显示的画面中的边缘和非边缘像素的解析操作。该区分允许GPU的避免当执 行如这里其它部分所描述的基于多GPU图形去阶梯操作时把与非边 缘像素相关联的数据发送到另一个GPU。
0069TFT 704包括关于将在将被显示的画面中的矩形块是完 全压缩、部分压缩或者未压缩的信息。当矩形块被完全压缩时,保证 在那个矩形块中的所有像素是内部的或者非边缘像素。相反,当矩形 块仅是部分压缩或者未压缩时,这意味在那个矩形块中的至少一些像 素是边缘像素。因此,存储在TFT中的信息可以辅助确定矩形块是否 仅包含非边缘像素或者包含一个或多个边缘像素。然而,因为TFT 704 作为图形处理器703的片上存储器被实现,不容易直接读取。
0070图9示出了用于使用前述的解析命令从TFT 704获取用 于确定矩形块是否仅包含非边缘像素或者包含至少一个边缘像素的信 息的方法的流程图900。流程图900的方法可以由图2的GPU A 208 使用,以执行流程图300的步骤314,和/或由图2的GPU A210使用, 以执行流程图300的步骤316。
0071在步骤902,"边缘检测"图形去阶梯(AA)緩沖器被 置入到本地图形存储器中。边缘检测AA緩沖器不被置入表示要显示 的实际画面的数据(其被存储在绘图緩冲器A或者绘图緩冲器B中)。
而是,边缘检测AA緩冲器被置入预定的多采样的像素数据,其当根 据存储在TFT 704中数椐解析时,如果在TFT 704中的矩形块条目表 明矩形块被完全压缩,则将导致某种特定的颜色值,以及如果在TFT 704中的矩形块条目表明矩形块被部分压缩,则或者未压缩将导致不 同的颜色值。因为边缘检测AA緩沖器不包含代表要显示的实际画面 的数椐,它还可以被认为是"伪(dummy)"緩冲器。
0072根据本发明的一个实施例,2-采样边缘检测AA緩沖 器被用作与将被显示的画面具有相同的尺寸和深度。对于在2-采样
边缘检测AA緩沖器中的每个像素,"0"被存储在第一采样位置"1" 被存储在第二采样位置。2 -釆样边缘检测AA緩冲器可以被使用,不 管其中将被显示的画面被存储的绘图緩冲器B的采样深度。尽管这里20078
2 -采样边缘检测AA緩沖器已经通过例子被描述了 ,这种描述不试图 局限本发明,并且本领域的技术人员应理解也可以使用具有不同采样 深度的边缘緩沖器(例如4-采样边缘检测緩冲器)。
0073在步骤904, GPUB210使用存储在TFT 704中的数据 把边缘检测AA緩冲器解析到位于本地图形存储器中的临时緩冲器。 为了更好地解释该步骤,图IOA示出了在上述的2-釆样边缘检测AA 緩冲器中的像素1002的2 x 2矩形块的解析操作的应用,其中在TFT 704中的条目表明在将被显示的画面中的相应矩形块被完全压缩。如 在图10A中所示,其中两个采样位置中的第一个具有分配的颜色值 "0",两个采样位置中的第二个具有分配的颜色值"1"。在解析操 作的应用之后,每对采样被解析成在临时緩沖器内的所解析的2x2矩 形块1004中的对应的代表性采样。因为TFT 704表明将被显示的画 面中的对应的矩形块被压缩,图形处理器703通过假设与第一采样位 置相关联的颜色值也是第二釆样位置的颜色值而应用解析命令,这样 每个像素的所解析的采样颜色是零。
0074相反,图10B示出了在上述的2-采样边缘检测AA緩 沖器中的像素1006的2 x 2矩形块的解析操作的应用,其中在TFT 704
者未压缩。就像图10A的矩形块1002,在矩形块1006中的每个像素 A、 B、 C和D具有2个采样位置,其中两个采样位置中的第一个具有 分配的颜色值"O",两个采样位置中的第二个具有分配的颜色值"1"。 在解析操作应用之后,每对采样被解析成在临时緩沖器内的所解析的 2x2矩形块1008中的对应的代表性采样。因为TFT 704表明在将被 显示的画面中对应的矩形块被部分压缩或者未压缩,由图形处理器702 对解析命令的应用包括把与第二采样位置相关联的颜色值与第一釆样
位置的颜色值平均。结果,在所解析的矩形块1008中的每个像素的至 少一个所得到的颜色将为非零。图IOB表示其中在将被显示的画面中 的对应的矩形块中的每个像素是边缘像素。结果,在所解析的矩形块 1008中的每个像素的每个颜色值是非零。
20075在步骤906,存储在临时緩冲器中的数据被用作边缘像 素掩码。如上参考图3所述,GPU A 208和GPU B 210中的每个生成 一个这样的边缘像素掩码。通过把由GPU A 208所生成的边缘像素掩 码叠加到由GPU B 210生成的边缘像素掩码上从而将前一个边缘像素 掩码与后一个边缘像素掩码结合起来。然后所结合的边缘像素掩码被 用于把矩形块从存储在绘图緩冲器B中的画面复制到位于本地图形存 储A 226中的临时緩冲器A。如果在所结合的边缘像素掩码中的矩形 块具有全零的颜色值,鄱么在绘图緩沖器B中对应的矩形块从从绘图 緩冲器B到临时緩冲器A的复制中被"屏蔽"或者被排除。相反,如 果在所结合的边缘像素掩码中的矩形块具有至少一个非零颜色值,那 么在绘图緩沖器B中的对应的矩形块被从绘图緩冲器B "传递"或复 制到临时緩沖器A。这一步骤的最终结果是只有在包含一个或多个边 缘像素的绘图緩沖器B中的矩形块或者对应于包含一个或多个边缘像 素的绘图緩沖器A的矩形块的矩形块被从绘图緩冲器B复制到临时緩 沖器A上。需要注意的是,在其中TFT 704不包含在将被显示的画面 中的每个矩形块的条目的实施例中,没有条目的矩形块应该被当作它 们包括边缘像素来对待,并且应该整体地从绘图緩冲器B被传送到临 时緩冲器A上。
0076如上所述,本发明的实施例分配具有绘制目标的尺寸和 深度的2-采样边缘检测AA緩沖器。然而,这种实施例可能消耗大 量的存储资源。据此,替代实施例使用具有小于绘制目标的尺寸的2 -釆样边缘检测AA緩沖器。例如,2 -采样边缘检测AA緩沖器可能 只有128xl28像素。根据这种实施例,步骤卯4被重复多次,有效地 滑动解析"窗口"以生成临时緩冲器的每个128 x 128部分。另一个替 代实施例使用小的2-采样边缘检测AA緩冲器并且使用存储器映射 硬件把该緩冲器映射到较大的解析緩冲器上(即临时緩沖器)。
0077在本发明的一个特别的实施例中,为了减少在图3的流 程图的步骤318中种GPU A 208和GPU B 210之间发送的数据量,由 GPU A 208和GPU B 210所生成的边缘像素掩码被置于高压缩数据格式中。例如,假设为GPU A 208存储边缘像素掩码的临时緩沖器是32 比特每像素(bpp)。根据使用2x2矩形块的示例性实施例,以及其 中图形硬件不能够简单地辨别在每个2x2矩形块中的哪些像素是边 缘像素,这种緩冲器被下采样,使得每个2 x 2矩形块由单个像素代表。 然后黑色的像素将对应于不包含边缘像素的2x2矩形块。当下釆样 时,还进行从32bpp到8bpp的格式转换,以在后续保留带宽。然后 第二下采样被执行,使得现在单个像素对应于在原始像素掩码中的4 x4矩形块。在一个实施例中,希望其中压缩在4x4矩形块上进行并 且在单个矩形块中的像素以一种与原始AA緩冲器中相似的方式被编 码。然后这种双下采样和所转换的緩冲器被用作在步骤318中从GPU A 208传送到GPUB210的边缘像素掩码。当然,只传送非零的像素, 因为这种非零像素代表具有边缘的4x4矩形块。这种传送的目标是包 括GPU B 210自己的双下采样和所转换的边缘像素掩码的临时緩冲 器,使得GPU A 208的边缘被加到GPU B 210的边缘。这种重叠导致 在图3的流程图300的步骤324中被用于从GPU A 208到GPU B 210 传送颜色数据的结合的边缘像素掩码。
0078需要注意的是,把边缘像素从非边缘像素中区别开来的 上述方法的有效性不局限于在多GPU系统中执行基于多抽样的图形 去阶梯。例如,该方法可以被有益地用在任何试图在所绘制的图像中 有效地辨别和增强边缘的图形处理系统中。此外,该方法可以被用于 收集关于在给定画面中边缘的数量的统计。这些例子不试图限制,对 于本领域的技术人员来说前述方法的其它应用应该是明显的。 E.示例计算机系统实施例
0079图11描述了可以被利用以实现本发明的示例计算机系 统1100。示例计算机系统1100可以包括例如基于标准个人计算机 (PC)的系统或者如笔记本或者手提计算机装置的移动装置。然而, 仅通过例子但不局限于此,提供计算机系统1100的以下描述。
0080如在图11中所示,示例计算机系统IIOO包括用于执行
软件例程的处理器no4。尽管为了清楚起见示出单个处理器,但计算机系统1100也可以包括多处理器系统。处理器1104被连接到通信基 础设施1106,用于与计算机系统1100的其它部件通信。通信基础设 施1106可以例如包括通信总线、交叉开关(crossbar)或者网络。
0081计算机系统IOO还包括主存储器1108,如随机访问存储 器(RAM)和辅助存储器1110。辅助存储器1110例如可以包括硬盘 驱动器1112和/或可移动存储器驱动器1114,其可以包括软盘驱动器、 磁带驱动器、光盘驱动器或类似设备。可移动存储器驱动器1114以一 种公知的方式从可移动存储单元1118读取和/或写入其中。可移动存 储单元1118可以包括软盘、磁带、光盘或者类似的被从可移动存储器 驱动器1114读取或者写入其中的介质。本领域的技术人员应该理解可 移动存储单元1118包括计算机可用存储介质,其中存储计算机软件和 /或数据。
0082在替代实施例中,辅助存储器1110可以包括其它类似 的用于允许计算机程序或者其它指令被栽入计算机系统1100的装置。 这种装置例如可以包括可移动存储单元1122和接口 1120。可移动存 储单元1122和接口 1120的例子包括程序盒和盒式接口 (如在视频游 戏控制台装置中所使用的),可移动存储芯片(如EPROM或者 PROM),以及相关联的插槽和其它可移动存储单元1122和允许软件 和数据从可移动存储单元1122被传送到计算机系统1100的接口 1120。
0083计算机系统1100还包括至少一个通信接口 ll24。通信 接口 1124允许软件和数据在计算机系统1100和外部装置之间经由通 信路径1126传送。特别地,通信接口 1124允许数据在计算机系统1100 和如公共数据或私有数据通信网络的数椐通信网络之间被传送。通信 接口 1124的例子可以包括调制解调器、网络接口 (如以太网卡)、通 信端口等。经由通信接口 1124传送的軟件和数据以可以是电子的、电 磁的、光的或能够由通信接口 1124接收的其它信号的信号形式。这些 信号经由通信路径1126被提供给通信接口 。
0084如在图U中所示,计算机系统1100包括音频接口 1132, 用于执行用于经由相关联的扬声器1134播放音频内容的操作。0085计算机系统1100还包括图形处理系统1102,其执行用 于把图像绘制到相关联的显示器1130上的操作。图形处理系统1102 可以包括上述参考图2描述的图形硬件单元,如第一GPU A 208和第 二GPUB210,尽管本发明不仅局限于此。在一个实施例中,图形处 理系统1102被配置为执行本发明的特征,如图3的流程图300的步骤 和/或图9的流程图900的步骤。图形处理系统1102可以在由处理器 1104执行的计算机程序的指导下和/或在由图形处理系统1102中的一 个或者多个图形处理器执行的计算机程序的指导下执行这些步骤。
0086如在此使用的,术语"计算机程序产品"可以部分指可 移动存储单元1118、可移动存储单元1122、在硬盘驱动器1112中安 装的硬盘或者在通信路径1126 (无线链接或者电缆)上有把软件加载 到通信接口 1124的栽波。计算机可用介质可以包括磁介质、光介质或 者其它可读介质或发送载波或者其它信号的介质。这些计算机产品是 用于给计算机1100提供软件的装置。
0087计算机程序(也被称作计算机控制逻辑)可以被存储在 主存储器1108、辅助存储器1110或者在图形处理系统1102内的存储 器中。计算机程序还可以经由通信接口 11M被接收。当执行这种计算 机程序时能够使计算机系统1100、特别是图形处理系统1102执行这 里讨论的本发明的一个或多个特征。特别地,当执行计算机程序时能 够使计算机系统1100、特别是图形处理系统1102执行本发明的特征。 因此,这种计算机程序代表计算机系统1100的控制器。
0088用于实现本发明的软件可以使用可移动存储驱动器 1114、硬盘驱动器1112或者接口 1120被存储在计算机产品中并且被 载入到计算机系统IIOO中。作为替代,计算机程序产品可以在通信路 径1126上被下载到计算机系统1100。当由处理器1104和/或在图形处 理系统1102中的部件执行软件时,使得那些部件执行在此描述的本发 明的功能。 F.结论
0089已经描述了本发明的各种实施例,应该理解它们仅通过
27例子的方式被呈现,而不局限于此。相关领域的技术人员应该理解这 里可以进行各种形式和细节的改变而不偏离如在附加的权利要求中所 限定的本发明的实质或者范围。因此,本发明的外延和范围应该不由 任何上述的示例性实施例限制,但是仅应该根据以下的权利要求和它 们的等价被定义。
权利要求
1. 一种用于在系统中执行基于多采样图形去阶梯的方法,所述系统包括第一图形处理单元(GPU)和第二GPU,包括在所述第一GPU中使用第一多采样模式绘制画面的第一版本;在所述第二GPU中使用第二多采样模式绘制所述画面的第二版本;识别所述画面的所述第二版本中的边缘像素;和把在所述画面的所述第一版本中的像素与那些仅在所述画面的所述第二版本中已经被识别为边缘像素的像素结合起来,以生成结合的画面。
2. 如权利要求1中所述的方法,其中在所述第一 GPU中使用 所述第一多釆样模式绘制所述画面的所述第一版本的包括根据所述第 一多采样模式采样所述画面的每个像素,以获得每个 像素的多个第一釆样;和为每个像素解析所述多个第 一采样,以生成所述画面的所述笫一 版本的像素。
3. 如权利要求2中所述的方法,其中在所述第二 GPU中使用 所述第二多采样模式绘制所述画面的所述第二版本包括根据所述第二多采样模式釆样所述画面中的每个像素,以获得每个像素的多个第二采样;和为每个像素解析所述多个第二采样,以生成所述画面的所述第二 版本的像素。
4. 如上述权利要求中任一项中所述的方法,其中识别所述画面 的所述第二版本中的边缘像素包括访问表明在所述画面的所述第二版本中的 一 个像素是否被压缩的 数据;和如果所访问的数椐表明在所述画面该第二版本中的所述像素没有 被压缩,则把在所述画面的所述第二版本中的该像素识别为边缘像素。
5. 如上述权利要求中任一项中所述的方法,其中把在所述画面 的所述第一版本中的像素与那些仅在所述画面的所述第二版本中已经 被识別为边缘像素的像素结合起来包括基于与在所述第二画面的所述第二版本中的所述像素相关联的压缩数据生成掩码;把所述掩码应用到所述画面的所述第二版本上;和 仅在总线上传送那些在所述画面的所述第二版本中的没有被掩码所覆盖的像素,从而与所述画面的所述第一版本中的像素结合
6. 如权利要求1到4中任何一项中所述的方法,其中把在所述 画面的所述第一版本中的像素与那些仅在所述第二画面的所述第二版 本中的已经被识别为边缘像素的像素结合起来包括把在所述画面的所述第一版本中的像素像素与那些仅在所述第二 画面的所述第二版本中的已经被识别为边缘像素的像素线性混合。
7. —种图形处理系统,包括第一图形处理单元(GPU),被配置为使用第一多采样模式绘制 画面的第一版本;第二图形处理单元(GPU),被配置为使用第二多采样模式绘制 所述画面的第二版本;和连接所述第一 GPU和所述第二 GPU的总线;其中所述第二 GPU还被配置为识别在所述画面的所述第二版本 中的边缘像素,并且仅把那些在所述画面的所述第二版本中已经被识 别为边缘像素的像素在所述总线上传送到所述第一 GPU,和其中所述第一 GPU还被配置为把在所述画面的所述第一版本中 的像素与从所述第二GPU传送的像素结合起来以生成结合画面。
8. 如权利要求7中所述的系统,其中所述总线包括PCI-Express总线。
9. 如权利要求7或8中所述的系统,其中所述第一GPU被配 置为根据所述第一采样模式采样所述画面中的每个像素以获得每个像 素的多个第一采样,并且解析每个像素的所述多个第一像素以生成所述画面的所述第 一版本的像素。
10. 如权利要求9中所述的系统,其中所述第二GPU被配置 为根据所述第二采样模式采样所示画面中的每个像素以获得每个像素 的多个第二采样,并且解析每个像素的所述多个第二采样以生成所述 画面的所述第二版本的像素。
11. 如权利要求7到10中任一项中所述的系统,其中所述第 二 GPU包括存储器;其中所述第二 GPU还被配置为访问存储在所述存储器中的表, 并且如果所述表表明在所述画面中的所述第二版本中的像素没有被压 缩,则把所述画面的所述第二版本中的该像素识別为边缘像素。
12. 如权利要求7到11中任一项中所述的系统,其中所述第 二 GPU还被配置为基于与在所述画面的所述第二版本中的像素相关 联的压缩数据生成掩码,对所述画面的所述第二版本应用所述掩码并 且仅把那些在所述画面的所述第二版本中没有被所述掩码所覆盖的像 素在所述总线上传送到所述第一 GPU。
13. 如权利要求7到12中任一项中所述的系统,其中第一 GPU包括合成器,所述合成器被配置为把所述画面的所述第一版本中 的像素与从所述第二GPU传送的像素线性混合以生成所迷结合画面。
14. 一种用于在所绘制的图像中识别边缘像素的方法,所绘制 的图像由多个矩形块组成,其中每个多个矩形块由多个像素组成,所 述方法包括压缩;响应于确定所选择的矩形块被完全压缩,把所选择的矩形块识别为仅包含非边缘像素;和响应于确定所选择矩形块未被完全压缩,把所选择的矩形块识别 为包含一个或多个边缘像素。
15. 如权利要求14中所述的方法,其中访问数据以确定所选择的矩形块是否被完全压缩包括访问对应于所选择的矩形块的表中的条目,其中所述条目表明所 迷选择的矩形块是被完全压缩、部分压缩还是未压缩。
16. 如权利要求15中所述的方法,其中访问数据以确定是否 所选择的像素块被完全压缩还包括过解析的矩形块;和 "、 '、 、 、基于与在经过解析的矩形块中的像素相关联的一个或多个颜色值 确定选择的矩形块是否被完全压缩。
17. —种计算机程序产品,包括有形的计算机可用介质,在所 述计算机可用介质中存储有控制逻辑,所述控制逻辑用于使图形处理 器识别由多个矩形块组成的绘制的图像中的边缘像素,所述多个矩形 块中的每个由多个像素组成,所述控制逻辑包括计算机可读程序代码 装置,用于使所述图形处理器实现根据权利要求14到16中的任何一 项所述的方法。
18. —种用于在系统执行基于多釆样图形去阶梯的方法,所述 系统包括第一图形处理单元(GPU)和第二图形处理器单元GPU,所 述方法包括在所述第一 GPU中使用第 一多采样模式绘制画面的第 一版本; 在所述第二 GPU中使用第二多采样模式绘制与画面的第二版本相关联的边缘像素;把所述边缘像素从所述第二 GPU传送到所述第一 GPU;和 把从所述第二 GPU传送的边缘像素与所述画面的所述第一版本中的像素结合起来以生成结合的画面。
19. 一种计算机程序产品,包括有形的计算机可用介质,在所 述计算机可用中存储有控制逻辑,所述控制逻辑用于使第一图形处理 单元(GPU)和第二 GPU执行基于多采样的图形去阶梯,所述控制 逻辑包括第一计算机可读程序编码装置,用于使所述第一 GPU使用第一多采样模式绘制画面的第 一版本;第二计算机可读程序编码装置,用于使所述第二 GPU使用第二多釆样模式绘制画面的第二版本;第三计算机可读程序编码装置,用于使所述第二 GPU识别在所 述画面的所述第二版本中的边缘像素;和第四计算机可读程序编码装置,用于使所述第一 GPU和/或所述 第二 GPU把在所述画面的所述第一版本中的像素与那些仅在所述画 面的所述第二版本中已经被识别为边缘像素的像素结合起来以生成结 合的画面。
全文摘要
一种用于在系统中执行基于多采样图形去阶梯的方法和设备,所述系统包括第一和第二图形处理单元(GPU),其减少在GPU之间所传送的数据量并且提高了这种数据传送的效率。所述第一GPU使用第一多采样模式绘制画面的第一版本,所述第二GPU使用第二多采样模式绘制第二GPU中的画面的第二版本。所述第二GPU在所述画面的所述第二版本中识别非边缘像素。然后在所述画面的所述第一版本中的所述像素与那些仅在所述画面的所述第二版本中已经被识别为边缘像素的像素结合起来以生成结合的画面。
文档编号G06T11/20GK101438319SQ200780016634
公开日2009年5月20日 申请日期2007年5月1日 优先权日2006年5月8日
发明者G·艾尔德, J·高尔德斯, R·柯杜里 申请人:Ati技术无限责任公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1