CN102227709B - 多处理器架构与方法 - Google Patents

多处理器架构与方法 Download PDF

Info

Publication number
CN102227709B
CN102227709B CN200980147694.9A CN200980147694A CN102227709B CN 102227709 B CN102227709 B CN 102227709B CN 200980147694 A CN200980147694 A CN 200980147694A CN 102227709 B CN102227709 B CN 102227709B
Authority
CN
China
Prior art keywords
bus
perimeter component
root
data
perimeter
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN200980147694.9A
Other languages
English (en)
Other versions
CN102227709A (zh
Inventor
S·索尔基
S·莫雷因
M·S·格罗斯曼
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
ATI Technologies ULC
Advanced Micro Devices Inc
Original Assignee
ATI Technologies ULC
Advanced Micro Devices Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from US12/245,686 external-priority patent/US8892804B2/en
Application filed by ATI Technologies ULC, Advanced Micro Devices Inc filed Critical ATI Technologies ULC
Priority to CN201510187635.1A priority Critical patent/CN105005542B/zh
Publication of CN102227709A publication Critical patent/CN102227709A/zh
Application granted granted Critical
Publication of CN102227709B publication Critical patent/CN102227709B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4282Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/20Processor architectures; Processor configuration, e.g. pipelining
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/60Memory management
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/36Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
    • G09G5/363Graphics controllers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2213/00Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F2213/0026PCI express
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2330/00Aspects of power supply; Aspects of display protection and defect management
    • G09G2330/02Details of power systems and of start or stop of display operation
    • G09G2330/021Power management, e.g. power saving
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2360/00Aspects of the architecture of display systems
    • G09G2360/06Use of more than one graphics processor to process data before displaying to one or more screens
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/003Details of a display terminal, the details relating to the control arrangement of the display terminal and to the interfaces thereto
    • G09G5/006Details of the interface to the display terminal

Abstract

本申请揭露多处理器架构与方法的实施例。实施例提供替换使用外部桥集成电路(IC)架构。例如,一实施例多任务周边总线,因而多个处理器可使用一个周边接口槽而不需要外部桥IC。实施例可使用已知的总线协议。

Description

多处理器架构与方法
技术领域
本申请是关于计算器与其他数字系统中数据转换的领域。
背景技术
本申请主张2008年10月3日申请的美国申请案12/245,686为优先权案。本申请也主张2008年12月19日申请的美国申请案12/340,510为优先权案,这是美国申请案12/245,686的部分连续案。这两件申请整体内容皆并入本申请作为参考。
随着计算器与其他数字系统变得更复杂与更有能力,在系统成分或组件之间促进数据转换的方法与硬件持续演化。要被转换的数据包含代表数据、指令或是其他信号的信号。在运作非常大数据量应用的系统中,例如制图应用的系统中,数据转换的速度与效率特别关键。在典型系统中,制图处理能力是中心处理单元(CPU)的一部分,或是分别的特殊目的处理器,,例如制图处理单元(GPU)与CPU通讯且辅助处理用于例如视频游戏应用的制图数据。可在系统中包含一或多个GPU。在习知多GPU系统中,桥接宿主接口(例如PCI快速总线)接口必须在点对点(peer to per)交通与宿主交通之间分享带宽。交通主要包括内存数据转换,但通常可包含指令。图1是习知系统100的方块图,包含根(root)102。典型根102试算机芯片组,包含中心处理器(CPU)、宿主桥104以及两个终端EPO 106a与106b。终端是总线终端,以及可以是多种周边组件,例如特殊目的处理器,例如制图处理单元GPU)。根102通过一或多个总线而耦合至桥104,以与周边组件通讯。一些周边组件终端(例如GPUs)由于功能涉及大量数据,所以需要总线上相对大量的带宽。理想是提供较少组件数目的架构,以及在组件之间提供有效率的数据转换。例如,桥集成电路(ICs)的成本相对高。除此之外,典型桥IC的尺寸可和制图处理单元(GPU)相比,制图处理单元需要额外的印刷电路板面积以即可加至层数。桥IC也需要额外的环绕组件,用于电力、带子(straps)、时钟以及可能是只读内存(ROM)。
发明内容
本发明提供一种多处理系统。所述系统包括具有中心处理单元的总线根包括用以通过总线而与周边组件通讯。第一周边组件直接耦合至所述总线根以及更直接耦合至第二周边组件。所述第一周边组件包括内部桥用以接收数据与传送数据,其中,接收与传送包括在所述第一周边组件与所述第二周边组件之间的直接通讯。所述第一周边组件与所述第二周边组件可更用于与所述总线根直接通讯以传送与接收数据。所述总线根可用以进行读取与存写操作。所述第一与第二周边组件可各自更包括多个客户耦合至个别总线接口。这样的客户可包括视频处理逻辑,所述视频处理逻辑包括着色器单元与/或编码器/译码器单元。
本发明更提供一种在多处理器系统中通讯的方法。所述方法包括:总线根直接传送请求至第一周边组件,其中,所述请求包括读取请求与存写请求;所述第一周边组件通过所述第一周边组件的内部桥中的第一总线而接收所述请求;以及所述内部桥决定所述请求的适当路由,其中,适当路由包括针对第二周边组件的路由请求,通过第二总线直接从所述桥至所述第二周边组件的总线接口,以及针对第一周边组件的路由请求至所述第一周边组件的总线接口。
本发明又提供一种计算器可读取的有形媒体,具有储存在其中的指令,当在多处理系统中执行时,造成进行通讯方法。所述方法包括:总线根直接传送请求至第一周边组件,其中,所述请求包括读取请求与存写请求;所述第一周边组件通过所述第一周边组件的内部桥中第一总线而接收请求;以及所述内部桥决定所述请求的适当路由,其中,适当路由包括针对第二周边组件的路由请求,通过第二总线从所述桥直接至所述第二周边组件的总线接口,以及针对第一周边组件的路由请求,至所述第一周边组件的总线接口。
附图说明
图1是具有周边组件的习知处理系统的方块图。
图2是根据实施例,说明具有多任务周边组件的多处理器系统的部分的方块图。
图3是根据实施例,说明具有周边组件的处理系统的部分的方块图。
图4是根据实施例,说明具有周边组件的处理系统的更详细方块图。
图5是实施例的方块图,其中一总线终点包含内部桥。
图7是根据实施例,从系统中不同组件的透视说明内存空间的方块图。
具体实施方式
本申请揭露多处理器架构与方法的实施例。实施例提供替代使用外部桥集成电路(工C)架构。例如,实施例多任务(multiplex)周边总线,因而多处理器可使用一个周边接口槽,而不需要外部桥IC。其他实施例包含系统,所述系统具有多个总线终点通过宿主总线桥而耦合至总线根,所述宿主总线桥是内部连接到至少一个总线终点。除此之外,总线终点直接彼此耦合。实施例可使用已知的总线规则(busprotocol)。
图2是根据实施例的示意方块图,说明具有多任务周边组件总线的多处理器系统700的部分。在这个范例系统中,有两个GPU、主GPU702A以及从GPU 702B。每一个GPU 702具有16个周边组件互连快送传送(TX)道以及16个接收(RX)道。每一个GPU 702包含个别的数据链接层706以及个别的物理层(PHY)704。GPU 702A的八个TX/RX道连接至X16连接器一半的TX/RX道或是槽708。GPU 702B的八个TX/RX道连接至X16连接器剩余的TX/RX道或是槽708。GPU 702A与GPU 702B各自的剩余TX/RX道是彼此连接,在GPU 702之间提供直接高速连接。
x16槽708(正常连至一个GPU)分为两个部分,槽的一半是连接至GPU 702A,以及另一半是连接至GPU 702B。每一个GPU 702基本上回响另一个GPU 702的另一半数据。亦即GPU接收的数据会传送至另一个。每一个GPU 702见到总线接收的所有数据,每一个GPU 702内部决定是否回答请求或意见。而后每一个GPU 702适当响应或是不做任何事。可使用一些数据或指令,例如“重新启动”用于所有的GPU 702。
从系统阶层观点,或是从周边总线的观点,总线上只有一个负载(装置)。GPU 702A或GPU 702B以地址为基础被存取。例如,对于地址区存取(Address Domain Access),主GPU 702A可被分配一半的地址区,以及从GPU 702B可分配到另一半。系统可在主/从模式中运作,或是在单/多GPU模式中操作,以及可用带子(straps)辨识模式。
由参考数目辨识不同的数据路径。711是指参考时序(REF CLK)路径。709是指8道RX-2路径。713是指8道RX-1路径。715是指8道TX-1路径。控制信号710是非信号,例如带子(straps)。每一个GPU 702中的PHY 704回响数据至适当的道或通道。可以依序完成道连接,帮助优化系设计与/或支持具有少于16道的槽。两个GPU显示为系统的范例,但是架构可扩充至n-GPUs。除此之外,GPU 702是周边组件的一个范例,如前所述可被耦合。与周边组件总线正常通讯的任何其他周边组件可同样被耦合。
图3根据实施例所示的方块图,说明具有周边组件的处理系统200的部分。系统200包含总线根(bus root)202,这与图1的总线根102类似。实施例中的总线根202是包含CPU与系统内存的芯片组。根202通过总线209耦和至包含内部桥205a的终端EP0 206a。实施例中的总线209是PCI快送总线,但并不受限于此实施例。EP0 206a耦合至另一终端EP1 206b。EP1 206b包含内部桥205b。EP0 205a与EP1 205B通过总线207穿过个别的桥。EP1 206b通过总线211穿过桥205b耦合至根202。终端EP0 206a与EP1 206b各自包含个别的局部内存208a与208b。从个别的根202,209与211分别传送与接收标准双向点对点数据链接的道(lanes)。
在实施例中,EP0 206a与EP1 206b是相同的。如以下进一步说明,在不同的实施例中,桥205b并不是必需的,但可被用于达到具有终端版本的目的,例如一种版本的GPU,而不是制造两种不同版本。注意可单独使用EP0,通过总线207与211直接连接至根202。
当EP0与EP1存在时,含有桥205会排除需求例如图1桥104的外部桥。相较于图1的“Y”或“T”形成,系统200在回路中移动数据(在这例子中是顺时钟方向)。左终点EP0可直接传送数据至右终点EP1。从EP1返回至EP0的路径是经过根202。因此,根能将来自ep1的数据封包反射回至EP0。换句话说,当架构用于终点对根交易时,提供在相同线对上点对点交易的外观。
EP0 206a与EP1 206b也可用于习知的架构中。亦即EP0 206a与EP1 206b通过总线209与211各自直接与根202通讯,在此架构中,各自为双向通讯。
图4是根据实施例的更详细方块图,说明具有周边组件的处理系统。系统300类似系统200,但显示更多的细节。系统300包含总线根302耦合至系统内存303。总线根302更通过总线309耦合至终点305a。为了说明特定实施例,终点305a与305b是GPU,但实施例并不受限于GPU。GPU0 305a包含多客户。客户包含逻辑,例如着色器单元(shaderunit)与译码器单元,用于执行任务。客户通过总线接口(VF)逻辑耦合至内部桥,控制GPU进行的所有读取操作与存写操作。
GPU0 305a通过总线307从GPU0 305a的内部桥至GPU1 305b耦合至GPU1 305b。在实施例中,GPU1 305b与GPU0 305a相同,以及包含多客户、内部桥与I/F逻辑。每一个GPU典型连接至局部内存单元,通常是GDDR DRAM。GPU1 305b通过总线311而耦合至总线根302。在实施例中,如箭头所指,例如读取请求与完成的数据与其他信息从总线根302至GPU0 305a至GPU1 305b的顺时钟回路流动。
在其他实施例中,GPU 305其中之一不包含桥。在其他实施例中,数据反时钟方向流动而不是顺时钟方向流动。
在实施例中,决定数据路由的协议图1的架构具有相同的通讯架构。特别地,305b的桥必须呈现在连结307至桥305a作为上游埠,而305a中桥上对应的附接点必须呈现在连结309至根302作为下游埠。再者,当在进入连结上接收所有请求的返回路径时,包埋的桥必须可以知道出发的连结,即使两个链接的实体路由不同。这可由对于每一个GPU设定链模式架构带而达到。如果带设定为零,桥假设传送与接收连结为上游埠,根多任务或是桥装置。如果带设定为一,桥假设菊链(daisy-chain)架构。
在另一实施例中,根的点对点桥功能是两步骤工艺,GP1 305b据以存写数据至系统内存303或缓冲。而后当分别操作时,GP0 305a通过总线根302返回读取数据。
如果内部桥是外部桥(如图1所示),则总线根302正常响应请求。在实施例中,GP0 305a桥是主动的,而GPU1 305b的桥是作为线路以及简单传送数据。这使得总线根302知道总县309与311是正常的周边互连。当总线根从GPU0 305a读取总线根时,如果数据直接来自于GPU0 305a,则此桥传送数据通过GPU1 305b的桥,以及返回至总线根302。
图5是系统400的方块图,其中多个总线终端的其中之一包含内部桥。系统400包含总线根402以及包含桥405a的EP0 406a。EP0 406a耦合至根402通过总线409穿过桥405a,以及耦合至EP1b406b通过总线407穿过桥405a。每一个终点EP0 406a与EP1 406b包含个别的局部内存408a与408b。
图6是系统500的方块图,包含超过两个总线终端,各自包含内部桥。系统500包含总线根501,以及含有桥505a与局部内存508a的EP0 506a。系统500更包含具有桥505b与局部内存508b的EP1 506b,以及具有桥505c与内部内存508c的桥505c。
EP0 506a耦合是根502通过总线509穿过桥505a,以及也耦合至EP1b 506b通过总线507a穿过桥506b。EP0 506b耦合至EP1c 506c通过总线507b穿过桥506c。其他实施例包含加入环状架构的额外终点。在其他实施例中,系统包含超过两个终点506,但是最右边的终点不包含内部桥。在其他实施例中,数据流是反时钟方向,如图所示。
请再次参阅图4,根据实施例,内部桥上有两个逻辑端口。一埠是在GPU0 305a的桥中“开启”,以及一埠是在GPU1 305b的桥中“关闭”。总线根302可在总线309上传送请求而进行存写操作。标准地址方案是指桥传送请求至总线I/F。如果是对于GPU1 305b请求,桥把请求导引至总线307。因此,在实施例中,GPU0 305a与GPU1 305b的个别内部桥编程不同。
图7的方块图说明总线地址范围的分配以及从不同组件的内存空间概示。同时也参阅图4,602是说明总线根或是宿主处理器302的内存。604是说明GPU0 305a内部桥的内存。606是说明GPU1 305b内部桥的内存。总线地址范围分割范围给GPU0 305a、GPU1 305b与系统302内存空间。设定GPU0 305a桥,因而进入到GPU0 305a范围的请求被导引到自身的局部内存。来自根或来自GPU0 305a进入GPU1 305b或系统302的请求被导引到GPU0 305a的输出埠。GPU1305b设定稍有不同,因此进入GPU1 305b范围的请求被导引到自身的局部内存。从GPU0305a或是从GPU1 305b到根或是GPU0 305a范围的请求被导引到GPU1305b的输出埠。
宿主知道总线像图1所示。GPU1 05b可通过桥而向宿主处理器302制造请求,以及请求会传送到宿主处理器302。当宿主处理器302返回请求时,会通过GPU0 305a的桥,具有逻辑用来决定请求与数据被导引到何处。
可在两种路径中进行从GPU1 305b至GPU0 305a的存写操作。GPU1305b传送数据至系统内存303中的内存位置。而后,GPU0 305a在学习到数据在系统内存303中之后,GPU0 305a读取数据。
读取数据请求其他分割交易操作的完成信息必须沿着和请求相同方向的线路旅行。因此,除了上述地址基础的请求路由之外,装置基础的路由必须用类似的方式设定。例如,GPU0 305a的内部桥辨识请求与完成信息的路径是通过总线307。
实施例包含电力管理,改善高负载使用例子中的电力使用。例如,在具有一点制图处理的使用例子中,GPU1 305b的逻辑电力关闭,以及GPU1 305b中的桥功能减少到从输入端口至输出端口的简单通过功能。再者,GPU0 305a的功能减少,不处理从输入埠路由至输出埠的转换。在实施例中,有个别的电力供应用于GPU1 305b的桥功能。软件侦测电力降低的条件。实施例包含用于桥的个别电力调节器与/或个别内部电源,分别从装置的剩余逻辑调降电力。
即使在不包含上述电力管理的实施例中,由于不需要外部桥(如图1所示),所以保留系统板面积。保留了外部桥所需要的板面积与电力以及它的接脚。另一方面,不需要每一个GPU具有自己的内部桥。在另一实施例中,GPU1 305b不具有内部桥,如图5所示。
在包含用于加法电路板(add-in circuit board)多槽的系统中,实施系统300的架构。或者,系统300是焊接的系统(soldered system),例如在移动装置上。
总线307、309与311可以是总线或是任何其他的类似周边互连总线。
本申请描述的任何电路实施可通过控制制造工艺与屏蔽工作,而后用于制造相关电路。对熟知此技艺的人士熟知这些制造工艺控制与屏蔽工作产生,包含储存计算器指令在计算器可读取的媒体,包含例如Verilog、VHDL或是其他硬件描述语言的指令。
本申请的实施例包含系统,所述系统包括:周边组件连接器耦合至周边组件总线;以及多个周边组件通过多个个别传送/接收(TX/RX)道而直接耦合至周边组件连接器,因而多个周边组件出现在周边组件总线,成为一个周边装置耦合至周边组件连接器。
在实施例中,多个周边组件通过个别的传送/接收(TX/RX)道而进一步直接彼此耦合。
在实施例中,多个周边组件的至少一个是制图处理单元(GPU)。
在实施例中,周边组件连接器是周边组件互连快送槽,以及其中周边组件总线是总线。
在实施例中,每一个周边组件是用以接收通过周边组件连接器传送的所有数据,以及决定可使用的数据。
在实施例中,每一个周边组件将接收的所有数据转送至剩余的周边组件。
在实施例中,以地址为基础,存取每一个周边组件。
本申请的实施利包含多处理器方法,所述方法包括通过总线的个别传送/接收(TX/RX)道组,耦合多个处理器至周边总线;耦合所述多个处理器至未耦合到总线的所述多个处理器的彼此TX/RX道,从所述总线直接传送数据至所述多个处理器,其中所述多个处理器的每一个处理器是可定地址的;以及在处理器之间直接传送数据。
在实施例中,所述多个处理器包括制图处理单元(GPU)。
在实施例中,所述多个处理器包括多个GPU,以及其中所述周边总线包括周边组件互连快送总线,所述GPU直接耦合至所述周边组件互连快送总线。
在实施例中,更包括通过个别的TX/RX道,耦合所述GPU直接比次通讯。
在实施例中,更包括GPU从所述总线接收数据,以及传送所述数据至另一个GPU。
本申请的实施利包含计算器可读取媒体,储存计算器可读取指令,用以制造电路,所述电路包括周边组件连接器耦合至周边组件总线;以及多个周边组件通过多个个别的传送/接收(TX/RX)道而直接耦合至所述周边组件连接器,因而所述多个周边组件出现在所述周边组件总线,成为一周边装置耦合至所述周边组件连接器,其中所述多个周边组件更通过个别的传输/接收(TX/RX)道而直接彼此耦合。
在实施例中,所述指令包括硬件描述语言指令。
本申请的实施利包含计算可读取的媒体,具有指令储存于其中,当在多处理器系统中执行时,造成进行一方法,所述方法包括:耦合多个处理器至周边总线,通过所述总线的各组传送/接收(TX/RX)道;耦合所述多个处理器至未连接到所述总线的所述多个处理器的彼此TX/RX道;传送数据至所述多个处理器,从所述总线直接至所述多个处理器,其中所述多个处理器的每一个处理器是可定地址的;以及在处理器之间直接传送数据。
在实施例中,所述多个处理器包括制图处理单元(GPU)。
在实施例中,所述多个处理器包括多个GPU,以及其中所述周边总线包括周边组件互连快送总线,所述GPU直接耦合至周边组件互连快送总线。
在实施例中,所述方法更包括耦合GPU通过个别TX/RX道而直接彼此通讯。
在实施例中,所述方法更包括GPU从总线接收数据以及传送所述数据至另一个GPU。
本申请的实施利包含系统,所述系统包括总线根,总线根包括中心处理单元用以通过组线而与周边组件通讯;以及第一周边组件直接耦合至组线根以及更直接耦合至第二周边组件,所述第一周边组件包括内部桥,用以接收数据与传送数据,其中接收与传送包括所述第一周边组件与所述第二周边组件之间的直接通讯。
在实施例中,所述第一周边组件与所述第二周边组件各自用于与所述总线根直接通讯,以传送与接收数据。
在实施例中,接收与传送更包括通过所述总线根,从所述第二周边组件传送请求与数据至所述第一周边组件。
在实施例中,接收与传送更包括从所述第一周边组件传送请求或数据至所述第二周边组件,通过所述第一周边组件的内部桥至第二周边组件。
在实施例中,总线根用以进行存写操作,其中存写操作至所述第二周边组件包括所述总线根传送存写请求至所述第一周边组件的内部桥,以及所述第一周边组件的内部桥直接传送所述存写请求至所述第二周边组件。
在实施例中,所述第二周边组件的内部总线接口接收所述存写请求。
在实施例中,总线根用以进行存写操作,其中存写操作至所述第一周边组件包括所述总线根传送存写请求至所述桥,以及所述桥传送所述存写请求至所述第一周边组件的内部总线接口。
在实施例中,所述总线根用以进行读取操作,其中读取操作至所述第一周边组件包括所述总线根传送读取请求至所述桥,以及所述桥传送所述读取请求至所述第一周边组件的内部总线接口。
在实施例中,总线根用以进行读取操作,其中读取操作至所述第二周边组件包括所述总线根传送读取请求至所述桥,以及所述桥直接传送所述读取请求至所述第二周边组件。
在实施例中,所述桥包括逻辑用以决定对于所接收存写请求、所接收读取请求与所接收数据的路由。
在实施例中,所述第二周边组件包括内部桥,用以接收数据与传送数据,以及当所述内部桥不用接收数据与传送数据时,所述第二周边组件更用已被下降电力。
在实施例中,所述第二周边组件更包括用于使用内部桥的电源。
在实施例中,所述第一周边组件与所述第二周边组件各包括制图处理单元(GPU)。
在实施例中,所述第一周边组件与所述第二周边组件各自更包括多个客户耦合至个别总线接口,其中所述客户包括视频处理逻辑,所述视频处理逻辑包括shader units与编码器/译码器单元。
本申请的实施例包含在多处理器系统中通讯的方法,所述方法包括总线根直接传送请求至第一周边组件,其中所述请求包括读取请求与存写请求,所述第一周边组件通过所述第一周边组件的内部桥中的第一总线而接收所述请求;以及所述内部桥决定所述请求的适当路由,其中适当路由包括针对第二周边组件的路由请求,通过第二总线直接从所述桥至所述第二周边组件的总线接口;以及针对第一周边组件的路由请求至所述第一周边组件的总线接口。
在实施例中,更包括所述第二组件,通过第三总线直接传送数据至所述总线根,响应读取请求。
在实施例中,更包括第二周边组件接收所述第二周边组件的内部桥中的请求。
在实施例中,更包括所述第一周边组件通过所述第二总线传送读取请求至所述第二周边组件,所述第二周边组件传送数据,通过所述第三总线,响应所述读取请求至所述总线根,以及所述总线根通过所述第一总线传送所述数据至所述桥。
本申请的实施利包含计算器可读取的媒体,具有储存的指令,当在多处理系统中执行时,造成进行通讯方法,所述方法包括:总线根直接传送请求至第一周边组件,其中所述请求包括读取请求与存写请求,所述第一周边组件通过所述第一周边组件的内部桥中第一总线而接收请求;以及所述内部桥决定所述请求的适当路由,其中适当路由包括针对第二周边组件的路由请求,通过第二总线从所述桥直接至所述第二周边组件的总线接口;以及针对第一周边组件的路由请求,至所述第一周边组件的总线接口。
在实施例中,所述方法更包括第二组件,通过第三总线,直接传送数据至所述总线根,响应读取请求。
在实施例中,所述方法更包括第二周边组件接收所述第二周边组件的内部桥中的请求。
在实施例中,所述方法更包括:所述第一周边组件通过所述第二总线而传送读取请求至所述第二周边组件;所述第二周边组件通过所述第三总线传送数据至所述总线根,响应读取请求;以及所述总线根通过所述第一总线传送所述数据至所述桥。
在实施例中,所述指令包括硬件描述语言指令,用来产生应用特定集成电路(ASIC),进行所述方法。
上述的实施例可被实施成为编程在任何一种电路的功能,包含但不限于可编程的逻辑设备(PLDs),例如场可编程的栅数组(FPGAs)、可编程的数组逻辑(PAL)装置、电性可编程的逻辑与内存装置,以及标准的胞元基础装置,以及应用特定集成电路(ASICs)与完全客制集成电路。实施实施例的一些其他可能性包含具有内存(例如电性可消除的可编程的只读内存(EEPROM)、快闪内存等)微控制器、包埋的微控制器、韧件、软件等。再者,实施例可包埋在微处理器中,所述微处理器具有软件为基础的电路仿真、分离逻辑(序列的或组合的)、客户装置、模糊(神经)逻辑、量子装置以及上述任何装置型式的组合。当然可提供以下装置技术在不同的组件型式中,例如金属氧化物半导体场效晶体管(MOSFET)技术,例如互补金属氧化物半导体(CMOS)、二极技术,例如发射器耦合逻辑(ECL)、聚合物技术(例如硅接合的聚合物与金属接合的聚合物-金属结构)、混合的模拟与数字等。
本申请说明书与权利要求书中使用的“处理器”一词包含处理器核心或是处理器的一部分。再者,虽然一或多个GPU以及一或多个CPU通常在本申请是分别指示,但是在实施例中,GPU与CPU皆可包含在单一集成电路封包或是单一单晶粒(monolithic die)。因此,单一装置在实施例中进行所主张的方法。
除非内容清楚要求,否则整个说明书与权利要求书中,“包括”与类似用词解读为包含的意思,相对于排除或消耗的意思;也就是“包含但不限于”的意思。单数或复数的用词也分别包含复数或单数。除此之外,本申请中“此处”、“以下”、“上方”、“下方”以及类似用词是指本申请整体而不是本申请的任何特定部分。当“或”一字用于参考两个或多个项目时,这个字涵盖这个字所有的下列解释、表列项目的任一个、表列项目的全部以及表列项目的任何组合。
所述方法与系统的上述实施例描述不用于排除或限制本发明成为特定形式。虽然本案描述的方法与系统的特定实施例与范例是为了说明本发明,熟知此技艺的人士应理解在本发明范围内不同的均等修饰是可能的。本申请揭露内容的教导可用于其他系统,不只适用于上述包含制图处理或视频处理的系统。可在许多不同架构中,进行上述不同操作,分不可不同于以上所述。除此之外,虽然本申请描述许多架构,但都不是用来限制本申请。
在其他实施例中,本申请所描述的一些或全部硬件与软件功能可存在打印机、相机、电视、数字多功能碟(DVD)播放器、DVR或PVR、手持装置、移动电话或其他装置。可结合上述的组件与不同实施例的作用,用来提供其他实施例。根据上述详细说明,可对所述方法与系统制造这些与其他改变。
一般而言,在权力要求书中,用语不应解读为对所述方法与系统限制于说明书与权利要求书中揭露的特定实施例,而是应解读为包含在权利要求下操作的任何处理系统与方法。因此,所述方法与系统不受限于揭露内容,所述方法与系统的范围是由权利要求书决定。
虽然所述方法与系统呈现为权利要求形式,发明人在权利要求形式中考虑不同面向的所述方法与系统。例如,虽然所述方法与系统仅有一方面是主张在计算器可读取媒体中实施,但是其他方面也可以在计算器可读取媒体中实施。此计算器可读取媒体可由计算装置(例如个人计算器、个人数字助理、PVR、移动装置或类似物)执行的储存指令,或是可为执行时设计用来产生装置(GPU、ASIC或类似物)的指令,或是软件应用,操作时进行上述内容。本申请主张的发明可实施在计算器码(例如HDL、Verilog等),它的产生、储存、合成与使用是用来产生GDSII数据(或是它的均等物)。而后可在此数据基础上,制造ASIC。
因此,发明人保留权利在申请本案之后可增加额外的权利要求,追求所述方法与系统其他的权利要求形式。

