具有pci-express的图形装置群集的制作方法

文档序号:6655185阅读:138来源:国知局
专利名称:具有pci-express的图形装置群集的制作方法
技术领域
本发明涉及计算机图形领域。通过以算术的方式从给定的视点建立光与三维场景互动的模型来创建许多计算机图形图像。此过程(称为渲染)从给定的视点产生场景的二维图像,且类似于拍摄真实世界场景的相片。
背景技术
随着对计算机图形,且尤其对实时计算机图形的需求的增长,具有适合于促进渲染过程的图形处理子系统的计算机系统已变得普及。在这些计算机系统中,在计算机的通用中央处理单元(CPU)与图形处理子系统之间划分渲染过程。通常,CPU执行高级别操作,例如确定给定场景中物体的位置、运动和碰撞。CPU从这些高级别操作中产生界定期望的渲染的一或多个图像的一组渲染命令和数据。例如,渲染命令和数据可界定场景几何形状、照明、阴影、纹理、运动和/或场景的相机参数。图形处理子系统从一组渲染命令和数据中创建一个或一个以上渲染图像。
为了使渲染性能最大化,图形处理子系统可包括平行操作的两个或两个以上图形处理单元(GPU)。图形处理单元可以许多不同方式划分渲染工作负荷。例如,可由不同的GPU平行地渲染图像的不同部分。接着将所述部分进行组合以产生完整的渲染图像。在另一示范性平行渲染方案中,每一GPU渲染图像序列中的一个图像。
利用CPU将渲染命令和数据传输到两个或两个以上GPU是平行渲染方案中出现的一个难题。在许多平行渲染方案中,需要将相同的渲染命令和数据分布到所有GPU;然而,CPU通常通过CPU总线将渲染命令和数据独立地传送到每一GPU。因此,操作多个GPU所需的带宽与GPU数目成线性比例。因为CPU总线的带宽有限,所以具有平行操作的两个或两个以上GPU的系统将使CPU总线饱和。在这些情况下,CPU总线是整体图形性能中的限制因素,且附加的GPU将不提供任何性能改进。此外,使CPU独立地与每一GPU之间传送相同的渲染命令和数据会浪费CPU循环;例如,需要CPU写入相同的渲染命令和数据若干次。
因此,需要一种在CPU与平行操作的多个图形处理单元之间传输渲染命令和数据的有效的系统和方法。进一步需要排除作为操作多个图形处理单元的过程中的潜在图形性能瓶颈的CPU总线。还需要缩减与图形处理子系统中多个图形处理单元通信所需的浪费的CPU循环数目。

发明内容
本发明包括一种与广播孔径关联的桥接器,其有助于在处理器与多个图形装置之间传输渲染命令和数据。桥接器接收由处理器写入到广播孔径的数据并将其转递到多个图形装置,从而排除处理器执行多个写入操作的需要,并可能使处理器总线饱和。在系统初始化期间,基于一使用一系统配置实用程序设置的孔径尺寸值将一广播孔径分配到所述桥接器于地址空间中,并存储在系统配置存储器中。图形驱动器通过桥接器驱动器将与多个图形装置关联的单播孔径参数发送到桥接器来激活广播孔径。当激活广播孔径时,多个图形装置可平行操作以便改进渲染性能。平行渲染技术包括分割帧、交替帧和组合的分割与交替帧渲染。
本发明实施例配置广播孔径,其适合于通过在物理地址空间中接收广播孔径的分配数据而在处理器与复数个图形装置之间传输数据。以第一组配置数据配置桥接器。桥接器适合于有助于在处理器与复数个图形装置之间传输数据。进一步以第二组配置数据配置桥接器,藉此激活广播孔径。在附加实施例中,复数个图形装置的至少一者包括复数个图形处理单元。
在另一实施例中,以第一组配置数据配置桥接器包括从系统配置存储器检索第一组配置数据的至少一部分。在一个实施方案中,配置数据的此部分包括广播孔径尺寸。用户可通过BIOS配置实用程序来设置广播孔径尺寸。在进一步实施例中,第一组配置数据存储在包括在桥接器中的一组寄存器中。
在又一实施例中,以第二组配置数据配置桥接器包括从与复数个图形装置关联的图形驱动器接收第二组配置数据的至少一部分。在进一步实施例中,第二组配置数据的所述部分包括一组单播孔径的一组物理基址。每一物理基址与复数个图形装置的一者关联。第二组配置数据存储在包括在桥接器中的一组寄存器中。
在又一实施例中,处理器执行图形驱动器,所述图形驱动器适合于通过广播孔径将一组渲染命令和渲染数据传送到复数个图形装置。在一个实施方案中,所述组渲染命令引导复数个图形装置的第一部分渲染帧的第一部分,且引导复数个图形装置的第二部分渲染帧的第二部分。在另一实施例中,所述组渲染命令引导复数个图形装置的第一部分渲染第一帧,且引导复数个图形装置的第二部分渲染第二帧。在一实施方案中,所述组渲染命令引导复数个图形装置的第一部分将包含帧的至少一部分的渲染图像数据传输到与显示器装置连接的复数个图形装置的一者。复数个图形装置的第一部分可适合于使用位图传送操作(blit operation)通过图形总线将渲染图像数据传输到与显示器装置连接的复数个图形装置的一者。在另一实施方案中,复数个图形装置的第一部分适合于通过数字视频连接将渲染图像数据传输到与显示器装置连接的复数个图形装置的一者。渲染图像数据可包括帧的至少一部分的反走样版本(anti-aliased version)。此外,渲染图像数据可与帧的一复杂部分相关联。


