CN1983233A - 多处理器数据处理系统 - Google Patents
多处理器数据处理系统 Download PDFInfo
- Publication number
- CN1983233A CN1983233A CNA2007100013444A CN200710001344A CN1983233A CN 1983233 A CN1983233 A CN 1983233A CN A2007100013444 A CNA2007100013444 A CN A2007100013444A CN 200710001344 A CN200710001344 A CN 200710001344A CN 1983233 A CN1983233 A CN 1983233A
- Authority
- CN
- China
- Prior art keywords
- processing unit
- data
- data bus
- series
- handling part
- 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.)
- Pending
Links
- 238000012545 processing Methods 0.000 title claims abstract description 93
- 238000004891 communication Methods 0.000 claims abstract description 63
- 238000012546 transfer Methods 0.000 claims description 3
- 230000007246 mechanism Effects 0.000 abstract description 12
- 230000005540 biological transmission Effects 0.000 description 19
- 230000004044 response Effects 0.000 description 11
- 230000008569 process Effects 0.000 description 8
- 238000000034 method Methods 0.000 description 7
- 238000013461 design Methods 0.000 description 5
- 230000008901 benefit Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000009191 jumping Effects 0.000 description 2
- 230000011218 segmentation Effects 0.000 description 2
- 238000011144 upstream manufacturing Methods 0.000 description 2
- 230000002457 bidirectional effect Effects 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000002708 enhancing effect Effects 0.000 description 1
- 230000002349 favourable effect Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000012856 packing Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
- G06F15/163—Interprocessor communication
- G06F15/173—Interprocessor communication using an interconnection network, e.g. matrix, shuffle, pyramid, star, snowflake
- G06F15/17356—Indirect interconnection networks
- G06F15/17368—Indirect interconnection networks non hierarchical topologies
- G06F15/17381—Two dimensional, e.g. mesh, torus
Abstract
一种数据互连和路由机制,实现了一种支持通信频率的可伸缩提高的体系结构。在一种应用中,数据处理系统包括第一和第二处理部,每个处理部至少包括第一和第二处理单元。每个所述第一和第二处理单元具有相应的第一输出数据总线。所述第一处理单元的第一输出数据总线被连接到所述第二处理单元,所述第二处理单元的第一输出数据总线被连接到所述第一处理单元。至少所述第一处理部的第一处理单元和所述第二处理部的第二处理单元每个都具有相应的第二输出数据总线。所述第一处理部的第一处理单元的第二输出数据总线被连接到所述第二处理部的第一处理单元,并且所述第二处理部的第二处理单元的第二输出数据总线被连接到所述第一处理部的第二处理单元。
Description
技术领域
本发明一般地涉及数据处理系统,具体地说,涉及多处理器数据处理系统。更具体地说,本发明涉及用于多处理器数据处理系统的数据互连和数据路由机制。
背景技术
在计算机领域中公知的是,通过利用多个处理单元的共同处理能力,可以得到更高的计算机系统性能。可以使用许多不同的体系结构来设计多处理器(MP)计算机系统,取决于预期的设计点、系统的性能要求以及每种应用的软件环境,其中可能有各种体系结构适合于特定的应用。已知的MP体系结构包括,例如,对称多处理器(SMP)和非一致性存储器访问(NUMA)体系结构。一般认为通过设计具有更多分层的计算机系统,即,具有更多互连的层并且每个互连具有更少的处理单元连接的计算机系统,可以获得更大的可伸缩性,以及因此更高的性能。
然而,本发明认识到传统分层互连体系结构内的处理单元间的事务的通信延迟是对提高系统性能的重大妨碍,并且这种传统分层系统的通信延迟随着系统的大小而增加,相当大地减小了通过增大系统规模可以得到的性能收益。为了解决这些性能和可伸缩性问题,美国专利No.6,519,649介绍了一种可伸缩的非分层的分段互连体系结构,该体系结构改善了地址事务和关联的相关响应的通信延迟。虽然美国专利No.6,519,649的非分层的分段互连体系结构改善了地址和关联的相关消息的通信延迟,但是提供一种减小延迟并提高处理单元间数据通信效率的增强的数据互连和数据路由机制是有用的并且是所希望的。
发明内容
鉴于上述的说明,本发明提供了一种具有改进的数据互连和数据路由机制的数据处理系统。在一个实施例中,所述数据处理系统包括第一和第二处理部(processing book),每个处理部至少包括第一和第二处理单元。所述第一和第二处理单元中的每个处理单元具有相应的第一输出数据总线。所述第一处理单元的所述第一输出数据总线被连接到所述第二处理单元,并且所述第二处理单元的所述第一输出数据总线被连接到所述第一处理单元。至少所述第一处理部的所述第一处理单元以及所述第二处理部的所述第二处理单元每个都具有相应的第二输出数据总线。所述第一处理部的所述第一处理单元的所述第二输出数据总线被连接到所述第二处理部的所述第一处理单元,并且所述第二处理部的所述第二处理单元的所述第二输出数据总线被连接到所述第一处理部的所述第二处理单元。在全部所述第一和第二输出数据总线上的数据通信优选地是单向的。
本发明的数据互连和路由机制减小了数据通信延迟,并且支持基于处理器活动级别/业务的动态路由决定。此外,本发明的数据互连和路由机制实现了一种体系结构,所述体系结构支持与不断增加的处理器频率相称的通信频率的提高。
在下面详细的书面说明中,本发明的上述以及其他目的、特征和优点将变得显而易见。
附图说明
在所附的权利要求书中说明了被认为是本发明的特性的新颖特征。然而,当结合附图阅读时,通过参考下面对示例性实施例的详细说明,可以最佳地理解发明本身及其优选使用模式、其他目的和优点,这些附图是:
图1是根据本发明的一个实施例的包括数据互连和数据路由机制的数据处理系统的高层方块图;
图2是根据本发明的一个实施例的典型处理单元的更详细的方块图;
图3是根据本发明的一个实施例的示例性数据通信情景的时序图;以及
图4示出了一种根据本发明的一个实施例的典型数据通信格式。
具体实施方式
现在参考附图,具体地说,参考图1,其中示出了根据本发明的一个实施例的具有数据互连和数据路由机制的多处理器数据处理系统8的高层方块图。本发明的数据互连和路由机制提供了高频率、低延迟、可伸缩的结构,该结构允许在多处理器数据处理系统内的多个处理单元之间高效地路由数据。
如图所示,数据处理系统8包括用于处理指令和数据(通常在软件和/或固件的控制下)的多个处理单元(PU)10a-10h。优选地,各PU10(可以是同类的或异类的)被物理地布置在一个二(或更高)维阵列内,所述阵列包括两行或更多行(或系列)的PU10。即,PU10a-10d形成第一行(或第一系列),并且PU10e-10h形成第二行(或第二系列)。尽管在所述第一行(包括PU10a-10d)中的每个PU10优选地在所述第二行(包括PU10e-10h)中具有相应的PU10,但是本发明并不要求这种对称。然而,如所示出的,各PU10的配对有利地允许两个或更多个PU10的每个这种处理“部”26被方便地包装在例如单个多芯片模块(MCM)内。这种包装允许通过连接所希望数目的处理部26来容易地构建各种不同规模的系统。
为了提供对软件指令和/或数据的存储,一个或多个PU10可以被连接到一个或多个存储器12。例如,在所示出的实施例中,PU10a、10d、10e、和10h(并且可能是其他PU10)都经由单向8字节存储器请求总线14和单向16字节存储器数据总线16被连接到相应的存储器12。存储器12包括通常可以由某些或全部PU10访问的共享存储器区域。可以理解,本发明中可以可替代地采用其他的存储体系结构。
经由一个或多个交换的、总线式的、混合的和/或其他在此处被总称为“互连构架”的互连结构,可以在各PU10之间传送数据访问请求、高速缓存管理命令、相关响应、数据以及其他信息。在图1中,经由地址和响应互连18在各PU10之间传送地址和相关响应业务,上面引用的美国专利No.6,519,649中详细披露了其优选的实施例,因此这里不再进一步说明。在另一方面,利用在图1中详细示出并且在下面说明的总线式数据互连体系结构在各PU10之间传递数据通信。
如图所示,图1的数据互连包括用于各PU10的每个系列的分段数据通道。因此,例如,通过由第一组数据总线20形成的第一分段数据通道对包括PU10a-10d的PU的第一系列进行互连,并且通过由另一组数据总线20形成的第二分段数据通道对包括PU10e-10h的PU的第二系列进行互连。在一个优选实施例中,各数据总线20在图1中箭头指出的方向上是单向的且具有一致的数据带宽(例如8字节),并且是总线并发式(bus-pumped)接口,该接口具有由各PU10内的时钟管理的公共传输频率。
数据处理系统8的数据互连还包括将每个PU10连接到相邻行中对应的PU10(如果有)的双向总线式接口。例如,在所示出的实施例中,每个PU10通过两个单向数据总线24被连接到相邻行中对应的PU10,所述两个单向数据总线24优选地(但并不是必须)与数据总线20相同。各PU10之间的距离,以及因此数据总线20和24的长度优选地被保持为最小,以便支持高传输频率。
数据处理系统8的数据互连还可以可选地包括一个或多个数据总线22,它们沿各PU10的所述阵列的一个或多个维度形成闭合的循环路径。例如,图1示出了一个实施例,其中数据总线22a将PU10d连接到PU10a,并且数据总线22b将PU10e连接到PU10h,为各PU10的每行形成了相应的闭合循环路径。当然,在其他实施例中,可以在各PU10的所述阵列的其他维度内可替代地或附加地形成(多个)闭合循环路径,例如,通过附加的“垂直”数据总线(未示出)而不是数据总线24将PU10a连接到PU10e。
与数据总线20、24相比,使用数据总线22可以实现更高的通信频率,如果总线长度被最小化的话。因此,最小化数据总线22的长度通常是有利的,例如,以最小化PU10d、10h与PU10a、10e之间距离的柱面布局来物理地布置处理部26。如果对于其他的设计考虑来说,不可能或不希望采用柱面布局,则可以可替代地以比数据总线20、24低的传输频率来实现数据总线22,以便允许更长的总线长度。还应指出,虽然如图1所示,数据总线22优选地具有与数据总线20和24相同的数据带宽(例如,8字节),但是当设计考虑要求时,可以可替代地以不同的(多个)带宽来实现数据总线22。
以所示出的配置,数据可以在大致顺时针方向的回路中传输,或在由一个或多个数据总线20和/或一个或多个数据总线24形成的不同大小的回路的各部分中传输。在源PU10和目的地PU10之间可能有多个路线,并且如果实现了数据总线22,则可能的路线数目会增加。例如,PU10b可以通过在其关联的数据总线20上输出所请求的数据(该数据然后将由PU10c接收)来响应PU10g的数据访问请求(由PU10a经由地址和响应互连18接收)。然后PU10c可以经由其数据总线24将该数据传输给PU10g,或可替代地可以分别经由PU10d和10h及其关联的数据总线24和20将该数据传输给PU10g。如下面进一步的说明,优选地,根据优先级方案和目的地(例如,PU或路线)标识符以及可选地基于PU间的控制通信,沿多个可能路线中的一个选定路线由各PU10来路由数据通信。可以是单向(如图所示)或双向的PU间的控制通信通过控制总线30来传送。重要的是,在一个优选实施例中,各PU10之间的数据通信对于各PU10是不可重试的。
现在参考图2,其中示出了PU10的方块图,该PU10可以被用于实现数据处理系统8内的任一或全部的PU10。在一个优选实施例中,每个PU10被实现为单个集成电路器件。
如图2所示,PU10包括一个或多个用于处理软件指令和数据的处理器核心44。处理器核心44可以配备有高速缓存分层结构46,以便为指令和数据提供低延迟存储。处理器核心44可以被连接到为存储器12提供接口的集成存储器控制器(IMC)40,并且被连接到提供用于与I/O设备、存储设备以及外围设备通信的接口的输入/输出控制器(IOC)42。如虚线所示,处理器核心44、IOC42和IMC40(以及可选地其他未示出的电路块)可以一起被看作“本地”电路50,其可以用作数据处理系统8的数据互连上的数据通信的源或目的地。
PU10还包括将PU10接口连接到数据处理系统8的所述互连构架的控制器。这些控制器包括地址和响应接口66,所述接口处理经由地址和响应互连18的通信,以及包括数据控制器52,其提供到数据处理系统8的数据互连的接口。数据控制器52包括“水平”控制器64,其管理输入和输出数据总线20上的通信,以及包括“垂直”控制器60,其管理输入和输出数据总线24上的通信。数据控制器52还包括路由映射68,其为具有每个可能的目的地标识符的数据通信指示可能的路线。
源PU10与目的地PU10之间的路线内的每个数据控制器52基于许多因素来选择数据通信将经过的路线的下一跳,所述因素包括可行路线的长度、选定的优先级方案、是否存在竞争的数据通信,以及可选地其他的因素,诸如可动态地设置的模式位、检测到的总线故障、历史业务模式以及经由控制总线30传递的PU间控制通信。通常,数据控制器52为不存在具有更高优先级的竞争数据通信的数据通信选择最短的可用路径。
尽管用于协调数据通信的所述可选的控制通信可以包括“下游”PU10与“上游”PU10(该“下游”PU10经由数据总线20从所述“上游”PU10接收数据通信)之间的控制通信,但是所述控制通信(如果存在)优选地至少包括配对的PU28间的通信,所述配对的PU28可能会潜在地向同一相邻的(多个)PU10发送竞争数据业务。在图1的典型数据处理系统8内,PU10a和10f是配对的PU,它们可能会潜在地向PU10e和10b发送竞争数据业务,PU10b和10g是配对的PU,它们可能会潜在地向PU10c和10f发送竞争数据业务,并且PU10c和10h是配对的PU,它们可能会潜在地向PU10g和10d发送竞争数据业务。通过协调配对的PU之间的通信,可以最小化相邻PU处数据业务之间的冲突。
现在参考表I,下面给出了根据本发明的由数据控制器52实现的一个典型优先级方案。就特定的PU10而言,如果从数据总线20或22接收或传输,则表I将数据通信标识为H(水平),如果从数据总线24接收或传输,则为V(垂直),以及如果数据通信将所述PU10的本地电路50作为源或目的地,则为L(本地)。
在表I给出的优先级方案中,PU10的数据控制器52给与在数据总线20(以及数据总线22,如果存在)上接收的输入数据通信最高优先级,而不管该数据通信的目的地是否是本地电路50、输出数据总线20(或22)或是输出数据总线24。实际上,从数据总线20(或22)接收的数据通信是不受阻止的。数据控制器52给与在数据总线24上接收的业务次最高优先级(如优先级2所示),而不管目的地是本地电路50还是数据总线20。最后,数据控制器52给与数据总线20和24上源自本地电路50的数据通信更低的优先级。在这种源自本地的、在同一数据总线上竞争传输的业务之间,数据控制器52将更高的优先级给予以水平或垂直相邻的PU作为最终目的地的业务。
表I
源 | 目的地 | 优先级(同一目的地) |
H | L | 1(不阻止) |
V | L | 2 |
H | H | 1(不阻止) |
V | H | 2 |
L | H-下一个PU | 3 |
L | H-不是下一个PU | 4 |
H | V | 1 |
L | V-下一个PU | 2 |
L | V-不是下一个PU | 3 |
可以理解,例如,取决于所述下一个PU之后的路径,可以扩展表I中概括的典型优先级方案以便提供其他优先级别。即,具有垂直源和水平目的地的业务可以被进一步分解成具有水平“下一跳”的业务和具有垂直“下一跳”的业务,每个业务组具有不同的优先级。
现在参考图3,其中给出了一个典型通信情景,其说明了使用配对的PU(例如,配对的PU28)之间的控制通信来协调源PU与目的地PU之间的数据传输。在该典型通信情景中,PU10a是源PU,并且PU10f是目的地PU。
图3首先示出了对由PU10f请求的数据访问(例如,读取)的组合响应(CR)80。CR80(其优选地经由地址和控制互连18被传送到所有的PU10)将PU10a标识为所请求的数据的源。响应于接收到CR80,PU10a的本地电路50将所请求的数据从例如关联的存储器12或高速缓存分层结构46提供给数据控制器52。数据控制器52根据所述优先级方案在其数据总线20上输出包含所请求的数据的数据通信82。即,当垂直控制器60经由数据总线24或水平控制器64经由数据总线22(如果存在)没有接收到以数据总线20为中间目的地的数据业务时,数据控制器52的水平控制器64在数据总线20上输出数据通信82。在8字节数据总线20上传输数据通信82可能需要一个或多个节拍。
图4示出了数据通信82的一个典型实现。在该典型实现中,数据通信82包括指定目的地PU10的目的地标识符(ID)区段100,以及包含所请求数据的数据有效负载区段106。如所示出的,目的地ID区段100可以可选地不仅包括标识所述目的地PU的PU ID102,还可以包括标识本地电路50内的内部位置以便有助于内部路由的本地ID104。取决于所希望的实现,数据通信82可以包括其他区段,诸如事务ID区段(未示出),以便帮助所述目的地PU匹配分离事务的地址和数据部分。
回到图3,响应于接收到数据通信82,PU10b的数据控制器52根据所述优先级方案从数据总线20、24中选择数据总线24作为数据通信的优选路线。因此,垂直控制器60将所请求的数据的至少第一数据块(datagranule)84经由数据总线24发送到处理单元10f,并且如果该第一数据块84少于全部的所请求的数据,还向PU10c发出传送请求(TREQ)86。PU10f的垂直控制器60内的进入数据缓冲区62至少临时地缓冲第一数据块84,并且取决于实现,可以一直执行此操作直到接收到全部所请求的数据。
PU10c将传送请求88转发到PU10g(PU10b的配对PU)。PU10g的水平控制器64根据其输出数据总线20上的业务的目的地以及所述优先级方案来评估传送请求88,并且在控制总线30上输出传送确认(TACK)90,或者是批准或者是推迟从PU10b向PU10f传送所请求数据的剩余部分。如果水平控制器64的输出数据总线20没有承载任何冲突数据业务和/或如果水平控制器64可以推迟其他竞争业务(例如,PU10g内的本地电路50的数据业务)的数据的传送,水平控制器64输出批准该传送的传送确认92。在另一方面,如果水平控制器64在其数据总线20上传送目的地为PU10f的本地电路的数据通信(即,更高优先级的竞争数据通信),水平控制器64将提供一个指示推迟的传送确认92。响应于接收到传送确认90,PU10f经由控制总线30向PU10b传送相应的传送确认92。
如果传送确认92指示批准传送所请求数据的剩余部分,PU10b在数据包94内向PU10f传送数据通信82的剩余部分。在另一方面,如果传送确认92指示推迟所请求数据的剩余部分的传送,PU10b推迟所请求数据的剩余部分的传送,直到PU10g传送指示批准传送的另一个传送确认为止(例如,在结束传送更高优先级的竞争数据通信时)。
如前所述,本发明提供了一种用于多处理器数据处理系统的改进的数据互连和数据路由机制。根据本发明,数据处理系统至少包括第一和第二处理单元系列,每个处理单元系列至少具有第一和第二分段数据通道中相应的一个分段数据通道。每个分段数据通道包括一个或多个数据总线,每个数据总线连接相应的处理单元对。所述数据处理系统还包括多个系列间数据总线,每个系列间数据总线将所述第二系列中的所述处理单元中的一个处理单元与所述第一系列中相应的处理单元相连。优选地,所述总线上的通信是单向的,并且可以通过边频带控制通信来协调。
本发明的数据互连和路由机制减小了数据通信延迟,并且支持基于处理器活动级别/业务的动态路由决定。此外,本发明的数据互连和路由机制实现了一种体系结构,所述体系结构支持与不断增加的处理器频率相称的通信频率的提高。
虽然参考优选实施例如所说明的具体地示出了本发明,但是本领域的技术人员将理解,可以在形式和细节上做出各种更改而不偏离本发明的精神和范围。例如,本领域的技术人员将理解,本文中说明的总线宽度只是出于示例目的给出的且不应被解释为是对本发明的限制。还可以理解,可以可替代地实现其他优先级方案,并且不同的PU可以采用不同但仍然一致的优先级方案。
Claims (9)
1.一种数据处理系统,包括:
第一、第二和第三处理部,每个包括第一和第二处理单元,每个所述处理单元至少具有一个处理器核心,每个所述第一和第二处理单元都具有相应的第一输出数据总线,所述第一处理单元的所述第一输出数据总线被连接到所述第二处理单元以便二者之间数据通信,并且所述第二处理单元的所述第一输出数据总线被连接到所述第一处理单元以便二者之间数据通信;
所述第一、第二和第三处理部的所述第一处理单元和所述第一、第二和第三处理部的所述第二处理单元的每个都具有相应的单向的第二输出数据总线,所述第一处理部的所述第一处理单元的所述单向的第二输出数据总线被连接到所述第二处理部的所述第一处理单元以便二者之间数据通信,并且所述第二处理部的所述第一处理单元的所述单向的第二输出数据总线被连接到所述第三处理部的所述第一处理单元以便二者之间的数据通信,所述第三数据处理部的第二处理单元的单向的第二输出数据总线被连接到所述第二处理部的第二处理单元,用于二者之间的数据通信;
其中所述第三处理部的所述第一处理单元的单向的第二输出数据被直接连接所述第一处理部的所述第一处理单元。
2.如权利要求1的数据处理系统,其中所述第一处理部的所述第一处理单元的所述单向的第二输出数据总线经由一个或多个中间处理单元被连接到所述第二处理部的所述第一处理单元。
3.如权利要求2的数据处理系统,其中:
所述第一处理部的所述第二处理单元具有被连接到所述第二处理部的所述第二处理单元的单向的第二输出数据总线。
4.如权利要求1的数据处理系统,其中:
所述第二处理部的所述第一处理单元的所述单向的第二输出数据总线和所述第一处理部的所述第一处理单元的所述单向的第二输出数据总线每个都具有管理数据传输速率的相应的关联时钟信号;并且
与所述第二处理部的所述第一处理单元的所述第二输出数据总线关联的所述时钟信号具有比所述第一处理部的所述第一处理单元的所述第二输出数据总线低的频率。
5.如权利要求1的数据处理系统,其中所述第一处理部的所述第二处理单元具有经由至少一个其他处理单元被连接到所述第一处理部的所述第一处理单元的第三输出数据总线。
6.一种数据处理系统,包括:
第一系列的M个处理单元,M是大于或等于2的整数;
包括至少M个单向数据总线的第一分段数据通道,所述M个单向数据总线中的每个单向数据总线与所述第一系列中的所述M个处理单元的相应的对相连以便数据沿着所述第一分段数据通道以单一方向被通信;
第二系列的N个处理单元,N是包括2和M在内的2与M之间的整数;
包括至少N-1个数据总线的第二分段数据通道,所述N-1个数据总线中的每个数据总线与所述第二系列中的所述N个处理单元的相应的对相连;
多个系列间数据总线,其中每个所述系列间数据总线都将所述第二系列中的所述N个处理单元中的一个处理单元与所述第一系列中的所述M个处理单元中的一个相应处理单元相连;以及
其中所述M个单向数据总线包括直接与将所述第一系列中的最后一个处理单元连接到所述第一系列中的第一个处理单元的用于数据通信的单向数据总线。
7.如权利要求6的数据处理系统,其中所述第二分段数据通道包括将所述第二系列中的最后一个处理单元连接到所述第二系列中的第一个处理单元的数据总线。
8.如权利要求6的数据处理系统,其中:
所述第一分段数据通道中的每个数据总线都具有管理数据传输速率的关联时钟信号;并且
与将所述第一系列中的所述最后一个处理单元连接到所述第一系列中的所述第一个处理单元的所述数据总线关联的所述时钟信号具有比所述第一分段数据通道中至少一个其他数据总线低的时钟频率。
9.如权利要求6的数据处理系统,其中所述第一系列中的至少一个所述处理单元经由第一系列间总线和第二系列间总线两者被连接到所述第二系列中的相应的处理单元,所述多个系列间数据总线是多个第一系列间总线。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/752,959 | 2004-01-07 | ||
US10/752,959 US7308558B2 (en) | 2004-01-07 | 2004-01-07 | Multiprocessor data processing system having scalable data interconnect and data routing mechanism |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2005100001999A Division CN100357931C (zh) | 2004-01-07 | 2005-01-06 | 多处理器数据处理系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN1983233A true CN1983233A (zh) | 2007-06-20 |
Family
ID=34711717
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2005100001999A Expired - Fee Related CN100357931C (zh) | 2004-01-07 | 2005-01-06 | 多处理器数据处理系统 |
CNA2007100013444A Pending CN1983233A (zh) | 2004-01-07 | 2005-01-06 | 多处理器数据处理系统 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2005100001999A Expired - Fee Related CN100357931C (zh) | 2004-01-07 | 2005-01-06 | 多处理器数据处理系统 |
Country Status (2)
Country | Link |
---|---|
US (1) | US7308558B2 (zh) |
CN (2) | CN100357931C (zh) |
Families Citing this family (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7474658B2 (en) * | 2005-02-10 | 2009-01-06 | International Business Machines Corporation | Data processing system, method and interconnect fabric supporting concurrent operations of varying broadcast scope |
US8108545B2 (en) * | 2007-08-27 | 2012-01-31 | International Business Machines Corporation | Packet coalescing in virtual channels of a data processing system in a multi-tiered full-graph interconnect architecture |
US8014387B2 (en) | 2007-08-27 | 2011-09-06 | International Business Machines Corporation | Providing a fully non-blocking switch in a supernode of a multi-tiered full-graph interconnect architecture |
US7809970B2 (en) | 2007-08-27 | 2010-10-05 | International Business Machines Corporation | System and method for providing a high-speed message passing interface for barrier operations in a multi-tiered full-graph interconnect architecture |
US7958183B2 (en) | 2007-08-27 | 2011-06-07 | International Business Machines Corporation | Performing collective operations using software setup and partial software execution at leaf nodes in a multi-tiered full-graph interconnect architecture |
US7958182B2 (en) * | 2007-08-27 | 2011-06-07 | International Business Machines Corporation | Providing full hardware support of collective operations in a multi-tiered full-graph interconnect architecture |
US7822889B2 (en) * | 2007-08-27 | 2010-10-26 | International Business Machines Corporation | Direct/indirect transmission of information using a multi-tiered full-graph interconnect architecture |
US7769892B2 (en) * | 2007-08-27 | 2010-08-03 | International Business Machines Corporation | System and method for handling indirect routing of information between supernodes of a multi-tiered full-graph interconnect architecture |
US8140731B2 (en) | 2007-08-27 | 2012-03-20 | International Business Machines Corporation | System for data processing using a multi-tiered full-graph interconnect architecture |
US7793158B2 (en) | 2007-08-27 | 2010-09-07 | International Business Machines Corporation | Providing reliability of communication between supernodes of a multi-tiered full-graph interconnect architecture |
US7769891B2 (en) | 2007-08-27 | 2010-08-03 | International Business Machines Corporation | System and method for providing multiple redundant direct routes between supernodes of a multi-tiered full-graph interconnect architecture |
US7840703B2 (en) | 2007-08-27 | 2010-11-23 | International Business Machines Corporation | System and method for dynamically supporting indirect routing within a multi-tiered full-graph interconnect architecture |
US7904590B2 (en) * | 2007-08-27 | 2011-03-08 | International Business Machines Corporation | Routing information through a data processing system implementing a multi-tiered full-graph interconnect architecture |
US8185896B2 (en) | 2007-08-27 | 2012-05-22 | International Business Machines Corporation | Method for data processing using a multi-tiered full-graph interconnect architecture |
US7827428B2 (en) * | 2007-08-31 | 2010-11-02 | International Business Machines Corporation | System for providing a cluster-wide system clock in a multi-tiered full-graph interconnect architecture |
US7921316B2 (en) * | 2007-09-11 | 2011-04-05 | International Business Machines Corporation | Cluster-wide system clock in a multi-tiered full-graph interconnect architecture |
US7779148B2 (en) * | 2008-02-01 | 2010-08-17 | International Business Machines Corporation | Dynamic routing based on information of not responded active source requests quantity received in broadcast heartbeat signal and stored in local data structure for other processor chips |
US8077602B2 (en) * | 2008-02-01 | 2011-12-13 | International Business Machines Corporation | Performing dynamic request routing based on broadcast queue depths |
JP5460156B2 (ja) * | 2009-07-14 | 2014-04-02 | キヤノン株式会社 | データ処理装置 |
US8417778B2 (en) * | 2009-12-17 | 2013-04-09 | International Business Machines Corporation | Collective acceleration unit tree flow control and retransmit |
US8631256B2 (en) | 2010-12-22 | 2014-01-14 | Via Technologies, Inc. | Distributed management of a shared power source to a multi-core microprocessor |
US9460038B2 (en) * | 2010-12-22 | 2016-10-04 | Via Technologies, Inc. | Multi-core microprocessor internal bypass bus |
US8782451B2 (en) | 2010-12-22 | 2014-07-15 | Via Technologies, Inc. | Power state synchronization in a multi-core processor |
US8637212B2 (en) | 2010-12-22 | 2014-01-28 | Via Technologies, Inc. | Reticle set modification to produce multi-core dies |
US8972707B2 (en) | 2010-12-22 | 2015-03-03 | Via Technologies, Inc. | Multi-core processor with core selectively disabled by kill instruction of system software and resettable only via external pin |
US11741043B2 (en) | 2021-01-29 | 2023-08-29 | The Trustees Of Dartmouth College | Multi-core processing and memory arrangement |
Family Cites Families (31)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3038436A (en) * | 1960-03-18 | 1962-06-12 | Stebbins Mark Charles | Alarm device |
US3308436A (en) | 1963-08-05 | 1967-03-07 | Westinghouse Electric Corp | Parallel computer system control |
NL7909178A (nl) | 1979-12-20 | 1981-07-16 | Philips Nv | Rekenmachine met verspreide redundantie welke is verdeeld over verschillende isolatiegebieden voor fouten. |
US5179715A (en) | 1987-03-11 | 1993-01-12 | Toyo Communication Co., Ltd. | Multiprocessor computer system with process execution allocated by process managers in a ring configuration |
JP2550063B2 (ja) | 1987-04-24 | 1996-10-30 | 株式会社日立製作所 | 分散処理システムのシミユレ−シヨン方式 |
US5274782A (en) * | 1990-08-27 | 1993-12-28 | International Business Machines Corporation | Method and apparatus for dynamic detection and routing of non-uniform traffic in parallel buffered multistage interconnection networks |
FR2680026B1 (fr) | 1991-07-30 | 1996-12-20 | Commissariat Energie Atomique | Architecture de systeme en tableau de processeurs a structure parallele. |
JPH06314264A (ja) * | 1993-05-06 | 1994-11-08 | Nec Corp | セルフ・ルーティング・クロスバー・スイッチ |
DE59408657D1 (de) | 1993-06-30 | 1999-09-30 | Anton Gunzinger | Intelligentes kommunikations-system |
JP3200757B2 (ja) | 1993-10-22 | 2001-08-20 | 株式会社日立製作所 | 並列計算機の記憶制御方法および並列計算機 |
US5918249A (en) | 1996-12-19 | 1999-06-29 | Ncr Corporation | Promoting local memory accessing and data migration in non-uniform memory access system architectures |
US6289021B1 (en) * | 1997-01-24 | 2001-09-11 | Interactic Holdings, Llc | Scaleable low-latency switch for usage in an interconnect structure |
US6246692B1 (en) | 1998-02-03 | 2001-06-12 | Broadcom Corporation | Packet switching fabric using the segmented ring with resource reservation control |
US6178466B1 (en) | 1998-06-12 | 2001-01-23 | Unisys Corporation | System for maximizing bandpass on an interface directly coupling two units where the interface has independently operative data and address interconnections, and computer sysem employing same. |
KR20000018869A (ko) | 1998-09-03 | 2000-04-06 | 서평원 | 교환기에서 프로세서간의 통신 시스템 및 방법 |
US6370621B1 (en) | 1998-12-21 | 2002-04-09 | Advanced Micro Devices, Inc. | Memory cancel response optionally cancelling memory controller's providing of data in response to a read operation |
US6205508B1 (en) * | 1999-02-16 | 2001-03-20 | Advanced Micro Devices, Inc. | Method for distributing interrupts in a multi-processor system |
US6421775B1 (en) | 1999-06-17 | 2002-07-16 | International Business Machines Corporation | Interconnected processing nodes configurable as at least one non-uniform memory access (NUMA) data processing system |
US6820158B1 (en) | 1999-08-30 | 2004-11-16 | Intel Corporation | Method and apparatus for a configuration ring |
US6529999B1 (en) | 1999-10-27 | 2003-03-04 | Advanced Micro Devices, Inc. | Computer system implementing system and method for ordering write operations and maintaining memory coherency |
US6848003B1 (en) | 1999-11-09 | 2005-01-25 | International Business Machines Corporation | Multi-node data processing system and communication protocol that route write data utilizing a destination ID obtained from a combined response |
US6519649B1 (en) | 1999-11-09 | 2003-02-11 | International Business Machines Corporation | Multi-node data processing system and communication protocol having a partial combined response |
US6519665B1 (en) | 1999-11-09 | 2003-02-11 | International Business Machines Corporation | Multi-node data processing system and communication protocol in which a stomp signal is propagated to cancel a prior request |
US6591307B1 (en) | 1999-11-09 | 2003-07-08 | International Business Machines Corporation | Multi-node data processing system and method of queue management in which a queued operation is speculatively cancelled in response to a partial combined response |
US6643764B1 (en) * | 2000-07-20 | 2003-11-04 | Silicon Graphics, Inc. | Multiprocessor system utilizing multiple links to improve point to point bandwidth |
US6678840B1 (en) | 2000-08-31 | 2004-01-13 | Hewlett-Packard Development Company, Lp. | Fault containment and error recovery in a scalable multiprocessor |
US7248585B2 (en) | 2001-10-22 | 2007-07-24 | Sun Microsystems, Inc. | Method and apparatus for a packet classifier |
US7493417B2 (en) | 2002-12-12 | 2009-02-17 | International Business Machines Corporation | Method and data processing system for microprocessor communication using a processor interconnect in a multi-processor system |
US7577727B2 (en) | 2003-06-27 | 2009-08-18 | Newisys, Inc. | Dynamic multiple cluster system reconfiguration |
US7099978B2 (en) | 2003-09-15 | 2006-08-29 | Hewlett-Packard Development Company, Lp. | Method and system of completing pending I/O device reads in a multiple-processor computer system |
US7523157B2 (en) | 2003-09-25 | 2009-04-21 | International Business Machines Corporation | Managing a plurality of processors as devices |
-
2004
- 2004-01-07 US US10/752,959 patent/US7308558B2/en not_active Expired - Fee Related
-
2005
- 2005-01-06 CN CNB2005100001999A patent/CN100357931C/zh not_active Expired - Fee Related
- 2005-01-06 CN CNA2007100013444A patent/CN1983233A/zh active Pending
Also Published As
Publication number | Publication date |
---|---|
US20050149692A1 (en) | 2005-07-07 |
CN100357931C (zh) | 2007-12-26 |
US7308558B2 (en) | 2007-12-11 |
CN1637735A (zh) | 2005-07-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100357931C (zh) | 多处理器数据处理系统 | |
US6490661B1 (en) | Maintaining cache coherency during a memory read operation in a multiprocessing computer system | |
US6370621B1 (en) | Memory cancel response optionally cancelling memory controller's providing of data in response to a read operation | |
US11061850B2 (en) | Multiple transaction data flow control unit for high-speed interconnect | |
US6557048B1 (en) | Computer system implementing a system and method for ordering input/output (IO) memory operations within a coherent portion thereof | |
CN100507874C (zh) | 用于存储器系统性能监视的存储器集线器和方法 | |
WO2017196143A1 (en) | A method and device for improved advanced microcontroller bus architecture (amba) and advanced extensible interface (axi) operations | |
CN101908036B (zh) | 一种高密度多处理器系统及其节点控制器 | |
CN101477512B (zh) | 一种处理器系统及其访存方法 | |
CN101681322B (zh) | 支持命令数据复制的高容量存储子系统的存储芯片 | |
CN102232218A (zh) | 计算机子系统和计算机系统 | |
US20170124024A1 (en) | Array of processor core circuits with reversible tiers | |
CN101194242A (zh) | 存储器控制器和用于连接网络和存储器的方法 | |
CN101394349A (zh) | 不同接口设备通信中的数据传输方法及系统 | |
CN1294508C (zh) | 多处理器数据处理系统 | |
EP2239665B1 (en) | Distributed flash memory storage manager systems | |
US20190155779A1 (en) | Packet tunneling for multi-node, multi-socket systems | |
CN101655825B (zh) | 一种使用fpga实现lpc-usb双向通信的装置及lpc-usb和usb-lpc数据转换方法 | |
CN101051521B (zh) | 集成装置 | |
US7237044B2 (en) | Information processing terminal and transfer processing apparatus | |
US5845072A (en) | Method and apparatus for parallel and pipelining transference of data between integrated circuits using a common macro interface | |
US7272151B2 (en) | Centralized switching fabric scheduler supporting simultaneous updates | |
CN112148653A (zh) | 数据传输装置、数据处理系统、数据处理方法和介质 | |
US11829297B2 (en) | Method for accessing caches in clustered storage system, involves determining and reading second address from second address array in accordance with request | |
US8055813B2 (en) | Flexible and efficient configuration of multiple common interfaces |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |