CN100461394C - 具有双向环路互连的多处理器芯片 - Google Patents
具有双向环路互连的多处理器芯片 Download PDFInfo
- Publication number
- CN100461394C CN100461394C CNB2005100740581A CN200510074058A CN100461394C CN 100461394 C CN100461394 C CN 100461394C CN B2005100740581 A CNB2005100740581 A CN B2005100740581A CN 200510074058 A CN200510074058 A CN 200510074058A CN 100461394 C CN100461394 C CN 100461394C
- Authority
- CN
- China
- Prior art keywords
- processor
- address space
- directional ring
- semiconductor chip
- node
- 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.)
- Expired - Fee Related
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/76—Architectures of general purpose stored program computers
- G06F15/80—Architectures of general purpose stored program computers comprising an array of processing units with common control, e.g. single instruction multiple data processors
- G06F15/8007—Architectures of general purpose stored program computers comprising an array of processing units with common control, e.g. single instruction multiple data processors single instruction multiple data [SIMD] multiprocessors
- G06F15/8015—One dimensional arrays, e.g. rings, linear arrays, buses
-
- 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/17337—Direct connection machines, e.g. completely connected computers, point to point communication networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
Abstract
本发明的实施例总体上涉及多个部件在单个基片上的片上集成,尤其是通过双向环路互连的多个处理器的片上集成。一种半导体芯片的实施例包括多个处理器、处理器之间共享的地址空间、和耦合处理器和地址空间的双向环路互连。一种方法的实施例包括:计算在多个环路互连上的分组源和目的地之间的距离、确定在哪个互连上传输分组、然后在确定出的互连上传输分组。实施例在多处理器芯片中提供了改进的延时和带宽。示例应用包括片上多处理。
Description
技术领域
本发明的实施例总体上涉及多个部件在单个基片上的片上集成,尤其是多个处理器的片上集成.
背景技术
半导体制造的趋势显示在单个硅片上包括越来越多的功能以便提供更好的处理。为实现这一点,已经将多个处理器集成到了单个芯片上。
Barroso在题为“Piranha:A Scalable Architecture Based onSingle-Chip Multiprocessing”(Proc.27thAnnual Int.Symp.Computer Architecture,Jun.2000)的论文中描述了共享一个大容量高速缓冲存储器的多个中央处理单元(CPU)的片上集成。Barroso展示了在多处理器芯片中的CPU之间共享的大容量高速缓存器有益于共享存储器数据库工作负荷的性能。另参见Barroso的“Impact ofChip-Level Integration on Performance of OLTP Workloads”,6thInt.Symp.High-Performance Computer Architecture,Jan.2000.Barroso还展示了读-脏(数据)高速缓存器操作(数据由一个CPU写入并由不同的CPU读出)支配着运行在基于单CPU芯片的系统(例如,Marvel-Alpha系统)上的工作负荷的性能。Barroso还展示了当这种高速缓存器操作的通信延迟被缩短时,将多个CPU和一个大容量共享高速缓存器放在单个基片上能够相当大地提升性能。在Barroso中,处理器和高速缓存器由一组全局总线和纵横开关相连。
但是,对纵横开关(crossbar switch)和总线所关注的问题是,由于很多潜在的远程的请求者可能会竞争一个全局资源,因而需要昂贵的仲裁逻辑。这导致长的延时(latency)以及可能导致较大的基片面积以及攻耗。
对多个处理器在单个芯片上的集成的另一个关注的问题是:芯片上晶体管和线路数量的增加.尽管晶体管的速度随着拉制门的长度降低而提高,但线路速度并不成比例地增加。长线路通常并不和晶体管门速度成比例。结果是,线路延迟和时钟时滞变成了在0.10微米及以下技术中实现高时钟速率的支配因素。
一种常见的解决方案是将全局时钟分成同步一个或多个相邻设备的局部时钟,称为补片(patch)。但是,这也成为了一个关注问题,因为对经过时钟补片的信号引入了更大的时钟时滞,这样必须将增大的时钟时滞同步到目标时钟补片。因此,增加了对周期时间的压力以缩短在时钟补片之间通过的距离以及由此可能的严重的时钟时滞。在芯片上跨越长距离的连接技术(例如纵横开关或总线)会加重线路延迟和时钟时滞。
芯片上CPU和共享高速缓存器之间通信的延时和带宽严重影响性能。最好是CPU到共享高速缓存器的延时低而从高速缓存器(或其它CPU)到CPU的带宽高.但是,一些连接技术对于改进延时和带宽一直是个约束。当多个CPU执行程序或线程时,它们对基本的连接技术有很高的要求。因此,在多处理器配置中减少线延迟和时钟时滞就变得重要了。
如“Architecture Guide:C-5e/C-3e Network Processor,Silicon Revision BO”,Motorola,Inc.,2003中,Motorola已经实现了一种芯片多处理器,它包括多个处理器,由单向环路连接在单个芯片上以降低分组在部件之间通过的环路上的距离。多处理器和其它部件之间的通信在一个方向上流过该环路。
但是,采用单向环路的问题是延时和带宽仍然收到连接技术的约束.为了和一个上游处理器通信,分组在到达该上游处理器之前必须经过整个环路。
因此,在本领域中对片上集成需要一种提供有效、快速的系统性能的连接技术。
发明内容
为了克服上面的现有技术中存在的缺陷,本发明提供了一种设备,在半导体芯片上包括至少一个双向环路互连结构.
本发明还提供了一种半导体芯片,包括:多个处理器;在该多个处理器之间共享的地址空间;和耦合到该多个处理器和该地址空间的双向环路结构。
本发明还提供了一种系统,包括:多处理器芯片和从该多处理器芯片传输分组的总线,所述多处理器芯片包括:至少一个中央处理单元,共享地址空间,和至少一个双向环路结构,与该至少一个中央处理单元及该共享地址空间的代理相耦合.
本发明又提供了一种方法,包括:计算源节点和目的地节点之间在芯片上的第一和第二环路结构上的距离;根据计算出的距离确定在第一和第二环路结构中的哪一个上在源和目的地节点之间传输分组;并且在确定出的环路结构上从源节点传输分组到目的地节点.
本发明又提供了一种计算机可读介质,其上存储了要完成一个方法的多个可执行指令,该方法包括:计算源和目的地节点之间沿着芯片上多个环路结构的距离;根据计算出的距离识别在多个环路结构中的哪一个上在源和目的地节点之间传输分组;并在识别出的环路结构上从源节点传输分组到目的地节点.
附图说明
图1是依照本发明的一种实施例的半导体芯片,包括耦合到单个双向环形互连的多个节点.
图2是依照本发明的一种实施例的半导体芯片,包括耦合到多个单向和/或双向环路互连的多个节点.
图3是依照本发明的一种实施例的多处理器系统,包括具有耦合到单个双向环路互连的多个部件的多处理器芯片.
图4是依照本发明的一种实施例的方法的流程图.
图5是实现本发明的一种实施例的计算机系统的框图.
具体实施方式
本发明的实施例可以提供一种半导体芯片,包括多个处理器、在这些处理器之间共享的地址空间和将处理器及共事地址空间耦合在一起的双向环路互连.依照本发明的一种实施例,所述处理器可以包括CPU,地址空间可以包括一个大容量共事高速缓存器.
本发明的实施例可以提供一种方法,用于选择双向环路互连上的方向以在处理器和共享地址空间之间传输分组.该方法可以包括计算分组的源和目的地之间在顺时针方向上和逆时针方向上的距离,根据计算出的距离确定以哪个方向传输分组,并且在确定的方向上和与其相对应的环路上传输分组.
本发明的实施例对多个处理器的片上集成有利地提供了降低的延时以及增加的带宽.这对于并行共享存储器的应用来说尤其有益,所述并行共享存储器的应用例如是事务处理、数据挖掘、诸如Java或.net之类的可控制运行环境以及web或email服务.
图1是依照本发明的实施例的一种半导体芯片,包括耦合到一个双向环路互连的多个节点.节点110(1)到110(n)可以在不同的访问点与访问站与双向环路互连120相连.分组可以在顺时针或逆时针方向上在互连120上在110(1)到110(n)之间穿行.
节点110(1)到110(n)可以包括处理器、高速缓存器体、存储器接口、全局一致性引擎接口、输入/输出接口和在半导体芯片上可见的任意其它这种分组处理部件.
在图1中,在本发明的实施例中,通过逻辑地将单个大容量共享高速缓存器划分成子集可以将节点110(1)到110(n)实现为高速缓存器体节点.每个高速缓存器体节点可以包括单个高速缓存器中的部分地址空间,并且可以独立地对单个高速缓存器中该部分地址空间的块请求(读、写、使无效,等等)提供服务.在互连120上,每个高速缓存器体可以有它自己的访问点或访问站.
在图1中,互连120可以包括多个双向线(未示出),其中第一组双向线可以在顺时针方向上传输分组,第二组可以在逆时针方向上传输分组.每组双向线可以有一个特定目的(例如,发送地址命令)或通用目的(例如,支持多种分组类型(地址请求、数据、高速缓存器一致性协议消息)等).可替代地,可以指定各组双向线传输单一分组类型.
可替代地,在图1中,互连120可以包括多个能够在两个方向上传输分组的双向线.在这个备选实施例中,半导体芯片可以包括开关逻辑,用于在特定的事务期间转换各条线到期望的方向以传输分组.
互连120可以以多种不同的速率传输分组.例如,互连120可以以每时钟周期一个或多个节点的速率或每两个或多个时钟周期一个节点的速率传输分组.很多因素可以决定传输速率,包括通信量、时钟速率、节点之间的距离等.通常,一个节点要等到已经在互连120上和该节点上的任何分组通过了该节点才能将一个分组注入到互连120上.
图2是依照本发明的一种实施例的半导体芯片,包括耦合到多个环路互连的多个节点.节点210(1)到210(n)可以在不同的访问点或访问站连接到环路互连220(1)到220(m)。每个节点可以选择在环路互连220(1)到220(m)中的任何一个上传输分组到另一节点。
在一种实施例中,图2中的所有互连都可以是单向的,其中一些互连只在顺时针方向上传输分组,另一些互连只在逆时针方向上传输分组。
在一种备选实施例中,图2中的一些互连可以是单向的,而另一些可以是双向的.在这种备选实施例中,一些单向互连可以只以顺时针方向传输分组,而另一些只以逆时针方向传输分组。双向互连可以在两个方向上传输分组,与图1中的双向互连的操作一致。
图3是依照本发明的一种实施例的多处理器系统,包括耦合到单个双向环路互连的多处理器芯片。在图3中,多处理器芯片300可以包括:CPU 310(1)到310(n)、高速缓存器体320(1)到320(m)、存储器接口330、全局一致性引擎接口340和输入/输出(I/O)接口350,所有这些都耦合到双向环路互连120。耦合到双向环路互连120的每个部件都可以有一个节点号来标识它在互连上的位置。
在图3中,CPU310(1)可以包括减法器305(可实现为硬件设备)以计算CPU310(1)和任意其它节点在双向环路互连120上的距离。减法器305通过从CPU310(1)的节点号减去目的地节点的节点号可以计算出CPU310(1)和目的地节点之间的距离。减法器305可在顺时针和逆时针两个方向上计算距离.CPU310(1)可以用计算出的距离选择在哪个方向上传输分组。通常,尽管可以选择距离最短的方向传输分组,但这并不是唯一的解决方案。还设想了另外的方向选择方法,将在下面进行描述。
在图3中,CPU310(n)可以包括可编程有限状态机315(一个硬件设备),可对它编程以使用例如像减法器305类似的操作计算CPU310(n)和任意其它节点之间在双向环路互连120中的距离。在一种实施例中,可对可编程有限状态机315编程以在一个查找表中搜寻在双向环路互连120上传输分组的方向.例如,该查找表可以初始化为包括两个条目-顺时针和逆时针。在计算CPU310(n)和目的地节点之间的顺时针和逆时针距离之时,可编程有限状态机315可以根据计算出的距离检索查找表条目之一.
在一种备选实施例中,在图3中,CPU310(1)到310(n)均可以用软件计算它们自己和目的地节点之间的距离.CPU310(1)到310(n)的每一个都可以根据计算出的距离确定以哪个方向在双向环路互连120上传输分组。
依照本发明的一种实施例,传输分组的方向可以选择为在分组的源和目的地之间提供了最短距离的方向、通信量较小的方向、或者用于特定事务的任意其它期望的标准.
在图3中,将会理解CPU310(1)到310(n)中的每一个都不限于图3中所示的部件和配置.因此,本发明的实施例可以用减法器、可编程有限状态机、处理器、任意其它这种部件或它们的任意组合来实现这里所描述的计算.减法器305和可编程有限状态机315还可与高速缓存器体310(1)到310(m)中的任意一个或双向环路互连上的任意其它节点相耦合。减法器305和可编程有限状态机315还可以与双向环路互连120耦合以由双向环路互连120上的一个或多个节点共享。
在图3中,高速缓存器体320(1)到320(m)可以是如前所述的单个大容量共享高速缓存器的子集.每个高速缓存器体可以服务于该单个高速缓存器中的特定部分的地址空间。
在图3中,存储器接口可以耦合到双向环路互连120和总线360以在系统存储器370和多处理器芯片300上的节点(即,CPU310(1)到310(n)和高速缓存器体320(1)到320(m))之间提供接口。存储器接口330可以在多处理器芯片300上的所有节点间共享以在系统存储器370和这些节点间传输分组.
同样,全局一致性引擎接口340可以耦合到双向环路互连120和总线360以在多处理器芯片300和一个或多个其它多处理器芯片380之间提供接口。全局一致性引擎接口340可以由多处理器芯片300上的所有节点共享以在多处理器芯片300上的节点及一个或多个其它多处理器芯片380之间传输分组.
在图3中,I/O接口350可以耦合到双向环路互连120和总线360以在I/O设备390和多处理器芯片300上的节点间提供接口。I/O接口350可以由多处理器芯片上的所有节点共享以在多处理器芯片300上的节点和I/O设备390之间传输分组。
将会理解该多处理器系统并不限于图3的部件,而是可以包括能够进行分组处理的任意部件。
依照本发明的一种实施例中的通信示例可以包括一个请求高速缓存器体中的一个高速缓存器块的处理器,例如向高速缓存器体320(m)请求一个高速缓存器块的CPU310(1).CPU310(1)可以计算出在顺时针方向和逆时针方向到高速缓存器体320(m)的距离.CPU310(1)可以根据计算出的距离选择在哪个方向发送它的请求,并且CPU310(1)可以通过它的访问端口或访问站将地址放在到双向环路互连120上的一个环路时隙(slot)中。地址可以环绕双向环路互连120前进直到它到达包含所请求地址的相关数据的高速缓存器体320(m)的访问端口或访问站。
高速缓存器体320(m)可以从双向环路互连120上的环路时隙取出地址并用该地址取出其中存储的数据.高速缓存器体320(m)可以通过它的访问端口或访问站将数据存储到双向环路互连120上的下一个可用的环路时隙中。数据可以以和地址到达的方向相同或相反的方向经过双向环路互连,直到数据回到始发CPU310(1)。CPU310(1)可以使用该数据。
在这个例子中,多个请求可以并发(concurrent)地流经双向环路互连120。双向环路互连的优势是请求可以同时但以相反的方向经过相同的节点,因为双向环路互连120的实施例提供双向传输。
图3中双向环路互连的另一优势是多个请求可以并发到达高速缓存器体310(1)和320(m),即使高速缓存器体物理上属于单个共享高速缓存器.结果是在相同时钟周期内可以并发地服务到达高速缓存器体320(1)的请求和另一个到达高速缓存器体320(m)的请求.请求中的地址位可以用来确定各个请求属于哪个高速缓存器体。可以有很多种地址位到高速缓存器体的映射.在一种实施例中,连续的块地址可能属于双向环路互连120上不同的高速缓存器体.可以将地址位进行哈希处理或采用能够在事先未策划的负载下对所有存储器块提供相当均匀的访问的方式来加以选择。
尽管图3中没有示出,依照本发明的一种实施例,可以像在图2中那样使用多个环路互连220(1)到220(m).在这种实施例中,CPU310(1)可以在多个互连220(1)到220(m)上发送多个请求,由此在给定的时间周期内收回至少两倍的数据以供使用。
依照本发明的一种实施例,在图3中,附加的寻址部件(例如套接字网络路由器、存储控制器和目录高速缓存器)也可以耦合到双向环路互连120.类似地可以为这些部件交错寻址。
为了通信和维持存储器一致性,本发明的实施例可以使用任意众所周知的高速缓存器一致性协议.很多协议可以在双向环路互连上分层。每种协议可能有唯一的一组资源竞争、资源缺乏(得不到资源)或死锁问题要解决。这些问题可以用贷-借系统和缓冲、资源的预分配(例如在环路互连上保留的时钟周期或在资源队列中保留的缓冲区)、资源缺乏(得不到资源)检测器、请求/应答消息的优先次序确定、互连的虚拟化来解决。
本发明的实施例的另一优势是:与单向环路互连相比,双向环路互连通常使平均环路延时减半并使系统上均匀通信的平均峰值带宽翻了两番。与非环路系统相比性能提高可能更大。均匀通信可以是趋向于平等地利用所有高速缓存器体的随机或周期性的访问模式。
通常,平均环路延时可以定义为均匀通信在互连上使用的平均周期数,包括请求和数据返回在环路互连上的时间,不包括请求和数据在任意部件(即节点)中的停留时间。同样,平均峰值带宽可以定义成对均匀通信每时钟周期内到达它们的目的地的数据块的平均数量。
例如,在单个单向环路互连中处理器请求一个高速缓存器块的平均环路延时可以定义为处理器的请求从处理器传输到适当的高速缓存器体的时间以及数据块从高速缓存器块返回处理器的时间。因此,假定每个时钟周期一个节点的分组传输速率,单个单向环路互连的平均环路延时将是N个周期,这与系统中的节点数相同。这是因为该请求经过一些节点以到达合适的高速缓存器体,然后数据必须经过系统中剩下的节点才回到始发的处理器.基本上,因为环路互连是一个环,必须经过所有节点才能完成从处理器回到它自己的一个请求。
在双向环路互连中处理器请求一个高速缓存器块的平均环路延时可以定义为处理器的请求从处理器传输到合适的高速缓存器体的时间以及数据块从该高速缓存器体返回到处理器的时间。但是,例如假定分组传输速率是每个时钟周期一个节点,那么平均环路延时将是单向环路互连的一半。这是因为,在一种实施例中,在双向环路上选择的方向是该处理器到高速缓存器体经过的中间节点数量最少的方向。因此,该请求最多可能经过N/2个节点,并且数据返回最多可能经过N/2个节点,结果是最坏情况下的延时为N个周期.但是,如果访问是均匀的,从发出请求的处理器到高速缓存器体的距离的期望平均值将是最坏情况的一半,即经过了N/4个节点.因为回程也将采用最短的距离,在处理器接收到数据之前会经过另外N/4个节点。这导致双向环路互连的平均延时为N/2个周期,对单个请求来说延时和互连占用率都降低了大约50%.
采用双向环路互连对互连利用率的降低还可能导致比单个单向环路互连上高得多的平均带宽.每个高速缓存器请求可能交付一个数据块并使用环路上一定数量的节点.如果一个请求使用了环路上的所有N个节点,就像单个单向环路互连中那样,那么单向互连能够交付的最大带宽是每个时钟周期一个数据块。通常,双向环路互连对平均的均匀请求来说所使用的节点少于全部节点。如上所述,双向环路互连实际上平均使用N/2个节点。另外,双向环路互连的容量可能是单个单向环路互连的两倍,因而,允许双向环路互连每个节点携带多达2个数据块。总地来说,在组合的环路互连上的2N个锁存器中,对平均请求和数据块返回会使用其中的N/2个,每个时钟周期并发数据块的总数是2N/(N/2)=4,四倍于单个单向环路互连.平均峰值带宽独立于节点数。
依照本发明的一种实施例,双向环路互连可能包括两个不相交的地址和数据线集合.结果是,由于请求不会使用数据带宽资源,只有应答才会使用,带宽可以另外增加两倍.这样,数据线的占用率对两倍的双向环路互连来说只是环路站点的1/4。两个互连因而都能从将通常环路互连分成地址环路和数据环路而获得额外的双倍利益。
例如,对将线集合在数据和地址请求之间分开的16-节点双向环路来说,平均峰值带宽可以是每数据环路4个同时的数据传输操作×2个环路×64字节数据宽度×3GHz=1.5Tbytes/秒。
这样,双向环路互连可以提供四倍于单个单向环路互连的带宽,包括两倍来自于双线路,两倍来自于使用最短路径路由而将事务的占用率减半.但是,如果双向环路互连的线路对数据和地址请求都是一致的,带宽可能只是单个单向环路互连的两倍.
上面的例子只是出于说明目的,因为可能还有其它因素影响双向环路互连上的延时和带宽,例如实际占用率以及由于虚拟化或反-资源缺乏机制导致的带宽丢失。
图4是依照本发明的一种实施例的方法的流程图。在图4中,该方法可以确定以哪个方向在双向环路互连上传输分组.在一种实施例中,单个双向环路互连可以包括第一组线路以在顺时针方向(它可以包括第一个环路结构)上传输分组以及第二组线路以在逆时针方向(它可以包括第二个环路结构)上传输分组。
在图4中,发送分组到目的地节点的源节点可以计算(410)在第一环路结构上到目的地节点的距离.该源节点还可以计算(420)在第二环路结构上到目的地节点的距离.该源节点可以确定(430)哪个距离最短.如果确定(430)最短距离是顺时针方向,该源节点可以在第一环路结构上传输(440)分组。另外,如果确定(430)最短距离为逆时针方向,源节点可以在第二环路结构上传输(450)分组。
如果确定出的环路结构已经在传输一个在这个时针周期内到达该源节点的分组,该源节点可以等到该环路上的该分组通过自己之后再将分组注入到确定出的环路结构上。一旦注入到了所确定出的环路结构上之后,分组可以每时针周期前进直到到达目的地节点。
依照本发明的另一实施例,源节点可以确定哪个环路结构通信量较低并且可以在通信量最低的环路上传输分组。
在一种备选实施例中,双向环路互连可以包括两个以相反方向传输分组的单向环路互连.在这种实施例中,以顺时针方向传输的单向环路互连可以包括第一环路结构,以逆时针方向传输的单向环路互连可以包括第二环路结构。
在其它备选实施例中,双向环路互连可以包括一个单向环路互连和一个双向环路互连或者两个双向环路互连。与前面描述的实施例类似,这些互连之一可以包括第一环路结构,另一个可以包括第二环路结构。
将会理解双向环路互连并不限于一个或两个环路结构,而是可以包括任意数量的环路结构以在多个方向上传输分组.
图5是一种包括一个或多个多处理器和存储器以依照本发明的一种实施例使用的计算机系统的结构图,该计算机系统可以包括一种体系结构状态.在图5中,计算机系统500可以包括一个或多个耦合到处理器总线520的多处理器510(1)-510(n),处理器总线520可以耦合到系统逻辑530.一个或多个多处理器510(1)-510(n)中的每一个可以是N-位处理器并可以包括一个解码器(未示出)和一个或多个N-位寄存器(未示出)。依照本发明的一种实施例,一个或多个多处理器510(1)-510(n)中的每一个可以包括一个双向环路互连(未示出)以耦合到N-位处理器、解码器、和该一个或多个N-位寄存器。
系统逻辑530可以通过总线550与系统存储器540耦合,并通过外围总线560与非-易失性存储器570及一个或多个外围设备580(1)-580(m)耦合。例如,外围总线560可以表示一个或多个外围部件互连(PCI)总线、PCI专业组(SIG)PCI局部总线规范(2.2修订本,1998年12月18日发布);工业标准结构(ISA)总线;扩展ISA(EISA)总线,BCPR Service Inc;EISA规范,19923.12修订版,1992年发布;通用串行总线(USB),USB规范1.1版,1998年9月23日发布;以及类似的外围总线。非易失存储器570可以是诸如只读存储器ROM或快速存储器之类的静态存储器设备.外围设备580(1)-580(m)可以包括键盘;鼠标或其它指点设备;大容量存储设备,如硬盘驱动器、光盘(CD)驱动器、光碟和数字视频光盘(DVD)驱动器;显示器等等。
本发明的实施例可以用任意类型的计算机来实现,例如根据本发明的教义编程的通用微处理器.因而本发明的实施例还可以包括机器可读介质,它可以包括用来对处理器编程以执行依照本发明的实施例的方法的指令。这个介质可以包括但不限于任意类型的盘如软盘、光盘和CD-ROM。
可以理解用来实现本发明的实施例的软件的结构可以采用任意期望的形式,例如单个或多个程序.可以进一步理解本发明的一种实施例的方法可以由软件、硬件或其组合来实现.
上面是对本发明的优选实施例的详细论述.对申请人授权的本发明的完整的范围由下文的权利要求定义。意谓着权利要求的范围除了上述那些实施例和它们的等效方案之外还可以覆盖其它实施例。
Claims (41)
1.一种设备,包括:半导体芯片,在所述半导体芯片上的至少一个双向环路结构,所述双向环路结构是包括多个节点的连续链路;还包括用于计算在所述至少一个双向环路结构上用以在所述多个节点中的至少一个节点和目的地节点之间传输分组的方向的装置。
2.如权利要求1所述的设备,其中每个节点包括处理器、高速缓存器体、共享存储器接口、共享全局一致性引擎接口和共享输入/输出接口中的一个。
3.如权利要求1所述的设备,还包括耦合到所述多个节点中的至少一个节点的减法器,用于计算在所述至少一个双向环路结构上用以在所述多个节点中的至少一个节点和目的地节点之间传输分组的方向。
4.如权利要求1所述的设备,还包括可编程有限状态机,耦合至所述多个节点中的至少一个节点,用于计算在所述至少一个双向环路结构上用以在所述多个节点中的至少一个节点和目的地节点之间传输分组的方向。
5.如权利要求1所述的设备,其中所述至少一个双向环路结构以顺时针方向和逆时针方向并发传输分组。
6.如权利要求1所述的设备,其中所述至少一个双向环路结构交替地以顺时针方向和逆时针方向传输分组。
7.一种半导体芯片,包括:
多个处理器;
在所述多个处理器之间共享的地址空间;
耦合到所述多个处理器和所述地址空间的双向环路结构,所述双向环路结构是连续的链路;和
用于计算在所述双向环路结构上用以在所述多个处理器中的至少一个处理器和所述多个处理器中的第二处理器之间传输分组的方向的装置。
8.如权利要求7所述的半导体芯片,其中所述多个处理器中的每一个处理器都包括中央处理单元。
9.如权利要求7所述的半导体芯片,其中所述地址空间包括多个高速缓存器体。
10.如权利要求9所述的半导体芯片,其中所述多个高速缓存器体构成分布式共享高速缓存器。
11.如权利要求10所述的半导体芯片,其中所述分布式共享高速缓存器的多个高速缓存器体中的每一个负责地址空间的子集。
12.如权利要求7所述的半导体芯片,其中所述双向环路结构在多个处理器和地址空间之间传输分组。
13.如权利要求12所述的半导体芯片,其中分组传输地址请求。
14.如权利要求12所述的半导体芯片,其中分组传输数据。
15.如权利要求12所述的半导体芯片,其中分组传输高速缓存器一致性协议消息。
16.如权利要求15所述的半导体芯片,其中所述高速缓存器一致性协议消息传达在地址空间中所缓存的地址的失效。
17.如权利要求15所述的半导体芯片,其中所述高速缓存器一致性协议消息传达允许修改地址空间中的地址线的权限。
18.如权利要求15所述的半导体芯片,其中所述高速缓存器一致性协议消息传达对提取地址空间中地址线的修改数据的请求。
19.如权利要求7所述的半导体芯片,其中所述双向环路结构包括在顺时针方向上传送分组的至少第一线路和在逆时针方向上传送分组的至少第二线路。
20.如权利要求19所述的半导体芯片,其中所述双向环路结构包括多个在顺时针方向上传送分组的第一线路和多个在逆时针方向上传送分组的第二线路。
21.如权利要求7所述的半导体芯片,还包括减法器,与多个处理器中的至少一个相耦合,用于计算在所述双向环路结构上用以在多个处理器中的所述至少一个处理器和地址空间之间以及在多个处理器中的所述至少一个处理器和所述多个处理器中的第二处理器之间传输分组的方向。
22.如权利要求7所述的半导体芯片,还包括减法器,与地址空间的第一部分相耦合,用于计算在所述双向环路结构上用以在地址空间的第一部分和所述多个处理器中的至少一个处理器之间以及地址空间的第一部分和地址空间的第二部分之间传输分组的方向。
23.如权利要求7所述的半导体芯片,还包括可编程有限状态机,与多个处理器中的至少一个相耦合,用于计算在所述双向环路结构上用以在所述多个处理器中的所述至少一个处理器和地址空间之间以及所述多个处理器中的所述至少一个处理器和所述多个处理器中的第二处理器之间传输分组的方向。
24.如权利要求23所述的半导体芯片,其中所述可编程有限状态机根据所述多个处理器中的所述至少一个处理器和地址空间之间或者所述多个处理器中的所述至少一个处理器和所述多个处理器中的所述第二处理器之间的距离在查找表中搜索所述方向。
25.如权利要求7所述的半导体芯片,还包括可编程有限状态机,与地址空间的第一部分相耦合,用于计算在所述双向环路结构上用以在地址空间的第一部分和所述多个处理器中的至少一个处理器之间以及地址空间的第一部分和地址空间的第二部分之间传输分组的方向。
26.如权利要求25所述的半导体芯片,其中所述可编程有限状态机根据地址空间的第一部分和所述多个处理器中的至少一个处理器之间以及地址空间的第一部分和地址空间的第二部分之间的距离在查找表中搜索所述方向。
27.如权利要求7所述的半导体芯片,其中所述多个处理器中的每一个处理器都计算在所述环路结构上用以在所述处理器和另一处理器之间或所述处理器和地址空间之间传输分组的方向。
28.一种系统,包括:
多处理器芯片,包括:
至少一个中央处理单元,
共享地址空间,
至少一个双向环路结构,与所述至少一个中央处理单元及所述共享地址空间的代理相耦合,所述双向环路结构是连续的链路;
用于计算在所述至少一个双向环路结构上用以在处理器和共享地址空间的代理之间传输分组的方向的装置;和
用于传输来自所述多处理器芯片的分组的总线。
29.如权利要求28所述的系统,还包括与总线耦合的存储器。
30.如权利要求29所述的系统,其中多处理器芯片还包括与所述至少一个双向环路结构相耦合的共享存储器接口,所述共享存储器接口将多处理器芯片耦合到存储器。
31.如权利要求28所述的系统,其中多处理器芯片还包括与所述至少一个双向环路结构相耦合的共享全局一致性引擎接口,所述共享全局一致性引擎接口将所述多处理器芯片耦合到多个其它多处理器芯片。
32.如权利要求28所述的系统,还包括与总线相耦合的至少一个输入/输出设备。
33.如权利要求32所述的系统,其中多处理器芯片还包括与所述至少一个双向环路结构相耦合的共享输入/输出接口,所述共享输入/输出接口将所述多处理器芯片耦合到至少一个输入/输出设备。
34.一种方法,包括:
计算源节点和目的地节点之间在芯片上的第一和第二环路结构上的距离;
根据所计算的距离确定在第一和第二环路结构中的哪一个上在源和目的地节点之间传输分组;并且
在所确定的环路结构上把分组从源节点传输到目的地节点。
35.如权利要求34所述的方法,其中所述计算包括:
计算第一环路结构上源和目的地节点之间的顺时针距离;
计算第二环路结构上源和目的地节点之间的逆时针距离。
36.如权利要求34所述的方法,其中所述确定包括:
确定第一和第二环路结构中的哪一个在第一和第二环路结构的每一个上的独立方向上在源和目的地节点之间具有最短距离。
37.如权利要求36所述的方法,其中所述独立方向包括顺时针方向和逆时针方向。
38.如权利要求34所述的方法,其中所述传输包括:
在第一环路结构上顺时针传输分组或在第二环路结构上逆时针传输分组。
39.如权利要求34所述的方法,其中所述传输包括:
如果在所确定出的环路结构上的另一分组到达了源节点,那么就等待着以从所述源节点传输分组。
40.如权利要求34所述的方法,其中所述传输包括:
在所确定的环路结构上每个时钟周期都推送进分组。
41.一种方法,包括:
计算在芯片上的第一和第二环路结构的通信量;
根据所计算的通信量来确定在第一和第二环路结构中的哪一个环路结构上在源和目的地节点之间传输分组;并且
在所确定出的环路结构上把分组从源节点传输到目的地节点。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/855509 | 2004-05-28 | ||
US10/855,509 US20060041715A1 (en) | 2004-05-28 | 2004-05-28 | Multiprocessor chip having bidirectional ring interconnect |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1702858A CN1702858A (zh) | 2005-11-30 |
CN100461394C true CN100461394C (zh) | 2009-02-11 |
Family
ID=35169283
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2005100740581A Expired - Fee Related CN100461394C (zh) | 2004-05-28 | 2005-05-30 | 具有双向环路互连的多处理器芯片 |
Country Status (6)
Country | Link |
---|---|
US (1) | US20060041715A1 (zh) |
EP (1) | EP1615138A3 (zh) |
JP (1) | JP2006012133A (zh) |
KR (1) | KR100726305B1 (zh) |
CN (1) | CN100461394C (zh) |
TW (2) | TWI423036B (zh) |
Families Citing this family (51)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050033889A1 (en) * | 2002-10-08 | 2005-02-10 | Hass David T. | Advanced processor with interrupt delivery mechanism for multi-threaded multi-CPU system on a chip |
US7346757B2 (en) | 2002-10-08 | 2008-03-18 | Rmi Corporation | Advanced processor translation lookaside buffer management in a multithreaded system |
US8015567B2 (en) | 2002-10-08 | 2011-09-06 | Netlogic Microsystems, Inc. | Advanced processor with mechanism for packet distribution at high line rate |
US8176298B2 (en) | 2002-10-08 | 2012-05-08 | Netlogic Microsystems, Inc. | Multi-core multi-threaded processing systems with instruction reordering in an in-order pipeline |
US8037224B2 (en) * | 2002-10-08 | 2011-10-11 | Netlogic Microsystems, Inc. | Delegating network processor operations to star topology serial bus interfaces |
US7334086B2 (en) * | 2002-10-08 | 2008-02-19 | Rmi Corporation | Advanced processor with system on a chip interconnect technology |
US7961723B2 (en) | 2002-10-08 | 2011-06-14 | Netlogic Microsystems, Inc. | Advanced processor with mechanism for enforcing ordering between information sent on two independent networks |
US8478811B2 (en) | 2002-10-08 | 2013-07-02 | Netlogic Microsystems, Inc. | Advanced processor with credit based scheme for optimal packet flow in a multi-processor system on a chip |
US9088474B2 (en) * | 2002-10-08 | 2015-07-21 | Broadcom Corporation | Advanced processor with interfacing messaging network to a CPU |
US7627721B2 (en) | 2002-10-08 | 2009-12-01 | Rmi Corporation | Advanced processor with cache coherency |
US7984268B2 (en) | 2002-10-08 | 2011-07-19 | Netlogic Microsystems, Inc. | Advanced processor scheduling in a multithreaded system |
US7924828B2 (en) | 2002-10-08 | 2011-04-12 | Netlogic Microsystems, Inc. | Advanced processor with mechanism for fast packet queuing operations |
US20060112226A1 (en) | 2004-11-19 | 2006-05-25 | Hady Frank T | Heterogeneous processors sharing a common cache |
US20060143384A1 (en) * | 2004-12-27 | 2006-06-29 | Hughes Christopher J | System and method for non-uniform cache in a multi-core processor |
US7788240B2 (en) * | 2004-12-29 | 2010-08-31 | Sap Ag | Hash mapping with secondary table having linear probing |
US7747897B2 (en) * | 2005-11-18 | 2010-06-29 | Intel Corporation | Method and apparatus for lockstep processing on a fixed-latency interconnect |
US7350043B2 (en) | 2006-02-10 | 2008-03-25 | Sun Microsystems, Inc. | Continuous data protection of block-level volumes |
KR101031680B1 (ko) * | 2006-03-03 | 2011-04-29 | 닛본 덴끼 가부시끼가이샤 | 고속 pe 간 데이터 재배치 기능을 갖는 프로세서 어레이 시스템 |
JP4928862B2 (ja) | 2006-08-04 | 2012-05-09 | 株式会社日立ハイテクノロジーズ | 欠陥検査方法及びその装置 |
US7664608B2 (en) * | 2006-07-14 | 2010-02-16 | Hitachi High-Technologies Corporation | Defect inspection method and apparatus |
CN101216815B (zh) * | 2008-01-07 | 2010-11-03 | 浪潮电子信息产业股份有限公司 | 一种双翼可扩展多处理器紧耦合共享存储器体系结构 |
US9596324B2 (en) | 2008-02-08 | 2017-03-14 | Broadcom Corporation | System and method for parsing and allocating a plurality of packets to processor core threads |
US8122279B2 (en) * | 2008-04-21 | 2012-02-21 | Kabushiki Kaisha Toshiba | Multiphase clocking systems with ring bus architecture |
US20120030448A1 (en) * | 2009-03-30 | 2012-02-02 | Nec Corporation | Single instruction multiple date (simd) processor having a plurality of processing elements interconnected by a ring bus |
KR101061187B1 (ko) * | 2009-06-22 | 2011-08-31 | 한양대학교 산학협력단 | 버스 시스템 및 그 제어 장치 |
US8886885B2 (en) * | 2009-11-13 | 2014-11-11 | Marvell World Trade Ltd. | Systems and methods for operating a plurality of flash modules in a flash memory file system |
US8463959B2 (en) * | 2010-05-31 | 2013-06-11 | Mosaid Technologies Incorporated | High-speed interface for daisy-chained devices |
US8554851B2 (en) * | 2010-09-24 | 2013-10-08 | Intel Corporation | Apparatus, system, and methods for facilitating one-way ordering of messages |
CN102103568B (zh) * | 2011-01-30 | 2012-10-10 | 中国科学院计算技术研究所 | 片上多核处理器系统的高速缓存一致性协议的实现方法 |
US8982695B2 (en) * | 2012-09-29 | 2015-03-17 | Intel Corporation | Anti-starvation and bounce-reduction mechanism for a two-dimensional bufferless interconnect |
US20140114928A1 (en) | 2012-10-22 | 2014-04-24 | Robert Beers | Coherence protocol tables |
US9355058B2 (en) | 2012-10-22 | 2016-05-31 | Intel Corporation | High performance interconnect physical layer |
KR101831550B1 (ko) * | 2012-10-22 | 2018-02-22 | 인텔 코포레이션 | 다중슬롯 링크 계층 플릿에서의 제어 메시징 |
JP2014093048A (ja) * | 2012-11-06 | 2014-05-19 | Fujitsu Ltd | データ処理装置及びデータ処理方法 |
JP2014211767A (ja) * | 2013-04-18 | 2014-11-13 | 富士通株式会社 | 情報処理システム、制御装置及び情報処理システムの制御方法 |
US10741226B2 (en) * | 2013-05-28 | 2020-08-11 | Fg Src Llc | Multi-processor computer architecture incorporating distributed multi-ported common memory modules |
CN105492989B (zh) * | 2013-09-30 | 2018-11-16 | 英特尔公司 | 用于管理对时钟进行的门控的装置、系统、方法和机器可读介质 |
CN107851058B (zh) * | 2016-05-27 | 2021-02-12 | 华为技术有限公司 | 存储系统及设备扫描方法 |
JP6740456B2 (ja) * | 2016-08-01 | 2020-08-12 | ティーエスヴイリンク コーポレイション | 多重チャネルキャッシュメモリおよびシステムメモリデバイス |
US10795853B2 (en) | 2016-10-10 | 2020-10-06 | Intel Corporation | Multiple dies hardware processors and methods |
CN109426553A (zh) | 2017-08-21 | 2019-03-05 | 上海寒武纪信息科技有限公司 | 任务切分装置及方法、任务处理装置及方法、多核处理器 |
EP3637272A4 (en) | 2017-06-26 | 2020-09-02 | Shanghai Cambricon Information Technology Co., Ltd | DATA-SHARING SYSTEM AND RELATED DATA-SHARING PROCESS |
CN110413551B (zh) | 2018-04-28 | 2021-12-10 | 上海寒武纪信息科技有限公司 | 信息处理装置、方法及设备 |
CN109117415A (zh) * | 2017-06-26 | 2019-01-01 | 上海寒武纪信息科技有限公司 | 数据共享系统及其数据共享方法 |
CN109214616B (zh) | 2017-06-29 | 2023-04-07 | 上海寒武纪信息科技有限公司 | 一种信息处理装置、系统和方法 |
CN108304343A (zh) * | 2018-02-08 | 2018-07-20 | 深圳市德赛微电子技术有限公司 | 一种复杂soc的片上通信方法 |
US10691632B1 (en) * | 2019-03-14 | 2020-06-23 | DeGirum Corporation | Permutated ring network interconnected computing architecture |
US11829196B2 (en) | 2019-10-22 | 2023-11-28 | Advanced Micro Devices, Inc. | Ring transport employing clock wake suppression |
CN113709040B (zh) * | 2021-08-31 | 2023-04-07 | 中国电子科技集团公司第五十八研究所 | 一种基于可扩展互联裸芯的封装级网络路由算法 |
CN113868171A (zh) * | 2021-09-28 | 2021-12-31 | 上海兆芯集成电路有限公司 | 互连系统 |
CN114328333B (zh) * | 2021-12-10 | 2024-03-12 | 中国科学院计算技术研究所 | 基于环形总线的硅芯片及其配置方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO1998019409A2 (en) * | 1996-10-15 | 1998-05-07 | The Regents Of The University Of California | High-performance parallel processors based on star-coupled wavelength division multiplexing optical interconnects |
US20020154354A1 (en) * | 2001-04-20 | 2002-10-24 | Kannan Raj | Optically interconnecting multiple processors |
US20030115242A1 (en) * | 2001-12-13 | 2003-06-19 | Hayduk Matthew A. | Computing system capable of reducing power consumtion by distributing execution of instruction across multiple processors and method therefore |
Family Cites Families (28)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5488038A (en) * | 1977-12-24 | 1979-07-12 | Fujitsu Ltd | Data processor |
US4646232A (en) * | 1984-01-03 | 1987-02-24 | Texas Instruments Incorporated | Microprocessor with integrated CPU, RAM, timer, bus arbiter data for communication system |
JPS649548A (en) * | 1987-07-01 | 1989-01-12 | Nec Corp | Cache memory device |
JPS6474642A (en) * | 1987-09-16 | 1989-03-20 | Nec Corp | Cache memory bank selecting circuit |
JPH04113444A (ja) * | 1990-09-04 | 1992-04-14 | Oki Electric Ind Co Ltd | 双方向リングバス装置 |
FR2680026B1 (fr) * | 1991-07-30 | 1996-12-20 | Commissariat Energie Atomique | Architecture de systeme en tableau de processeurs a structure parallele. |
US5245605A (en) * | 1991-10-04 | 1993-09-14 | International Business Machines Corporation | Integration of synchronous and asynchronous traffic on rings |
JPH06314239A (ja) * | 1993-04-28 | 1994-11-08 | Hitachi Ltd | プロセッサシステム |
US5604450A (en) * | 1995-07-27 | 1997-02-18 | Intel Corporation | High speed bidirectional signaling scheme |
US5935232A (en) * | 1995-11-20 | 1999-08-10 | Advanced Micro Devices, Inc. | Variable latency and bandwidth communication pathways |
US5757249A (en) * | 1996-10-08 | 1998-05-26 | Lucent Technologies Inc. | Communication system having a closed loop bus structure |
US6253292B1 (en) * | 1997-08-22 | 2001-06-26 | Seong Tae Jhang | Distributed shared memory multiprocessor system based on a unidirectional ring bus using a snooping scheme |
JPH11167560A (ja) * | 1997-12-03 | 1999-06-22 | Nec Corp | データ転送システム、このシステムに用いるスイッチング回路、アダプタ及びこのシステムを有する集積回路並びにデータ転送方法 |
US6574219B1 (en) * | 1998-08-06 | 2003-06-03 | Intel Corp | Passive message ordering on a decentralized ring |
DE19922171B4 (de) * | 1999-05-12 | 2009-08-27 | Infineon Technologies Ag | Kommunikationssystem mit einem Kommunikationsbus |
US6680912B1 (en) * | 2000-03-03 | 2004-01-20 | Luminous Networks, Inc. | Selecting a routing direction in a communications network using a cost metric |
US6865149B1 (en) * | 2000-03-03 | 2005-03-08 | Luminous Networks, Inc. | Dynamically allocated ring protection and restoration technique |
US20030031126A1 (en) * | 2001-03-12 | 2003-02-13 | Mayweather Derek T. | Bandwidth reservation reuse in dynamically allocated ring protection and restoration technique |
US6957435B2 (en) * | 2001-04-19 | 2005-10-18 | International Business Machines Corporation | Method and apparatus for allocating processor resources in a logically partitioned computer system |
GB2377138A (en) * | 2001-06-28 | 2002-12-31 | Ericsson Telefon Ab L M | Ring Bus Structure For System On Chip Integrated Circuits |
JP2003036248A (ja) * | 2001-07-25 | 2003-02-07 | Nec Software Tohoku Ltd | シングルチップマイクロプロセッサに用いる小規模プロセッサ |
US7248585B2 (en) * | 2001-10-22 | 2007-07-24 | Sun Microsystems, Inc. | Method and apparatus for a packet classifier |
JP2005508558A (ja) * | 2001-11-07 | 2005-03-31 | シトラ リミテッド | 要求マッチングシステムおよび方法 |
US7281055B2 (en) * | 2002-05-28 | 2007-10-09 | Newisys, Inc. | Routing mechanisms in systems having multiple multi-processor clusters |
EP1367778A1 (en) * | 2002-05-31 | 2003-12-03 | Fujitsu Siemens Computers, LLC | Networked computer system and method using dual bi-directional communication rings |
JP4104939B2 (ja) * | 2002-08-29 | 2008-06-18 | 新日本無線株式会社 | マルチプロセッサシステム |
US8209490B2 (en) * | 2003-12-30 | 2012-06-26 | Intel Corporation | Protocol for maintaining cache coherency in a CMP |
US7676637B2 (en) * | 2004-04-27 | 2010-03-09 | International Business Machines Corporation | Location-aware cache-to-cache transfers |
-
2004
- 2004-05-28 US US10/855,509 patent/US20060041715A1/en not_active Abandoned
-
2005
- 2005-05-19 TW TW098143893A patent/TWI423036B/zh not_active IP Right Cessation
- 2005-05-19 JP JP2005146725A patent/JP2006012133A/ja active Pending
- 2005-05-19 TW TW094116305A patent/TWI324735B/zh not_active IP Right Cessation
- 2005-05-25 EP EP05253224A patent/EP1615138A3/en not_active Ceased
- 2005-05-27 KR KR1020050045066A patent/KR100726305B1/ko not_active IP Right Cessation
- 2005-05-30 CN CNB2005100740581A patent/CN100461394C/zh not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO1998019409A2 (en) * | 1996-10-15 | 1998-05-07 | The Regents Of The University Of California | High-performance parallel processors based on star-coupled wavelength division multiplexing optical interconnects |
US20020154354A1 (en) * | 2001-04-20 | 2002-10-24 | Kannan Raj | Optically interconnecting multiple processors |
US20030115242A1 (en) * | 2001-12-13 | 2003-06-19 | Hayduk Matthew A. | Computing system capable of reducing power consumtion by distributing execution of instruction across multiple processors and method therefore |
Also Published As
Publication number | Publication date |
---|---|
TW201015339A (en) | 2010-04-16 |
TWI324735B (en) | 2010-05-11 |
US20060041715A1 (en) | 2006-02-23 |
EP1615138A3 (en) | 2009-03-04 |
KR100726305B1 (ko) | 2007-06-08 |
JP2006012133A (ja) | 2006-01-12 |
TW200610327A (en) | 2006-03-16 |
TWI423036B (zh) | 2014-01-11 |
EP1615138A2 (en) | 2006-01-11 |
CN1702858A (zh) | 2005-11-30 |
KR20060046226A (ko) | 2006-05-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100461394C (zh) | 具有双向环路互连的多处理器芯片 | |
CN101878475B (zh) | 向星形拓扑串行总线接口委托网络处理器操作 | |
US7526626B2 (en) | Memory controller configurable to allow bandwidth/latency tradeoff | |
JP4286826B2 (ja) | マルチプロセッサシステムで多重構成をサポートする方法及び装置 | |
US6279084B1 (en) | Shadow commands to optimize sequencing of requests in a switch-based multi-processor system | |
US5749095A (en) | Multiprocessing system configured to perform efficient write operations | |
US6668308B2 (en) | Scalable architecture based on single-chip multiprocessing | |
US20020146022A1 (en) | Credit-based flow control technique in a modular multiprocessor system | |
US6249520B1 (en) | High-performance non-blocking switch with multiple channel ordering constraints | |
US7380102B2 (en) | Communication link control among inter-coupled multiple processing units in a node to respective units in another node for request broadcasting and combined response | |
US7991964B2 (en) | Pre-coherence channel | |
US7529894B2 (en) | Use of FBDIMM channel as memory channel and coherence channel | |
US20040034747A1 (en) | Scalable cache coherent distributed shared memory processing system | |
GB2248952A (en) | Hierarchical integrated circuit cache memory | |
KR101509628B1 (ko) | 프로세서의 하이 어소시에이티브 캐시 메모리를 위한 scr 매커니즘 | |
US7353340B2 (en) | Multiple independent coherence planes for maintaining coherency | |
US7398360B2 (en) | Multi-socket symmetric multiprocessing (SMP) system for chip multi-threaded (CMT) processors | |
US7321956B2 (en) | Method and apparatus for directory-based coherence with distributed directory management utilizing prefetch caches | |
CN104094241B (zh) | 一种传达与高速缓存相干性相关的信息的方法及系统 | |
JP4112050B2 (ja) | コヒーレントメモリシステムにおいて強い順序づけを維持する方法およびシステム | |
US20050033922A1 (en) | Embedded DRAM cache | |
US20030076831A1 (en) | Mechanism for packet component merging and channel assignment, and packet decomposition and channel reassignment in a multiprocessor system | |
US7363432B2 (en) | Method and apparatus for directory-based coherence with distributed directory management | |
US20010049742A1 (en) | Low order channel flow control for an interleaved multiblock resource | |
Mak et al. | Processor subsystem interconnect architecture for a large symmetric multiprocessing system |
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 | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20090211 Termination date: 20180530 |