Claims (13)

1.一种多处理器系统,包括:
总线根,用以通过总线而与周边组件通讯,该总线根包含整合于其中的系统内存以及中心处理单元;以及
第一周边组件,直接耦合至所述总线根以及更直接耦合至第二周边组件,所述第一周边组件包括内部桥用以接收数据与传送数据,
其中,所述第二周边组件直接耦合至所述总线根并直接耦合至用以接收数据与传送数据的所述内部桥,以及
其中,所述第一周边组件的所述内部桥直接传送数据至所述第二周边组件,且所述第二周边组件通过所述总线根传送数据至所述第一周边组件的所述内部桥。
2.如权利要求1所述的系统,其中,所述第一周边组件与所述第二周边组件各自更用于与所述总线根直接通讯以传送与接收数据。
3.如权利要求1所述的系统,其中,接收与传送更包括通过所述总线根,从所述第二周边组件传送请求与数据至所述第一周边组件。
4.如权利要求1所述的系统,其中,所述总线根用以进行存写操作,其中,存写操作至所述第二周边组件包括所述总线根传送存写请求至所述第一周边组件的所述内部桥,以及所述第一周边组件的所述内部桥直接传送所述存写请求至所述第二周边组件。
5.如权利要求1所述的系统,其中,所述总线根用以进行存写操作,其中,存写操作至所述第一周边组件包括所述总线根传送存写请求至所述内部桥,以及所述内部桥传送所述存写请求至所述第一周边组件的内部总线接口。
6.如权利要求1所述的系统,其中,所述总线根用以进行读取操作,其中,读取操作至所述第一周边组件包括所述总线根传送读取请求至所述内部桥,以及所述内部桥传送所述读取请求至所述第一周边组件的内部总线接口。
7.如权利要求1所述的系统,其中,所述总线根用以进行读取操作,其中,读取操作至所述第二周边组件包括所述总线根传送读取请求至所述内部桥,以及所述内部桥直接传送所述读取请求至所述第二周边组件。
8.如权利要求1所述的系统,其中,所述内部桥包括逻辑用以决定对于所接收存写请求、所接收读取请求与所接收数据的路由。
9.如权利要求1所述的系统,其中,所述第一周边组件与所述第二周边组件各自更包括多个客户耦合至个别总线接口,其中,所述客户包括视频处理逻辑,所述视频处理逻辑包括着色器单元与编码器/译码器单元。
10.一种在多处理器系统中通讯的方法,所述方法包括:
从包含整合于其中的系统内存以及中心处理单元的总线根直接传送请求至第一周边组件,其中,所述请求包括读取请求与存写请求;
在所述第一周边组件通过所述第一周边组件的内部桥中的第一总线而接收所述请求;以及
从所述内部桥的适当路由决定所述请求,其中,适当路由包括:
针对第二周边组件的路由请求,通过第二总线直接从所述内部桥至所述第二周边组件的总线接口;
针对第一周边组件的路由请求至所述第一周边组件的总线接口;
所述第二周边组件,通过第三总线直接传送数据至所述总线根,响应读取请求;
所述第一周边组件通过所述第二总线传送读取请求至所述第二周边组件;
响应所述读取请求,所述第二周边组件通过所述第三总线传送数据至所述总线根;以及
所述总线根通过所述第一总线传送所述数据至所述内部桥。
11.一种包含计算器可读取的有形媒体的设备,具有储存在其中的指令,当在多处理系统中执行时,造成进行通讯方法,所述设备包括:
包含整合于其中的系统内存以及中心处理单元的总线根,用以直接传送请求至第一周边组件,其中,所述请求包括读取请求与存写请求;
所述第一周边组件,用以通过所述第一周边组件的内部桥中第一总线而接收请求;以及
所述内部桥,用以决定所述请求的适当路由,其中,适当路由包括:
针对第二周边组件的路由请求,通过第二总线从所述内部桥直接至所述第二周边组件的总线接口;及
针对第一周边组件的路由请求,至所述第一周边组件的总线接口;
所述第二周边组件,用以接收在所述第二周边组件的内部桥的所述请求;
其中,所述第一周边组件的所述内部桥直接传送数据至所述第二周边组件,且所述第二周边组件通过所述总线根传送数据至所述第一周边组件的所述内部桥。
12.如权利要求11所述的设备,更包括用以通过第三总线直接传送数据至所述总线根,响应读取请求的所述第二周边组件。
13.如权利要求12所述的设备,更包括:
用以通过所述第二总线传送读取请求至所述第二周边组件的所述第一周边组件;
用以响应所述读取请求,通过所述第三总线传送数据至所述总线根的所述第二周边组件;以及
用以通过所述第一总线传送所述数据至所述内部桥的所述总线根。
CN200980147694.9A 2008-10-03 2009-10-05 多处理器架构与方法 Active CN102227709B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510187635.1A CN105005542B (zh) 2008-10-03 2009-10-05 多处理器架构与方法

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US12/245,686 US8892804B2 (en) 2008-10-03 2008-10-03 Internal BUS bridge architecture and method in multi-processor systems
US12/245,686 2008-10-03
US12/340,510 2008-12-19
US12/340,510 US8373709B2 (en) 2008-10-03 2008-12-19 Multi-processor architecture and method
PCT/US2009/059594 WO2010040144A1 (en) 2008-10-03 2009-10-05 Multi-processor architecture and method

Related Child Applications (1)

Application Number Title Priority Date Filing Date
CN201510187635.1A Division CN105005542B (zh) 2008-10-03 2009-10-05 多处理器架构与方法

Publications (2)

Publication Number Publication Date
CN102227709A CN102227709A (zh) 2011-10-26
CN102227709B true CN102227709B (zh) 2015-05-20

Family

ID=41426838

Family Applications (2)

Application Number Title Priority Date Filing Date
CN200980147694.9A Active CN102227709B (zh) 2008-10-03 2009-10-05 多处理器架构与方法
CN201510187635.1A Active CN105005542B (zh) 2008-10-03 2009-10-05 多处理器架构与方法

Family Applications After (1)

Application Number Title Priority Date Filing Date
CN201510187635.1A Active CN105005542B (zh) 2008-10-03 2009-10-05 多处理器架构与方法

Country Status (6)

Country Link
US (4) US8373709B2 (zh)
EP (1) EP2342626B1 (zh)
JP (1) JP2012504835A (zh)
KR (1) KR101533761B1 (zh)
CN (2) CN102227709B (zh)
WO (1) WO2010040144A1 (zh)

Families Citing this family (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8892804B2 (en) 2008-10-03 2014-11-18 Advanced Micro Devices, Inc. Internal BUS bridge architecture and method in multi-processor systems
US8373709B2 (en) * 2008-10-03 2013-02-12 Ati Technologies Ulc Multi-processor architecture and method
US8751720B2 (en) 2010-11-08 2014-06-10 Moon J. Kim Computationally-networked unified data bus
CN102810085A (zh) * 2011-06-03 2012-12-05 鸿富锦精密工业(深圳)有限公司 Pci-e扩展系统及方法
US10817043B2 (en) * 2011-07-26 2020-10-27 Nvidia Corporation System and method for entering and exiting sleep mode in a graphics subsystem
CN102931546A (zh) * 2011-08-10 2013-02-13 鸿富锦精密工业(深圳)有限公司 连接器组合
CN103105895A (zh) * 2011-11-15 2013-05-15 辉达公司 计算机系统及其显示卡及该系统进行图形处理的方法
CN103631549A (zh) * 2012-08-22 2014-03-12 慧荣科技股份有限公司 图像处理装置及外接图像装置
US8996781B2 (en) * 2012-11-06 2015-03-31 OCZ Storage Solutions Inc. Integrated storage/processing devices, systems and methods for performing big data analytics
US20140149528A1 (en) * 2012-11-29 2014-05-29 Nvidia Corporation Mpi communication of gpu buffers
WO2015016843A1 (en) * 2013-07-30 2015-02-05 Hewlett-Packard Development Company, L.P. Connector for a computing assembly
US9374552B2 (en) 2013-11-11 2016-06-21 Amazon Technologies, Inc. Streaming game server video recorder
US9641592B2 (en) 2013-11-11 2017-05-02 Amazon Technologies, Inc. Location of actor resources
US9634942B2 (en) 2013-11-11 2017-04-25 Amazon Technologies, Inc. Adaptive scene complexity based on service quality
US9805479B2 (en) 2013-11-11 2017-10-31 Amazon Technologies, Inc. Session idle optimization for streaming server
US9578074B2 (en) 2013-11-11 2017-02-21 Amazon Technologies, Inc. Adaptive content transmission
US9604139B2 (en) 2013-11-11 2017-03-28 Amazon Technologies, Inc. Service for generating graphics object data
US9582904B2 (en) 2013-11-11 2017-02-28 Amazon Technologies, Inc. Image composition based on remote object data
US10261570B2 (en) * 2013-11-27 2019-04-16 Intel Corporation Managing graphics power consumption and performance
WO2017018993A1 (en) * 2015-07-24 2017-02-02 Hewlett Packard Enterprise Development Lp Enabling compression of a video output
US10311013B2 (en) * 2017-07-14 2019-06-04 Facebook, Inc. High-speed inter-processor communications
CN107562674B (zh) * 2017-08-28 2020-03-20 上海集成电路研发中心有限公司 一种嵌入处理器的总线协议异步逻辑电路实现装置
JP6635209B2 (ja) * 2018-04-18 2020-01-22 富士通クライアントコンピューティング株式会社 情報処理システム
JP6579255B1 (ja) 2018-12-28 2019-09-25 富士通クライアントコンピューティング株式会社 情報処理システム、および中継装置
JP6573046B1 (ja) 2019-06-05 2019-09-11 富士通クライアントコンピューティング株式会社 情報処理装置、情報処理システムおよび情報処理プログラム
US11637773B2 (en) * 2020-02-11 2023-04-25 Fungible, Inc. Scaled-out transport as connection proxy for device-to-device communications
CN115981853A (zh) * 2022-12-23 2023-04-18 摩尔线程智能科技(北京)有限责任公司 Gpu互联架构、实现gpu互联架构的方法、计算设备

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1890660A (zh) * 2003-11-19 2007-01-03 路西德信息技术有限公司 Pc总线上的多重三维图形管线的方法及系统
CN1983226A (zh) * 2005-12-15 2007-06-20 威盛电子股份有限公司 支持多个图形处理单元的方法与系统

Family Cites Families (103)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5712664A (en) * 1993-10-14 1998-01-27 Alliance Semiconductor Corporation Shared memory graphics accelerator system
JP3454294B2 (ja) * 1994-06-20 2003-10-06 インターナショナル・ビジネス・マシーンズ・コーポレーション マルチプル・バス情報処理システム及びブリッジ回路
US5913045A (en) * 1995-12-20 1999-06-15 Intel Corporation Programmable PCI interrupt routing mechanism
US6359624B1 (en) * 1996-02-02 2002-03-19 Kabushiki Kaisha Toshiba Apparatus having graphic processor for high speed performance
US5999183A (en) * 1997-07-10 1999-12-07 Silicon Engineering, Inc. Apparatus for creating a scalable graphics system with efficient memory and bandwidth usage
US6173374B1 (en) * 1998-02-11 2001-01-09 Lsi Logic Corporation System and method for peer-to-peer accelerated I/O shipping between host bus adapters in clustered computer network
US6560688B1 (en) * 1998-10-01 2003-05-06 Advanced Micro Devices, Inc. System and method for improving accelerated graphics port systems
US6477623B2 (en) * 1998-10-23 2002-11-05 Micron Technology, Inc. Method for providing graphics controller embedded in a core logic unit
JP2000222590A (ja) * 1999-01-27 2000-08-11 Nec Corp 画像処理方法及び装置
US6317813B1 (en) * 1999-05-18 2001-11-13 Silicon Integrated Systems Corp. Method for arbitrating multiple memory access requests in a unified memory architecture via a non unified memory controller
US6473086B1 (en) * 1999-12-09 2002-10-29 Ati International Srl Method and apparatus for graphics processing using parallel graphics processors
US6662257B1 (en) * 2000-05-26 2003-12-09 Ati International Srl Multiple device bridge apparatus and method thereof
US6587905B1 (en) * 2000-06-29 2003-07-01 International Business Machines Corporation Dynamic data bus allocation
US6668296B1 (en) * 2000-06-30 2003-12-23 Hewlett-Packard Development Company, L.P. Powering a notebook across a USB interface
US6606614B1 (en) * 2000-08-24 2003-08-12 Silicon Recognition, Inc. Neural network integrated circuit with fewer pins
US6802021B1 (en) * 2001-01-23 2004-10-05 Adaptec, Inc. Intelligent load balancing for a multi-path storage system
US7009618B1 (en) * 2001-07-13 2006-03-07 Advanced Micro Devices, Inc. Integrated I/O Remapping mechanism
US7340555B2 (en) * 2001-09-28 2008-03-04 Dot Hill Systems Corporation RAID system for performing efficient mirrored posted-write operations
US20030158886A1 (en) * 2001-10-09 2003-08-21 Walls Jeffrey J. System and method for configuring a plurality of computers that collectively render a display
US6700580B2 (en) * 2002-03-01 2004-03-02 Hewlett-Packard Development Company, L.P. System and method utilizing multiple pipelines to render graphical data
US6567880B1 (en) * 2002-03-28 2003-05-20 Compaq Information Technologies Group, L.P. Computer bridge interfaces for accelerated graphics port and peripheral component interconnect devices
US6968415B2 (en) * 2002-03-29 2005-11-22 International Business Machines Corporation Opaque memory region for I/O adapter transparent bridge
US7069365B2 (en) * 2002-04-01 2006-06-27 Sun Microsystems, Inc. System and method for controlling multiple devices via general purpose input/output (GPIO) hardware
US6947051B2 (en) * 2003-02-18 2005-09-20 Microsoft Corporation Video memory management
US6874042B2 (en) * 2003-03-11 2005-03-29 Dell Products L.P. System and method for using a switch to route peripheral and graphics data on an interconnect
US7068278B1 (en) * 2003-04-17 2006-06-27 Nvidia Corporation Synchronized graphics processing units
US7093033B2 (en) * 2003-05-20 2006-08-15 Intel Corporation Integrated circuit capable of communicating using different communication protocols
US20040257369A1 (en) * 2003-06-17 2004-12-23 Bill Fang Integrated video and graphics blender
US7119808B2 (en) * 2003-07-15 2006-10-10 Alienware Labs Corp. Multiple parallel processor computer graphics system
TWI284275B (en) * 2003-07-25 2007-07-21 Via Tech Inc Graphic display architecture and control chip set therein
US6956579B1 (en) * 2003-08-18 2005-10-18 Nvidia Corporation Private addressing in a multi-processor graphics processing system
US7822105B2 (en) * 2003-09-02 2010-10-26 Sirf Technology, Inc. Cross-correlation removal of carrier wave jamming signals
TWI221980B (en) * 2003-09-02 2004-10-11 Prolific Technology Inc Apparatus for multiple host access to storage media
US7171499B2 (en) * 2003-10-10 2007-01-30 Advanced Micro Devices, Inc. Processor surrogate for use in multiprocessor systems and multiprocessor system using same
TWI221214B (en) * 2003-10-15 2004-09-21 Via Tech Inc Interrupt signal control system and control method
US7782325B2 (en) * 2003-10-22 2010-08-24 Alienware Labs Corporation Motherboard for supporting multiple graphics cards
US7119810B2 (en) * 2003-12-05 2006-10-10 Siemens Medical Solutions Usa, Inc. Graphics processing unit for simulation or medical diagnostic imaging
US7567252B2 (en) * 2003-12-09 2009-07-28 Microsoft Corporation Optimizing performance of a graphics processing unit for efficient execution of general matrix operations
US7149848B2 (en) * 2004-02-26 2006-12-12 Hewlett-Packard Development Company, L.P. Computer system cache controller and methods of operation of a cache controller
US7289125B2 (en) * 2004-02-27 2007-10-30 Nvidia Corporation Graphics device clustering with PCI-express
US7424564B2 (en) * 2004-03-23 2008-09-09 Qlogic, Corporation PCI—express slot for coupling plural devices to a host system
US7246190B2 (en) * 2004-04-21 2007-07-17 Hewlett-Packard Development Company, L.P. Method and apparatus for bringing bus lanes in a computer system using a jumper board
US6985152B2 (en) * 2004-04-23 2006-01-10 Nvidia Corporation Point-to-point bus bridging without a bridge controller
US7663633B1 (en) * 2004-06-25 2010-02-16 Nvidia Corporation Multiple GPU graphics system for implementing cooperative graphics instruction execution
US7062594B1 (en) * 2004-06-30 2006-06-13 Emc Corporation Root complex connection system
US7721118B1 (en) * 2004-09-27 2010-05-18 Nvidia Corporation Optimizing power and performance for multi-processor graphics processing
TWI274255B (en) * 2004-11-08 2007-02-21 Asustek Comp Inc Motherboard
TWM264547U (en) * 2004-11-08 2005-05-11 Asustek Comp Inc Main board
US7633505B1 (en) * 2004-11-17 2009-12-15 Nvidia Corporation Apparatus, system, and method for joint processing in graphics processing units
US8066515B2 (en) * 2004-11-17 2011-11-29 Nvidia Corporation Multiple graphics adapter connection systems
US7598958B1 (en) * 2004-11-17 2009-10-06 Nvidia Corporation Multi-chip graphics processing unit apparatus, system, and method
US7576745B1 (en) * 2004-11-17 2009-08-18 Nvidia Corporation Connecting graphics adapters
US7477256B1 (en) * 2004-11-17 2009-01-13 Nvidia Corporation Connecting graphics adapters for scalable performance
US7451259B2 (en) 2004-12-06 2008-11-11 Nvidia Corporation Method and apparatus for providing peer-to-peer data transfer within a computing environment
US7275123B2 (en) * 2004-12-06 2007-09-25 Nvidia Corporation Method and apparatus for providing peer-to-peer data transfer within a computing environment
US7545380B1 (en) 2004-12-16 2009-06-09 Nvidia Corporation Sequencing of displayed images for alternate frame rendering in a multi-processor graphics system
US7372465B1 (en) * 2004-12-17 2008-05-13 Nvidia Corporation Scalable graphics processing for remote display
US7383412B1 (en) * 2005-02-28 2008-06-03 Nvidia Corporation On-demand memory synchronization for peripheral systems with multiple parallel processors
US7246191B2 (en) * 2005-03-31 2007-07-17 Intel Corporation Method and apparatus for memory interface
US7616207B1 (en) * 2005-04-25 2009-11-10 Nvidia Corporation Graphics processing system including at least three bus devices
US7793029B1 (en) * 2005-05-17 2010-09-07 Nvidia Corporation Translation device apparatus for configuring printed circuit board connectors
US8054314B2 (en) * 2005-05-27 2011-11-08 Ati Technologies, Inc. Applying non-homogeneous properties to multiple video processing units (VPUs)
US7649537B2 (en) * 2005-05-27 2010-01-19 Ati Technologies, Inc. Dynamic load balancing in multiple video processing unit (VPU) systems
US7539801B2 (en) * 2005-05-27 2009-05-26 Ati Technologies Ulc Computing device with flexibly configurable expansion slots, and method of operation
US20060282604A1 (en) * 2005-05-27 2006-12-14 Ati Technologies, Inc. Methods and apparatus for processing graphics data using multiple processing circuits
US7663635B2 (en) * 2005-05-27 2010-02-16 Ati Technologies, Inc. Multiple video processor unit (VPU) memory mapping
US7613346B2 (en) * 2005-05-27 2009-11-03 Ati Technologies, Inc. Compositing in multiple video processing unit (VPU) systems
JP2007008679A (ja) * 2005-06-30 2007-01-18 Toshiba Corp 排紙装置
US20070016711A1 (en) * 2005-07-13 2007-01-18 Jet Way Information Co., Ltd. Interfacing structure for multiple graphic
US20070038794A1 (en) * 2005-08-10 2007-02-15 Purcell Brian T Method and system for allocating a bus
US7629978B1 (en) * 2005-10-31 2009-12-08 Nvidia Corporation Multichip rendering with state control
US7525548B2 (en) * 2005-11-04 2009-04-28 Nvidia Corporation Video processing with multiple graphical processing units
US8294731B2 (en) 2005-11-15 2012-10-23 Advanced Micro Devices, Inc. Buffer management in vector graphics hardware
US8412872B1 (en) * 2005-12-12 2013-04-02 Nvidia Corporation Configurable GPU and method for graphics processing using a configurable GPU
US7340557B2 (en) * 2005-12-15 2008-03-04 Via Technologies, Inc. Switching method and system for multiple GPU support
US7623131B1 (en) * 2005-12-16 2009-11-24 Nvidia Corporation Graphics processing systems with multiple processors connected in a ring topology
JP4869714B2 (ja) * 2006-01-16 2012-02-08 株式会社ソニー・コンピュータエンタテインメント 情報処理装置、信号伝送方法、およびブリッジ
US7461195B1 (en) * 2006-03-17 2008-12-02 Qlogic, Corporation Method and system for dynamically adjusting data transfer rates in PCI-express devices
TW200737034A (en) * 2006-03-23 2007-10-01 Micro Star Int Co Ltd Connector module of graphic card and the device of motherboard thereof
US7970956B2 (en) * 2006-03-27 2011-06-28 Ati Technologies, Inc. Graphics-processing system and method of broadcasting write requests to multiple graphics devices
US8130227B2 (en) 2006-05-12 2012-03-06 Nvidia Corporation Distributed antialiasing in a multiprocessor graphics system
US7535433B2 (en) * 2006-05-18 2009-05-19 Nvidia Corporation Dynamic multiple display configuration
JP4439491B2 (ja) * 2006-05-24 2010-03-24 株式会社ソニー・コンピュータエンタテインメント マルチグラフィックスプロセッサシステム、グラフィックスプロセッサおよびデータ転送方法
US7480757B2 (en) * 2006-05-24 2009-01-20 International Business Machines Corporation Method for dynamically allocating lanes to a plurality of PCI Express connectors
US8103993B2 (en) * 2006-05-24 2012-01-24 International Business Machines Corporation Structure for dynamically allocating lanes to a plurality of PCI express connectors
US8555099B2 (en) * 2006-05-30 2013-10-08 Ati Technologies Ulc Device having multiple graphics subsystems and reduced power consumption mode, software and methods
US7412554B2 (en) * 2006-06-15 2008-08-12 Nvidia Corporation Bus interface controller for cost-effective high performance graphics system with two or more graphics processing units
US7562174B2 (en) * 2006-06-15 2009-07-14 Nvidia Corporation Motherboard having hard-wired private bus between graphics cards
US7500041B2 (en) * 2006-06-15 2009-03-03 Nvidia Corporation Graphics processing unit for cost effective high performance graphics system with two or more graphics processing units
US7619629B1 (en) * 2006-06-15 2009-11-17 Nvidia Corporation Method and system for utilizing memory interface bandwidth to connect multiple graphics processing units
US7616206B1 (en) * 2006-06-16 2009-11-10 Nvidia Corporation Efficient multi-chip GPU
US20080055321A1 (en) * 2006-08-31 2008-03-06 Ati Technologies Inc. Parallel physics simulation and graphics processing
JP4421593B2 (ja) * 2006-11-09 2010-02-24 株式会社ソニー・コンピュータエンタテインメント マルチプロセッサシステム、その制御方法、プログラム及び情報記憶媒体
US20080200043A1 (en) * 2007-02-15 2008-08-21 Tennrich International Corp. Dual display card connection means
ATE508141T1 (de) 2007-03-07 2011-05-15 Beneo Orafti S A Konservierung von naturkautschuklatex
JP2008276568A (ja) * 2007-04-27 2008-11-13 Toshiba Corp 情報処理装置、およびプロセッサ回路の制御方法
US7626418B1 (en) * 2007-05-14 2009-12-01 Xilinx, Inc. Configurable interface
US8711153B2 (en) * 2007-12-28 2014-04-29 Intel Corporation Methods and apparatuses for configuring and operating graphics processing units
US8161209B2 (en) * 2008-03-31 2012-04-17 Advanced Micro Devices, Inc. Peer-to-peer special purpose processor architecture and method
CN101639930B (zh) * 2008-08-01 2012-07-04 辉达公司 一连串绘图处理器处理绘图数据的方法及系统
US8373709B2 (en) * 2008-10-03 2013-02-12 Ati Technologies Ulc Multi-processor architecture and method
US8892804B2 (en) * 2008-10-03 2014-11-18 Advanced Micro Devices, Inc. Internal BUS bridge architecture and method in multi-processor systems
EP2350830A4 (en) * 2008-10-30 2013-05-22 Lsi Corp REDISTRIBUTION OF STORAGE CONTROLLER DATA

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1890660A (zh) * 2003-11-19 2007-01-03 路西德信息技术有限公司 Pc总线上的多重三维图形管线的方法及系统
CN1983226A (zh) * 2005-12-15 2007-06-20 威盛电子股份有限公司 支持多个图形处理单元的方法与系统

Also Published As

Publication number Publication date
US20180314670A1 (en) 2018-11-01
CN105005542B (zh) 2019-01-15
KR101533761B1 (ko) 2015-07-03
KR20110067149A (ko) 2011-06-21
US8373709B2 (en) 2013-02-12
CN102227709A (zh) 2011-10-26
US20130147815A1 (en) 2013-06-13
WO2010040144A1 (en) 2010-04-08
EP2342626B1 (en) 2015-07-08
EP2342626A1 (en) 2011-07-13
US10467178B2 (en) 2019-11-05
US20100088453A1 (en) 2010-04-08
CN105005542A (zh) 2015-10-28
JP2012504835A (ja) 2012-02-23
US20170235700A1 (en) 2017-08-17

Similar Documents

Publication Publication Date Title
CN102227709B (zh) 多处理器架构与方法
US7380045B2 (en) Protocol conversion and arbitration circuit, system having the same, and method for converting and arbitrating signals
US6185520B1 (en) Method and system for bus switching data transfers
US6182183B1 (en) Communications system and method with multilevel connection identification
US7818546B2 (en) Pipeline processing communicating adjacent stages and controls to prevent the address information from being overwritten
US6745369B1 (en) Bus architecture for system on a chip
US9977756B2 (en) Internal bus architecture and method in multi-processor systems
US20030088743A1 (en) Mobile wireless communication device architectures and methods therefor
US20020129173A1 (en) Communications system and method with non-blocking shared interface
US20050177664A1 (en) Bus system and method thereof
CN102576313A (zh) 采用分布式嵌入式切换的多处理计算
CN100557589C (zh) 功耗减少的先进微控制器总线架构系统及其驱动方法
US7721038B2 (en) System on chip (SOC) system for a multimedia system enabling high-speed transfer of multimedia data and fast control of peripheral devices
CN109032973A (zh) Icb总线系统及协议
CN109690511B (zh) 总线控制电路、半导体集成电路、电路基板、信息处理装置以及总线控制方法
US7096290B2 (en) On-chip high speed data interface
Sharma Compute Express Link (CXL): Enabling heterogeneous data-centric computing with heterogeneous memory hierarchy
US8521937B2 (en) Method and apparatus for interfacing multiple dies with mapping to modify source identity
US6377581B1 (en) Optimized CPU-memory high bandwidth multibus structure simultaneously supporting design reusable blocks
KR100871835B1 (ko) 메모리 시스템 및 메모리 시스템의 신호전송 방법
US6901472B2 (en) Data-processing unit with a circuit arrangement for connecting a first communications bus with a second communications bus
US20070103957A1 (en) Data transfer in a memory device

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant