利用冗余核MPSoC故障检测方法.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
利用冗余核MPSoC故障检测方法

利用冗余核MPSoC故障检测方法   摘要:在处理器可靠性研究中,为在容错机制部署与容错开销之间达到较好的平衡,提出一个利用冗余核进行检测代码计算任务的多处理器片上系统(MPSoC)故障检测方法。该方法利用多核系统天然的冗余特性,将用于进行故障检测的冗余代码中的大部分计算任务转移到冗余核中进行,检测软件控制流的正确性和数据的一致性,实现MPSoC的故障检测。所提方法无需添加额外硬件,通过指令级的冗余进行故障检测,可满足系统可靠性需求,同时又能减少面积开销,在性能方面和花销上做到有效的权衡。在一个MPSoC上对所提方法进行验证实验,通过故障注入,运行多个基准程序进行有效性验证,并将所提方法与几种具有代表性的软件检测硬件故障方法故障检测能力、面积、内存以及性能花销等方面进行比较,实验结果证明所提方法有效且能够在性能和花销之间取得较好的权衡。   关键词:多处理器片上系统;可靠性;故障检测;冗余核;检测代码   中图分类号: TP302.8文献标志码:A英文标题   0引言   除一些关键的安全领域之外,目前很多计算系统设计都是在底层硬件无错的假设下进行的。但随着技术的进步,越来越多的CMOS器件被集成到一个芯片上构成片上系统(System on Chip, SoC)。由于处理工艺、设计过程、温度以及老化等一些物理原因,产生电子漂移或信号附加噪声,导致系统可能输出错误的运行结果,使得硬件故障的影响更多地在系统层面显现出来[1-4]。   文献[1]指出,65nm及其以下的半导体器件生产将会导致工艺变异,其中晶体管的沟道长度,晶体管沟道和阈值电压之间的绝缘厚度等会发生显著的变化。文献[2]指出,由于更低的电压和更小的开关电容,意味着每更新一代COMS技术,每个位的电荷量将会降低,意味着存储设备更敏感, 触发器软错误将增加。Shivakumare等在文献[3]中,对组合逻辑软错误率(Soft Error Rate, SER)进行建模量化,预测从1992年到2011年每个芯片上未保护的内存元件的SER将会增长9个数量级。每一代新的技术,每个逻辑状态的错误率将以8%的速度增长。对于16nm级的芯片而言,错误率几乎为180nm级的100倍[4]。   如上所述,随着???片制造技术的进步,单个芯片的集成度日益增加,硬件发生故障的可能性大幅度增加,底层硬件可靠的假设已经不再存在;与此同时,作为被广泛应用于特定系统或高性能计算当中的多处理器片上系统(MultiProcessor SystemonChip, MPSoC)而言,其可靠性的需求将日益增加。因此,对MPSoC采取有效的容错机制,是研究和设计嵌入式多核系统必要的考量内容。其中,故障的检测是容错机制的重要环节,因而成为值得关注的问题。   本文提出一种面向多处理器片上系统的故障检测方法——利用冗余核完成检测代码中的计算的方法(Calculation task of detecting Code on Redundancy Core, CCRC)。该方法采用指令冗余的方法实现对控制流和数据一致性的检测,将故障检测算法中,较为繁重的计算任务,转移到冗余核中进行,而降低对被检测核的计算性能的影响。   第1期 唐柳等:利用冗余核的MPSoC故障检测方法计算机应用 第34卷1相关工作   根据在系统层面中的分布,片上系统(SoC)故障检测方法可分为基于硬件的方法和基于软件的方法两类。基于硬件的方法主要基于设计可靠系统架构的思路,例如,设计定制电路或者是增加一些新的IP核以达到加强系统可靠性的目的[5-8];这种方法对计算性能的影响较小但是需要增加额外的硬件,面积开销增大,且缺少灵活性难以移植。基于软件的方法通过在微处理器中的可执行代码中增加检测代码[9-11,14-20]以检测软件控制流及数据一致性。其中比较有代表性的是ECCA(Enhanced ControlFlow Checking using Assertion)[20]方法,在程序中插入断言,并用软件对断言进行判断。CFCSS(Control Flow Checking by Software Signatures)[10]是一种广泛使用的基于签名的检测方法,可以对大部分控制流错误进行有效检测,该方法通过编译向源代码中插入大量检测指令。基于软件的方法对设计的干扰小,可用于大多数系统,不需要修改底层硬件,易于使用,但代码长度增加,计算性能降低。除此之外,将硬件和软件的方法混合的思路也值得关注[12-13]。其中文献[12]将基于软件的固化方法和附加硬件电路结合,将故障检测功能在软件中进行,大量的计算任务转移到外部硬件(IIP核)中执行。这种混合检测技术适用于单核SoC系统,能有效减少增加的检测代码对计算性能的影响,但需要

文档评论(0)

fangsheke66 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档