CN105141302A - 一种基于时钟沿的单粒子翻转自检纠错电路 - Google Patents
一种基于时钟沿的单粒子翻转自检纠错电路 Download PDFInfo
- Publication number
- CN105141302A CN105141302A CN201510439168.7A CN201510439168A CN105141302A CN 105141302 A CN105141302 A CN 105141302A CN 201510439168 A CN201510439168 A CN 201510439168A CN 105141302 A CN105141302 A CN 105141302A
- Authority
- CN
- China
- Prior art keywords
- detection module
- particle inversion
- clock
- output
- type flip
- 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.)
- Pending
Links
Landscapes
- Manipulation Of Pulses (AREA)
Abstract
本发明提出一种基于时钟沿的单粒子翻转自检纠错电路,实现错误自检纠错的电路。该电路在时序逻辑电路的D触发器输出信号端分别设置时钟沿跳变检测模块、基于时钟延迟模块延迟后的触发器输出翻转检测模块,并分别完成对输出信号是否发生单粒子翻转的检测和对应输出信号的时钟跳变沿的检测,随后通过单粒子翻转检测模块得到是否在时钟周期的跳变沿发生单粒子发生翻转的检测结果,最终将检测结果输入多路输出选择器实现对单粒子翻转造成的输出信号错误的纠正,进而大大提高电路的稳定性和可靠性。
Description
技术领域
本发明属于面向专用集成电路(ASIC)的故障检测技术,可通过对电路模块功能故障的检测以及存储数据正确性的判定,完成对其逻辑电路单粒子翻转软错误以及其它类型故障的检测。发明涉及基于时钟沿的单粒子翻转自检纠错改进电路结构。
背景技术
当前,比较常用的检查和纠正单粒子翻转的方法是三模冗余(TMR)和检测/纠正电路等方法。三模冗余是将要保护的电路复制成完全相同的三份,同时运行这三部分电路,并且对该三部分电路的运行结果进行大数表决,表决出一个置信度高的结果输出,同时检测出那个冗余逻辑块翻转并进行修复。TMR解决SEU影响的最有效方式,但需要消耗大量的资源才能实现该电路结构。检测/纠正电路则是采用如海明码等不同的编解码方式,在存储的数据源码中加入一些冗余码,使这些数据源码和数据源码之间建立一定的关系,一旦数据源码或是冗余码出现某种错误时,数据码和冗余码之间的关系被破坏,就形成非法编码,通过检测数据码和冗余码来检测数据码的正确性,从而实现对所存储数据进行检测和纠正。
基于时钟沿的自检纠错电路原理是,“对于触发器,输出数据只有在时钟上升沿到来的时候发生转变才是有效的正确数据,而其他任何时刻的变化都是由于单粒子软错误引起的信号错误”。因此,基于时钟沿的单粒子翻转自检纠错电路则可以通过对比数据与时钟的转变沿是否同步,来实现数据进行检测和纠正。因此,通过查询,(1)在数据库中搜索“singleeventupset(SEU)”、“clockedge”、“errordetectionandcorrection(EDAC)”等,查阅到相关论文1篇(RuanoO,ReviriegoP,MaestroJA.ANewEDACTechniqueagainstSoftErrorsbasedonPulseDetectors.TheproceedingsofIEEEInternationalSymposiumonIndustrialEletronics.2009,8:2293-2298)。该论文提出了一种基于时钟沿的自我检测和纠正的电路结构,并采用内建命令进行错误注入模拟的方式验证了电路可以对触发器以及SRAM等存储器进行实时监控,并及时纠正其由于SEU引起的数据错误。但是,该电路结构仍然存在可能会导致电路不停循环(震荡)、不能收敛等缺陷。(2)在数据库中搜索“单粒子翻转”、“时钟沿”、“自检纠错”等,查阅到相关论文1篇(聂永锋,于东英,曾泽嵘,甘智勇,陈梦远.一种改进的对抗软错误电路结构设计.现代电子技术,2011,34(4):184-187)。该论文基本是论文“ANewEDACTechniqueagainstSoftErrorsbasedonPulseDetectors”的中文翻译。(3)在专利数据库中搜索“单粒子翻转”、“时钟沿”、“自检纠错”等,未查询到相关信息。此外,查询目前国内外有关航天应用中基于时钟沿自建纠错的软错误加固方法研究相关资料,也未查询到相关技术公开资料。
发明内容
本发明解决的技术问题是:克服现有技术的不足,提供了一种基于时钟沿的单粒子翻转自检纠错电路,可为单粒子软错误纠正提供技术支撑,提高可靠性设计的有效性和可行性。
本发明的技术方案是:一种基于时钟沿的单粒子翻转自检纠错电路,包括D触发器、时钟延迟模块、时钟沿跳变检测模块、触发器输出翻转检测模块、单粒子翻转检测模块、多路输出选择器以及锁存器;D触发器的输出端同时连接至触发器输出翻转检测模块的输入端以及多路输出选择器的输出位选择端;多路输出选择器的输出端S0和输出端S1分别接至D触发器的置位端和清零端;D触发器的时钟端接至时钟延迟模块的输入端,时钟延迟模块的输出端接至时钟沿跳变检测模块的时钟端;时钟沿跳变检测模块的输出端S3分别接至单粒子翻转检测模块的输入端S3以及锁存器的清零端;时钟沿跳变检测模块的输出端S4接至单粒子翻转检测模块的输入端S4;锁存器的输出端接至单粒子翻转检测模块的输入端S5;单粒子翻转检测模块的输出端同时接至多路输出选择器的输入端以及锁存器的置位端;
外部信号和外部时钟输入至D触发器,当外部时钟上升沿时D触发器将送至触发器输出翻转检测模块,触发器输出翻转检测模块检测是否发生单粒子翻转,并将检测结果发送至单粒子翻转检测模块;同时外部时钟通过时钟延迟模块后输入至时钟沿跳变检测模块,当触发器输出翻转检测模块向单粒子翻转检测模块输出检测结果时,时钟沿跳变检测模块输出时钟沿跳变脉冲至单粒子翻转检测模块和锁存器;锁存器将锁存信号输入给单粒子翻转检测模块;单粒子翻转检测模块检测是否在外部时钟上升沿发生单粒子翻转,并将检测结果输出多路输出选择器以及锁存器;当D触发器的输出端为高电平时,多路输出选择器的输出端S1选通,当D触发器的输出端为低电平时,多路输出选择器的输出端S2选通;通过多路输出选择器将经过单粒子翻转检测模块检测后的检测结果输送给D触发器,D触发器根据接收到的检测结果从新输出纠错后的外部信号。
触发器输出翻转检测模块包括两个非门和一个异或门;输入进来的信号分为两路,其中一路信号相继经过两级非门后,与另外一路信号再经过异或门后输出。
时钟沿跳变检测模块包括三个非门和一个与门;输入进来的信号分为两路,其中一路信号相继经过三个非门后,与另外一路信号再经过与门后输出。
单粒子翻转检测模块包括两个非门和一个与门;单粒子翻转检测模块的输入端S3接至一个非门,同时单粒子翻转检测模块S5接至一个非门,之后与单粒子翻转检测模块S4一并接至与门后输出。
本发明与现有技术相比的优点在于:
(1)该电路在具备时钟沿单粒子翻转自检纠错功能的同时,利用锁存器结构克服其它已有的电路中存在不停循环(震荡)、不能收敛的不足;
(2)该电路通过对时钟沿跳变检测模块的设计,可以完成上升沿、下跳沿,以及同时上下跳沿的错误检测;
(3)同一个时钟周期内可以通过对自检纠错电路的简单扩展,可以实现多位SEU错误的自动检错纠错。即对多个原始功能模块的电路进行检纠错,利用单粒子翻转检测模块将单粒子翻转的检错信号输出到一个N输入的或门,再将得出的逻辑值传输给公共模块的SEU信号,进而控制各个单独模块的数据纠正,实现多位SEU错误的自动检纠错。
附图说明
图1为本发明时钟沿检测和纠错电路结构图;
图2为本发明触发器输出翻转检测模块QPulseDetector模块结构设计图;
图3为本发明时钟沿跳变检测模块CLKPulseDetector模块结构设计图;
图4为本发明单粒子翻转检测模块SEUDetector模块结构设计图;
图5为本发明多路输出选择器Demux模块结构设计图。
具体实施方式
本发明设计实现了更为实用的、具有扩展能力的检测和纠正单粒子翻转错误的电路,如图1所示。
图1电路由D触发器、时钟延迟模块Delay、时钟沿跳变检测模块CLKPulseDetector、触发器输出翻转检测模块QPulseDetector、单粒子翻转检测模块SEUDetector、多路输出选择器Demux以及锁存器Latch组成。由D触发器输出原始功能模块电路的输出信号,利用QPulseDetector模块进行延时输出数据信号和原始数据信号的比较,用于产生单粒子翻转的检测信号。同时,D触发器的时钟端CLK输出接入Delay模块中的两个非门来产生延时,通过CLKPulseDetector模块对延时后的时钟信号和原来的时钟信号进行比较,进而在上升沿或下降沿时产生一个脉冲,用于数据沿的检测。将单粒子翻转检测信号和数据沿检测信号共同输入SEUDetector模块得到时钟周期跳变沿的单粒子翻转检测结果,再通过Demux模块实现单粒子翻转的自纠错;并且由单粒子翻转检测结果对锁存器Latch模块赋值,使电路在数据纠正完成以后,让锁存器输出变为0,即恢复到没有检测到错误发生时的状态。
在进行电路设计时,Delay模块采用和D触发器模块相同的电路延时设计以保证两者电路延迟相同。此外,为使D触发器模块与Delay模块,以及QPlusDetector模块与ClockPlusDetector模块在线延迟上保持相同,在设计时采用如下设计加以保证:
(1)将D触发器模块与Delay模块、QPlusDetector模块与ClockPlusDetector模块分别作为一个整体进行设计;
(2)在布线时对器件添加区域约束,使D触发器模块与Delay模块间的距离,以及QPlusDetector模块与ClockPlusDetector模块间的距离尽可能的近。
图1所示的电路主要组成模块的设计和功能描述如下:
(1)QPulseDetector模块
输入信号IN经过两级非门产生信号IN_D(主要作用是对输入信号进行延迟),再将IN_D与信号IN进行异或,得到输出信号OUT。QPulseDetector模块采用图2所示结构。
(2)CLKPulseDetector模块
若原始电路在时钟上跳沿和下降沿均发生数据输出,则CLKPulseDetector模块采用与PulseDetector模块相似电路结构,若仅仅在上跳沿完成检测,则CLKPulseDetector模块采用图3所示结构。
图3的结构,也可以采用奇数个非门,采用三个非门主要是为增加脉冲的宽度。若仅仅在下降沿完成检测,则在采用图3所示结构的IN端增加一个非门即可;如果将图3换成和图2一样的电路结构,则还可以同时完成上升沿和下跳沿错误检测。
(3)SEUDetector模块
SEUDetector模块的结构如图4所示。它将“输入信号S4”、“输入信号S3的非”和“输入信号S5的非”进行与操作,产生输出信号SEU。
(4)Delay模块
Delay模块结构如图5所示。输入信号CLK_IN与为1的信号进行与非操作产生CLK_IN_N,再与为1的信号进行与非操作,产生输出信号CLK_OUT。
(5)Demux模块
Demux模块(多路输出选择器)输入信号为SEU,输出信号为S0、S1,分别连接触发器的置位端和清零端。
如果没有错误发生时,SEU的值为0,此时不论触发器的输出信号Q为1或0,S0、S1均输出0,不会对Q值产生影响;而当有错误发生时,SEU的值为1,如果Q值为1(正确值应当为0),那么S1输出1,触发器被清零,Q被纠正到0;如果Q值为0(正确值应该为1),那么S0输出1,触发器被置1,Q被纠正到1,从而实现SEU错误的纠正。
(6)锁存器Latch模块
Latch模块和D触发器模块(两者的SET和CLR均为高有效)则分别与标准的锁存器的功能和结构以及标准的触发器的功能和结构相同。Latch的主要作用是避免电路振荡,实现了一个时钟周期里,一次SEU翻转的检测。
按照图1所示,整个电路可以对一个由SEU引起的数据翻转进行检测和纠正,其工作原理和过程如下:
(1)当前时钟周期内,当时钟处于沿跳时,信号S3产生一个高脉冲,此时锁存器被清零,锁存器Q输出0时。
(2)当检测到由于SEU引起的Q值翻转时,此时SEUDetector的S4为1,S3的非为1,S5的非为1(锁存器输出Q为0),SEU_O变为1,此时对数据Q进行纠正。
(3)当SEU_O变为1,锁存器SET端为1,锁存器Q被置为1,S5输入为1,SEU_O又变为0,准备检测下一个时钟周期的数据沿。
(4)当下一个周期到来时,CLRPlusDetector的S3输出为1,锁存器CLR端为1,锁存器清零,锁存器Q输出为0,重复(1)~(3)。
Claims (4)
1.一种基于时钟沿的单粒子翻转自检纠错电路,其特征在于:包括D触发器、时钟延迟模块、时钟沿跳变检测模块、触发器输出翻转检测模块、单粒子翻转检测模块、多路输出选择器以及锁存器;D触发器的输出端同时连接至触发器输出翻转检测模块的输入端以及多路输出选择器的输出位选择端;多路输出选择器的输出端S0和输出端S1分别接至D触发器的置位端和清零端;D触发器的时钟端接至时钟延迟模块的输入端,时钟延迟模块的输出端接至时钟沿跳变检测模块的时钟端;时钟沿跳变检测模块的输出端S3分别接至单粒子翻转检测模块的输入端S3以及锁存器的清零端;时钟沿跳变检测模块的输出端S4接至单粒子翻转检测模块的输入端S4;锁存器的输出端接至单粒子翻转检测模块的输入端S5;单粒子翻转检测模块的输出端同时接至多路输出选择器的输入端以及锁存器的置位端;
外部信号和外部时钟输入至D触发器,当外部时钟上升沿时D触发器将送至触发器输出翻转检测模块,触发器输出翻转检测模块检测是否发生单粒子翻转,并将检测结果发送至单粒子翻转检测模块;同时外部时钟通过时钟延迟模块后输入至时钟沿跳变检测模块,当触发器输出翻转检测模块向单粒子翻转检测模块输出检测结果时,时钟沿跳变检测模块输出时钟沿跳变脉冲至单粒子翻转检测模块和锁存器;锁存器将锁存信号输入给单粒子翻转检测模块;单粒子翻转检测模块检测是否在外部时钟上升沿发生单粒子翻转,并将检测结果输出多路输出选择器以及锁存器;当D触发器的输出端为高电平时,多路输出选择器的输出端S1选通,当D触发器的输出端为低电平时,多路输出选择器的输出端S2选通;通过多路输出选择器将经过单粒子翻转检测模块检测后的检测结果输送给D触发器,D触发器根据接收到的检测结果从新输出纠错后的外部信号。
2.根据权利要求1所述的一种基于时钟沿的单粒子翻转自检纠错电路,其特征在于:触发器输出翻转检测模块包括两个非门和一个异或门;输入进来的信号分为两路,其中一路信号相继经过两级非门后,与另外一路信号再经过异或门后输出。
3.根据权利要求1所述的一种基于时钟沿的单粒子翻转自检纠错电路,其特征在于:时钟沿跳变检测模块包括三个非门和一个与门;输入进来的信号分为两路,其中一路信号相继经过三个非门后,与另外一路信号再经过与门后输出。
4.根据权利要求1所述的一种基于时钟沿的单粒子翻转自检纠错电路,其特征在于:单粒子翻转检测模块包括两个非门和一个与门;单粒子翻转检测模块的输入端S3接至一个非门,同时单粒子翻转检测模块S5接至一个非门,之后与单粒子翻转检测模块S4一并接至与门后输出。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510439168.7A CN105141302A (zh) | 2015-07-24 | 2015-07-24 | 一种基于时钟沿的单粒子翻转自检纠错电路 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510439168.7A CN105141302A (zh) | 2015-07-24 | 2015-07-24 | 一种基于时钟沿的单粒子翻转自检纠错电路 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105141302A true CN105141302A (zh) | 2015-12-09 |
Family
ID=54726539
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510439168.7A Pending CN105141302A (zh) | 2015-07-24 | 2015-07-24 | 一种基于时钟沿的单粒子翻转自检纠错电路 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105141302A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109217864A (zh) * | 2017-06-30 | 2019-01-15 | 龙芯中科技术有限公司 | 触发器及芯片 |
CN109637567A (zh) * | 2018-12-19 | 2019-04-16 | 哈尔滨工业大学 | 一种监测触发器是否发生翻转的边沿检测电路及触发器 |
CN111181545A (zh) * | 2020-01-08 | 2020-05-19 | 中国人民武装警察部队海警学院 | 一种流水结构的软错误自检电路 |
CN111381254A (zh) * | 2019-12-27 | 2020-07-07 | 上海航天控制技术研究所 | 基于fpga的高可靠导航敏感器抗单粒子翻转装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070262787A1 (en) * | 2006-05-10 | 2007-11-15 | Lucent Technologies Inc. | Soft error tolerant flip flops |
CN101551764A (zh) * | 2009-02-27 | 2009-10-07 | 北京时代民芯科技有限公司 | 基于同步冗余线程与编码技术的抗单粒子效应系统及方法 |
CN103840822A (zh) * | 2014-02-14 | 2014-06-04 | 北京时代民芯科技有限公司 | 基于selectmap的宇航fpga通用刷新电路及其实现方法 |
CN103888106A (zh) * | 2014-03-31 | 2014-06-25 | 西安空间无线电技术研究所 | 一种抗单粒子翻转和单粒子瞬态脉冲的触发器设计方法 |
-
2015
- 2015-07-24 CN CN201510439168.7A patent/CN105141302A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070262787A1 (en) * | 2006-05-10 | 2007-11-15 | Lucent Technologies Inc. | Soft error tolerant flip flops |
CN101551764A (zh) * | 2009-02-27 | 2009-10-07 | 北京时代民芯科技有限公司 | 基于同步冗余线程与编码技术的抗单粒子效应系统及方法 |
CN103840822A (zh) * | 2014-02-14 | 2014-06-04 | 北京时代民芯科技有限公司 | 基于selectmap的宇航fpga通用刷新电路及其实现方法 |
CN103888106A (zh) * | 2014-03-31 | 2014-06-25 | 西安空间无线电技术研究所 | 一种抗单粒子翻转和单粒子瞬态脉冲的触发器设计方法 |
Non-Patent Citations (2)
Title |
---|
田耘,徐文波: "《Xilinx FPGA开发实用教程》", 31 December 2008 * |
聂永峰等: "一种改进的对抗软错误电路结构设计", 《现代电子技术》 * |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109217864A (zh) * | 2017-06-30 | 2019-01-15 | 龙芯中科技术有限公司 | 触发器及芯片 |
CN109217864B (zh) * | 2017-06-30 | 2022-04-15 | 龙芯中科技术股份有限公司 | 触发器及芯片 |
CN109637567A (zh) * | 2018-12-19 | 2019-04-16 | 哈尔滨工业大学 | 一种监测触发器是否发生翻转的边沿检测电路及触发器 |
CN109637567B (zh) * | 2018-12-19 | 2021-06-01 | 哈尔滨工业大学 | 一种监测触发器是否发生翻转的边沿检测电路及触发器 |
CN111381254A (zh) * | 2019-12-27 | 2020-07-07 | 上海航天控制技术研究所 | 基于fpga的高可靠导航敏感器抗单粒子翻转装置 |
CN111181545A (zh) * | 2020-01-08 | 2020-05-19 | 中国人民武装警察部队海警学院 | 一种流水结构的软错误自检电路 |
CN111181545B (zh) * | 2020-01-08 | 2023-11-24 | 中国人民武装警察部队海警学院 | 一种流水结构的软错误自检电路 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102640420B (zh) | 抵抗软错误的电子电路和布局 | |
CN105141302A (zh) | 一种基于时钟沿的单粒子翻转自检纠错电路 | |
US10644683B2 (en) | Clock driving circuit resistant to single-event transient | |
CN101903956B (zh) | 自我计时错误校正码评估系统及方法 | |
CN103888106A (zh) | 一种抗单粒子翻转和单粒子瞬态脉冲的触发器设计方法 | |
CN102262212B (zh) | 一种检测数字专用集成电路中触发器单粒子效应的系统 | |
CN103218272A (zh) | 一种星载数字信号处理器翻转加固方法 | |
US10033357B2 (en) | Semiconductor device | |
CN110413456B (zh) | 三冗余数据逐级表决系统及方法 | |
CN203149557U (zh) | 基于fpga的容错异步串行收发器装置 | |
Moreira et al. | Ncl+: Return-to-one null convention logic | |
CN105577160A (zh) | 一种基于延时单元的自恢复抗单粒子锁存器结构 | |
CN103326711A (zh) | 基于三模冗余和dice的抗辐射加固锁存器 | |
US10114687B2 (en) | System for checking the integrity of a communication between two circuits | |
CN104866390B (zh) | 异步随机静态存储器三模冗余控制器 | |
CN202798645U (zh) | 抗辐照的三模冗余电路结构 | |
CN103812472B (zh) | 抗单粒子瞬态效应的触发器 | |
CN102082568B (zh) | 一种抗单粒子瞬态电路 | |
WO2006019809A1 (en) | Error recovery in asynchronous combinational logic circuits | |
CN104731666B (zh) | 一种抗单粒子翻转的自纠错集成电路及其纠错方法 | |
CN102468843A (zh) | 一种数字延迟线电路及延迟锁相环电路 | |
Fu et al. | Burst error detection hybrid ARQ with crosstalk-delay reduction for reliable on-chip interconnects | |
CN103888099B (zh) | 一种抗单粒子瞬态冗余滤波器电路 | |
CN104020461B (zh) | 一种基于tdc算法的激光内光路矫正方法 | |
CN104123967B (zh) | 半导体装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20151209 |