CN102521467A - 一种针对sram型fpga的逐位翻转故障注入方法 - Google Patents
一种针对sram型fpga的逐位翻转故障注入方法 Download PDFInfo
- Publication number
- CN102521467A CN102521467A CN2011104492961A CN201110449296A CN102521467A CN 102521467 A CN102521467 A CN 102521467A CN 2011104492961 A CN2011104492961 A CN 2011104492961A CN 201110449296 A CN201110449296 A CN 201110449296A CN 102521467 A CN102521467 A CN 102521467A
- Authority
- CN
- China
- Prior art keywords
- bit
- upset
- fpga
- msk
- test
- 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
- Design And Manufacture Of Integrated Circuits (AREA)
- Tests Of Electronic Circuits (AREA)
Abstract
本发明公开了一种针对SRAM型FPGA的逐位翻转故障注入方法,通过检测电路设计配置存储单元中的单粒子翻转敏感位位置,得到动态翻转截面和失效率,绘出可靠度变化曲线,从而可以对电路设计空间应用的可靠度进行评测。方法包括,步骤一:初始配置;步骤二:翻转比特位;步骤三:判断是否产生错误;步骤四:判断是否完成测试;步骤五:获取FPGA的动态翻转截面和可靠度变化曲线。
Description
技术领域
本发明涉及一种基于SRAM型FPGA的逐位翻转故障注入方法,属于FPGA空间可靠性技术领域。
背景技术
FPGA发生单粒子翻转后,其故障表现为FPGA中存储单元的内容改变,而这些存储单元的内容是由配置文件中的比特位决定的。目前,在地面上模拟空间中的单粒子翻转主要采用辐射模拟,即采用重离子或高能质子等模拟源来辐照器件,测试其辐射敏感参数,为器件的选型和预估实际辐射环境中单粒子翻转率提供依据。
如果采用辐射模拟的方法,首先,被辐照过的器件不能再被使用,从而提高了试验的成本;其次,国内的高能加速资源器资源相对较少,预约困难;再次,这种方法对于调整粒子种类和能量的操作较为复杂,难以控制注入位置;最后,经过原子序号小的粒子辐射后会发生二次核子反应,造成辐射污染,具有较高危险性。
与此相比,模拟单粒子翻转的第二种方式-故障注入的方法则弥补了上述缺点,成为地面模拟单粒子翻转的重要手段。尤其是利用SRAM型FPGA重配置特性进行的故障注入方法得到了极大的关注,但是现在还存在用户无法根据对应资源敏感位来决定翻转位的弊端。
发明内容
本发明的目的是为了解决上述间题,提出一种针对SRAM型FPGA的逐位翻转故障注入方法,通过检测电路设计配置存储单元中的单粒子翻转敏感位位置,得到动态翻转截面和失效率,绘出可靠度变化曲线,从而可以对电路设计空间应用的可靠度进行评测。
一种针对SRAM型FPGA的逐位翻转故障注入方法,包括以下几个步骤:
步骤一:初始配置;
测试开始后,首先控制器对被测芯片进行初始化配置;
步骤二:翻转比特位;
上位机发送逐位翻转指令,控制器根据指令对被测芯片配置数据进行逐位翻转,再将翻转位所在数据帧重配置到被测芯片,完成动态重配置;
步骤三:判断是否产生错误;
动态重配置完成后,比较被测芯片输出结果和预知的正确结果,判断第一位时,如果结果错误,则引起输出结果错误的位为敏感位,错误数H=H+1,错误数初始值为0,并将相应位的msk掩码值记为1,修正比特位;如果结果正确,将相应位的msk掩码值记为0,修正比特位,依次类推,逐位进行判断,全部完成后,将msk掩码值上传至上位机;
步骤四:判断是否完成测试;
判断测试是否完成,如果完成则将错误数上传至上位机,进入步骤五,如果没有完成,则返回步骤二;
步骤五:获取FPGA的动态翻转截面和可靠度变化曲线;
上位机将上传的msk掩码值与错误数生成一个msk.dat掩码文件,根据msk.dat掩码文件得到敏感位的总位数及具体位置;
得到敏感位的个数后,根据式(1)得到FPGA的动态翻转截面:
其中,σd为FPGA的动态翻转截面,σs为FPGA的静态翻转截面;σd的单位与σs相同,为cm2/device;#sensitivebits为敏感位总位数,#sensitivebits配置数据总位数;
将敏感位位数乘以每位的翻转率μ,单位为/bit/day,得到了系统的失效率λ,单位为/day,如(2)式所示;
λ=#sensitivebits×μ (2)
得到失效率后,由于系统可靠度服从泊松分布,其可靠度表达式如(3)式所示,绘出可靠度变化曲线:
R=exp(-λt)(3)
其中,R表示可靠度,t表示时间。
本发明的优点在于:
(1)试验花费时间较少;
(2)对设计进行模块布局后,可以得到试验中各模块的敏感位位数;
(3)可以对敏感位进行具体定位;
(4)不用用户输入任何信息,就可以对其电路设计进行评测。
附图说明
图1是本发明的工作流程框图;
图2是本发明实施例TMR乘法器CLB15-20栏msk.dat文件;
图3是本发明实施例TMR乘法器CLB15-20栏敏感位位置;
图4是本发明实施例经TMR设计乘法器的可靠度变化曲线。
具体实施方式
下面将结合附图和实施例对本发明作进一步的详细说明。
本发明是一种针对SRAM型FPGA的逐位翻转故障注入方法,流程如图1所示,包括以下几个步骤:
步骤一:初始配置;
测试开始后,首先控制器对被测芯片(FPGA)进行初始化配置;
步骤二:翻转比特位;
上位机发送逐位翻转指令,控制器根据指令对被测芯片配置数据进行逐位翻转,再将翻转位所在数据帧重配置到被测芯片,完成动态重配置;
步骤三:判断是否产生错误;
动态重配置完成后,比较被测芯片输出结果和预知的正确结果,判断第一位时,如果结果错误,则引起输出结果错误的位为敏感位,错误数H=H+1,错误数初始值为0,并将相应位的msk掩码值记为1,修正比特位;如果结果正确,将相应位的msk掩码值记为0,修正比特位,依次类推,逐位进行判断,全部完成后,将msk掩码值上传至上位机;
步骤四:判断是否完成测试;
判断测试是否完成,如果完成则将错误数上传至上位机,进入步骤五,如果没有完成,则返回步骤二;
步骤五:获取FPGA的动态翻转截面和可靠度变化曲线;
上位机将上传的msk掩码值与错误数生成一个msk.dat掩码文件,根据msk.dat掩码文件得到敏感位的总位数及具体位置。
得到敏感位的个数后,根据式(1)得到FPGA的动态翻转截面:
其中,σd为FPGA的动态翻转截面,σs为FPGA的静态翻转截面。σd的单位与σs相同,为cm2/device。#sensitivebits为敏感位总位数,#sensitivebits配置数据总位数。与静态翻转截面反映器件的抗单粒子翻转能力不同,动态翻转截面反映的是采用FPGA实现的用户设计的抗单粒子翻转能力,与使用的器件和用户设计均有关系。
将敏感位位数乘以每位的翻转率μ(upset rate,单位为/bit/day),就得到了系统的失效率λ(failure rate,单位为/day),如(2)式所示。
λ=#sensitivebits×μ (2)
得到失效率后,由于系统可靠度服从泊松分布,其可靠度表达式如(3)式所示,可以绘出可靠度变化曲线:
R=exp(-λt) (3)
其中,R表示可靠度,t表示时间。
本发明对用户电路设计生成的配置位进行逐位翻转,然后逐次动态重配置到FPGA中,检测翻转位对设计输出的影响。翻转后引起输出结果错误的配置位即为敏感位。本发明可以检测出用户设计在单粒子翻转下的所有敏感位,并通过生成一个msk.dat掩码文件,定位出敏感位在配置文件中的具体地址。
本发明利用FPGA的部分动态重配置技术,提出逐位翻转故障注入试验方法。逐位翻转故障注入即对具体电路设计生成的配置位进行逐位翻转,再逐次重配置到FPGA中,检测翻转位对设计输出的影响。翻转后引起输出功能出错的配置位称为敏感位。此方法可以得到FPGA配置存储单元的所有敏感位及其具体位置,并根据敏感位的位数得到动态翻转截面、失效率和可靠度变化曲线,从而完整的评测设计的可靠性。
实施例:
采用本发明的逐位翻转故障注入方法对经过TMR设计乘法器进行试验,将表决器放置于CLB15-20栏,截取部分生成的msk.dat文件如图2所示。
msk.dat文件中为1的位即表示配置数据中相应位为敏感位,最后三个字节代表敏感位的总位数。对msk.dat文件进行简单分析即可得敏感位的具体位置。TMR乘法器的CLB15-20栏的敏感位统计如图3所示。
根据实验结果,得到该电路设计的可靠性参数:动态翻转截面为5.88E-13/cm2/device;失效率为9.50E-7/day;获得可靠性曲线如图4所示。
该试验表明,本发明针对SRAM型FPGA的逐位翻转故障注入方法可以有效的得到电路设计用户配置存储单元的敏感位个数,并获得敏感位的具体位置,进一步可以计算出动态翻转截面和失效率,绘出可靠度变化曲线。
Claims (1)
1.一种针对SRAM型FPGA的逐位翻转故障注入方法,其特征在于,包括以下几个步骤:
步骤一:初始配置;
测试开始后,首先控制器对被测芯片进行初始化配置;
步骤二:翻转比特位;
上位机发送逐位翻转指令,控制器根据指令对被测芯片配置数据进行逐位翻转,再将翻转位所在数据帧重配置到被测芯片,完成动态重配置;
步骤三:判断是否产生错误;
动态重配置完成后,比较被测芯片输出结果和预知的正确结果,判断第一位时,如果结果错误,则引起输出结果错误的位为敏感位,错误数H=H+1,错误数初始值为0,并将相应位的msk掩码值记为1,修正比特位;如果结果正确,将相应位的msk掩码值记为0,修正比特位,依次类推,逐位进行判断,全部完成后,将msk掩码值上传至上位机;
步骤四:判断是否完成测试;
判断测试是否完成,如果完成则将错误数上传至上位机,进入步骤五,如果没有完成,则返回步骤二;
步骤五:获取FPGA的动态翻转截面和可靠度变化曲线;
上位机将上传的msk掩码值与错误数生成一个msk.dat掩码文件,根据msk.dat掩码文件得到敏感位的总位数及具体位置;
得到敏感位的个数后,根据式(1)得到FPGA的动态翻转截面:
其中,σd为FPGA的动态翻转截面,σs为FPGA的静态翻转截面;σd的单位与σs相同,为cm2/device;#sensitivebits为敏感位总位数,#sensitivebits配置数据总位数;
将敏感位位数乘以每位的翻转率μ,单位为/bit/day,得到了系统的失效率λ,单位为/day,如(2)式所示;
λ=#sensitivebits×μ (2)
得到失效率后,由于系统可靠度服从泊松分布,其可靠度表达式如(3)式所示,绘出可靠度变化曲线:
R=exp(-λt) (3)
其中,R表示可靠度,t表示时间。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201110449296 CN102521467B (zh) | 2011-12-29 | 2011-12-29 | 一种针对sram型fpga的逐位翻转故障注入方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201110449296 CN102521467B (zh) | 2011-12-29 | 2011-12-29 | 一种针对sram型fpga的逐位翻转故障注入方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102521467A true CN102521467A (zh) | 2012-06-27 |
CN102521467B CN102521467B (zh) | 2013-04-24 |
Family
ID=46292380
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 201110449296 Expired - Fee Related CN102521467B (zh) | 2011-12-29 | 2011-12-29 | 一种针对sram型fpga的逐位翻转故障注入方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102521467B (zh) |
Cited By (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103293468A (zh) * | 2013-04-09 | 2013-09-11 | 北京时代民芯科技有限公司 | 一种便于器件故障敏感度测试的故障注入系统及方法 |
CN103901342A (zh) * | 2014-03-18 | 2014-07-02 | 北京时代民芯科技有限公司 | 一种基于掩码文件的fpga精确故障注入系统及方法 |
CN104143036A (zh) * | 2013-05-10 | 2014-11-12 | 北京圣涛平试验工程技术研究院有限责任公司 | 基于失效率的空间辐射环境可靠性定量控制方法 |
CN104462658A (zh) * | 2014-11-06 | 2015-03-25 | 北京空间飞行器总体设计部 | 一种三模冗余防护结构fpga单粒子翻转失效概率的评估方法 |
CN105548866A (zh) * | 2015-12-08 | 2016-05-04 | 中国科学院电子学研究所 | 一种基于辐照试验环境模拟的sram型fpga测试方法 |
CN105869679A (zh) * | 2016-03-28 | 2016-08-17 | 北京空间飞行器总体设计部 | 一种sram型fpga单粒子软错误与电路失效率关系快速测定方法 |
CN105974905A (zh) * | 2016-05-10 | 2016-09-28 | 中国民航大学 | 面向航空数据总线单粒子翻转故障的仿真测试系统及方法 |
CN107092539A (zh) * | 2017-02-24 | 2017-08-25 | 北京时代民芯科技有限公司 | 一种基于配置码流的fpga故障注入复合模型 |
CN107144783A (zh) * | 2017-05-10 | 2017-09-08 | 哈尔滨工业大学 | 支持单位和多位故障注入的sram型fpga评估方法 |
CN107862111A (zh) * | 2017-10-19 | 2018-03-30 | 湖南斯北图科技有限公司 | 一种评估系统单粒子功能失效率的传播分析方法 |
CN107942174A (zh) * | 2017-12-18 | 2018-04-20 | 中国电子产品可靠性与环境试验研究所 | 大气中子诱发的fpga器件失效率检测方法和系统 |
CN108646106A (zh) * | 2018-03-14 | 2018-10-12 | 北京航空航天大学 | 具有单粒子翻转故障注入功能的微型icap控制器 |
US10956265B2 (en) | 2015-02-03 | 2021-03-23 | Hamilton Sundstrand Corporation | Method of performing single event upset testing |
CN113253097A (zh) * | 2021-05-31 | 2021-08-13 | 中国人民解放军国防科技大学 | 一种基于整帧翻转的sram型fpga故障注入加速试验方法 |
CN113804996A (zh) * | 2021-08-19 | 2021-12-17 | 中国科学院国家空间科学中心 | 一种星载dsp在轨单粒子翻转效应测试系统及方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1183564A (zh) * | 1996-11-22 | 1998-06-03 | 中国科学院近代物理研究所 | 单粒子效应引起cpu寄存器位翻转的测试方法及装置 |
CN101281555A (zh) * | 2008-05-28 | 2008-10-08 | 北京时代民芯科技有限公司 | 一种验证抗单粒子效应能力的故障注入系统及其方法 |
CN101826038A (zh) * | 2010-04-28 | 2010-09-08 | 复旦大学 | 一种抗sram fpga器件seu的电路及方法 |
CN102169022A (zh) * | 2010-12-31 | 2011-08-31 | 中国航天科技集团公司第五研究院第五一○研究所 | 一种脉冲激光单粒子翻转截面的实验方法 |
-
2011
- 2011-12-29 CN CN 201110449296 patent/CN102521467B/zh not_active Expired - Fee Related
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1183564A (zh) * | 1996-11-22 | 1998-06-03 | 中国科学院近代物理研究所 | 单粒子效应引起cpu寄存器位翻转的测试方法及装置 |
CN101281555A (zh) * | 2008-05-28 | 2008-10-08 | 北京时代民芯科技有限公司 | 一种验证抗单粒子效应能力的故障注入系统及其方法 |
CN101826038A (zh) * | 2010-04-28 | 2010-09-08 | 复旦大学 | 一种抗sram fpga器件seu的电路及方法 |
CN102169022A (zh) * | 2010-12-31 | 2011-08-31 | 中国航天科技集团公司第五研究院第五一○研究所 | 一种脉冲激光单粒子翻转截面的实验方法 |
Cited By (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103293468A (zh) * | 2013-04-09 | 2013-09-11 | 北京时代民芯科技有限公司 | 一种便于器件故障敏感度测试的故障注入系统及方法 |
CN104143036A (zh) * | 2013-05-10 | 2014-11-12 | 北京圣涛平试验工程技术研究院有限责任公司 | 基于失效率的空间辐射环境可靠性定量控制方法 |
CN104143036B (zh) * | 2013-05-10 | 2017-06-13 | 北京圣涛平试验工程技术研究院有限责任公司 | 基于失效率的空间辐射环境可靠性定量控制方法 |
CN103901342A (zh) * | 2014-03-18 | 2014-07-02 | 北京时代民芯科技有限公司 | 一种基于掩码文件的fpga精确故障注入系统及方法 |
CN104462658B (zh) * | 2014-11-06 | 2017-07-28 | 北京空间飞行器总体设计部 | 一种三模冗余防护结构fpga单粒子翻转失效概率的评估方法 |
CN104462658A (zh) * | 2014-11-06 | 2015-03-25 | 北京空间飞行器总体设计部 | 一种三模冗余防护结构fpga单粒子翻转失效概率的评估方法 |
US10956265B2 (en) | 2015-02-03 | 2021-03-23 | Hamilton Sundstrand Corporation | Method of performing single event upset testing |
CN105548866A (zh) * | 2015-12-08 | 2016-05-04 | 中国科学院电子学研究所 | 一种基于辐照试验环境模拟的sram型fpga测试方法 |
CN105869679B (zh) * | 2016-03-28 | 2018-09-18 | 北京空间飞行器总体设计部 | 一种sram型fpga单粒子软错误与电路失效率关系快速测定方法 |
CN105869679A (zh) * | 2016-03-28 | 2016-08-17 | 北京空间飞行器总体设计部 | 一种sram型fpga单粒子软错误与电路失效率关系快速测定方法 |
CN105974905B (zh) * | 2016-05-10 | 2018-08-17 | 中国民航大学 | 面向航空数据总线单粒子翻转故障的仿真测试系统及方法 |
CN105974905A (zh) * | 2016-05-10 | 2016-09-28 | 中国民航大学 | 面向航空数据总线单粒子翻转故障的仿真测试系统及方法 |
CN107092539B (zh) * | 2017-02-24 | 2020-05-19 | 北京时代民芯科技有限公司 | 一种基于配置码流的fpga故障注入复合模型 |
CN107092539A (zh) * | 2017-02-24 | 2017-08-25 | 北京时代民芯科技有限公司 | 一种基于配置码流的fpga故障注入复合模型 |
WO2018153131A1 (zh) * | 2017-02-24 | 2018-08-30 | 北京时代民芯科技有限公司 | 一种基于配置码流的fpga故障注入复合模型及故障注入系统 |
CN107144783A (zh) * | 2017-05-10 | 2017-09-08 | 哈尔滨工业大学 | 支持单位和多位故障注入的sram型fpga评估方法 |
CN107862111A (zh) * | 2017-10-19 | 2018-03-30 | 湖南斯北图科技有限公司 | 一种评估系统单粒子功能失效率的传播分析方法 |
CN107942174A (zh) * | 2017-12-18 | 2018-04-20 | 中国电子产品可靠性与环境试验研究所 | 大气中子诱发的fpga器件失效率检测方法和系统 |
CN108646106B (zh) * | 2018-03-14 | 2020-06-02 | 北京航空航天大学 | 具有单粒子翻转故障注入功能的微型icap控制器 |
CN108646106A (zh) * | 2018-03-14 | 2018-10-12 | 北京航空航天大学 | 具有单粒子翻转故障注入功能的微型icap控制器 |
CN113253097A (zh) * | 2021-05-31 | 2021-08-13 | 中国人民解放军国防科技大学 | 一种基于整帧翻转的sram型fpga故障注入加速试验方法 |
CN113253097B (zh) * | 2021-05-31 | 2021-09-21 | 中国人民解放军国防科技大学 | 一种基于整帧翻转的sram型fpga故障注入加速试验方法 |
CN113804996A (zh) * | 2021-08-19 | 2021-12-17 | 中国科学院国家空间科学中心 | 一种星载dsp在轨单粒子翻转效应测试系统及方法 |
Also Published As
Publication number | Publication date |
---|---|
CN102521467B (zh) | 2013-04-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102521467B (zh) | 一种针对sram型fpga的逐位翻转故障注入方法 | |
CN102540062B (zh) | 一种针对sram型fpga的随机翻转故障注入方法 | |
CN100576221C (zh) | 一种验证抗单粒子效应能力的故障注入系统及其方法 | |
CN102332310B (zh) | 一种基于fpga的nand flash器件单粒子效应测试系统 | |
CN107741559B (zh) | 一种面向空间辐射环境下的单粒子翻转测试系统及方法 | |
CN104199773B (zh) | 获取代码覆盖信息的方法及装置 | |
CN104181421B (zh) | Fpga单粒子效应动态故障测试装置及方法 | |
CN105548866A (zh) | 一种基于辐照试验环境模拟的sram型fpga测试方法 | |
CN104407980A (zh) | 移动应用自动化测试装置和方法 | |
CN106133537A (zh) | 一种fpga功能模块仿真验证方法及其系统 | |
CN107167725A (zh) | 一种快速低开销全自动数字集成电路单粒子故障注入系统 | |
CN102096627A (zh) | 星载软件抗单粒子翻转故障的测试装置 | |
CN109558649A (zh) | 一种面向宇航芯片的寄存器单粒子效应模拟仿真方法 | |
CN107850641A (zh) | 片上系统(SoC)的系统级验证 | |
CN107451058A (zh) | 一种软件开发方法和装置 | |
CN110941934A (zh) | 一种fpga原型验证开发板分割仿真系统、方法、介质及终端 | |
CN104536864A (zh) | 一种位翻转可控的Nand Flash仿真模型的注错方法 | |
CN107797540A (zh) | 变速器故障测试方法、装置及终端 | |
CN105404574A (zh) | 一种智能卡与移动终端一致性测试方法及装置 | |
CN106886487A (zh) | 用于评价fpga软件可靠性的方法 | |
CN105740087B (zh) | 利用查找表移位寄存器进行sram型fpga刷新效果验证的方法 | |
CN202443461U (zh) | 一种单粒子误差注入仿真测试系统 | |
Wang et al. | Impact of TMR design layouts on single event tolerance in SRAM-based FPGAs | |
CN117436323A (zh) | 一种故障注入的敏感节点提取方法、装置、设备及介质 | |
CN108427838B (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 | ||
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: 20130424 Termination date: 20191229 |
|
CF01 | Termination of patent right due to non-payment of annual fee |