CN103197994A - 基于片上网络的众核芯片管理结构容错的方法 - Google Patents
基于片上网络的众核芯片管理结构容错的方法 Download PDFInfo
- Publication number
- CN103197994A CN103197994A CN2013101508492A CN201310150849A CN103197994A CN 103197994 A CN103197994 A CN 103197994A CN 2013101508492 A CN2013101508492 A CN 2013101508492A CN 201310150849 A CN201310150849 A CN 201310150849A CN 103197994 A CN103197994 A CN 103197994A
- Authority
- CN
- China
- Prior art keywords
- core
- group
- management
- redundant
- chip
- 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
Links
Images
Landscapes
- Hardware Redundancy (AREA)
Abstract
基于片上网络的众核芯片管理结构容错的方法,涉及一种容错方法。为了解决某些重要的管理核心及其冗余核心全都发生故障,则即使片上剩余的核心数量再多也无法维持芯片的继续工作,从而导致整块芯片过早报废的问题。所述方法包括:基于片上网络的众核芯片管理结构中包括有多个核心,所述多个核心包括各层次的主控核心和冗余核心,所述冗余核心分为固定冗余核心和动态冗余核心,对芯片的管理结构进行分组,对每个组采用组内相互监视的管理方法;对芯片的所有核心采用自适应管理的方法;在每个组内采用选举的管理方法;对固定冗余核心采用硬件自唤醒的管理方法,对动态冗余核心采用软件自唤醒的管理方法。本方法用于对众核芯片的管理结构进行容错。
Description
技术领域
本发明涉及一种容错方法,特别涉及一种基于片上网络的众核芯片管理结构容错的方法。
背景技术
随着半导体芯片集成能力的提高以及人们对芯片处理能力要求的提高,如今在单芯片上集成的处理器核数量已经从几十个增长到几百个。从目前的趋势来看,该数字还会继续增加,而且在未来的芯片中集成的核心数量将有可能超过一千个。对于这种众核(manycore,是指单块芯片上所集成的众多个运算核心)芯片而言,其片上互连目前多采用片上网络(Network-on-Chip,NoC,是一种用于芯片内部的片上互连网络),而其资源管理多采用层次化的管理结构。在基于片上网络的众核芯片资源管理中,容错管理是一个非常重要的方面,并已引起广泛关注。然而,现有的容错策略都无法保证整个芯片具有本质上的“顽强性”,即无法做到“只要还有一个核心能工作,芯片就会尽最大努力完成所指定的任务”。其原因除很难确保核心本身和互连结构等片上单元的“顽强性”之外,还在于现有的管理策略并不具备本质上的“顽强性”。这就使得在芯片发生核心故障时,如果恰好某些重要的管理核心及其冗余核心全都发生故障,则即使片上剩余的核心数量再多也无法维持芯片的继续工作,从而导致整块芯片过早报废。
发明内容
本发明的目的是为了解决某些重要的管理核心及其冗余核心全都发生故障,则即使片上剩余的核心数量再多也无法维持芯片的继续工作,从而导致整块芯片过早报废的问题,本发明提供一种基于片上网络的众核芯片管理结构容错的方法。
本发明的基于片上网络的众核芯片管理结构容错的方法,所述方法为:
所述基于片上网络的众核芯片管理结构中包括有多个核心,所述多个核心包括各层次的主控核心和冗余核心,所述冗余核心分为固定冗余核心和动态冗余核心,对芯片的管理结构进行分组,对每个组采用组内相互监视的管理方法;对芯片的所有核心采用自适应管理的方法;在每个组内采用选举的管理方法;对固定冗余核心采用硬件自唤醒的管理方法,对动态冗余核心采用软件自唤醒的管理方法。
本发明的优点在于,本发明通过对芯片管理结构进行分组,对每个组采用组内相互监视的方法,保证组长和组员的故障能够被组内剩余无故障成员发现。对芯片的所有核心采用自适应管理的方法,使得每个核心都能够根据当前自身在管理结构中所处的地位而动态选择相应的管理方法。在每个组内采用选举的方法,以确保在发生各种故障时被破坏的管理结构能够动态地重建。对固定冗余核心采用硬件自唤醒的方法,对动态冗余核心采用软件自唤醒的方法,保证整个芯片在发生极特殊故障情况下依然能够利用无故障冗余核心维持工作。本发明的方法从本质上保证了众核芯片的管理结构能够根据芯片核心的损坏情况进行自适应调整;并保证了芯片能够在各种核心故障情况下充分利用片上剩余资源尽力完成应用任务;且管理结构的动态重建和调整完全自主执行,无需用户干预。
附图说明
图3为图2中虚线圈内的结构示意图。
具体实施方式
具体实施方式一:本实施方式所述的基于片上网络的众核芯片管理结构容错的方法,
所述基于片上网络的众核芯片管理结构中包括有多个核心,所述多个核心包括各层次的主控核心和冗余核心,所述冗余核心分为固定冗余核心和动态冗余核心,对芯片的管理结构进行分组,对每个组采用组内相互监视的管理方法;对芯片的所有核心采用自适应管理的方法;在每个组内采用选举的管理方法;对固定冗余核心采用硬件自唤醒的管理方法,对动态冗余核心采用软件自唤醒的管理方法。
具体实施方式二:结合图1说明本实施方式,本实施方式是对具体实施方式一所述的的基于片上网络的众核芯片管理结构容错的方法进一步限定,
所述对芯片的管理结构进行分组的方法为:
按照不同层次主控核心的管辖区域对芯片管理结构进行分组:每组包括一个组长核心和多个组员核心,所述组长核心为芯片中某一层次上的主控核心,当所述组员核心处于所述芯片管理结构的最下层,则组员核心为计算核心,否则,组员核心为所述组长核心下一级的主控核心;所述芯片管理结构的每一层次上的主控核心还包括冗余核心;所述计算核心还包括冗余核心;
经上述分组后获得的每个组采用组内相互监视的管理方法为:每组中所有工作的核心周期性的向该组其他核心发送自身的心跳数据包,该组的所有核心根据接收到的心跳数据包相应的监视该组的其他核心工作是否正常;所述所有核心还包括冗余核心。
本方案中,每个层次都包含一定数量的固定冗余核心,并根据具体情况可能还包含一定数量的动态冗余核心。除冗余核心以外,片上所有工作核心周期性地向组内其他成员(包括冗余核心)发送自身的心跳数据包。在每个组内,组长核心负责监视组内其他成员的心跳数据包;同时,组员核心负责监视组长和其他组员的心跳数据包。
图1中,管理结构包括四个层次,所述四个层次包括一级主控、二级主控、三级主控和计算机核心,所述一级主控为最高级主控。
具体实施方式三:本实施方式是对具体实施方式二所述的的基于片上网络的众核芯片管理结构容错的方法进一步限定,
所述对芯片的所有核心采用自适应管理的方法为:
每组的主控核心的职责至少包括冗余核心管理和动态分组,所述芯片的所有核心根据当前自身在管理层次中所处的角色而动态选择相应的管理方法。
如图1所示,每个层次的主控核心都有各自的职责。
具体实施方式四:本实施方式是对具体实施方式三所述的的基于片上网络的众核芯片管理结构容错的方法进一步限定,
所述冗余核心管理的方法为:
在芯片初始化时,每组所有工作的核心都动态保存着一份当前片上剩余冗余核心列表;每当有一个冗余核心被使用,则将所述冗余核心从剩余冗余核心列表中剔除;当某工作的核心因负载过重而长时间温度过高时,该组的主控核心根据剩余冗余核心列表中冗余核心的剩余情况进行冗余核心的动态调整,并在调整后广播所述动态调整,所有工作的核心根据广播更新其自身保存的剩余冗余核心列表。
具体实施方式五:本实施方式是对具体实施方式三所述的的基于片上网络的众核芯片管理结构容错的方法进一步限定,
所述动态分组的方法为:分组后,使每组的主控核心能根据当前该组其他工作的核心的负载状况和损坏情况向上一级的主控核心动态申请空闲核心和申请解散该组;同时,所述主控核心根据当前该组冗余核心的使用情况为下一级的主控核心动态分配空闲核心和批准下一级的主控核心解散其所在组、并收回该组的所有核心。
具体实施方式六:本实施方式是对具体实施方式二所述的的基于片上网络的众核芯片管理结构容错的方法进一步限定,
所述在每个组内采用选举的管理方法为:
组内的所有核心都按选举方法工作;所述选举方法为当组内冗余核心不可用的情况下,需在该组内剩余无故障的核心中选举产生候选主控核心;在选举完成之后,所述候选主控核心检查该组内是否还有剩余冗余核心可用,若有,则激活该冗余核心成为该组的主控核心;若否,则将自身提升为主控核心;
所述冗余核心可用是指除下述两种情况以外的所有情况:
第一种、芯片的所有冗余核心都已用光;
第二种、一级主控的主控核心发生故障。
所述一级主控为最高级主控。一级主控的主控核心发生故障时,候选组长核心检查该组内是否还有剩余冗余核心可用,若有,则激活该冗余核心成为该组的组长核心;若否,则将自身提升为组长核心,如图1中↑表示提升;对于管理计算核心的组长核心,如果该组长核心发现该组内所有计算核心都已发生故障,且已经没有冗余核心可以替换,则原组长核心降级为计算核心,如图1中↓表示降级。
具体实施方式七:结合图2和图3说明本实施方式,本实施方式是对具体实施方式六所述的的基于片上网络的众核芯片管理结构容错的方法进一步限定,
所述对固定冗余核心采用硬件自唤醒的管理方法为:
每个固定冗余核心采用硬件自唤醒电路进行自唤醒;
所述硬件自唤醒电路包括数据包译码电路、看门狗电路和超时唤醒控制电路;
硬件自唤醒电路的工作过程包括如下步骤:
当芯片正常工作时,数据包译码电路对接收的数据包进行译码,若判定译码后的数据包为来自组内工作的核心发送的心跳数据包,则向超时唤醒控制电路发送结果有效信号;否则,向超时唤醒控制电路发送结果无效信号;
超时唤醒控制电路根据数据译码电路发送来的信号判断是否复位看门狗电路,若在看门狗电路计时的时间T内收到数据包译码电路发送的结果有效信号,则复位看门狗电路;若在看门狗电路计时的时间T内没有收到数据包译码电路发送的结果有效信号时,则使能固定冗余核心的电源,将所述固定冗余核心唤醒,所述时间T设置为大于N次所述固定冗余核心所在组内采用选举机制选举替换的时间,N为芯片管理结构的层次总数。
如图3所示,所述硬件自唤醒电路位于路由器和核心之间的网络接口(NetworkInterface,NI)中,其输出用来控制片上固定冗余核心的电源使能电路。
具体实施方式八:本实施方式是对具体实施方式一所述的的基于片上网络的众核芯片管理结构容错的方法进一步限定,
对动态冗余核心采用软件自唤醒的管理方法为;
为每个动态冗余核心设置定时器超时唤醒,且处于睡眠状态;
当动态冗余核心发生定时器中断时,关闭动态冗余核心的睡眠状态并判断动态冗余核心的睡眠时间是否已经到达T,若否,则动态冗余核心再次进入睡眠状态,若是,则进行历时时间T的监听,并在时间T内判断是否收到动态冗余核心所在组内的所有工作的核心发送的心跳数据包,若是,则动态冗余核心再次进入睡眠状态,若否,则将所述动态冗余核心激活。
本发明的容错方法,从本质上确保众核芯片的管理结构能够根据芯片的具体损坏情况而进行自适应地调整,以保证芯片能够充分利用剩余片上资源尽力完成应用任务,即保证在发生核心故障的情况下达到芯片服务时间的最大化。
Claims (8)
1.基于片上网络的众核芯片管理结构容错的方法,其特征在于,所述基于片上网络的众核芯片管理结构中包括有多个核心,所述多个核心包括各层次的主控核心和冗余核心,所述冗余核心分为固定冗余核心和动态冗余核心,对芯片的管理结构进行分组,对每个组采用组内相互监视的管理方法;对芯片的所有核心采用自适应管理的方法;在每个组内采用选举的管理方法;对固定冗余核心采用硬件自唤醒的管理方法,对动态冗余核心采用软件自唤醒的管理方法。
2.根据权利要求1所述的基于片上网络的众核芯片管理结构容错的方法,其特征在于,所述对芯片的管理结构进行分组的方法为:
按照不同层次主控核心的管辖区域对芯片管理结构进行分组:每组包括一个组长核心和多个组员核心,所述组长核心为芯片中某一层次上的主控核心,当所述组员核心处于所述芯片管理结构的最下层,则组员核心为计算核心,否则,组员核心为所述组长核心下一级的主控核心;所述芯片管理结构的每一层次上的主控核心还包括冗余核心;所述计算核心还包括冗余核心;
经上述分组后获得的每个组采用组内相互监视的管理方法为:每组中所有工作的核心周期性的向该组其他核心发送自身的心跳数据包,该组的所有核心根据接收到的心跳数据包相应的监视该组的其他核心工作是否正常;所述所有核心还包括冗余核心。
3.根据权利要求2所述的基于片上网络的众核芯片管理结构容错的方法,其特征在于,所述对芯片的所有核心采用自适应管理的方法为:
每组的主控核心的职责至少包括冗余核心管理和动态分组,所述芯片的所有核心根据当前自身在管理层次中所处的角色而动态选择相应的管理方法。
4.根据权利要求3所述的基于片上网络的众核芯片管理结构容错的方法,其特征在于,所述冗余核心管理的方法为:
在芯片初始化时,每组所有工作的核心都动态保存着一份当前片上剩余冗余核心列表;每当有一个冗余核心被使用,则将所述冗余核心从剩余冗余核心列表中剔除;当某工作的核心因负载过重而长时间温度过高时,该组的主控核心根据剩余冗余核心列表中冗余核心的剩余情况进行冗余核心的动态调整,并在调整后广播所述动态调整,所有工作的核心根据广播更新其自身保存的剩余冗余核心列表。
5.根据权利要求3所述的基于片上网络的众核芯片管理结构容错的方法,其特征在于,所述动态分组的方法为:分组后,使每组的主控核心能根据当前该组其他工作的核心的负载状况和损坏情况向上一级的主控核心动态申请空闲核心和申请解散该组;同时,所述主控核心根据当前该组冗余核心的使用情况为下一级的主控核心动态分配空闲核心和批准下一级的主控核心解散其所在组、并收回该组的所有核心。
6.根据权利要求2所述的基于片上网络的众核芯片管理结构容错的方法,其特征在于,所述在每个组内采用选举的管理方法为:
组内的所有核心都按选举方法工作;所述选举方法为当组内冗余核心不可用的情况下,需在该组内剩余无故障的核心中选举产生候选主控核心;在选举完成之后,所述候选主控核心检查该组内是否还有剩余冗余核心可用,若有,则激活该冗余核心成为该组的主控核心;若否,则将自身提升为主控核心;
所述冗余核心可用是指除下述两种情况以外的所有情况:
第一种、芯片的所有冗余核心都已用光;
第二种、一级主控的主控核心发生故障。
7.根据权利要求6所述的基于片上网络的众核芯片管理结构容错的方法,其特征在于,所述对固定冗余核心采用硬件自唤醒的管理方法为:
每个固定冗余核心采用硬件自唤醒电路进行自唤醒;
所述硬件自唤醒电路包括数据包译码电路、看门狗电路和超时唤醒控制电路;
硬件自唤醒电路的工作过程包括如下步骤:
当芯片正常工作时,数据包译码电路对接收的数据包进行译码,若判定译码后的数据包为来自组内工作的核心发送的心跳数据包,则向超时唤醒控制电路发送结果有效信号;否则,向超时唤醒控制电路发送结果无效信号;
超时唤醒控制电路根据数据译码电路发送来的信号判断是否复位看门狗电路,若在看门狗电路计时的时间T内收到数据包译码电路发送的结果有效信号,则复位看门狗电路;若在看门狗电路计时的时间T内没有收到数据包译码电路发送的结果有效信号时,则使能固定冗余核心的电源,将所述固定冗余核心唤醒,所述时间T设置为大于N次所述固定冗余核心所在组内采用选举机制选举替换的时间,N为芯片管理结构的层次总数。
8.根据权利要求1所述的基于片上网络的众核芯片管理结构容错的方法,其特征在于,对动态冗余核心采用软件自唤醒的管理方法为;
为每个动态冗余核心设置定时器超时唤醒,且处于睡眠状态;
当动态冗余核心发生定时器中断时,关闭动态冗余核心的睡眠状态并判断动态冗余核心的睡眠是否已经到达T,若否,则动态冗余核心再次进入睡眠状态,若是,则进行历时时间T的监听,并在时间T内判断是否收到动态冗余核心所在组内的所有工作的核心发送的心跳数据包,若是,则动态冗余核心再次进入睡眠状态,若否,则将所述动态冗余核心激活。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310150849.2A CN103197994B (zh) | 2013-04-26 | 2013-04-26 | 基于片上网络的众核芯片管理结构容错的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310150849.2A CN103197994B (zh) | 2013-04-26 | 2013-04-26 | 基于片上网络的众核芯片管理结构容错的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103197994A true CN103197994A (zh) | 2013-07-10 |
CN103197994B CN103197994B (zh) | 2014-12-03 |
Family
ID=48720578
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310150849.2A Expired - Fee Related CN103197994B (zh) | 2013-04-26 | 2013-04-26 | 基于片上网络的众核芯片管理结构容错的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103197994B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104391763A (zh) * | 2014-12-17 | 2015-03-04 | 中国人民解放军国防科学技术大学 | 基于设备视图冗余的众核处理器容错方法 |
CN105740089A (zh) * | 2016-01-22 | 2016-07-06 | 合肥工业大学 | 一种基于数据位宽重组的三维片上网络容错电路及其容错方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070074011A1 (en) * | 2005-09-28 | 2007-03-29 | Shekhar Borkar | Reliable computing with a many-core processor |
CN102855218A (zh) * | 2012-05-14 | 2013-01-02 | 中兴通讯股份有限公司 | 数据处理系统、方法及装置 |
-
2013
- 2013-04-26 CN CN201310150849.2A patent/CN103197994B/zh not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070074011A1 (en) * | 2005-09-28 | 2007-03-29 | Shekhar Borkar | Reliable computing with a many-core processor |
CN102855218A (zh) * | 2012-05-14 | 2013-01-02 | 中兴通讯股份有限公司 | 数据处理系统、方法及装置 |
Non-Patent Citations (1)
Title |
---|
曹仰杰等: "《众核处理器系统核资源动态分组的自适应调度算法》", 《软件学报2012年》, no. 2, 31 December 2012 (2012-12-31), pages 241 - 251 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104391763A (zh) * | 2014-12-17 | 2015-03-04 | 中国人民解放军国防科学技术大学 | 基于设备视图冗余的众核处理器容错方法 |
CN105740089A (zh) * | 2016-01-22 | 2016-07-06 | 合肥工业大学 | 一种基于数据位宽重组的三维片上网络容错电路及其容错方法 |
CN105740089B (zh) * | 2016-01-22 | 2018-11-06 | 合肥工业大学 | 一种基于数据位宽重组的三维片上网络容错电路及其容错方法 |
Also Published As
Publication number | Publication date |
---|---|
CN103197994B (zh) | 2014-12-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE112011103193B4 (de) | Bereitstellung einer Pro-Kern-Spannungs-und Frequenzsteuerung | |
DE102010054337B4 (de) | Mechanismen, um ineffizientes Core-Hopping zu vermeiden und Hardware-unterstützte Auswahl eines Niedrigleitungszustands bereitzustellen | |
US8875142B2 (en) | Job scheduling on a multiprocessing system based on reliability and performance rankings of processors and weighted effect of detected errors | |
DE112006003444B4 (de) | Verfahren und Vorrichtung zum Erfassen von Prozessorzustands-Übergängen | |
US9367112B2 (en) | Optimizing power usage by factoring processor architectural events to PMU | |
US9098274B2 (en) | Methods and apparatuses to improve turbo performance for events handling | |
DE102014003704B4 (de) | Plattform-agnostisches Powermanagement | |
CN102402395B (zh) | 基于仲裁磁盘的高可用系统不间断运行方法 | |
EP2894542B1 (en) | Estimating scalability of a workload | |
CN104781756A (zh) | 管理处理器的功率状态 | |
CN102012891B (zh) | 计算机集群管理方法、装置和系统 | |
CN110399034A (zh) | 一种SoC系统的功耗优化方法及终端 | |
CN103197994B (zh) | 基于片上网络的众核芯片管理结构容错的方法 | |
CN109684257B (zh) | 一种远程内存扩展管理系统 | |
Dauwe et al. | Resilience-aware resource management for exascale computing systems | |
Huda et al. | An agent oriented proactive fault-tolerant framework for grid computing | |
CN105830029A (zh) | 用于在计算环境中支持自适应忙等待的系统和方法 | |
CN111966208A (zh) | 一种降低服务器功耗的方法及装置 | |
Fiala et al. | Embedded microcontroller system for PilsenCUBE picosatellite | |
McGough et al. | Reducing the number of miscreant tasks executions in a multi-use cluster | |
CN108021463A (zh) | 一种基于有限状态机的gpu故障管理方法 | |
Rood et al. | Availability prediction based replication strategies for grid environments | |
Betting et al. | Evaluation and superiority analysis of a decentralized task control mechanism for dependable real-time soc architectures | |
CN104360913B (zh) | 用于计算机操作系统的监控模块 | |
US20200394081A1 (en) | Leveraging reserved data center resources to improve data center utilization |
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 |
Granted publication date: 20141203 Termination date: 20150426 |
|
EXPY | Termination of patent right or utility model |