将参看附图描述本发明,附图中图1是适于实践本发明实施例的计算机系统的方框图;图2是包括平行操作的两个图形处理子系统的计算机系统的方框图;图3说明根据本发明实施例用于将数据传输到平行的两个或两个以上图形处理子系统且从平行的两个或两个以上图形处理子系统传输数据的系统;图4说明根据本发明实施例用于将数据传输到平行的两个或两个以上图形处理子系统且从平行的两个或两个以上图形处理子系统传输数据的桥接器;图5说明根据本发明实施例用于配置桥接器的系统,所述桥接器用于将数据传输到平行的两个或两个以上图形处理子系统且从平行的两个或两个以上图形处理子系统传输数据;图6A和图6B说明可与本发明实施例一起实施的两种不同的平行渲染技术;图7A和图7B说明根据本发明实施例平行渲染技术的实施方案;且图8说明根据本发明实施例具有平行操作的四个图形处理单元的级联实施方案。
具体实施例方式
图1为适于实践本发明实施例的计算机系统100的方框图,所述计算机系统100例如个人计算机、视频游戏控制台、个人数字助理、或其它数字装置。计算机系统100包括用于运行软件应用程序和可选的操作系统的中央处理单元(CPU)105。在实施例中,CPU 105实际上是平行操作的若干独立中央处理单元。存储器110存储供CPU 105使用的应用程序和数据。存储器115提供用于应用程序和数据的非易失性存储器且可包括固定磁盘驱动器、抽取式磁盘驱动器、快闪存储器装置和CD-ROM、DVD-ROM或其它光学储存装置。用户输入装置120将用户输入从一个或一个以上用户传送到计算机系统100,且可包括键盘、鼠标、操纵杆、触摸屏和/或麦克风。网络界面125允许计算机系统100通过电子通信网络与其它计算机系统通信,且可包括在局域网和广域网(例如,因特网)上的有线或无线通信。计算机系统100的组件(包括CPU 105、存储器110、数据存储器115、用户输入装置120和网络界面125)通过一个或一个以上数据总线160连接。数据总线的实例包括ISA、PCI、AGP、PCI、PCI-X(也称为3GIO)和HyperTransport数据总线。
图形子系统130进一步与数据总线160和计算机系统100的组件连接。图形子系统130包括图形处理单元(GPU)135和图形存储器。图形存储器包括用于为输出图像的每一像素存储像素数据的显示存储器140(例如,帧缓冲器)。像素数据可直接从CPU 105提供给显示存储器140。或者,CPU 105为PU 135提供界定期望的输出图像的数据和/或命令,GPU 135从所述数据和/或命令产生一个或一个以上输出图像的像素数据。界定期望的输出图像的数据和/或命令存储在附加存储器145中。在实施例中,GPU 135产生用于从渲染命令输出图像的像素数据和界定场景的几何形状、照明、阴影、纹理、运动和/或相机参数的数据。
在另一实施例中,显示存储器140和/或附加存储器145是存储器110的一部分且与CPU 105共享。或者,显示存储器140和/或附加存储器145是为图形子系统130的专有用途提供的一个或一个以上独立存储器。图形子系统130周期性地为来自显示存储器218且显示在显示装置150上的图像输出像素数据。显示装置150是能够响应于来自计算机系统100(包括CRT、LCD、等离子和OLED显示器)的信号而显示视觉信息的任何装置。计算机系统100可为显示装置150提供模拟或数字信号。
在另一实施例中,图形处理子系统130包括一个或一个以上附加GPU 155,类似于GPU 135。在又一实施例中,图形处理子系统130包括图形协处理器165。图形处理协处理器165和附加GPU 155适合于与GPU 135平行操作。附加GPU 155产生用于从渲染命令输出图像的像素数据,类似于GPU 135。附加GPU 155可结合GPU 135操作以便同时产生用于输出图像的不同部分的像素数据,或同时产生用于不同输出图像的像素数据。在实施例中,图形协处理器165执行GPU 135和/或附加GPU 155的渲染相关任务,例如几何变化、阴影计算和背面剔除操作。
附加GPU 155可与GPU 135定位在相同电路板上且与GPU 135共享到数据总线160的连接,或可定位在独立地与数据总线160连接的附加电路板上。附加GPU 155也可集成到与GPU 135相同的模块或芯片封装中。附加GPU 155可具有其自身的显示器和附加存储器,类似于显示存储器140和附加存储器145,或可与GPU 135共享存储器140和145。在实施例中,图形协处理器165与用以控制数据总线160的计算机系统芯片组(未图示)集成,例如与北桥接器或南桥接器芯片集成。
图2为包括平行操作的两个图形处理子系统的计算机系统200的方框图。CPU 205通过总线210与图形装置215和220连接。总线210可包含在CPU 205与图形装置215和220之间形成数据路径的多个数据总线。总线210的实施例包括连接在CPU 205与总线控制器(未图示)之间的CPU总线,和连接在总线控制器与图形装置215和220之间的图形总线(例如,PCI-X)。
图形装置215包括图形处理单元,称为主GPU 225。主GPU 225充当由系统200识别的初级图形装置,且在实施例中可与初级显示装置(未图示)连接。主GPU 225从CPU205接收渲染命令和数据230。在实施例中,渲染命令和数据230存储在与主GPU 225关联的附加存储器145?(如图1所界定)中。在替代实施例中,渲染命令和数据230存储在系统存储器(如图1中存储器110)中且根据主GPU 225的需要而被检索。响应于渲染命令和数据230,主GPU 225执行各种渲染操作。这些渲染操作中包括纹理贴图操作,主GPU 225据此访问纹理贴图235。在实施例中,纹理贴图235存储在与主GPU 225关联的附加存储器145?中以便有助于快速存储器访问。
图形装置220类似于图形装置215而具有从GPU 240,一组渲染命令和数据245,和纹理贴图250。在实施例中,从GPU 240不由系统200识别为显示装置。事实上,从GPU240与主GPU 225平行操作以改进初级图形装置的图形性能。在此平行处理操作模式中,从G-PU 240不直接与显示装置(未图示)连接;事实上,其输出发送到图形装置215以便被输出。在另一实施例中,系统200的替代操作模式将图形装置220识别作为辅助显示装置。在此替代操作模式中,图形装置220的输出行进到辅助显示器。替代操作模式允许系统200利用两个独立的显示装置。
在平行处理操作模式中,图形装置215和220通常将需要许多相同渲染命令和数据以及纹理贴图。例如,如果图形装置215和220正渲染相同表面的不同部分,那么两个图形装置均将需要访问相同纹理贴图。此外,相同组的渲染命令和数据,包括特定用于图形装置中的仅一个的渲染命令,可发送给两个图形装置。包括在所述组命令中的设置装置掩模(set device mask)(SDM)命令将指示其它图形装置跳过不适用于所述装置的渲染命令。2003年8月12日申请的美国专利申请案第10/639,893号,题为″ProgrammingMultiple Chips from a Command Buffer″的相关专利申请案中描述了SDM命令的操作和应用。
在平行处理操作模式的现有实施方案中,将需要CPU 205在两个独立操作中将渲染命令和数据以及纹理贴图的副本传输到图形装置215和220。此实施方案通过需要数据被传输两次而浪费CPU。更重要的是,此现有实施方案将通常使总线210的容量由于数据传输而饱和。例如,典型的英特尔奔腾4(Intel Pentium 4)CPU总线具有约每秒3.2千兆字节(GB)的带宽。用以将系统200的实施例与图形装置215和220连接的PCI-X图形总线将每秒1.5GB的带宽分配给每一图形装置。因此,如果图形装置215和220均使用最大带宽,那么它们将需要CPU 205的每秒3GB的带宽,从而实质上使CPU总线饱和。此外,添加附加图形装置大体上不会改进性能,因为CPU总线将不能够将数据传输得足够快以支持附加图形装置。
图3说明根据本发明实施例用于将数据传输给两个平行图形处理子系统且从两个平行图形处理子系统传输数据的系统300。系统300使用存储器-映射I/O以便在CPU 305与图形装置310和315之间传送渲染命令和数据。在存储器-映射I/O中,写入到预定范围的存储器地址的命令和数据传送到图形装置310和315,且相反,来自图形装置310和315的数据可由CPU 305从所述预定范围的存储器地址读取。
存储器映射320以图形表示系统300中可用存储器地址的范围。存储器映射320含有用以与图形装置310和315通信的存储器地址的若干孔径或范围。单播孔径325和330经调试以分别将命令和数据分布到图形装置310和315。写入到给定单播孔径的命令和数据将仅分布到与所述单播孔径关联的图形装置。类似地,从单播孔径读取的数据将从关联的图形装置检索数据。
除单播孔径325和330以外,存储器映射320还包括广播孔径335。广播孔径335使CPU 305能够同时与系统300中的所有图形装置通信。写入到广播孔径335的命令和数据分布给图形装置310和315,以及系统300中的任何其它图形装置。在实施例中,从广播孔径335读取的数据将从指定为主图形装置或初级图形装置的图形装置检索数据。
本发明的实施例包括经调试以便将写入到广播孔径335的数据复制到系统300中的每一图形装置的桥接器。图4说明根据本发明实施例用于将数据传输到平行的两个或两个以上图形处理子系统且从平行的两个或两个以上图形处理子系统传输数据的桥接器。系统400包括通过CPU总线415与CPU 410连接且通过图形总线425与两个图形装置420和430连接的桥接器405。在实施例中,桥接器405集成在系统400的核心逻辑的组件中,例如在北桥接器或南桥接器系统控制器中。
桥接器405包括用于存储桥接器配置信息的四个寄存器440、445、450和455。广播孔径基址寄存器440存储用于广播孔径的物理存储器地址。在实施例中,广播孔径的物理存储器地址在系统启动期间由系统BIOS确定。广播孔径尺寸寄存器445存储广播孔径的尺寸。在实施例中,用户使用计算机系统BIOS配置实用程序来指定广播孔径尺寸。例如,BIOS配置实用程序可包括用于指定广播孔径尺寸的菜单选项,如128、256或512兆字节。广播孔径尺寸存储在计算机系统CMOS存储器中,且可在系统初始化期间被检索并存储在寄存器445中。
在另一实施例中,菜单选项允许用户禁止使用多个图形装置的系统中的广播孔径驱动多个独立的显示器且不需要平行处理操作模式。禁止广播孔径减少了存储器-映射I/O所消耗的地址空间的量,从而潜在地改进系统性能。
基址寄存器0和1(分别为BAR0和BAR1)450和455存储分别与图形装置420和430关联的单播孔径的物理存储器地址。在实施例中,如下文详细讨论,基址寄存器450和455由与桥接器驱动器通信的图形驱动器来配置。在另一实施例中,桥接器405包括附加基址寄存器,其允许包括附加图形装置。
在从CPU 410接收到存储器访问请求465时,桥接器405将包括在存储器访问请求465中的存储器地址与由寄存器440和445的值界定的物理存储器地址范围进行比较。如果存储器地址在广播孔径内,例如在广播基址寄存器440的值与广播基址寄存器440和广播尺寸寄存器445的值的和之间,那么桥接器启动存储器广播操作。在另一实施例中,与广播孔径关联的掩模值用以防止存储器访问请求重写与每一图形装置关联的存储器的保留部分。
在另一实施例中,桥接器405与直接存储器访问(DMA)控制器(未图示)形成界面。在此实施例中,CPU 410指示DMA控制器将数据传输到广播孔径。DMA控制器根据由CPU 410提供的指令从源存储器地址检索数据并将数据写入到目的存储器地址。桥接器405检查DMA请求中的目的地址以确定数据是否在广播孔径内,如上所述。
对于在广播孔径内的存储器地址,内部数据总线和广播逻辑元件460剥离存储器地址的高阶地址位且形成两个单播存储器访问请求。每一存储器访问请求用寄存器450或455中的单播物理存储器地址值代替被去除的地址位。在另一实施例中,桥接器405允许32个以上的地址位,例如启用48位或64位寻址方案。更大数目的地址位使由广播孔径消耗地址空间的效应最小化。在此实施例的实施方案中,基址寄存器450和455仅包括用于单播物理存储器地址的高阶地址位,例如位47-16。通过保留存储器地址的较低16位,此确保单播物理存储器地址如许多典型CPU所需而与64KB值对准。
接着两个单播存储器请求通过图形总线425传送到其各自的图形装置420和425。在实施例中,图形总线425包括两个独立的通信信道428和432,从而允许平行发布单播存储器访问请求。或者,图形总线425包括单个通信信道且桥接器连续发布单播存储器访问请求。不管图形总线425的实施方案和图形装置的数目如何,系统400仅需要CPU410发布单个存储器访问请求以便与所有图形装置通信。此防止多个图形装置使CPU总线415饱和且避免浪费CPU循环以执行多余的存储器传输。
为了桥接器405能够适当地发挥作用,寄存器440、445、450和455必须经适当配置。图5说明根据本发明实施例用于配置桥接器的系统500,所述桥接器用于将数据传输到平行的两个或两个以上图形处理子系统且从平行的两个或两个以上图形处理子系统传输数据。在系统500初始化期间,系统BIOS检测桥接器505和图形装置510和515。BIOS配置物理存储器地址空间520以分配用于桥接器505的广播孔径522和分别用于图形装置510和515的单播孔径524和526。在实施例中,广播基址由BIOS确定,且从存储在系统500CMOS中的配置信息确定广播孔径尺寸。
在系统初始化之后,加载操作系统(例如,Microsoft Windows)。在操作系统的初始化期间,物理存储器地址空间520中界定的孔径映射到由操作系统界定的虚拟存储器地址空间530。在虚拟存储器地址空间530中,虚拟广播孔径532对应于物理广播孔径522,且虚拟单播孔径534和536分别对应于物理单播孔径524和526。
操作系统初始化之后,在物理地址空间520和虚拟地址空间530中的广播孔径空间已由系统分配。然而,桥接器505的配置寄存器不含有适当值,且因此广播孔径不发挥作用。为了启用广播孔径,桥接器驱动器550由操作系统加载。桥接器驱动器550自动从系统检索广播孔径基址和广播孔径尺寸值且配置桥接器505的适当寄存器。
在实施例中,多个图形装置的平行操作模式由默认值禁止。如果用户需要,那么此允许多个图形装置驱动不同的显示器。如果用户(或应用程序)需要单个显示器上的增加的图形性能,那么用户或应用程序以信号通知图形驱动器540以启用平行操作模式。响应于此请求,图形驱动器540检索系统中图形装置的单播孔径基址值。在实施例中,这些值为单播孔径524和526在物理地址空间520中的物理地址值。图形驱动器540使用操作系统通信信道(例如,IOCTL)将这些基址值545传送到桥接器驱动器550。桥接器驱动器550在接收到用于单播孔径524和526的基址值545时,将这些值传送到桥接器505,藉此配置桥接器550的BAR0和BAR1寄存器的值且激活广播孔径。类似地,基于来自图形驱动器540的请求,桥接器驱动器550可停用广播孔径。
在实施例中,桥接器驱动器550仅用以配置桥接器505且激活广播孔径。一旦广播孔径被激活,图形驱动器540可直接与虚拟广播孔径532通信560,虚拟广播孔径532进而由操作系统映射565到物理广播孔径522。接着物理广播孔径522将通信570指向桥接器505,桥接器505进而分别通过单播孔径524和526将独立的通信发布到图形装置510和515。
图6A和图6B说明可与本发明实施例一起实施的两种不同的平行渲染技术。图6A说明分割帧渲染技术,其中帧600的不同部分分配给不同图形装置。例如,部分605分配给第一图形装置且部分610分配给第二图形装置。分别在第一和第二图形装置上平行渲染部分605和610,且接着将其组合为最终输出图像。
图6B说明替代的帧渲染技术,其中连续的帧分配给不同图形装置。例如,帧650分配给第一图形装置且帧655分配给第二图形装置。第一和第二图形装置平行渲染其各自的帧,所得的经渲染的帧相继地被显示。
图7A和图7B说明根据本发明实施例平行渲染技术的实施方案。图7A说明具有连接到显示装置715的主图形装置705和从图形装置710的实施方案700。主和从图形装置705和710通过图形总线720与计算机系统的剩余部分连接。在此实施方案中,在交替帧渲染的情况下来自从图形装置710的经渲染的图像,或在分割帧渲染的情况下经渲染的图像的一部分,通过数字视频连接725传送到主图形装置705。主图形装置705将通过数字视频连接725接收到的图像(或其部分)输出到显示装置715。在分割帧渲染的情况下,主图形装置705将所接收的图像与由主图形装置705渲染的图像的一部分组合。
图7B说明具有与显示装置760连接的主图形装置755和附加从图形装置765、770和775的实施方案750。图形装置755、765、770和775平行操作以渲染输出图像的不同部分或不同输出图像,且与计算机系统的剩余部分连接并通过图形总线780而相互连接。在渲染输出图像或其部分之后,实施方案750使用位图传送命令通过图形总线780从从图形装置765、770和775将输出图像或其部分复制到与主图形装置755关联的显示存储器。接着复制的图像由主图形装置755显示在显示装置760上。在分割帧渲染的情况中,主图形装置755将来自从图形装置765、770和775的图像部分与主图形装置755渲染的图像的一部分组合。
在另一实施例中,分割帧渲染通过将输出图像分为具有与其渲染复杂度成反比的尺寸(例如,许多像素)的多个部分而使分配给每一图形装置的负荷平衡。为了使通过位图传送操作经过图形总线780传输的数据的量最小化,实施例用从图形装置765、770和775渲染尺寸最小的最复杂部分。由于这些部分尺寸最小,所以需通过图形总线780移动的数据量最小化。在另一实施例中,在将经渲染的图像传输到主图形装置755之前,由每一图形装置将反走样局部地应用到其各自的经渲染的图像或其部分。此实施例减小通过图形总线780发送的像素数目,且因此减小数据量。
图8说明根据本发明实施例具有平行操作的四个图形处理单元的级联实施方案800。实施方案800包括通过CPU总线与桥接器810连接的CPU 805。如上所述,桥接器810有助于广播孔径能够对多个图形装置进行数据传输。此处,图形装置820和825通过图形总线815与桥接器810连接。图形装置820包括内部桥接器830,其适合于将数据传输到图形处理单元840和845。图形装置825包括类似组件。图形装置820和825中的内部桥接器隐藏两个图形处理单元,使得从桥接器810的角度来看,图形装置820和825每一者似乎只具有单一的图形处理单元。
实施方案800使用分割帧渲染与交替帧渲染的组合来改进渲染性能。图形装置820渲染第一帧,且图形装置825渲染第二帧。图形装置820内,图形处理单元840和845平行操作以渲染所分配的帧的不同部分。类似地,图形装置825的图形处理单元平行操作以渲染第二帧的不同部分。经渲染的帧如实施方案700或750中所描述而显示,其中图形装置820或825充当与显示器装置连接的主图形装置。
本发明提供一种在不过度消耗系统资源的情况下将数据传输到多个图形装置的有效的系统。在典型实施例中,只需要单一的存储器孔径将渲染命令和数据传输到任何数目的图形装置。尽管已参照本发明的特定实例和实施例论述了本发明,但这些仅用来说明本发明,而不是限定本发明。尽管参照若干平行渲染方案论述本发明,但本发明可用于使用不同的硬件装置渲染图像的任何应用。例如,可能为了安全或为了数字版权管理而对某一内容加密。能够解密的图形装置可经编程以渲染加密内容,而同时系统中其它图形装置渲染非加密内容。因此,本发明的范围将单独由权利要求书确定。
权利要求
1.一种配置一广播孔径以便在一处理器与复数个图形装置之间传输数据的方法,所述方法包含在一物理地址空间中接收一广播孔径的分配数据;以一第一组配置数据配置一桥接器,其中所述桥接器适合于有助于在一处理器与复数个图形装置之间传输数据;以一第二组配置数据配置所述桥接器,藉此激活所述广播孔径。
2.根据权利要求1所述的方法,其中以一第一组配置数据配置一桥接器进一步包含从一系统配置存储器检索包括一广播孔径尺寸的所述第一组配置数据的至少一部分。
3.根据权利要求2所述的方法,其中一用户通过一BIOS配置实用程序来设置所述广播孔径尺寸。
4.根据权利要求1所述的方法,其中以一第二组配置数据配置所述桥接器包含从一与所述复数个图形装置关联的图形驱动器接收所述第二组配置数据的至少一部分。
5.根据权利要求1所述的方法,其中所述复数个图形装置的至少一者包括复数个图形处理单元。
6.根据权利要求1所述的方法,其中所述处理器执行一图形驱动器,所述图形驱动器适合于通过所述广播孔径将一组渲染命令和渲染数据传送到所述复数个图形装置。
7.根据权利要求6所述的方法,其中所述组渲染命令引导所述复数个图形装置的一第一部分渲染一帧的一第一部分,且引导所述复数个图形装置的一第二部分渲染所述帧的一第二部分。
8.根据权利要求6所述的方法,其中所述组渲染命令引导所述复数个图形装置的一第一部分渲染一第一帧,且引导所述复数个图形装置的一第二部分渲染一第二帧。
9.根据权利要求6所述的方法,其中所述组渲染命令引导所述复数个图形装置的一第一部分将包含一帧的至少一部分的渲染图像数据传输到与一显示器装置连接的所述复数个图形装置的一者。
10.根据权利要求9所述的方法,其中所述复数个图形装置的所述第一部分适合于通过一数字视频连接将渲染图像数据传输到与一显示器装置连接的所述复数个图形装置的所述一者。
11.根据权利要求9所述的方法,其中所述复数个图形装置的所述第一部分适合于使用一位图传送操作经由一图形总线将渲染图像数据传输到与一显示器装置连接的所述复数个图形装置的所述一者。
12.根据权利要求11所述的方法,其中所述渲染图像数据包括一帧的至少一部分的一反走样版本。
13.根据权利要求11所述的方法,其中所述渲染图像数据与一帧的一复杂部分关联。
14.一种用于将数据传输到复数个图形装置的设备,所述设备包含一图形装置界面,其适合于在其与所述复数个图形装置的每一者之间传送一组数据;和一图形装置广播单元,其响应通过一广播孔径而接收到的所述组数据,其中响应于通过所述广播孔径接收所述组数据,所述图形装置广播单元适合于在其与所述复数个图形装置的每一者之间传送所述组数据的一副本。
15.根据权利要求14所述的设备,其中所述图形装置广播单元适合于通过所述广播孔径从一处理器接收所述组数据。
16.根据权利要求14所述的设备,其进一步包括一直接存储器访问传输单元,所述直接存储器访问传输单元适合于从一存储器检索所述组数据,并通过所述广播孔径将所述组数据传送到所述图形装置广播单元。
17.根据权利要求14所述的设备,其中所述图形装置广播单元包括一广播孔径基址寄存器,其适合于存储一与所述广播孔径关联的存储器地址。
18.根据权利要求17所述的设备,其进一步适合于从一桥接器驱动器接收与所述广播孔径关联的所述存储器地址。
19.根据权利要求14所述的设备,其中所述图形装置广播单元包括一广播孔径尺寸寄存器,其适合于存储一与所述广播孔径关联的尺寸值。
20.根据权利要求19所述的设备,其进一步适合于从一桥接器驱动器接收与所述广播孔径关联的所述尺寸值,其中所述桥接器驱动器适合于从一系统配置存储器检索与所述广播孔径关联的所述尺寸值。
21.根据权利要求14所述的设备,其中所述图形装置广播单元包括与所述复数个图形装置对应的复数个单播孔径基址寄存器,每一单播孔径基址寄存器适合于存储一与所述复数个图形装置的一者的一单播孔径关联的存储器地址;且其中所述图形装置界面适合于在其与所述复数个图形装置的所述每一者之间通过其相关单播孔径而传送所述组数据的一副本。
22.根据权利要求21所述的设备,其进一步适合于通过一桥接器驱动器从一图形驱动器接收与所述复数个图形装置的所述单播孔径关联的所述存储器地址。
全文摘要
一种与一广播孔径关联的桥接器,其有助于在一处理器与多个图形装置之间传输渲染命令和数据。所述桥接器接收由所述处理器写入到所述广播孔径的数据并将其转递到多个图形装置,从而排除所述处理器执行双重(?)写入操作的需要。在系统初始化期间,基于一使用一系统配置实用程序设置的孔径尺寸值将一广播孔径分配到所述桥接器于地址空间中,并存储在系统配置存储器中。一图形驱动器通过一桥接器驱动器将与所述多个图形装置关联的单播孔径参数发送到所述桥接器来激活所述广播孔径。当激活所述广播孔径时,多个图形装置可平行操作以便改进渲染性能。平行渲染(Parallel rendering)技术包括分割帧、交替帧和组合的分割帧与交替帧渲染。
文档编号G06T15/00GK1922602SQ200580005853
公开日2007年2月28日 申请日期2005年2月2日 优先权日2004年2月27日
发明者弗兰克·R·迪亚尔, 戴维·G·里德, 加里·D·希科克, 迈克尔·布赖恩·考克斯 申请人:辉达公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1