CN103955448B - 一种抗单粒子翻转的fft加固设计方法 - Google Patents
一种抗单粒子翻转的fft加固设计方法 Download PDFInfo
- Publication number
- CN103955448B CN103955448B CN201410217007.9A CN201410217007A CN103955448B CN 103955448 B CN103955448 B CN 103955448B CN 201410217007 A CN201410217007 A CN 201410217007A CN 103955448 B CN103955448 B CN 103955448B
- Authority
- CN
- China
- Prior art keywords
- fft
- data
- circuit
- design
- ram
- 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
- For Increasing The Reliability Of Semiconductor Memories (AREA)
Abstract
本发明一种抗单粒子翻转的FFT加固设计方法,包括以下步骤:分析FFT算法及电路结构,对电路中旋转因子存储所需的ROM采用RAM结构进行实现,对RAM的数据和地址进行反馈式的三模冗余加固;对电路中的存储最终结果并实现倒位序的RAM进行加固,将RAM数据和地址分别加固,对地址寄存器和数据分别采用反馈式的三模冗余和三模冗余进行加固;对ROM中查找旋转因子的关键寄存器进行反馈式三模冗余加固。本发明提高了FFT电路在空间环境中的可靠性,增加了FFT电路在抗单粒子翻转方面的能力,在加固设计方面具有一定的灵活性,为设备提供抗单粒子能力更强的FFT电路设计,可迅速应用到星载处理设备的研制中。
Description
技术领域
本发明涉及一种抗单粒子翻转的FFT加固设计方法,属于抗单粒子效应加固技术领域。
背景技术
快速傅里叶变换(FFT,Fast Fourier Transform)在通信***数字信号分析和处理方面是一种非常重要的变换。广泛的应用在空间通信领域。目前FFT算法结构基本上包括基2FFT、基4FFT、***基FFT、混合基FFT以及以Winograd算法为代表的一类算法(素因子算法、Winograd算法)。其中,基2FFT、基4FFT算法、***基FFT和混合基FFT是针对N等于2的整数次幂的算法;素因子算法、Winograd算法是针对N不等于2的整数次幂的算法。两大类算法针对具体的应用情况,各有利弊,这些算法虽然实现方法不同,但对单粒子敏感的基本结构是一样的(不同算法的单粒子敏感结构有共性),即FFT电路结构中的ROM、RAM以及地址产生模块的计数器为敏感结构,需要进行单独的抗单粒子加固。目前的加固方法主要是对整个算法过程采取三模冗余和刷新来减轻电路的单粒子翻转效应影响,而对整个算法过程采用三模冗余和刷新的技术手段对***的资源配置要求很高,资源浪费非常严重,使得整个实现***过于复杂,不利于***在空间的应用,同时目前的方法多是集中在三模冗余只是判断后进行输出,而对于错误的一路输出并没有及时更新和纠正,造成了空间资源的利用率较低,现在急需一种能够在空间快捷的实现FFT算法的同时又能完成FFT加固的技术,目前检索的文献看未见有专门针对FFT电路结构中敏感部件的加固方法,
发明内容
本发明的技术解决问题:克服现有技术的不足,提供了一种抗单粒子翻转的FFT加固设计方法,通过对FFT电路结构的分析,将电路中的关键存储器和关键寄存器进行反馈式的三模冗余设计,提高了FFT电路的抗单粒子翻转能力,增加了FFT电路在空间环境中的可靠性。
本发明技术解决方案:
一种抗单粒子翻转的FFT加固设计方法,实现方式如下:
(1)分析FFT算法结构,找出了这些FFT电路结构中共同的单粒子敏感部件,即FFT电路实现时存储旋转因子的ROM、存储最终数据并实现倒位序的RAM以及查找旋转因子的关键寄存器;所述的关键寄存器受单粒子效应影响后,会出现错并对后续计算造成影响的寄存器;
(2)对存储旋转因子的ROM进行加固设计,将ROM采用RAM的结构实现,对于地址寄存器和数据存储区分别采用反馈式的三模冗余加固设计,其中对于地址寄存器,当三路数据中有一路出错后,通过判断纠错模块将出错的一路数据进行纠正处理,保证地址寄存器的正确性;当监测到一路数据出错后,将另两路正确的数据重新写入出错的RAM中用于保证数据的正确性;
(3)对存储最终数据并进行倒位序的RAM进行加固设计,对地址寄存器采用反馈式的三模冗余加固设计,其中当三路数据中有一路出错后,通过判断纠错模块将出错的一路数据进行纠正处理用于保证读写地址的正确性;对于存储区的数据进行三模冗余加固设计;
(4)对各级蝶算中用到的关键寄存器进行反馈方式的三模冗余加固设计,将三模冗余的结果进行一个三选二判断并得到最终的判断结果,三选二判断结果在输出给下级逻辑的同时,通过反馈回路将三选二的判断结果置于本级逻辑三模冗余的输入端,即通过反馈回路对三模冗余逻辑进行实时更新。
本发明与现有技术相比具有如下优点:
(1)本发明通过对基2FFT、基4FFT以及***基FFT算法实现结构的具体分析,看出虽然不同的FFT算法在算法层面略有不同,但是基本的运算结构是一样的,每级蝶算都是序列与旋转因子的乘加运算,在代码级实现时需要用到ROM来存储FFT运算中每一级运算的旋转因子,在FFT计算完毕后也需要用到RAM来存储计算结果并实现倒位序操作,通过在算法层面和电路层面对这些不同FFT实现结构的具体分析,找到了存储旋转因子的ROM、存储最终数据并实现倒位序的RAM以及查找旋转因子的关键寄存器是FFT算法实现的单粒子敏感结构,这些结构如果发生翻转会直接影响计算结果的正确性,本发明只是对空间FFT算法实现的关键部件进行加固技术,节省了空间资源和成本,提高了利用率和效果。
(2)本发明相对于传统的FFT加固设计,采用对FFT电路中的关键存储区和关键寄存器进行反馈式的三模冗余加固设计,提高了FFT电路的抗单粒子翻转能力,增加了FFT电路在空间环境中的可靠性,同时反馈式的设计能够保证正确地对指定位置的存储区域进行实时更新,保证数据利用的可靠性和准确性。
(3)本发明相对于传统加固方式,能够在资源有限的情况下(不能采用全三模冗余、部分三模冗余或者刷新技术),通过对FFT电路中的关键寄存器和存储器进行加固设计,提高了设计在抗单粒子翻转加固方面的灵活性,节省了成本,提高了效率,通用性较强。
附图说明
图1是本发明加固设计结构示意图;
图2是本发明ROM存储区加固设计示意图;
图3是本发明RAM存储区加固设计示意图;
图4是本发明关键寄存器加固设计示意图。
具体实施方式
下面结合附图进一步说明本发明的工作原理和工作过程:
如图1所示,本发明一种抗单粒子翻转的FFT加固设计方法,实现方式如下:
(1)分析FFT算法结构,找出FFT电路实现时存储旋转因子的ROM、存储最终数据并实现倒位序的RAM以及查找旋转因子的关键寄存器;所述的关键寄存器受单粒子效应影响后,会出现错并对后续计算造成影响的寄存器。
本发明通过对基2FFT、基4FFT以及***基FFT算法实现结构的具体分析,看出虽然不同的FFT算法在算法层面略有不同,但是基本的运算结构是一样的,每级蝶算都是序列与旋转因子的乘加运算,在代码级实现时需要用到ROM来存储FFT运算中每一级运算的旋转因子,在FFT计算完毕后也需要用到RAM来存储计算结果并实现倒位序操作,通过在算法层面和电路层面对这些不同FFT实现结构的具体分析,找到了存储旋转因子的ROM、存储最终数据并实现倒位序的RAM以及查找旋转因子的关键寄存器是FFT算法实现的单粒子敏感结构。
(2)对存储旋转因子的ROM进行加固设计,将ROM采用RAM的结构实现,重要存储区的防护加固思路是将数据和地址分别加固,对于地址寄存器和数据存储区分别采用反馈式的三模冗余设计。对于地址寄存器,当三路数据中有一路出错后,通过判断恢复模块将出错的一路数据进行纠正处理,保证地址寄存器的正确性。对于数据的存储,虽然从算法和电路实现上只需要用到ROM,但是由于ROM里存储数据的重要性,必须保证数据正确,在加固设计上,将ROM采用RAM的结构实现,当监测到一路数据出错后,将另两路正确的数据重新写入出错的RAM中,保证数据的正确性。
对FFT电路中旋转因子存储的ROM采用如图2所示的加固设计,其中A口为用户端口,B口为加固端口,首先对存储区域进行三模冗余设计,即对RAM调用三份,并对从三份RAM的B口读出的数据进行三选二判断,将判断结果反馈并对RAM的数据内容进行实时更新。对地址和数据的反馈式三模冗余加固设计,能够保证正确地对指定位置的存储区域进行实时更新,即保证数据反馈实时更新自身操作的正确可靠性。
(3)对存储最终数据并进行倒位序的RAM进行加固设计,对地址寄存器采用反馈式的三模冗余加固设计,其中当三路数据中有一路出错后,通过判断纠错模块将出错的一路数据进行纠正处理用于保证读写地址的正确性;对于存储区的数据进行三模冗余加固设计(这是因为此处RAM中的数据是实时更新的,出错后下次会被新的数据重写,不需要进行纠错)。
对存储最终数据并进行倒位序的RAM进行加固设计具体实施例如图3所示。对存储区域的数据进行三模冗余设计,即对RAM调用三份,并对从三份RAM中读出的数据进行三选二判断输出。对于地址寄存器,采用反馈式三模冗余的方式进行加固,当监测到一路地址出错后,将另两路正确的地址重新写入出错的地址中,以保证能够正确地对指定位置的存储区域进行实时更新,即保证数据反馈实时更新自身操作的正确可靠性。
(4)对各级蝶算中用到的关键寄存器进行反馈方式的三模冗余加固设计,将三模冗余的结果进行一个三选二判断并得到最终的判断结果,三选二判断结果在输出给下级逻辑的同时,通过反馈回路将三选二的判断结果置于本级逻辑三模冗余的输入端,即通过反馈回路对三模冗余逻辑进行实时更新。
如图4所示,下面以FFT蝶算中的关键寄存器中的计数寄存器为例进行分析:FFT电路涉及到的计数器寄存器为单粒子敏感点,在实际设计中,对需要加固的寄存器进行三模冗余设计,将三模冗余的结果进行一个三选二判断并得到最终的判断结果,三选二判断结果在输出给下级逻辑的同时,通过反馈回路将三选二的判断结果置于本级逻辑三模冗余的输入端,即通过反馈回路对三模冗余逻辑进行实时更新。
通过增加反馈回路,确保在三模冗余逻辑设计中,当任何一路因为翻转出现错误后,能够通过三选二判断结果快速纠正出现错误的这路逻辑,避免因为错误的累积和不可恢复而造成***功能中断,进行寄存器三模后,在输出端增加判断与恢复电路,通过判断表决器的输出结果同三模冗余逻辑各自结果进行比较,来决定该模块工作是否对三模冗余逻辑进行更新恢复:如果数据比较结果确定某一路逻辑出错不正确,那么通过该模块开始启动向寄存器中重新写入正确值来对出错的这路寄存器进行更新,从而达到纠检错的目的。
本发明说明书中未作详细描述的内容属于本领域专业技术人员的公知技术。
Claims (1)
1.一种抗单粒子翻转的FFT加固设计方法,其特征在于实现方式如下:
(1)分析FFT算法结构,找出了这些FFT电路结构中共同的单粒子敏感部件,即FFT电路实现时存储旋转因子的ROM、存储最终数据并实现倒位序的RAM以及查找旋转因子的关键寄存器;所述的关键寄存器受单粒子效应影响后,会出现错并对后续计算造成影响的寄存器;
(2)对存储旋转因子的ROM进行加固设计,将ROM采用RAM的结构实现,对于地址寄存器和数据存储区分别采用反馈式的三模冗余加固设计,其中对于地址寄存器,当三路数据中有一路出错后,通过判断纠错模块将出错的一路数据进行纠正处理,保证地址寄存器的正确性;当监测到一路数据出错后,将另两路正确的数据重新写入出错的RAM中用于保证数据的正确性;
(3)对存储最终数据并进行倒位序的RAM进行加固设计,对地址寄存器采用反馈式的三模冗余加固设计,其中当三路数据中有一路出错后,通过判断纠错模块将出错的一路数据进行纠正处理用于保证读写地址的正确性;对于存储区的数据进行三模冗余加固设计;
(4)对各级蝶算中用到的关键寄存器进行反馈方式的三模冗余加固设计,将三模冗余的结果进行一个三选二判断并得到最终的判断结果,三选二判断结果在输出给下级逻辑的同时,通过反馈回路将三选二的判断结果置于本级逻辑三模冗余的输入端,即通过反馈回路对三模冗余逻辑进行实时更新。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410217007.9A CN103955448B (zh) | 2014-05-21 | 2014-05-21 | 一种抗单粒子翻转的fft加固设计方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410217007.9A CN103955448B (zh) | 2014-05-21 | 2014-05-21 | 一种抗单粒子翻转的fft加固设计方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103955448A CN103955448A (zh) | 2014-07-30 |
CN103955448B true CN103955448B (zh) | 2017-08-29 |
Family
ID=51332723
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410217007.9A Active CN103955448B (zh) | 2014-05-21 | 2014-05-21 | 一种抗单粒子翻转的fft加固设计方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103955448B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104461790B (zh) * | 2014-11-20 | 2016-09-07 | 中国科学院自动化研究所 | 一种基于查找表可观性度量的选择性三模冗余方法 |
CN106772484B (zh) * | 2016-12-29 | 2019-09-06 | 西安空间无线电技术研究所 | 卫星导航信号多分量间功率配比和载波相位关系调整方法 |
CN107947780A (zh) * | 2017-12-15 | 2018-04-20 | 西安龙腾微电子科技发展有限公司 | 应用于抗辐照电压转换芯片的双内锁自复位振荡器结构 |
CN108762374A (zh) * | 2018-05-29 | 2018-11-06 | 西安微电子技术研究所 | 一种时钟管理电路及基于该电路的服务级芯片 |
CN109003645B (zh) * | 2018-06-27 | 2022-01-21 | 山东航天电子技术研究所 | 一种电子***在轨单粒子效应验证*** |
CN108880552B (zh) * | 2018-07-05 | 2022-04-22 | 河海大学常州校区 | 一种抗单粒子效应的sar-adc |
CN112084071B (zh) * | 2020-09-14 | 2023-09-19 | 海光信息技术股份有限公司 | 一种计算单元运算加固方法、并行处理器及电子设备 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103578567B (zh) * | 2013-11-18 | 2016-06-29 | 中国电子科技集团公司第五十八研究所 | 基于三模冗余抗辐照自刷新寄存器 |
CN103680639B (zh) * | 2013-11-29 | 2016-08-24 | 西安空间无线电技术研究所 | 一种随机存储器的周期性自检错恢复方法 |
-
2014
- 2014-05-21 CN CN201410217007.9A patent/CN103955448B/zh active Active
Non-Patent Citations (4)
Title |
---|
"三模冗余在ASIC设计中的实现方法";宁新权 等;《现代电子技术》;20120131;第35卷(第2期);128-130 * |
"具有在线修复能力的强容错三模冗余***设计及实验研究";姚睿 等;《电子学报》;20100131;第38卷(第1期);177-183 * |
"可配置浮点FFT的ASIC设计";高伟;《中国优秀硕士学位论文全文数据库-信息科技辑》;20130715;第2013年卷(第7期);第4.3.6节,图4.2 * |
"基于FPGA的三模冗余容错技术研究";张超 等;《现代电子技术》;20110315;第34卷(第5期);第1节,第2节 * |
Also Published As
Publication number | Publication date |
---|---|
CN103955448A (zh) | 2014-07-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103955448B (zh) | 一种抗单粒子翻转的fft加固设计方法 | |
US10645105B2 (en) | Network attack detection method and device | |
CN102354294B (zh) | 一种星载dsp芯片的空间单粒子翻转检测方法 | |
CN106406823A (zh) | 分支预测器和用于操作分支预测器的方法 | |
WO2016025243A1 (en) | Techniques for automatically swapping languages and/or content for machine translation | |
CN114968652A (zh) | 故障处理方法及计算设备 | |
US20140082264A1 (en) | Nand flash storage chip checking method and device | |
CN105302882A (zh) | 获取关键词的方法及装置 | |
CN107832227B (zh) | 业务***的接口参数测试方法、装置、设备和存储介质 | |
CN110990575B (zh) | 测试用例失败原因分析方法、装置及电子设备 | |
US20210406283A1 (en) | Efficient matching of data fields in response to database requests | |
WO2023040145A1 (zh) | 基于人工智能的文本分类方法、装置、电子设备及介质 | |
US20220122736A1 (en) | Machine learning techniques for generating hybrid risk scores | |
CN108108262A (zh) | 具有检查所选择的存储器访问的硬件检查单元的集成电路 | |
US20220343191A1 (en) | Machine learning techniques for predictive structural analysis | |
US8914712B2 (en) | Hierarchical error correction | |
CN103455417A (zh) | 一种基于马尔可夫模型的软件错误定位***及错误定位方法 | |
US9208125B2 (en) | Methods for operating and configuring a reconfigurable processor | |
CN112148566A (zh) | 计算引擎的监控方法、装置、电子设备及存储介质 | |
US20170083531A1 (en) | Selecting an incremental backup approach | |
CN104408023B (zh) | 一种指标计算的方法及指标计算器 | |
CN106708639A (zh) | 一种基于VxWorks***的数据定时精确记录方法 | |
US20230062114A1 (en) | Machine learning techniques for efficient data pattern recognition across databases | |
CN104298991B (zh) | 一种角图章信息提取方法 | |
CN107807938A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |