CN101999115A - 多核处理系统 - Google Patents

多核处理系统 Download PDF

Info

Publication number
CN101999115A
CN101999115A CN2009801128531A CN200980112853A CN101999115A CN 101999115 A CN101999115 A CN 101999115A CN 2009801128531 A CN2009801128531 A CN 2009801128531A CN 200980112853 A CN200980112853 A CN 200980112853A CN 101999115 A CN101999115 A CN 101999115A
Authority
CN
China
Prior art keywords
processor core
consistance group
group
grouping
consistance
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.)
Granted
Application number
CN2009801128531A
Other languages
English (en)
Other versions
CN101999115B (zh
Inventor
P·H·佩利三世
G·P·霍克斯特拉
L·F·C·帕梭
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.)
Zenith Investment LLC
Apple Inc
Original Assignee
Freescale Semiconductor 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
Application filed by Freescale Semiconductor Inc filed Critical Freescale Semiconductor Inc
Publication of CN101999115A publication Critical patent/CN101999115A/zh
Application granted granted Critical
Publication of CN101999115B publication Critical patent/CN101999115B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations 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

Abstract

一种系统(10),其具有处于第一一致性群组(18)中的第一多个核(16)。每一个核以分组传送数据。所述核直接串行耦接,以形成串行路径。数据分组沿该串行路径传送。该串行路径在一端耦接到分组交换器(14)。所述分组交换器耦接到存储器(12)。所述第一多个核和所述分组交换器是在集成电路上。所述存储器可以在或者可以不在所述集成电路上。在另一方面,处于第二一致性群组中的第二多个核(20)耦接到所述分组交换器。所述第一多个和第二多个核可以被配置来形成或成为与所述第一和第二一致性群组不同的一致性群组的一部分。

Description

多核处理系统
技术领域
本公开总的来说涉及处理系统,并且更具体地,涉及具有多个核(core)的处理系统。
背景技术
已经发现,如果采用多个核的话,数据的处理更加有效率。多核系统允许不同任务的同时处理。复杂的操作趋于能够被划分成多个任务,因此,多核系统趋于对于复杂的操作工作良好。非常复杂的操作可以具有多个任务,从而具有许多个核可以是有利的。必须协调这些操作,以使得不同核的结果也必须协调。这包括:正在被使用的存储器必须能够保持一致(coherent)。也就是说,核必须能够使用来自主存储器的信息,这是因为高速缓存(其可能与每一个核一起)不是足够的。在任何使用高速缓冲的系统中,可能难以维持存储器一致性,并且随着核的数目的增加这变得愈加复杂。
因此,存在对如下的系统的需求,所述系统是多核的,同时解决或改善了多核系统的现有问题。
附图说明
通过附图以示例的方式示出了本发明,并且本发明并不受附图的限制,在附图中相同的附图标记表示相似的要素。附图中的要素是出于简单和清楚的目的而示出的,并且不必按比例绘制。
图1是根据一个实施例的系统的框图;
图2是图1的系统中所使用的核的框图;
图3是替代的配置中的图1的系统的框图;
图4是根据另一实施例的系统的框图;
图5是替代的配置中的图4的系统的框图。
具体实施方式
在一个方面,一种系统具有处于第一一致性群组中的第一多个核。每一个核以分组(packet)传送数据。所述核串行地直接耦接以形成串行路径。沿该串行路径传送数据分组。该串行路径在一端耦接到分组交换器(packet switch)。所述分组交换器耦接到存储器。所述第一多个核和所述分组交换器是在集成电路上。所述存储器可以在所述集成电路上或者可以不在所述集成电路上。在另一方面,处于第二一致性群组的第二多个核耦接到所述分组交换器。所述第一多个和第二多个核可以被重新配置来形成或成为与所述第一和第二一致性群组不同的一致性群组的一部分。参考下面的描述和附图将对此有更好的理解。
图1中所示的是多核系统10,其包括:存储器12,分组交换器14,以及耦接以形成一致性群组18、一致性群组20、一致性群组22、以及一致性群组24的核的阵列16。一致性群组18包括耦接到分组交换器14的核26、耦接到核26的核28、耦接到核28的核30、以及耦接到核30的核32。一致性群组20包括耦接到分组交换器14的核34、耦接到核34的核36、耦接到核36的核38、以及耦接到核38的核40。一致性群组22包括耦接到分组交换器14的核42、耦接到核42的核44、耦接到核44的核46、以及耦接到核46的核48。一致性群组24包括耦接到分组交换器14的核50、耦接到核50的核52、耦接到核52的核54、以及耦接到核54的核56。核26、28、30以及32串行耦接从而一致性群组18串行地传送数据的分组。类似地,一致性群组20、22以及24每一都串行地耦接沿串行数据路径传送数据的核。存储器12具有分别与一致性群组18、20、22以及24关联的分区(partition)58、60、62以及64。数据的分组包括数据本身并且还包括关于该分组的另外的信息。另外的信息可以包括纠错、分组次序、目标ID、源ID、奇偶性、以及大小。用于传播分组的协议的一个示例是RapidIOTM(Freescale Semiconductor,Inc.的商标))协议。分组可以包括除数据以外的其它种类的信息,诸如控制信息。
图2中所示的是更详细的核26,其代表图1的所有的核。核26具有高速缓存74以及至少两个端口66和70。在一致性群组1中,核26具有耦接到分组交换器14的一个端口以及耦接到核28的端口的另一个端口。每一一致性群组具有耦接到分组交换器14的第一端。每一一致性群组还具有第二端,其中存在仅耦接到一个其它核的核。因此,一致性群组20、22和24的第一端中,核34、42和50分别耦接到分组交换器14。一致性群组18、20、22和24的第二端分别在核32、40、48和56处。核26被示出为具有两个另外的端口72和68,总共四个端口,以及响应于重新配置线69上的信号的重新配置寄存器73。另外的端口72和68以及重新配置寄存器73被用于对系统10进行重新配置。
在示例性操作中,数据分组要被从核30传送(也可以称作传播)到存储器12。该操作中包括驻留在核30中的高速缓存的写入。该分组将被从核30传送到核28。核28将把该分组传递到核26。核26将该分组传递到分组交换器14。然后分组交换器14将把该分组写入到存储器12的分区58。核30将还把该分组传递到核32。核之间的数据的传送非常快速地发生,因此,存在最小的延迟。这甚至可以光学地、通过射频、或低电压差分信号发送来实现。在射频的情况下,超宽带无线通信的积极发展正在表现出对于可靠制造的妥协。另外,每一个核将需要至少读取其中将写入该分组的地址。如果该地址是高速缓存命中,那么高速缓存中的该条目被标志为无效。高速缓存例行地具有有效比特,其可以被设置来表示在该位置处的数据有效或者无效。但是,替代地,以某种程度地减慢传送为代价,也可以读取数据并更新高速缓存。在任一情况下,每一个核的高速缓存被保持一致。利用高速缓存76作为示例,核26将从核28接收分组,并快速地将其传送到分组交换器14,同时还至少读取一个或多个所述地址。如果数据存储在高速缓存74中该地址或该地址之一处,则这是高速缓存命中。于是,要么将用于其中出现命中的该位置的有效比特设置为表示无效,要么把该数据写入该位置。在该示例中,允许一致性群组18仅写入到分区以确保保持了一致性。对于一致性群组18,从分区60、62、或64读取是问题较少的,但是在这样做时仍必须防止核26、28、30和32的高速缓存被更新。对于核32的情况,核30并不必为了提供所需的写入一致性信息而发送整个分组。为了提供该必需的写入一致性信息从而使核32可以维持其高速缓存中的一致性,简单地发送所述一个或多个地址并且不管其是读取或写入可以是足够的。
图3中所示的是利用群组控制器75由图1中所示的重新配置而来的系统10。群组控制器75发送信号(串行地)到阵列16的所有的核以重新配置核的端口,并由此重新配置阵列16并从而重新配置系统10。该线路也可以用于调试(debugging)。群组控制器75还是可通过端口访问的从该集成电路外部访问的。群组控制器75耦接到分组交换器14以用于控制分组交换器14和访问存储器12。存储器12也可以被重新配置。存储器12的重新配置被示出为具有分区84、86、88和90。如图3所启示的,分区84、86、88和90可以具有不同的大小。在图3的配置中,核26、28、30、32、40和38形成一致性群组76;核34和36形成一致性群组78;核42、44和46形成一致性群组80;并且核48、50、52、54和56形成一致性群组82。阵列16被以行和列布置,从而每一个核具有至少两个相邻的核,并且可以具有四个相邻的核。例如,核26具有相邻的核34和28,而核38具有相邻的核30、36、40和46。如图2中对于核26所示的,每一个核具有四个端口。两个端口可以被配置为耦接到相邻的核。在该示例中,核40被重新配置为耦接到核32而不是作为一致性群组的第二端。如在图3的一致性群组的情况下那样,一致性群组76、78、80和82具有耦接到分组交换器14的一个核作为第一端以及作为串行耦接的核中的最后的核的第二端。在这种情况下,耦接到分组交换器14的核是核26、34、42和50,其分别作为一致性群组76、78、80和82的第一端。一致性群组76、78、80和82的第二端分别是核38、36、46和48。如对于图1的系统10所述的,分组串行地行进到一致性群组内的所有的核。再一次地,利用分组从核30到存储器12的传送作为示例,分组被传送到核28,在这里,它被传送到核26。核26耦接到分组交换器14,分组交换器14将写入指引到存储器12的分区84中。核30也将该分组传送到核32。核32将该分组传送到核40。核40将该分组传送到核38。可能并不是必须将整个分组传送到核32、40和38的。可能仅需要地址从而如果存在命中则可以将核32、40和38的高速缓存中的有效比特设置为无效状态。
图4中所示的是系统100,其包括存储器102、分组交换器104、分组交换器106、以及核的阵列108。阵列108包括一致性群组142、144、146以及148。存储器102具有分别与一致性群组142、144、146以及148关联的分区150、152、154以及156。一致性群组142包括多个核,其包括超过四个核。图中示出了四个核。所示出的构成一致性群组142的四个核包括:耦接到分组交换器104的核110、耦接到核110的核112、耦接到分组交换器106的核116、以及耦接到核116的核114。所示出的构成一致性群组144的四个核包括:耦接到分组交换器104的核118、耦接到核118的核120、耦接到分组交换器106的核124、以及耦接到核124的核122。所示出的构成一致性群组146的四个核包括:耦接到分组交换器104的核126、耦接到核126的核128、耦接到分组交换器106的核132、以及耦接到核132的核130。除了存在所述一致性群组中所示的那些核以外的核之外,还可以存在所示的那些之外的其它一致性群组。分组交换器104和106耦接到存储器102。操作与图1的系统10的类似,但具有以下的另外的特征:最接近于提供分组的核的分组交换器是写入存储器的分组交换器。一个示例性操作是,核114传送分组到存储器102。在这种情况下,核114将该分组传送到核116。核116将该分组传送到分组交换器106。分组交换器106将来自该分组交换器的数据写入到存储器102的分区150。另外,核114向核112和110传送该分组或者至少该分组的一个或多个地址。于是一致性群组中的所有分组能够保持其高速缓存一致。于是系统100通过使一致性群组的两端在分组交换器处终止来允许该分组取最短的距离到该一致性群组的末端。
图5中所示的是具有重新配置的核的系统10。系统10另外具有群组控制器109,其具有划线通过所有的核的输出。该输出类似于图2中所示的线69并且向核提供配置信息。群组控制器109类似于图3中所示的群组控制器75,并具有到分组交换器104和106的连接以及到外部端口的连接。在该示例中,群组控制器提供配置信息,该配置信息导致系统100重新配置,从而来自一致性群组146和148的核被重新配置成一致性群组155和157。一致性群组155包括:耦接到分组交换器104的核134、耦接到核134的核126、耦接到核136的核128、耦接到核138的核136、以及耦接到核140的核138。在核136和138之间存在至少一个核。一致性群组157包括:耦接到分组交换器106的核132以及耦接到核132的核130。一致性群组157耦接到分组交换器106而不是分组交换器104。
系统10和100在其中存在大量的核的情况下是特别有用的。分组的串行耦接,对于维持一致性有效率的,特别是通过具有限于仅写入存储器的某些区域的不同的一致性群组。通过一致性群组内的核的串行连接以及通过分开地维持多个一致性群组,容易地维持了一致性。此外,一致性群组可以重新配置成不同的大小。甚至可以将变得有缺陷的核保持于任何一致性群组之外。随着核数目的增加,高速串行路径的实用性将在利用多个核以及维持其一致性的能力方面提供更多的效率。
大量的应用可以受益于所提出的方法和设备。例如,核可以包括可以向群组控制器提供反馈的故障检测电路,群组控制器可以利用该反馈来重新配置其余的核以克服错误的核。核可以包括例如可以向群组控制器提供反馈的温度检测电路,群组控制器可以利用该反馈来对核进行重新配置以在处理系统中更好地分布热耗散。核可以包括可以向群组控制器提供反馈的损耗水平(wear level)电路,群组控制器可以利用该反馈来对核进行重新配置以使核的损耗水平更好地分布。在操作期间,可以向不同的核以及相应的一致性群组动态地分配任务,因此允许改善具有多个核的处理系统的利用率。
至此,应当理解,已经提供了用于操作集成电路内的信息系统的方法。该方法包括由该集成电路的多处理器核电路的第一处理器核产生第一信息分组,其中该第一信息分组被指引向存储器。该方法还包括将该第一信息分组从第一处理器核传播到所述存储器,其中所述传播包括经由所述多处理器核电路的第二处理器核传播所述第一分组,其中所述经由第二处理器核传播所述第一分组包括由第二处理器核接收所述第一分组以及由第二处理器核发送所述第一分组。该方法可以进一步特征在于,所述到存储器的传播包括:经由分组交换器电路传播到所述存储器,所述第二处理器核将所述分组发送到所述分组交换器电路。该方法可以进一步特征在于,所述多处理器核电路包括第三处理器核,其中所述第三处理器核并不接收所述第一分组的写入一致性信息。该方法可以进一步特征在于。该方法可以进一步包括由所述第一处理器核发送写入一致性信息到所述多处理器核电路的第四处理器核,其中所述第四处理器核从所述第一处理器核接收所述写入一致性信息,其中所述第四处理器核利用所述写入一致性信息来确定所述第一分组是否是在修改所述存储器中的被高速缓存在所述第四处理器核中的位置处的数据。该方法可以进一步包括由所述第四处理器核发送所述写入一致性信息到所述多处理器核电路的第五处理器核,其中所述第五处理器核利用所述写入一致性信息来确定所述第一分组是否是在修改所述存储器中的被高速缓存在所述第五处理器核中的位置处的数据。该方法可以进一步包括:由所述第三处理器核产生第二信息分组,其中所述第二信息分组针对所述存储器;以及将所述第二信息分组传播到所述存储器,其中所述传播包括经由所述多处理器核电路的第四处理器核以及分组交换器电路传播所述第二分组,其中所述经由第四处理器核传播所述分组包括由所述第四处理器核接收所述信息分组以及由所述第四处理器核发送该分组。该方法可以进一步特征在于:所述第一处理器核以及所述第二处理器核不接收所述第二分组的写入一致性信息,并且所述第四处理器核不接收所述第一分组的写入一致性信息。该方法可以进一步特征在于:将所述第一信息分组传播到所述存储器包括,将所述第一分组传播到所述存储器的可由所述第一处理器核和所述第二处理器核访问的但是不可由所述第三处理器核和所述第四处理器核访问的第一分区;以及将所述第二信息分组传播到所述存储器包括,将所述第二分组传播到可由所述第三处理器核和所述第四处理器核访问的但是不可由所述第一处理器核和所述第二处理器核访问的第二分区。所述方法可以进一步特征在于:所述第一分区和所述第二分区具有不重迭的地址。该方法可以进一步特征在于:在所述传播期间,所述多处理器核电路包括第一一致性群组,其中所述第一一致性群组包括所述多处理器核电路的第一多个处理器核,其包括所述第一处理器核和所述第二处理器核,所述第一一致性群组的处理器核串行地通信地耦接以传播信息分组,所述第一一致性群组的每一处理器核从所述第一一致性群组的其它处理器核所产生的到所述存储器的写入分组接收高速缓存一致性信息。该方法可以进一步特征在于:在所述传播期间,所述多处理器核电路包括第二一致性群组,其中所述第二一致性群组包括所述多处理器核电路的第二多个处理器核,所述第二一致性群组的处理器核串行地通信地耦接以传播信息分组,所述第二一致性群组的每一处理器核从所述第二一致性群组的其它处理器核所产生的到所述存储器的写入分组接收高速缓存一致性信息,并且不接收所述第一一致性群组的处理器核所产生的到所述存储器的写入分组的高速缓存一致性信息。该方法可以进一步特征在于:在所述传播期间,所述多处理器核电路包括第三一致性群组,其中所述第三一致性群组包括所述多处理器核电路的第三多个处理器核,所述第三一致性群组的处理器核串行地通信地耦接以传播信息分组,所述第三一致性群组的每一处理器核从所述第三一致性群组的其它处理器核所产生的到所述存储器的写入分组接收高速缓存一致性信息,并且不接收所述第一一致性群组的处理器核以及所述第二一致性群组的处理器核所产生的到所述存储器的写入分组的高速缓存一致性信息。所述方法可以进一步特征在于:在另一时间期间,所述多处理器核电路包括所述多处理器核电路的处理器核的第三一致性群组以及所述多处理器核电路的处理器核的第四一致性群组,其中所述第三一致性群组包括所述第一多个处理器核中的至少一个处理器核以及所述第二多个处理器核中的至少一个处理器核,所述第三一致性群组的处理器核串行地通信地耦接以传播信息分组,所述第三一致性群组的每一处理器核从所述第三一致性群组的其它处理器核所产生的到所述存储器的写入分组接收高速缓存一致性信息,并且不接收所述第四一致性群组的处理器核所产生的、所述第一一致性群组中的不在所述第三一致性群组中的处理器核所产生的、以及所述第二一致性群组中的不在所述第三一致性群组中的处理器核所产生的到所述存储器的写入分组的高速缓存一致性信息,并且所述第四一致性群组包括所述第一多个处理器核中的至少一个处理器核,所述第四一致性群组的处理器核串行地通信地耦接以传播信息分组,所述第四一致性群组的每一处理器核从所述第四一致性群组的其它处理器核所产生的到所述存储器的写入分组接收高速缓存一致性信息,并且不接收所述第三一致性群组的处理器核所产生的、所述第一一致性群组中的不在所述第四一致性群组中的处理器核所产生的、以及所述第二一致性群组中的不在所述第四一致性群组中的处理器核所产生的到所述存储器的写入分组的高速缓存一致性信息。该方法可以进一步包括:将所述分组的数据写入到所述存储器中的位置,其中该位置的地址被表示在所述分组中。该方法可以进一步特征在于:传播所述第一信息分组包括,通过具有支持流控制(flow control)以及多个优先级化的事务的有序分组的基于分组的协议来传播所述第一分组。
还描述了一种设备,其包括集成电路,所述集成电路包括多处理器核电路。所述多处理器核电路可操作来包括第一一致性群组,其中所述第一一致性群组包括所述多处理器核电路的第一多个处理器核,所述第一一致性群组的处理器核串行地通信地耦接以传播信息分组,其中所述第一一致性群组的每一处理器核从所述第一一致性群组的其它处理器核所产生的到存储器的写入分组接收高速缓存一致性信息。所述多处理器核电路可操作来包进一步括第二一致性群组,其中所述第二一致性群组包括所述多处理器核电路的第二多个处理器核,所述第二一致性群组的处理器核串行地通信地耦接以传播信息分组,其中所述第二一致性群组的每一处理器核从所述第二一致性群组的其它处理器核所产生的到所述存储器的写入分组接收高速缓存一致性信息,并且不接收所述第一一致性群组的处理器核所产生的到所述存储器的写入分组的高速缓存一致性信息。该设备进一步特征在于:所述第一一致性群组的每一处理器核不接收所述第二一致性群组的处理器核所产生的到所述存储器的写入分组的高速缓存一致性信息。所述集成电路可以进一步包括分组交换器电路,并且可以进一步特征在于所述存储器,所述多处理器核电路通过所述分组交换器电路通信地耦接到所述存储器。所述集成电路可以进一步包括控制器,其耦接到所述多处理器核电路的处理器核,所述控制器提供用于将所述多处理器核电路的诸处理器核分组成一致性群组的一致性控制信息。所述多处理器核电路可操作来包括所述多处理器核电路的处理器核的第三一致性群组以及所述多处理器核电路的处理器核的第四一致性群组,其中所述第三一致性群组包括所述第一多个处理器核中的至少一个处理器核以及所述第二多个处理器核中的至少一个处理器,所述第三一致性群组的处理器核串行地通信地耦接以传播信息分组,其中所述第三一致性群组的每一处理器核从所述第三一致性群组的其它处理器核所产生的到所述存储器的写入分组接收高速缓存一致性信息,并且不接收所述第四一致性群组的处理器核所产生的、所述第一一致性群组中的不在所述第三一致性群组中的处理器核所产生的、以及所述第二一致性群组中的不在所述第三一致性群组中的处理器核所产生的到所述存储器的写入分组的高速缓存一致性信息;并且所述设备可以进一步特征在于,所述第四一致性群组包括所述第一多个处理器核中的至少一个处理器核,所述第四一致性群组的处理器核串行地通信地耦接以传播信息分组,其中所述第四一致性群组的每一处理器核从所述第四一致性群组的其它处理器核所产生的到所述存储器的写入分组接收高速缓存一致性信息,并且不接收所述第三一致性群组的处理器核所产生的、所述第一一致性群组中的不在所述第四一致性群组中的处理器核所产生的、以及所述第二一致性群组中的不在所述第四一致性群组中的处理器核所产生的到所述存储器的写入分组的高速缓存一致性信息。所述一致性群组可以进一步特征在于:其经由所述第一一致性群组的处理器核之间的通信链路串行地通信地耦接,其中所述通信链路包括由光通信链路、无线射频通信链路、以及低电压差分信号通信链路构成的组中的至少一个。
尽管在此参考具体的实施例描述了本发明,但是可以进行多种修改和改变而不偏离如下面的权利要求所述的本发明的范围。例如,从所述群组控制器串行地绘制单条线通过所述核,这可以利用来自所述群组控制器的多条线或者不同的线来实现。因此,说明书和附图被认为是示例性的而不是限制性意义,并且意图将所有这些修改包括在本发明的范围内。在此就具体的实施例描述的任何益处、优点或对问题的解决方案并不意图被认为是任何或全部权利要求的关键的、需要的、或实质性的特征或要素。
如在此所使用的术语“耦接”意图并不限于直接耦接或机械耦接。
此外,如在此所使用的术语“一”被定义为一个或更多个。此外,权利要求中的诸如“至少一个”以及“一个或更多个”的引语的使用不应该被解释为暗示了通过不定冠词“a”或“an”(一)引入的另一权利要求要素将包含所述被引入的权利要求要素的任何特定权利要求限制到仅包含一个这种要素的发明,即使在同一权利要求包括所述引语“一个或更多个”或“至少一个”以及不定冠词诸如“a”或“an”(一)时也是如此。这对于定冠词的使用也适用。
除非另外说明,否则诸如“第一”和“第二”的术语被用于在这类术语所描述的要素之间作任意区分。因此这些术语并不必然意图表示这些要素在时间上的或其它的优先次序。

Claims (20)

1.一种用于操作集成电路内的信息系统的方法,所述方法包括:
由所述集成电路的多处理器核电路的第一处理器核产生第一信息分组,其中所述信息的第一分组针对存储器;以及
将所述第一信息分组从所述第一处理器核传播到所述存储器,其中所述传播包括经由所述多处理器核电路的第二处理器核传播所述第一分组,其中所述经由第二处理器核传播所述第一分组包括由所述第二处理器核接收所述第一分组以及由所述第二处理器核发送所述第一分组。
2.如权利要求1所述的方法,其中到所述存储器的所述传播包括经由分组交换器电路传播到所述存储器,所述第二处理器核将所述分组发送到所述分组交换器电路。
3.如权利要求1所述的方法,其中所述多处理器核电路包括第三处理器核,其中所述第三处理器核不接收所述第一分组的写入一致性信息。
4.如权利要求3所述的方法,进一步包括:
由所述第一处理器核发送所述写入一致性信息到所述多处理器核电路的第四处理器核,其中所述第四处理器核从所述第一处理器核接收所述写入一致性信息,其中所述第四处理器核利用所述写入一致性信息来确定所述第一分组是否是在修改所述存储器中的被高速缓存在所述第四处理器核中的位置处的数据。
5.如权利要求4所述的方法,进一步包括:
由所述第四处理器核发送所述写入一致性信息到所述多处理器核电路的第五处理器核,其中所述第五处理器核利用所述写入一致性信息来确定所述第一分组是否是在修改所述存储器中的被高速缓存在所述第五处理器核中的位置处的数据。
6.如权利要求3所述的方法该方法,进一步包括:
由所述第三处理器核产生第二信息分组,其中所述第二信息分组针对所述存储器;以及
将所述第二信息分组传播到所述存储器,其中所述传播包括,经由所述多处理器核电路的第四处理器核以及分组交换器电路传播所述第二分组;其中所述经由第四处理器核传播所述分组包括,由所述第四处理器核接收所述信息分组以及由所述第四处理器核发送该分组。
7.如权利要求6所述的方法,其中:
所述第一处理器核和所述第二处理器核不接收所述第二分组的写入一致性信息;
所述第四处理器核不接收所述第一分组的写入一致性信息。
8.如权利要求6所述的方法,其中
将所述第一信息分组传播到所述存储器包括,将所述第一分组传播到所述存储器的可由所述第一处理器核和所述第二处理器核访问的但是不可由所述第三处理器核和所述第四处理器核访问的第一分区;以及
将所述第二信息分组传播到所述存储器包括,将所述第二分组传播到可由所述第三处理器核和所述第四处理器核访问的但是不可由所述第一处理器核和所述第二处理器核访问的第二分区。
9.如权利要求8所述的方法,其中所述第一分区和所述第二分区具有不重迭的地址。
10.如权利要求1所述的方法,其中,在传播期间,所述多处理器核电路包括第一一致性群组,其中所述第一一致性群组包括所述多处理器核电路的第一多个处理器核,其包括所述第一处理器核和所述第二处理器核,所述第一一致性群组的处理器核串行地通信地耦接以传播信息分组,所述第一一致性群组的每一处理器核从所述第一一致性群组的其它处理器核所产生的到所述存储器的写入分组接收高速缓存一致性信息。
11.如权利要求10所述的方法,其中,在传播期间,所述多处理器核电路包括第二一致性群组,其中所述第二一致性群组包括所述多处理器核电路的第二多个处理器核,所述第二一致性群组的处理器核串行地通信地耦接以传播信息分组,所述第二一致性群组的每一处理器核从所述第二一致性群组的其它处理器核所产生的到所述存储器的写入分组接收高速缓存一致性信息,并且不接收所述第一一致性群组的处理器核所产生的到所述存储器的写入分组的高速缓存一致性信息。
12.如权利要求11所述的方法,其中,在传播期间,所述多处理器核电路包括第三一致性群组,其中所述第三一致性群组包括所述多处理器核电路的第三多个处理器核,所述第三一致性群组的处理器核串行地通信地耦接以传播信息分组,所述第三一致性群组的每一处理器核从所述第三一致性群组的其它处理器核所产生的到所述存储器的写入分组接收高速缓存一致性信息,并且不接收所述第一一致性群组的处理器核和所述第二一致性群组的处理器核所产生的到所述存储器的写入分组的高速缓存一致性信息。
13.如权利要求11所述的方法,其中:
在另一时间期间,所述多处理器核电路包括所述多处理器核电路的处理器核的第三一致性群组以及所述多处理器核电路的处理器核的第四一致性群组,其中所述第三一致性群组包括所述第一多个处理器核中的至少一个处理器核以及所述第二多个处理器核中的至少一个处理器核,所述第三一致性群组的处理器核串行地通信地耦接以传播信息分组,所述第三一致性群组的每一处理器核从所述第三一致性群组的其它处理器核所产生的到所述存储器的写入分组接收高速缓存一致性信息,并且不接收所述第四一致性群组的处理器核所产生的、所述第一一致性群组中的不在所述第三一致性群组中的处理器核所产生的、以及所述第二一致性群组中的不在所述第三一致性群组中的处理器核所产生的到所述存储器的写入分组的高速缓存一致性信息;
其中所述第四一致性群组包括所述第一多个处理器核中的至少一个处理器核,所述第四一致性群组的处理器核串行地通信地耦接以传播信息分组,所述第四一致性群组的每一处理器核从所述第四一致性群组的其它处理器核所产生的到所述存储器的写入分组接收高速缓存一致性信息,并且不接收所述第三一致性群组的处理器核所产生的、所述第一一致性群组中的不在所述第四一致性群组中的处理器核所产生的、以及所述第二一致性群组中的不在所述第四一致性群组中的处理器核所产生的到所述存储器的写入分组的高速缓存一致性信息。
14.如权利要求1所述的方法,进一步包括:
将所述分组的数据写入到所述存储器中的位置,其中该位置的地址被表示在所述分组中。
15.如权利要求1所述的方法,其中所述传播所述第一信息分组包括:通过具有支持流控制以及多个优先级化的事务的有序分组的基于分组的协议来传播所述第一分组。
16.一种设备,包括:
集成电路,所述集成电路包括多处理器核电路,其中所述多处理器核电路可操作来包括:
第一一致性群组,其中所述第一一致性群组包括所述多处理器核电路的第一多个处理器核,所述第一一致性群组的处理器核串行地通信地耦接以传播信息分组,其中所述第一一致性群组的每一处理器核从所述第一一致性群组的其它处理器核所产生的到存储器的写入分组接收高速缓存一致性信息;
第二一致性群组,其中所述第二一致性群组包括所述多处理器核电路的第二多个处理器核,所述第二一致性群组的处理器核串行地通信地耦接以传播信息分组,其中所述第二一致性群组的每一处理器核从所述第二一致性群组的其它处理器核所产生的到所述存储器的写入分组接收高速缓存一致性信息,并且不接收所述第一一致性群组的处理器核所产生的到所述存储器的写入分组的高速缓存一致性信息;
其中所述第一一致性群组的每一处理器核不接收所述第二一致性群组的处理器核所产生的到所述存储器的写入分组的高速缓存一致性信息。
17.如权利要求16所述的设备,其中所述集成电路进一步包括:分组交换器电路;以及
所述存储器,所述多处理器核电路通过所述分组交换器电路通信地耦接到所述存储器。
18.如权利要求16所述的设备,其中所述集成电路进一步包括:
控制器,其耦接到所述多处理器核电路的处理器核,所述控制器提供用于将所述多处理器核电路的诸处理器核分组成一致性群组的一致性控制信息。
19.如权利要求16所述的设备,其中所述多处理器核电路可操作来包括:
所述多处理器核电路的处理器核的第三一致性群组以及所述多处理器核电路的处理器核的第四一致性群组,其中所述第三一致性群组包括所述第一多个处理器核中的至少一个处理器核以及所述第二多个处理器核中的至少一个处理器,所述第三一致性群组的处理器核串行地通信地耦接以传播信息分组,其中所述第三一致性群组的每一处理器核从所述第三一致性群组的其它处理器核所产生的到所述存储器的写入分组接收高速缓存一致性信息,并且不接收所述第四一致性群组的处理器核所产生的、所述第一一致性群组中的不在所述第三一致性群组中的处理器核所产生的、以及所述第二一致性群组中的不在所述第三一致性群组中的处理器核所产生的到所述存储器的写入分组的高速缓存一致性信息;
其中所述第四一致性群组包括所述第一多个处理器核中的至少一个处理器核,所述第四一致性群组的处理器核串行地通信地耦接以传播信息分组,其中所述第四一致性群组的每一处理器核从所述第四一致性群组的其它处理器核所产生的到所述存储器的写入分组接收高速缓存一致性信息,并且不接收所述第三一致性群组的处理器核所产生的、所述第一一致性群组中的不在所述第四一致性群组中的处理器核所产生的、以及所述第二一致性群组中的不在所述第四一致性群组中的处理器核所产生的到所述存储器的写入分组的高速缓存一致性信息。
20.如权利要求16所述的设备,其中所述一致性群组经由所述第一一致性群组的处理器核之间的通信链路串行地通信地耦接,其中所述通信链路包括由光通信链路、无线射频通信链路、以及低电压差分信号通信链路构成的组中的至少一个。
CN200980112853.1A 2008-04-15 2009-02-16 多核处理系统 Active CN101999115B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US12/103,250 2008-04-15
US12/103,250 US7941637B2 (en) 2008-04-15 2008-04-15 Groups of serially coupled processor cores propagating memory write packet while maintaining coherency within each group towards a switch coupled to memory partitions
PCT/US2009/034189 WO2009128981A1 (en) 2008-04-15 2009-02-16 Multi-core processing system

Publications (2)

Publication Number Publication Date
CN101999115A true CN101999115A (zh) 2011-03-30
CN101999115B CN101999115B (zh) 2014-04-02

Family

ID=41164943

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200980112853.1A Active CN101999115B (zh) 2008-04-15 2009-02-16 多核处理系统

Country Status (6)

Country Link
US (2) US7941637B2 (zh)
JP (1) JP5419107B2 (zh)
KR (1) KR20110000741A (zh)
CN (1) CN101999115B (zh)
TW (1) TW200945048A (zh)
WO (1) WO2009128981A1 (zh)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8547971B1 (en) 2009-01-07 2013-10-01 Marvell Israel (M.I.S.L) Ltd. Multi-stage switching system
US8358651B1 (en) 2009-09-21 2013-01-22 Marvell International Ltd. Switch device having a plurality of processing cores
US9460038B2 (en) * 2010-12-22 2016-10-04 Via Technologies, Inc. Multi-core microprocessor internal bypass bus
US9172659B1 (en) 2011-07-12 2015-10-27 Marvell Israel (M.I.S.L.) Ltd. Network traffic routing in a modular switching device
US9372724B2 (en) * 2014-04-01 2016-06-21 Freescale Semiconductor, Inc. System and method for conditional task switching during ordering scope transitions
US9372723B2 (en) * 2014-04-01 2016-06-21 Freescale Semiconductor, Inc. System and method for conditional task switching during ordering scope transitions
US9733981B2 (en) 2014-06-10 2017-08-15 Nxp Usa, Inc. System and method for conditional task switching during ordering scope transitions
US9448741B2 (en) 2014-09-24 2016-09-20 Freescale Semiconductor, Inc. Piggy-back snoops for non-coherent memory transactions within distributed processing systems
US11449452B2 (en) 2015-05-21 2022-09-20 Goldman Sachs & Co. LLC General-purpose parallel computing architecture
CA2984155A1 (en) * 2015-05-21 2016-11-24 Goldman Sachs & Co. LLC General-purpose parallel computing architecture
US10904150B1 (en) 2016-02-02 2021-01-26 Marvell Israel (M.I.S.L) Ltd. Distributed dynamic load balancing in network systems
US10866753B2 (en) * 2018-04-03 2020-12-15 Xilinx, Inc. Data processing engine arrangement in a device
CN112948282A (zh) * 2019-12-31 2021-06-11 北京忆芯科技有限公司 用于数据快速查找的计算加速系统
CN115917515A (zh) * 2020-08-31 2023-04-04 麦姆瑞克斯公司 存储器处理单元核心架构

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4710868A (en) * 1984-06-29 1987-12-01 International Business Machines Corporation Interconnect scheme for shared memory local networks
JPH07104923B2 (ja) * 1988-12-28 1995-11-13 工業技術院長 並列画像表示処理方法
US6678773B2 (en) 2000-01-13 2004-01-13 Motorola, Inc. Bus protocol independent method and structure for managing transaction priority, ordering and deadlocks in a multi-processing system
US6754752B2 (en) 2000-01-13 2004-06-22 Freescale Semiconductor, Inc. Multiple memory coherence groups in a single system and method therefor
US7031258B1 (en) 2000-01-13 2006-04-18 Mercury Computer Systems, Inc. Digital data system with link level message flow control
US7106742B1 (en) 2000-01-13 2006-09-12 Mercury Computer Systems, Inc. Method and system for link fabric error detection and message flow control
US6862283B2 (en) 2000-01-13 2005-03-01 Freescale Semiconductor, Inc. Method and apparatus for maintaining packet ordering with error recovery among multiple outstanding packets between two devices
US6996651B2 (en) 2002-07-29 2006-02-07 Freescale Semiconductor, Inc. On chip network with memory device address decoding
CN1320464C (zh) * 2003-10-23 2007-06-06 英特尔公司 用于维持共享高速缓存一致性的方法和设备
JP2005135359A (ja) * 2003-10-31 2005-05-26 Hitachi Hybrid Network Co Ltd データ処理装置
US7243205B2 (en) 2003-11-13 2007-07-10 Intel Corporation Buffered memory module with implicit to explicit memory command expansion
US7590797B2 (en) 2004-04-08 2009-09-15 Micron Technology, Inc. System and method for optimizing interconnections of components in a multichip memory module
US7240160B1 (en) 2004-06-30 2007-07-03 Sun Microsystems, Inc. Multiple-core processor with flexible cache directory scheme
US20060143384A1 (en) 2004-12-27 2006-06-29 Hughes Christopher J System and method for non-uniform cache in a multi-core processor
US7412353B2 (en) 2005-09-28 2008-08-12 Intel Corporation Reliable computing with a many-core processor
US7624250B2 (en) * 2005-12-05 2009-11-24 Intel Corporation Heterogeneous multi-core processor having dedicated connections between processor cores
US20070168620A1 (en) 2006-01-19 2007-07-19 Sicortex, Inc. System and method of multi-core cache coherency

Also Published As

Publication number Publication date
CN101999115B (zh) 2014-04-02
US20090259825A1 (en) 2009-10-15
KR20110000741A (ko) 2011-01-05
JP5419107B2 (ja) 2014-02-19
WO2009128981A1 (en) 2009-10-22
US20110093660A1 (en) 2011-04-21
TW200945048A (en) 2009-11-01
US7941637B2 (en) 2011-05-10
JP2011517003A (ja) 2011-05-26
US8090913B2 (en) 2012-01-03

Similar Documents

Publication Publication Date Title
CN101999115B (zh) 多核处理系统
KR100308323B1 (ko) 공유된 개입 지원을 가지는 비균등 메모리 액세스 데이터처리 시스템
US5488702A (en) Data block check sequence generation and validation in a file cache system
US5535405A (en) Microsequencer bus controller system
TWI354230B (en) Method and apparatus for speculative prefetching i
KR20210116444A (ko) 재구성가능한 데이터 프로세서의 구성 로드
CN101925881B (zh) 多处理器系统以及多处理器系统的同步方法
KR100840140B1 (ko) 메모리 허브 메모리 모듈들을 사용하여 데이터 전송들을조직화하는 시스템 및 방법
CN102033817B (zh) 归属代理数据和存储器管理
KR20210118064A (ko) 재구성가능한 데이터 프로세서의 구성 언로드
WO2020142623A1 (en) Virtualization of a reconfigurable data processor
US7406566B2 (en) Ring interconnect with multiple coherence networks
CN101187886B (zh) 基于需求的纠错
CN103988184B (zh) 元比特在系统存储器内的高效存储
US20090006808A1 (en) Ultrascalable petaflop parallel supercomputer
CN108268382A (zh) 两级存储器全行写入
GB2349721A (en) Multi-processor data processing system
CN107005371A (zh) 事务缓冲存储器中的错误处理
CN101681322B (zh) 支持命令数据复制的高容量存储子系统的存储芯片
CN102834815A (zh) 高利用率多分区串行存储器
CN107438838A (zh) 打包的写完成
US5553249A (en) Dual bus adaptable data path interface system
CN103744644A (zh) 采用四核结构搭建的四核处理器系统及数据交换方法
CN103778070B (zh) 多个块一致性操作的并行处理
US9542317B2 (en) System and a method for data processing with management of a cache consistency in a network of processors with cache memories

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
ASS Succession or assignment of patent right

Owner name: TIANDING INVESTMENT CO., LTD.

Free format text: FORMER OWNER: FISICAL SEMICONDUCTOR INC.

Effective date: 20150626

Owner name: APPLE COMPUTER, INC.

Free format text: FORMER OWNER: TIANDING INVESTMENT CO., LTD.

Effective date: 20150626

C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20150626

Address after: American California

Patentee after: APPLE Inc.

Address before: American California

Patentee before: Zenith investment LLC

Effective date of registration: 20150626

Address after: American California

Patentee after: Zenith investment LLC

Address before: Texas in the United States

Patentee before: FREESCALE SEMICONDUCTOR, Inc.