CN105260256B - 一种双模冗余流水线的故障检测及回退方法 - Google Patents
一种双模冗余流水线的故障检测及回退方法 Download PDFInfo
- Publication number
- CN105260256B CN105260256B CN201510701242.8A CN201510701242A CN105260256B CN 105260256 B CN105260256 B CN 105260256B CN 201510701242 A CN201510701242 A CN 201510701242A CN 105260256 B CN105260256 B CN 105260256B
- Authority
- CN
- China
- Prior art keywords
- streamline
- assembly line
- register
- instruction
- compare logic
- 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.)
- Active
Links
Landscapes
- Hardware Redundancy (AREA)
Abstract
一种双模冗余流水线的故障检测及回退方法,其特征在于:所述双模冗余流水线的故障检测及回退装置包括流水线A、流水线B、指令缓存(301)、比较逻辑(401)、流水线回退模块(501)、数据缓存(601)、寄存器堆(701);所述双模冗余流水线的故障检测及回退装置采用比较逻辑对流水线A和流水线B给出的与处理器内部其他部件的交互信息进行比较,用于检测流水线单元是否发生故障,根据比较给出的回退信号启用流水线回退机制,刷新流水线,重新取出故障指令进行执行的方法,对单粒子效应引发的故障进行容错。
Description
技术领域
本发明涉及一种微处理器双模冗余流水线的故障检测及回退方法,尤其涉及一种嵌入式微处理器双模冗余流水线的数据翻转错误的屏蔽方法。
背景技术
单粒子翻转(Single Event Upset,SEU)是在空间应用环境下,由于单粒子入射导致集成电路中存储单元发生数据翻转错误的事件,是空间环境下电子系统发生故障和工作异常的重要诱因之一。随着半导体工艺技术的快速发展,芯片的尺寸在不断减小,处理器工作频率不断提高,节点工作电压的降低使得单粒子翻转现象越来越严重。研究指出,在纳米级芯片中,单粒子翻转导致的多位数据翻转(MBU)概率也在迅速提高,会导致最多8位随机数据翻转错误,对空间应用的电子系统产生更大的危害。在微处理器及电子系统中采取加固措施对单粒子故障进行容错设计已成为重要的技术手段。
作为现代微处理器的重要组成部分,流水线主要完成程序代码的指令流执行,并将执行结果写入数据存储和寄存器堆。如果单粒子轰击流水线导致级间寄存器发生翻转或单粒子瞬变(SET)引发的错误数据被锁存,就会导致流水线执行结果不正确,在没有对流水线单元进行容错加固的情况下,错误的执行结果将会扩散到数据存储和寄存器堆或者执行错误的指令流,进而导致更多不可控的错误产生。因此,对于空间应用的高可靠微处理器而言,进行流水线单元的容错设计具有重要的意义。
现有对空间微处理器的加固技术有以下三种方案:采用基于时间的容错方法,能有效解决MBU问题,但是处理器性能大大降低;采用基于编码的容错方法,只能有效的验证计算部分的正确性,并且不同的编码方式针对不同的单粒子故障不能全部处理,容错能力有限;采用基于硬件冗余的方案,寄存器级三模冗余无法应对MBU故障,而流水线级三模冗余可以定位出故障流水线,但是硬件资源功耗等开销较大,流水线级双模冗余可以应对MBU故障,但是无法定位,起不到屏蔽故障的能力,每次都进行流水线回退会显著增加流水线性能开销,尤其是在单粒子故障日益常见的情况下会导致整体处理速度明显降低。
自修复双冗余流水线(Self-Recovery Dual Pipeline),简称SRDP,是综合考虑时间和空间开销的前提下,基于硬件冗余的思想,对传统的流水线级双模冗余结构进行改进,在两条流水线之间设置比较器对流水线单元进行故障检测,利用自校验模块对级间寄存器进行校验定位出故障流水线,根据比较结果和自校验错误信息对流水线进行恢复,以低面积开销实现对单粒子效应引发的SEU、SET和MBU故障进行检测、定位和恢复。在单粒子故障越来越严重的情况下,对级间寄存器的自校验对SEU、MBU故障进行定位,而对单粒子轰击流水线组合逻辑产生毛刺被级间寄存器锁存而导致的SET故障无法通过自校验进行定位,需要对在流水线的输出端口设置比较器,检测出错误后进行流水线回退操作,刷新流水线,以较少的时间开销对单粒子故障进行容错。
发明内容
本发明的目的在于设计一种双模冗余流水线的故障检测及回退方法,能够对流水线级双模冗余结构中由于单粒子效应而导致的故障进行检测,并在检测出故障后对流水线进行回退,进行故障容错。
为实现上述目的,本发明所采用的技术方案为:
一种双模冗余流水线的故障检测及回退方法,其特征在于:该故障检测及回退方法用于双模冗余流水线故障检测及回退装置,所述双模冗余流水线故障检测及回退装置包括流水线A、流水线B、指令缓存(301)、比较逻辑(401)、流水线回退模块(501)、数据缓存(601)、寄存器堆(701);所述双模冗余流水线的故障检测及回退方法采用如下步骤和方法,对流水线级双模冗余结构中,发生故障的流水线进行检测与恢复:
(1)指令执行时,流水线A和流水线B的取指段同时向指令缓存输出指令地址及控制信息,比较逻辑对流水线A和流水线B输出的指令地址及控制信息进行比较,如果比较结果相同,表明流水线A和流水线B的取指段未发生故障,指令缓存根据流水线A的地址及控制信息给出指令代码,分发给两条流水线;如果比较结果不同,比较逻辑给出流水线回退信号,存储到译码段级间寄存器中,随流水线向后传递;
(2)流水线A和流水线B的译码段对指令代码译码后,同时向寄存器堆发送源操作数读取控制信息,比较逻辑对流水线A和流水线B发送的源操作数读取控制信息进行比较,如果比较结果相同,表明流水线A和流水线B的译码段未发生故障,根据流水线A输出的源操作数读取控制信息从寄存器堆中取出源操作数,分发给两条流水线;如果比较结果不同,比较逻辑给出流水线回退信号,存储到执行段级间寄存器中,随流水线向后传递;
(3)流水线A和流水线B的执行段执行指令规定的运算,同时给出数据缓存访问的地址信息,比较逻辑对流水线A和流水线B给出的地址信息进行比较,如果比较结果相同,表明流水线A和流水线B的执行段未发生故障,将流水线A给出的地址信息送入数据缓存中;如果比较结果不同,比较逻辑给出流水线回退信号,存储到访存段级间寄存器中,随流水线向后传递;
(4)流水线A和流水线B的访存段根据指令需要,同时向数据缓存发送访问地址、数据及控制信息,比较逻辑首先判断流水线A和流水线B上级间寄存器传递的回退信号是否均无效,如果其中一条流水线的回退信号有效,表明当前指令发生故障需要回退,禁止数据缓存的写使能信号;如果回退信号均无效,比较逻辑对流水线A和流水线B发送的地址、数据及控制信息进行比较,如果比较结果相同,表明流水线A和流水线B的访存段未发生故障,按照流水线A给出的地址、数据及控制信息对数据缓存进行写入;如果比较结果不同,比较逻辑给出流水线回退信号,存储到写回段级间寄存器中,随流水线向后传递;
(5)流水线A和流水线B的写回段根据指令需要,同时向寄存器堆输出寄存器写控制信息,比较逻辑首先判断流水线A和流水线B上级间寄存器传递的回退信号是否均无效,如果其中一条流水线的回退信号有效,比较逻辑向两条流水线发送取消信号,同时禁止寄存器堆的写使能信号;如果回退信号均无效,比较逻辑对流水线A和流水线B输出的寄存器写控制信息进行比较,如果比较结果相同,表明流水线A和流水线B的写回段未发生故障,按照流水线A给出的寄存器写控制信息对寄存器堆进行写操作;如果比较结果不同,比较逻辑向两条流水线发送取消信号,同时禁止寄存器堆的写使能信号;
(6)比较逻辑向两条流水线发送取消信号后,会将流水线A和流水线B中取指段、译码段、执行段和访存段正在执行的指令标记为取消指令,这些取消指令会在流水线继续向下执行,但其执行结果不会写入到数据缓存和寄存器堆,相当于作废了这些指令;然后,比较逻辑将写回段正在执行的故障指令的代码地址送入两条流水线的取指段,重新从指令缓存中取出对应的指令,在流水线上重新执行。
本发明实现的一种嵌入式微处理器双模冗余流水线的故障检测与回退方法,在嵌入式微处理器中通过比较逻辑检测出流水线单元的故障,启用流水线回退,能够屏蔽SEU、SET以及由单粒子引发的多位错误MBU故障,从而可以提高微处理器在空间等恶劣环境下应用的可靠性。
附图说明
图1是根据本发明的双模冗余结构的故障检测与回退结构图;
图2是ME段与WR的比较结构图;
图3是流水线回退的结构图;
图4是流水线回退的时序图。
具体实施方式
本实施例结合一种SPARC V8体系结构的嵌入式微处理器对本发明的具体实施方式进行说明。该SPARC V8体系结构的嵌入式微处理器,采用32位的RISC架构,其流水线单元为经典的五级流水线,流水线各流水级会与指令缓存、数据缓存和寄存器堆进行数据交互。
LEON2处理器的流水线单元包括取指(IF)、译码(ID)、执行(EX)、访存(ME)、写回(WR)五个组合逻辑单元,以及各流水级之间设置的五组级间寄存器IF、IF/ID、ID/EX、EX/ME、ME/WR。单粒子轰击流水线的组合逻辑部分,产生毛刺可能会被级间寄存器锁存出现SET故障,轰击级间寄存器时会直接导致寄存器出现SEU或MBU故障。级间寄存器将组合逻辑产生的关键信息寄存并在级间传递,寄存着错误信息级间寄存器会导致错误的执行结果,而错误结果会在ME或WR段被写入数据存储器或寄存器堆,同时可能会造成错误指令流的执行。
为了有效的应对辐射造成的单粒子软错误,尤其是MBU问题,综合考虑各个方案时间和空间开销,基于硬件冗余的思想,采用资源开销较少的流水线级的双模冗余结构,并行执行相同的指令流,在流水线单元与处理器其他部件进行数据交互的端口设置比较器,对两条流水线各流水级给出的交互信息进行比较,用于检测流水线单元是否发生单粒子故障,一旦流水线单元受到单粒子轰击而造成流水线出现故障,如果能够根据自校验给出的错误信息定位出发生故障的流水线,在当前周期启用流水线恢复机制,将正确流水线的执行状态复制给错误流水线,在下一个时钟周期重新执行当前操作,对单粒子故障进行容错,如果自校验无法定位出故障流水线,则两条流水线会继续执行,在执行结果要流出流水线时,对执行结果进行比较,如果比较结果相同则将流水线进行回退,将流水线中的指令取消,取消指令的执行结果将会作废,不会流出流水线单元。
在传统的冗余备份结构中,如寄存器级三模冗余和流水线级双模冗余,比较器会对级间寄存器的所有信号进行比较,从而判别出流水线单元是否发生故障。然而,通过对SPARC V8体系结构的分析发现,并不是所有的级间寄存器对每条指令都有用,例如汇编指令add r1,r2,r3,寄存器r1和r2的值相加存放到r3中,流水线运行过程中并没有用到Y(乘/除法)、tt(陷阱)、icc(条件码)等级间寄存器,而如果恰好这些级间寄存器的值对当前指令无用并且不会导致最终结果故障的寄存器发生错误,则会引起误报。因此,通过对流水线各个流水级功能的分析,取指段需要根据指令地址从指令存储器取出指令,译码段需要从寄存器堆中得到操作数,执行段和访存段均会产生与指令存储器交互的信息,写回段会将执行的结果写入寄存器堆,本发明在流水线级双模冗余中采用忽略无用信息的比较方案,只对流水线会与处理器部件进行交互的信息进行比较,将会显著地减小报错的次数。比较逻辑可以分为以下两种类型:(1)输入信息比较逻辑,避免流水线发生共模错误;(2)输出信息比较逻辑,避免错误数据流出流水线,如图2所示。
基于上述基本原理与设置,本发明的一种双模冗余流水线的故障检测及回退装置的一种具体实施方式如下:
在SPARC V8体系结构的嵌入式微处理器中,将流水线单元设置成如图1所示,主要包括流水线A、流水线B、指令缓存(301)、比较逻辑(401)、流水线回退模块(501)、数据缓存(601)、寄存器堆(701)。
流水线A和流水线B包括取指(IF)、译码(ID)、执行(EX)、访存(ME)、写回(WR)组合逻辑单元,以及各流水级之间设置的级间寄存器(IF、IF/ID、ID/EX、EX/ME、ME/WR),两条流水线各自拥有一套数据通路,同时共享指令存储、数据存储和寄存器堆,在并行执行相同指令流时默认用流水线A的执行结果与外部的大面积存储单元和寄存器堆进行数据交互,流水线B为备份单元。
指令缓存(301)用于存储流水线执行的代码,与流水线A中IF段进行数据交互,流水线A取出指令后分发给两条流水线执行。
比较逻辑(401)设置在流水线A与流水线B之间,对于流水线单元需要与处理器其他部件交互的信息进行比较,由于取指段需要根据指令地址从指令存储器取出指令,译码段需要从寄存器堆中得到操作数,执行段和访存段均会产生与指令存储器交互的信息,写回段会将数据写入寄存器堆,需要将五个流水级的交互信息进行比较,避免流水线发生共模错误或将错误数据写入数据存储和寄存器堆中。
流水线回退模块(501)必须保证寄存器和存储器状态不会被错误值更改,根据比较逻辑是否检测出流水线单元发生故障,采用整体回退方式恢复流水线状态,将流水线刷新,重新执行发生故障的指令,对故障进行容错。
数据缓存(601)和寄存器堆(701)用于存储流水线单元需要的数据,流水线单元根据指令字会对寄存器堆和数据缓存进行读写操作,与流水线A给出的信息进行交互,流水线A将执行结果写入寄存器堆和数据缓存,或者从中读出数据分发给两条流水线操作。
所述双模冗余流水线的故障检测及回退装置采用如下步骤与方法对流水线级双模冗余结构中由于单粒子效应导致故障发生的流水线进行检测和恢复:
一种双模冗余流水线的故障检测及回退方法,其特征在于:所述双模冗余流水线的故障检测及回退装置包括流水线A、流水线B、指令缓存(301)、比较逻辑(401)、流水线回退模块(501)、数据缓存(601)、寄存器堆(701);所述双模冗余流水线的故障检测及回退装置采用如下步骤和方法,对流水线级双模冗余结构中,发生故障的流水线进行检测与恢复:
(1)指令执行时,流水线A和流水线B的取指段同时向指令缓存输出指令地址及控制信息,比较逻辑对流水线A和流水线B输出的指令地址及控制信息进行比较,如果比较结果相同,表明流水线A和流水线B的取指段未发生故障,指令缓存根据流水线A的地址及控制信息给出指令代码,分发给两条流水线;如果比较结果不同,比较逻辑给出流水线回退信号,存储到译码段级间寄存器中,随流水线向后传递;
(2)流水线A和流水线B的译码段对指令代码译码后,同时向寄存器堆发送源操作数读取控制信息,比较逻辑对流水线A和流水线B发送的源操作数读取控制信息进行比较,如果比较结果相同,表明流水线A和流水线B的译码段未发生故障,根据流水线A输出的源操作数读取控制信息从寄存器堆中取出源操作数,分发给两条流水线;如果比较结果不同,比较逻辑给出流水线回退信号,存储到执行段级间寄存器中,随流水线向后传递;
(3)流水线A和流水线B的执行段执行指令规定的运算,同时给出数据缓存访问的地址信息,比较逻辑对流水线A和流水线B给出的地址信息进行比较,如果比较结果相同,表明流水线A和流水线B的执行段未发生故障,将流水线A给出的地址信息送入数据缓存中;如果比较结果不同,比较逻辑给出流水线回退信号,存储到访存段级间寄存器中,随流水线向后传递;
(4)流水线A和流水线B的访存段根据指令需要,同时向数据缓存发送访问地址、数据及控制信息,比较逻辑首先判断流水线A和流水线B上级间寄存器传递的回退信号是否均无效,如果其中一条流水线的回退信号有效,表明当前指令发生故障需要回退,禁止数据缓存的写使能信号;如果回退信号均无效,比较逻辑对流水线A和流水线B发送的地址、数据及控制信息进行比较,如果比较结果相同,表明流水线A和流水线B的访存段未发生故障,按照流水线A给出的地址、数据及控制信息对数据缓存进行写入;如果比较结果不同,比较逻辑给出流水线回退信号,存储到写回段级间寄存器中,随流水线向后传递;
(5)流水线A和流水线B的写回段根据指令需要,同时向寄存器堆输出寄存器写控制信息,比较逻辑首先判断流水线A和流水线B上级间寄存器传递的回退信号是否均无效,如果其中一条流水线的回退信号有效,比较逻辑向两条流水线发送取消信号,同时禁止寄存器堆的写使能信号;如果回退信号均无效,比较逻辑对流水线A和流水线B输出的寄存器写控制信息进行比较,如果比较结果相同,表明流水线A和流水线B的写回段未发生故障,按照流水线A给出的寄存器写控制信息对寄存器堆进行写操作;如果比较结果不同,比较逻辑向两条流水线发送取消信号,同时禁止寄存器堆的写使能信号;
(6)比较逻辑向两条流水线发送取消信号后,会将流水线A和流水线B中取指段、译码段、执行段和访存段正在执行的指令标记为取消指令,这些取消指令会在流水线继续向下执行,但其执行结果不会写入到数据缓存和寄存器堆,相当于作废了这些指令;然后,比较逻辑将写回段正在执行的故障指令的代码地址送入两条流水线的取指段,重新从指令缓存中取出对应的指令,在流水线上重新执行。
流水线回退的结构图如图3所示,比较逻辑送入两条流水线中的取消信号将流水线A和流水线B中的译码段、执行段、访存段和写回段中的指令取消,流水线会继续向下执行,但是流水线中被取消的指令的执行结果不会写入到数据缓存和寄存器堆,保障单粒子引发的故障不会流出流水线单元,两条流水线中被锁存的瞬态故障SET会被下一个时钟周期给出的级间寄存器的值刷新,同时会将执行段中发生故障的指令地址送入IF段中,流水线A会根据故障指令地址从数据缓存中取出指令,消耗五个时钟周期重新执行,开始新的流水。流水线回退的时序图如图4所示,在流水线的第N-2个时钟周期的执行段发生故障,通过比较流水线A和流水线B给出的数据缓存访存地址信息,比较逻辑只能检测故障而不能定位流水线给出回退信号并寄存在访存段级间寄存器;第N-1个时钟周期,发生故障的指令处于访存段,禁止故障指令对数据缓存的写使能信号;第N个时钟周期,发生故障的指令处于写回段,禁止流水线中对寄存器堆和数据缓存的写使能信号,此时处于流水线中的指令被全部取消,所有指令的执行结果被视为无效,错误数据不会流出流水线单元;第N+1个时钟周期从指令缓存中取出发生故障的指令,分发给两条流水线重新执行,消耗五个时钟周期实现对单粒子故障的容错。
本发明实现的一种嵌入式微处理器双模冗余流水线的故障检测与回退的方法,相比于传统冗余备份结构中对级间寄存器中的所有信息进行比较,只对流水线各流水级的组合逻辑与微处理器中其他部件的交互信息进行比较,最大程度上减少了误报率,根据比较结果,启用流水线回退,解决了嵌入式微处理器流水线级双模冗余结构中对故障的检测与恢复问题,可以提高嵌入式微处理器在空间环境下工作的可靠性。
在不脱离本发明精神的范围内,本发明可以具有多种变形,如:比较信号的选择、出现故障后回退时流水段的选择均可在不同的实施中改变。这些变形也包含在本发明所要求保护的范围之内。
Claims (2)
1.一种双模冗余流水线的故障检测及回退方法,其特征在于:该故障检测及回退方法用于双模冗余流水线故障检测及回退装置,所述双模冗余流水线故障检测及回退装置包括流水线A、流水线B、指令缓存(301)、比较逻辑(401)、流水线回退模块(501)、数据缓存(601)、寄存器堆(701);所述双模冗余流水线的故障检测及回退方法采用如下步骤和方法,对流水线级双模冗余结构中,发生故障的流水线进行检测与恢复:
(1)指令执行时,流水线A和流水线B的取指段同时向指令缓存输出指令地址及控制信息,比较逻辑对流水线A和流水线B输出的指令地址及控制信息进行比较,如果比较结果相同,表明流水线A和流水线B的取指段未发生故障,指令缓存根据流水线A的地址及控制信息给出指令代码,分发给两条流水线;如果比较结果不同,比较逻辑给出流水线回退信号,存储到译码段级间寄存器中,随流水线向后传递;
(2)流水线A和流水线B的译码段对指令代码译码后,同时向寄存器堆发送源操作数读取控制信息,比较逻辑对流水线A和流水线B发送的源操作数读取控制信息进行比较,如果比较结果相同,表明流水线A和流水线B的译码段未发生故障,根据流水线A输出的源操作数读取控制信息从寄存器堆中取出源操作数,分发给两条流水线;如果比较结果不同,比较逻辑给出流水线回退信号,存储到执行段级间寄存器中,随流水线向后传递;
(3)流水线A和流水线B的执行段执行指令规定的运算,同时给出数据缓存访问的地址信息,比较逻辑对流水线A和流水线B给出的地址信息进行比较,如果比较结果相同,表明流水线A和流水线B的执行段未发生故障,将流水线A给出的地址信息送入数据缓存中;如果比较结果不同,比较逻辑给出流水线回退信号,存储到访存段级间寄存器中,随流水线向后传递;
(4)流水线A和流水线B的访存段根据指令需要,同时向数据缓存发送访问地址、数据及控制信息,比较逻辑首先判断流水线A和流水线B上级间寄存器传递的回退信号是否均无效,如果其中一条流水线的回退信号有效,表明当前指令发生故障需要回退,禁止数据缓存的写使能信号;如果回退信号均无效,比较逻辑对流水线A和流水线B发送的地址、数据及控制信息进行比较,如果比较结果相同,表明流水线A和流水线B的访存段未发生故障,按照流水线A给出的地址、数据及控制信息对数据缓存进行写入;如果比较结果不同,比较逻辑给出流水线回退信号,存储到写回段级间寄存器中,随流水线向后传递;
(5)流水线A和流水线B的写回段根据指令需要,同时向寄存器堆输出寄存器写控制信息,比较逻辑首先判断流水线A和流水线B上级间寄存器传递的回退信号是否均无效,如果其中一条流水线的回退信号有效,比较逻辑向两条流水线发送取消信号,同时禁止寄存器堆的写使能信号;如果回退信号均无效,比较逻辑对流水线A和流水线B输出的寄存器写控制信息进行比较,如果比较结果相同,表明流水线A和流水线B的写回段未发生故障,按照流水线A给出的寄存器写控制信息对寄存器堆进行写操作;如果比较结果不同,比较逻辑向两条流水线发送取消信号,同时禁止寄存器堆的写使能信号;
(6)比较逻辑向两条流水线发送取消信号后,会将流水线A和流水线B中取指段、译码段、执行段和访存段正在执行的指令标记为取消指令,这些取消指令会在流水线继续向下执行,但其执行结果不会写入到数据缓存和寄存器堆,相当于作废了这些指令;然后,比较逻辑将写回段正在执行的故障指令的代码地址送入两条流水线的取指段,重新从指令缓存中取出对应的指令,在流水线上重新执行。
2.根据权利要求1所述的双模冗余流水线的故障检测及回退方法,其特征在于:所述的比较逻辑只对两条流水线对外输出的信息进行比较。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510701242.8A CN105260256B (zh) | 2015-10-27 | 2015-10-27 | 一种双模冗余流水线的故障检测及回退方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510701242.8A CN105260256B (zh) | 2015-10-27 | 2015-10-27 | 一种双模冗余流水线的故障检测及回退方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105260256A CN105260256A (zh) | 2016-01-20 |
CN105260256B true CN105260256B (zh) | 2018-03-23 |
Family
ID=55099957
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510701242.8A Active CN105260256B (zh) | 2015-10-27 | 2015-10-27 | 一种双模冗余流水线的故障检测及回退方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105260256B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102016208864A1 (de) * | 2016-05-23 | 2017-11-23 | Robert Bosch Gmbh | Recheneinheit |
CN107168826A (zh) * | 2017-07-05 | 2017-09-15 | 首都师范大学 | 基于周期粒度的双冗余流水线级间寄存器备份装置及方法 |
CN109144793B (zh) * | 2018-09-07 | 2021-12-31 | 合肥工业大学 | 一种基于数据流驱动计算的故障校正装置和方法 |
CN110018968B (zh) * | 2019-03-29 | 2021-07-16 | 联想(北京)有限公司 | 一种数据读取方法、电子设备及计算机存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1349160A (zh) * | 2001-11-28 | 2002-05-15 | 中国人民解放军国防科学技术大学 | 流水线控制相关延迟消除方法 |
CN1410885A (zh) * | 2001-09-27 | 2003-04-16 | 中国科学院计算技术研究所 | 基于操作队列复用的指令流水线系统和方法 |
CN103150146A (zh) * | 2013-01-31 | 2013-06-12 | 西安电子科技大学 | 基于可扩展处理器架构的专用指令集处理器及其实现方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6266338A (ja) * | 1985-09-18 | 1987-03-25 | Fujitsu Ltd | パイプライン機構の試験方法 |
-
2015
- 2015-10-27 CN CN201510701242.8A patent/CN105260256B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1410885A (zh) * | 2001-09-27 | 2003-04-16 | 中国科学院计算技术研究所 | 基于操作队列复用的指令流水线系统和方法 |
CN1349160A (zh) * | 2001-11-28 | 2002-05-15 | 中国人民解放军国防科学技术大学 | 流水线控制相关延迟消除方法 |
CN103150146A (zh) * | 2013-01-31 | 2013-06-12 | 西安电子科技大学 | 基于可扩展处理器架构的专用指令集处理器及其实现方法 |
Also Published As
Publication number | Publication date |
---|---|
CN105260256A (zh) | 2016-01-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101551764B (zh) | 基于同步冗余线程与编码技术的抗单粒子效应系统及方法 | |
CN105320579B (zh) | 面向sparc v8处理器的自修复双冗余流水线及容错方法 | |
US5692121A (en) | Recovery unit for mirrored processors | |
US7865769B2 (en) | In situ register state error recovery and restart mechanism | |
CN105260256B (zh) | 一种双模冗余流水线的故障检测及回退方法 | |
US8484508B2 (en) | Data processing apparatus and method for providing fault tolerance when executing a sequence of data processing operations | |
US7689804B2 (en) | Selectively protecting a register file | |
CN103984630A (zh) | 一种基于at697处理器的单粒子翻转故障处理方法 | |
CN101416163A (zh) | 通过选择重新执行来检测瞬态错误 | |
US10817369B2 (en) | Apparatus and method for increasing resilience to faults | |
CN105320575B (zh) | 一种双模冗余流水线的自校验及恢复装置与方法 | |
US7555692B1 (en) | End-to-end residue based protection of an execution pipeline | |
US10303566B2 (en) | Apparatus and method for checking output data during redundant execution of instructions | |
CN104699550B (zh) | 一种基于lockstep架构的错误恢复方法 | |
CN103279329B (zh) | 支持同步edac校验的高效取指流水线 | |
CN103294567B (zh) | 一种单发射五级流水处理器的精确异常处理方法 | |
US20090150653A1 (en) | Mechanism for soft error detection and recovery in issue queues | |
CN205193787U (zh) | 一种双模冗余流水线的故障检测及回退装置 | |
CN106844281A (zh) | 一种适用于PowerPC处理器的高可靠指令Cache | |
CN205193785U (zh) | 一种双模冗余流水线的自校验及恢复装置 | |
CN105260272B (zh) | 一种同步纠错流水线控制结构及其方法 | |
US20080229134A1 (en) | Reliability morph for a dual-core transaction-processing system | |
CN206833419U (zh) | 基于检查点技术的双冗余流水线 | |
CN205193786U (zh) | 面向sparc v8处理器的自修复双冗余流水线 | |
US10162701B2 (en) | MCU with processor-independent memory fault detection |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |