CN113253097B - 一种基于整帧翻转的sram型fpga故障注入加速试验方法 - Google Patents
一种基于整帧翻转的sram型fpga故障注入加速试验方法 Download PDFInfo
- Publication number
- CN113253097B CN113253097B CN202110596690.1A CN202110596690A CN113253097B CN 113253097 B CN113253097 B CN 113253097B CN 202110596690 A CN202110596690 A CN 202110596690A CN 113253097 B CN113253097 B CN 113253097B
- Authority
- CN
- China
- Prior art keywords
- unit
- frame
- fault injection
- test
- interval
- 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
Images
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/28—Testing of electronic circuits, e.g. by signal tracer
- G01R31/2851—Testing of integrated circuits [IC]
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/08—Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
- G11C29/12—Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
- G11C29/44—Indication or identification of errors, e.g. for repair
Abstract
本发明公开了一种基于整帧翻转的SRAM型FPGA故障注入加速试验方法,包括:对被测单元的测试帧进行整帧翻转,注入故障;对测试帧进行刷新修复,使用控制单元比对被测单元和参考单元的数据流是否一致;当被测单元和参考单元的数据流有差异,说明测试帧存在不可恢复的异常比特位;采用二分法重新对当前帧进行故障注入,重复多次直到当前帧的比特位数量小于阈值,对第二区间进行逐位翻转,定位不可恢复的异常比特位的位置。本发明能够加速故障注入试验过程,提高效率,能够快速找到不可恢复的异常比特位的具体位置,对三模加固设计具有指导意义。
Description
技术领域
本发明涉及集成电路技术领域,特别涉及一种基于整帧翻转的SRAM型FPGA故障注入加速试验方法。
背景技术
SRAM型FPGA凭借其高性能、低成本、低功耗、可重配置等优点,以及随着其集成度的不断提高,逐渐开始应用于航空航天领域。但是由于SRAM型FPGA的结构特点,以及空间中强辐射环境的作用,导致SRAM型FPGA容易受到外太空中的高能粒子作用,而发生单粒子效应,其主要表现为单粒子翻转(SEU)。2007年至2010年我国航天器单粒子效应故障的统计表明,单粒子效应在空间环境辐射效应中占据主导地位,对航天器的危害日益严重。
目前故障注入方法主要是通过人为改变FPGA配置存储器内容的方式来实现故障注入。传统逐位翻转故障注入方法的优点是能精准全面定位敏感位,找到可恢复异常比特位和不可恢复异常比特位,但由于SRAM型FPGA配置数据bit位数量庞大,逐位翻转耗时太长,效率低,无法在设计前期快速迭代。大量逐位翻转试验结果表明,造成整个设计功能异常的大多是可恢复的bit位,这类异常可通过刷新修复,不会造成持续性的功能异常;只有少量的异常bit位会造成持续性的功能异常,必须通过在轨重加载恢复,这类异常的影响极大,会造成在轨服务的长时间中断。工程中更加关注会造成持续异常的情况,即不可恢复异常比特位,但由于不可恢复异常比特位很少,若采用传统逐位翻转的测试方法,耗时太长,不利于抗辐照设计优化快速迭代。
发明内容
本发明旨在至少解决现有技术中存在的技术问题之一。为此,本发明提出一种基于整帧翻转的SRAM型FPGA故障注入加速试验方法,能够加速故障注入试验过程,提高效率,能够快速找到不可恢复异常比特位的具体位置,对三模加固设计具有指导意义。
本发明还提出一种SRAM型FPGA的故障注入加速试验平台。
本发明还提出一种具有上述基于整帧翻转的SRAM型FPGA故障注入加速试验方法的SRAM型FPGA的故障注入加速试验系统。
本发明还提出一种计算机可读存储介质。
一方面,本实施例提供了一种基于整帧翻转的SRAM型FPGA故障注入加速试验方法,应用于故障注入试验平台,所述故障注入试验平台包括被测单元、参考单元、刷新单元、控制单元。所述被测单元运行待测试配置项,并接受控制单元的故障注入;所述参考单元运行与被测单元功能相同的配置项;所述刷新单元通过动态局部刷新实现对被测单元的故障注入,并完成对被测单元和参考单元的全局加载;所述控制单元负责结果比对、记录和整个故障注入过程的控制。所述基于整帧翻转的SRAM型FPGA故障注入加速试验方法包括以下步骤:
步骤S1:通过刷新单元对所述被测单元的测试帧进行整帧翻转,注入故障;
步骤S2:通过刷新单元对所述测试帧进行刷新修复;
步骤S3:通过所述控制单元比对所述被测单元和所述参考单元的数据流是否一致,当所述被测单元和所述参考单元的数据流有差异,使用二分法将所述测试帧分割得到第一区间和第二区间,分别对所述第一区间和所述第二区间进行翻转和数据刷新修复;
步骤S4:通过所述控制单元比对所述第一区间、所述第二区间与所述参考单元的数据流是否一致,当所述第一区间和所述参考单元的数据流一致,所述第二区间和所述参考单元的数据流有差异,将所述第二区间设为新的测试帧;
步骤S5:重复所述步骤S3和步骤S4,直到步骤S4中的所述第二区间的比特位数量小于阈值,对所述第二区间进行逐位翻转,定位不可恢复异常比特位的位置。
根据本发明实施例的基于整帧翻转的SRAM型FPGA故障注入加速试验方法,至少具有如下有益效果:传统逐位翻转故障注入测试方法能全面、精准定位所有敏感位(Sensitive Bit, SB),发现可恢复异常比特位(Recoverable-SB,R-SB)和不可恢复异常比特位(Unrecoverable-SB,UR-SB)。但FPGA配置数据比特位数量庞大,逐位翻转耗时太长。卫星载荷在轨运行情况表明,UR-SB无法通过定时刷新修复,必须通过在轨重新加载恢复,会造成在轨服务的长时间中断。而大量故障注入结果表明,UR-SB仅占整个SB中的极少部分,若采用传统逐位翻转的测试方法,效率极低。
本实施例提供的基于整帧翻转的SRAM型FPGA故障注入加速试验方法,首先对被测单元配置数据进行整帧翻转,然后通过刷新单元修复之前的整帧翻转操作,再由控制单元比对数据流,若正确,则直接跳转到下一帧,否则,通过二分法对当前帧进行不可恢复异常比特位定位。对配置文件进行整帧注错,刷新修复后验证整个设计的功能异常,以快速模拟故障注入,能够大幅缩短试验耗时,快速定位不可恢复异常比特位。
根据本发明的一些实施例,在所述步骤S2之后,包括步骤:通过所述控制单元比对所述被测单元和所述参考单元的数据流是否一致,当所述被测单元和所述参考单元的数据流一致,所述测试帧无不可恢复异常比特位,对下一测试帧进行测试。
当判断本测试帧无不可恢复异常比特位,对下一帧进行处理,相较于传统的逐帧翻转的测试方法,本实施例有效缩短了测试时间,能够加速故障注入试验过程,提高数据处理的效率,能够快速找到不可恢复异常比特位的具体位置。
根据本发明的一些实施例,在所述步骤S1之前,包括步骤:
对故障注入试验平台进行初始化,加载所述被测单元、所述参考单元、所述控制单元的配置逻辑。
根据本发明的一些实施例,所述阈值为3以上的自然数。对测试帧进行第n次采用二分法,当二分法后每段范围足够小时,直接采用传统逐位翻转故障注入,即可精确定位UR-SB位置。阈值可以是3,也可以是4、5、6、7、8、9、10或者其它的数字,当然也可以是16、32、12、64、128等数字,目的都是提升数据处理的效率,本实施例对其不构成限制。
根据本发明的一些实施例,在所述步骤S3之后,包括步骤:
通过所述控制单元比对所述第一区间、所述第二区间与所述参考单元的数据流是否一致;
当所述第一区间和所述参考单元的数据流有差异,对所述第一区间使用二分法对所述不可恢复异常比特位进行定位;
所述第二区间和所述参考单元的数据流有差异,对所述第二区间使用二分法对所述不可恢复异常比特位进行定位。
根据本发明的一些实施例,所述步骤S1包括步骤:刷新单元通过SelectMAP接口对所述被测单元的测试帧进行整帧翻转,注入故障。
根据本发明的一些实施例,所述步骤S2包括步骤:刷新单元通过SelectMAP接口对所述测试帧进行刷新修复。
根据本发明的一些实施例,提供了一种SRAM型FPGA的故障注入加速试验平台,包括:
被测单元,所述被测单元运行被测试设计的三模加固配置项;
参考单元,所述参考单元运行被测试设计的单模配置项;
控制单元,所述控制单元用于负责比对所述被测单元和所述参考单元的数据流是否一致;
刷新单元,通过动态局部刷新实现被测单元的故障注入,并完成对被测单元和参考单元的全局加载。
根据本发明实施例的SRAM型FPGA的故障注入加速试验平台,至少具有如下有益效果:SRAM型FPGA的故障注入加速试验平台包括被测单元、参考单元、控制单元、刷新单元,在SRAM型FPGA的故障注入加速试验平台能够运行如第一方面所述的基于整帧翻转的SRAM型FPGA故障注入加速试验方法,对配置文件进行整帧注错,刷新修复后验证整个设计的功能异常,以快速模拟故障注入,能够大幅缩短试验耗时,快速定位不可恢复异常比特位。
第二方面,本实施例提供了一种SRAM型FPGA的故障注入加速试验系统,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如第一方面所述的基于整帧翻转的SRAM型FPGA故障注入加速试验方法。
第三方面,本实施例提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令用于使计算机执行如第一方面所述的基于整帧翻转的SRAM型FPGA故障注入加速试验方法。
本发明的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
本发明的上述和/或附加的方面和优点结合下面附图对实施例的描述中将变得明显和容易理解,其中摘要附图要与说明书附图的其中一幅完全一致:
图1是本发明一个实施例提供的基于整帧翻转的SRAM型FPGA故障注入加速试验方法的流程图;
图2是本发明另一个实施例提供的基于整帧翻转的SRAM型FPGA故障注入加速试验方法的故障注入试验模型;
图3是本发明另一个实施例提供的基于整帧翻转的SRAM型FPGA故障注入加速试验方法的算法流程示意图;
图4是发明另一个实施例提供的基于整帧翻转的SRAM型FPGA故障注入加速试验方法的不同二分法次数和不同器件的注错测试加速效率图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
需要说明的是,虽然在系统示意图中进行了功能模块划分,在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于系统中的模块划分,或流程图中的顺序执行所示出或描述的步骤。说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。
传统逐位翻转故障注入测试方法能全面、精准定位所有敏感位(Sensitive Bit,SB),发现可恢复异常比特位(Recoverable-SB,R-SB)和不可恢复异常比特位(Unrecoverable-SB,UR-SB)。但FPGA配置数据比特位数量庞大,逐位翻转耗时太长。卫星载荷在轨运行情况表明,UR-SB无法通过定时刷新修复,必须通过在轨重新加载恢复,会造成在轨服务的长时间中断。而大量故障注入结果表明,UR-SB仅占整个SB中的极少部分,若采用传统逐位翻转的测试方法,效率极低。
本发明构建的故障注入试验模型由被测单元(Unit under Test, UUT)、参考单元(Reference Unit, RU)、刷新单元(Scrub Unit, SU)以及控制单元(Control Unit, CU)组成,其中UUT运行待测试配置项,并接受控制单元的故障注入;RU运行与被测单元功能相同的配置项,作为功能参考标准;SU通过动态局部刷新实现对UUT的故障注入,并完成对UUT和RU等的全局加载;CU完成对UUT和RU的配置,并负责结果比对、记录和整个故障注入过程的控制。
下面结合附图,对本发明实施例作进一步阐述。
参照图1,图1是本发明一个实施例提供的基于整帧翻转的SRAM型FPGA故障注入加速试验方法的流程图,基于整帧翻转的SRAM型FPGA故障注入加速试验方法包括但不仅限于步骤S1至步骤S5。
步骤S1:通过刷新单元对被测单元的测试帧进行整帧翻转,注入故障;
步骤S2:通过刷新单元对测试帧进行刷新修复;
步骤S3:通过控制单元比对被测单元和参考单元的数据流是否一致,当被测单元和参考单元的数据流有差异,使用二分法将测试帧分割得到第一区间和第二区间,分别对第一区间和第二区间进行翻转和数据刷新修复;
步骤S4:通过控制单元比对第一区间、第二区间与参考单元的数据流是否一致,当第一区间和参考单元的数据流一致,第二区间和参考单元的数据流有差异,将第二区间设为新的测试帧;
步骤S5:重复步骤S3和步骤S4,直到步骤S4中的第二区间的比特位数量小于阈值,对第二区间进行逐位翻转,定位不可恢复异常比特位的位置。
在一实施例中,基于整帧翻转的SRAM型FPGA故障注入加速试验方法应用于故障注入试验平台,所述故障注入试验平台包括被测单元、参考单元、刷新单元、控制单元,所述被测单元运行待测试配置项,并接受控制单元的故障注入,所述参考单元运行与被测单元功能相同的配置项,所述刷新单元通过动态局部刷新实现对被测单元的故障注入,并完成对被测单元和参考单元的全局加载,所述控制单元负责结果比对、记录和整个故障注入过程的控制。
参考图2、图3和图4,图2是本发明另一个实施例提供的基于整帧翻转的SRAM型FPGA故障注入加速试验方法的故障注入试验模型,图3是本发明另一个实施例提供的基于整帧翻转的SRAM型FPGA故障注入加速试验方法的算法流程示意图,图4是发明另一个实施例提供的基于整帧翻转的SRAM型FPGA故障注入加速试验方法的不同二分法次数和不同器件的注错测试加速效率图。
需要说明的是,基于整帧翻转的SRAM型FPGA故障注入加速试验方法的具体实施步骤可以包括:
Step1.配置初始化
CU(控制单元)对故障注入加速试验平台进行初始化,SU(刷新单元)加载UUT(被测单元)、RU(参考单元)的配置逻辑;
Step2.UUT整帧翻转
当未达到最后1帧时,SU依次对UUT(被测单元)进行整帧翻转,实现整帧故障注入,否则测试结束;
Step3.刷新后验证
SU(刷新单元)修复当前帧的整帧翻转,由CU(控制单元)对UUT(被测单元)和RU(参考单元)的数据流进行比对;若正确,则说明当前帧不存在UR-SB,返回Step2,否则执行Step4;
Step4.二分法精确定位UR-SB(不可恢复异常比特位)
执行配置初始化,采用二分法重新对当前帧进行故障注入。当第m次采用二分法时,对每段1/2m帧的所有配置数据进行翻转,返回Step3比对结果,若正确,则说明该段1/2m帧不存在UR-SB(不可恢复异常比特位),否则,说明该段存在UR-SB(不可恢复异常比特位)。如此反复,当二分法后每段范围足够小时,直接采用传统逐位翻转故障注入,即可精确定位UR-SB(不可恢复异常比特位)位置。当前帧测试完成后记录结果,并返回Step1,继续下一帧测试。
Step5.统计结果,完成测试。
上述实施步骤在整帧翻转后并没有马上比对UUT和RU结果,故无法发现R-SB,且整帧翻转大概率会造成UUT功能异常。相比于传统逐位翻转的故障注入方法,本实施例提出基于整帧翻转的故障注入加速试验方法的有效性分析如下:
假设SRAM型FPGA配置文件总比特数为M,UR-SB总数为N,配置文件总帧数为L,每一帧有K比特,异常帧采用m次二分法。由于不同卫星载荷FPGA设计差异明显,难以分析SB在整个配置文件中的具体分析,故本文设定相对最优和较差的两种情况,以测试流程中的比对次数为指标,分别分析基于整帧翻转的故障注入加速试验方法的有效性。
假设最优情况下,所有UR-SB均位于同一帧的同一段内,则这种情况下的测试次数为
其中(L-1)为不含UR-SB帧的总测试次数,后面项为包含UR-SB的单一帧采用二分法的测试次数。
对于假定的一种较差情况,假设配置文件中每一帧都恰好包含有1比特UR-SB,则测试次数为
其中N为UR-SB总数。
对于传统逐位翻转测试方法而言,其总测试次数为M,则本实施例方法的测试效率相比传统方法的提升倍数P可计算为:
以目前在轨载荷应用最为广泛的XQR2V3000器件为例,其配置文件总比特数为9582848比特,总帧数为1804帧,每帧有5312比特,假设每帧采用5次二分法。上文分析的最优情况的测试次数为1980次,相比于传统的逐位翻转测试法加速了4839.8倍;较差情况采用此方法测试次数为319308次,相比于传统的逐位翻转测试法加速了30倍。因此,相比传统逐位翻转测试方法,本实施例所述方法在XQR2V3000平台上的测试效率提升倍数P为:
可以看到,本实施例所述方法的测试效率提升明显,尽管假设的较差情况和最优情况在工程实际中出现的概率均不大,但即使在较差情况下,也提升了30倍,这充分证明了本实施例所述方法的有效性。
前面对算法在假定条件下的性能进行了理论分析,但可以理解的是,二分法次数m、配置文件总比特数M等参数会对算法的性能产生影响,因此,首先对不同参数在假定较差条件下的性能进行仿真分析,以确定在实际测试环境下的最优参数选择;在此基础上,针对在轨运行载荷的故障注入测试结果进行分析,以实测结果进一步验证算法的有效性。
首先,针对卫星载荷在轨常用的Xilinx(赛灵思)公司XQR2V1000、XQR2V3000、XQR2V6000型,以及目前国产化的XQR4VSX55和JFM7K325T型共5种FPGA,分析不同二分法次数m对式(2)所示的较差情况下加速测试相比于传统逐位翻转测试提升倍速的影响。
可以看到,5型FPGA的加速效率均有显著提升,特别是随着二分法次数的增加,测试效率提升倍数也越来越高。尽管这主要是由于本文假定每一帧仅有1比特错误,但实测情况下,UR-SB本来就相对极少,且二分次数不可能太高,针对分析的5款器件,最大二分次数仅为11,即使因为二分操作会增加一部分试验次数,但这相比于百万甚至千万量级的总比特总数,可忽略不计。故在实际工程中,建议选取最大的二分法次数。目前在轨载荷最常用的XQR2V3000型FPGA最大提升倍数为207倍,这意味着对于动辄需要几个月的逐位翻转试验,若采用本实施例所述的基于整帧翻转的加速注错方法,可在几天之内完成所有UR-SB的精确定位,这在卫星载荷研制初期,对于载荷配置项的抗辐照加固设计评估和提升具有重要意义。
针对在轨某型载荷的故障注入试验测试结果,进一步分析本实施例在实际工程中的有效性。该载荷采用XQR2V3000器件,故障注入试验平台设计主要包含:被测FPGA、参考FPGA、测试FPGA、刷新控制器以及上位机组成。其中被测FPGA由1片SRAM型FPGA实现,运行被测试设计的三模加固配置项,提供实际运行情景场景;参考FPGA由1片SRAM型FPGA实现,运行被测试设计的单模配置项,作为功能参考标准;测试FPGA由1片SRAM型FPGA实现,负责比对被测FPGA和参考FPGA的数据流是否一致;刷新控制器由1片SRAM型FPGA实现,负责通过SelectMAP接口对被测FPGA、参考FPGA、测试FPGA进行全局加载,并实现对被测FPGA的动态局部刷新;上位机(处理器)由1片DSP实现,与FPGA通过总线交互,所有的寄存器均可通过DSP处理器访问,控制被测FPGA、参考FPGA输出数据流,获取数据流比对结果,控制整个故障注入试验过程。
在上述试验平台上对某型载荷采用逐位翻转测试方法测试结果如下:共测试1420帧(BRAM的对应384帧一般不进行故障注入测试),共7543040比特,最终定位292个UR-SB。分析UR-SB分布情况发现,大部分帧不存在UR-SB,部分帧存在1比特UR-SB,少数帧中存在多个UR-SB。
实测结果表明,85.3%(1212帧)的整帧不存在UR-SB,这表明采用本实施例整帧翻转加速算法必然能大幅提升测试效率。当采用5次二分法时,测试次数共为46522次,是传统逐位翻转测试法的1/162,即约加速了162倍,而当采用10次二分法时,该加速倍数增加为949倍,上述结果充分证明了本实施例基于整帧翻转测试方法的有效性。
在一实施例中,通过控制单元比对被测单元和参考单元的数据流是否一致,当被测单元和参考单元的数据流一致,测试帧无不可恢复异常比特位,对下一测试帧进行测试。测试帧没有不可恢复异常比特位,对测试帧的后一帧进行整帧翻转故障注入,再进行不可恢复异常比特位的检测,直至所有帧测试完成,本实施例能够有效提升数据处理的效率。
在一实施例中,在步骤S1之前,包括步骤:对故障注入试验平台进行初始化,加载被测单元、参考单元、控制单元的配置逻辑。
在一实施例中,阈值为3以上的自然数。当对测试帧进行第n次采用二分法重新对当前帧进行故障注入,当二分法后每段范围足够小时,直接采用传统逐位翻转故障注入,即可精确定位UR-SB位置。阈值可以是3,也可以是4、5、6、7、8、9、10或者其它的数字,当然也可以是16、32、12、64、128等数字,目的都是提升数据处理的效率,本实施例对其不构成限制。
在一实施例中,在步骤S3之后,包括步骤:
通过控制单元比对第一区间、第二区间与参考单元的数据流是否一致;
当第一区间和参考单元的数据流有差异,对第一区间使用二分法对不可恢复异常比特位进行定位;
第二区间和参考单元的数据流有差异,对第二区间使用二分法对不可恢复异常比特位进行定位。
在一实施例中,步骤S1包括步骤:刷新单元通过SelectMAP接口对被测单元的测试帧进行整帧翻转,注入故障。
在一实施例中,步骤S2包括步骤:刷新单元通过SelectMAP接口对测试帧进行刷新修复。
本发明还提供了一种SRAM型FPGA的故障注入加速试验平台,包括:
被测单元,所述被测单元运行测试设计的三模加固配置项;
参考单元,所述参考单元运行测试设计的单模配置项;
控制单元,所述控制单元用于负责比对所述被测单元和所述参考单元的数据流是否一致;
刷新单元,通过动态局部刷新实现被测单元的故障注入,并完成对被测单元和参考单元的全局加载。
SRAM型FPGA的故障注入加速试验平台包括被测单元、参考单元、控制单元、刷新单元,在SRAM型FPGA的故障注入加速试验平台能够运行如第一方面所述的基于整帧翻转的SRAM型FPGA故障注入加速试验方法,对配置文件进行整帧注错,刷新修复后验证整个设计的功能异常,以快速模拟故障注入,能够大幅缩短试验耗时,快速定位不可恢复异常比特位。
本发明还提供了一种SRAM型FPGA的故障注入加速试验系统,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如第一方面所述的基于整帧翻转的SRAM型FPGA故障注入加速试验方法。
此外,本发明的一个实施例还提供了一种计算机可读存储介质,该计算机可读存储介质存储有计算机可执行指令,该计算机可执行指令被一个或多个控制处理器执行,例如,控制处理器能够执行图1中的方法步骤S1至步骤S5。
本领域普通技术人员可以理解,上文中所公开方法中的全部或某些步骤、系统可以被实施为软件、固件、硬件及其适当的组合。某些物理组件或所有物理组件可以被实施为由处理器,如中央处理器、数字信号处理器或微处理器执行的软件,或者被实施为硬件,或者被实施为集成电路,如专用集成电路。这样的软件可以分布在计算机可读介质上,计算机可读介质可以包括计算机存储介质(或非暂时性介质)和通信介质(或暂时性介质)。如本领域普通技术人员公知的,术语计算机存储介质包括在用于存储信息(诸如计算机可读指令、数据结构、程序模块或其他数据)的任何方法或技术中实施的易失性和非易失性、可移除和不可移除介质。计算机存储介质包括但不限于RAM、ROM、EEPROM、闪存或其他存储器技术、CD-ROM、数字多功能盘(DVD)或其他光盘存储、磁盒、磁带、磁盘存储或其他磁存储装置、或者可以用于存储期望的信息并且可以被计算机访问的任何其他的介质。此外,本领域普通技术人员公知的是,通信介质通常包含计算机可读指令、数据结构、程序模块或者诸如载波或其他传输机制之类的调制数据信号中的其他数据,并且可包括任何信息递送介质。
以上是对本发明的较佳实施进行了具体说明,但本发明并不局限于上述实施方式,熟悉本领域的技术人员在不违背本发明精神的前提下还可作出种种的等同变形或替换,这些等同的变形或替换均包含在本发明权利要求所限定的范围内。
Claims (9)
1.一种基于整帧翻转的SRAM型FPGA故障注入加速试验方法,应用于故障注入试验平台,所述故障注入试验平台包括被测单元、参考单元、刷新单元、控制单元,其特征在于,包括以下步骤:
步骤S1:通过刷新单元对所述被测单元的测试帧进行整帧翻转,注入故障;
步骤S2:通过刷新单元对所述测试帧进行刷新修复;
步骤S3:通过所述控制单元比对所述被测单元和所述参考单元的数据流是否一致,当所述被测单元和所述参考单元的数据流有差异,使用二分法将所述测试帧分割得到第一区间和第二区间,分别对所述第一区间和所述第二区间进行翻转和数据刷新修复;
步骤S4:通过所述控制单元比对所述第一区间、所述第二区间与所述参考单元的数据流是否一致,当所述第一区间和所述参考单元的数据流一致,所述第二区间和所述参考单元的数据流有差异,将所述第二区间设为新的测试帧;
步骤S5:重复所述步骤S3和步骤S4,直到步骤S4中的所述第二区间的比特位数量小于阈值,对所述第二区间进行逐位翻转,定位不可恢复异常比特位的位置。
2.根据权利要求1所述的基于整帧翻转的SRAM型FPGA故障注入加速试验方法,其特征在于,在所述步骤S2之后,包括步骤:
通过所述控制单元比对所述被测单元和所述参考单元的数据流是否一致,当所述被测单元和所述参考单元的数据流一致,所述测试帧无不可恢复异常比特位,对下一测试帧进行测试。
3.根据权利要求1所述的基于整帧翻转的SRAM型FPGA故障注入加速试验方法,其特征在于,在所述步骤S1之前,包括步骤:
对故障注入试验平台进行初始化,加载所述被测单元、所述参考单元、所述控制单元的配置逻辑。
4.根据权利要求1所述的基于整帧翻转的SRAM型FPGA故障注入加速试验方法,其特征在于,所述阈值为3以上的自然数。
5.根据权利要求1所述的基于整帧翻转的SRAM型FPGA故障注入加速试验方法,其特征在于,在所述步骤S3之后,包括步骤:
通过所述控制单元比对所述第一区间、所述第二区间与所述参考单元的数据流是否一致;
当所述第一区间和所述参考单元的数据流有差异,对所述第一区间使用二分法对所述不可恢复异常比特位进行定位;
所述第二区间和所述参考单元的数据流有差异,对所述第二区间使用二分法对所述不可恢复异常比特位进行定位。
6.根据权利要求1所述的基于整帧翻转的SRAM型FPGA故障注入加速试验方法,其特征在于,所述步骤S1包括步骤:
刷新单元通过SelectMAP接口对所述被测单元的测试帧进行整帧翻转,注入故障。
7.根据权利要求1所述的基于整帧翻转的SRAM型FPGA故障注入加速试验方法,其特征在于,所述步骤S2包括步骤:
刷新单元通过SelectMAP接口对所述测试帧进行刷新修复。
8.一种SRAM型FPGA的故障注入加速试验系统,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至7中任意一项所述的基于整帧翻转的SRAM型FPGA故障注入加速试验方法。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令用于使计算机执行如权利要求1至7任意一项所述的基于整帧翻转的SRAM型FPGA故障注入加速试验方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110596690.1A CN113253097B (zh) | 2021-05-31 | 2021-05-31 | 一种基于整帧翻转的sram型fpga故障注入加速试验方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110596690.1A CN113253097B (zh) | 2021-05-31 | 2021-05-31 | 一种基于整帧翻转的sram型fpga故障注入加速试验方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113253097A CN113253097A (zh) | 2021-08-13 |
CN113253097B true CN113253097B (zh) | 2021-09-21 |
Family
ID=77183489
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110596690.1A Active CN113253097B (zh) | 2021-05-31 | 2021-05-31 | 一种基于整帧翻转的sram型fpga故障注入加速试验方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113253097B (zh) |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20040093775A (ko) * | 2003-04-30 | 2004-11-09 | 주식회사 대우일렉트로닉스 | 버스폭 축소 변환 회로 |
US7424655B1 (en) * | 2004-10-01 | 2008-09-09 | Xilinx, Inc. | Utilizing multiple test bitstreams to avoid localized defects in partially defective programmable integrated circuits |
CN102521467A (zh) * | 2011-12-29 | 2012-06-27 | 北京航空航天大学 | 一种针对sram型fpga的逐位翻转故障注入方法 |
CN103345943A (zh) * | 2013-05-31 | 2013-10-09 | 中国科学院微电子研究所 | 一种基于非字线分割的存储器多位翻转的检测方法 |
CN106124970A (zh) * | 2016-06-17 | 2016-11-16 | 工业和信息化部电子第五研究所 | Sram型fpga的故障注入方法和装置 |
CN107144783A (zh) * | 2017-05-10 | 2017-09-08 | 哈尔滨工业大学 | 支持单位和多位故障注入的sram型fpga评估方法 |
CN109858195A (zh) * | 2019-03-22 | 2019-06-07 | 中国科学院光电技术研究所 | 一种sram型fpga上必要位单粒子翻转故障的在线仿真系统 |
CN112858889A (zh) * | 2021-01-20 | 2021-05-28 | 南京航空航天大学 | 一种面向超大规模集成电路的故障注入电路 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI223096B (en) * | 2002-10-08 | 2004-11-01 | Leadtek Research Inc | Test board for testing semiconductor device |
US8643168B1 (en) * | 2012-10-16 | 2014-02-04 | Lattice Semiconductor Corporation | Integrated circuit package with input capacitance compensation |
-
2021
- 2021-05-31 CN CN202110596690.1A patent/CN113253097B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20040093775A (ko) * | 2003-04-30 | 2004-11-09 | 주식회사 대우일렉트로닉스 | 버스폭 축소 변환 회로 |
US7424655B1 (en) * | 2004-10-01 | 2008-09-09 | Xilinx, Inc. | Utilizing multiple test bitstreams to avoid localized defects in partially defective programmable integrated circuits |
CN102521467A (zh) * | 2011-12-29 | 2012-06-27 | 北京航空航天大学 | 一种针对sram型fpga的逐位翻转故障注入方法 |
CN103345943A (zh) * | 2013-05-31 | 2013-10-09 | 中国科学院微电子研究所 | 一种基于非字线分割的存储器多位翻转的检测方法 |
CN106124970A (zh) * | 2016-06-17 | 2016-11-16 | 工业和信息化部电子第五研究所 | Sram型fpga的故障注入方法和装置 |
CN107144783A (zh) * | 2017-05-10 | 2017-09-08 | 哈尔滨工业大学 | 支持单位和多位故障注入的sram型fpga评估方法 |
CN109858195A (zh) * | 2019-03-22 | 2019-06-07 | 中国科学院光电技术研究所 | 一种sram型fpga上必要位单粒子翻转故障的在线仿真系统 |
CN112858889A (zh) * | 2021-01-20 | 2021-05-28 | 南京航空航天大学 | 一种面向超大规模集成电路的故障注入电路 |
Non-Patent Citations (1)
Title |
---|
一种SRAM型FPGA单粒子故障注入实验集的筛选方法;王梦茹 等;《微电子学与计算机》;20210131;第38卷(第1期);第38-44页 * |
Also Published As
Publication number | Publication date |
---|---|
CN113253097A (zh) | 2021-08-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Wang et al. | Reliability and maintenance for performance-balanced systems operating in a shock environment | |
US8601416B2 (en) | Method of circuit design yield analysis | |
US9846637B2 (en) | Machine learning based software program repair | |
Condia et al. | Combining architectural simulation and software fault injection for a fast and accurate CNNs reliability evaluation on GPUs | |
CN101630534B (zh) | 非易失性存储器可靠性的测试方法和装置 | |
CN114065677A (zh) | 用于集成电路硬件设计的故障注入测试的方法和系统 | |
CN107850641A (zh) | 片上系统(SoC)的系统级验证 | |
Colucci et al. | enpheeph: A fault injection framework for spiking and compressed deep neural networks | |
CN114398848A (zh) | 一种测试向量生成方法、装置及存储介质 | |
Condia et al. | A multi-level approach to evaluate the impact of GPU permanent faults on CNN's reliability | |
CN113253097B (zh) | 一种基于整帧翻转的sram型fpga故障注入加速试验方法 | |
CN111008507B (zh) | 一种受软错误影响的逻辑电路可靠性边界计算方法及设备 | |
Saifudin et al. | Dimensional reduction on cross project defect prediction | |
JP6045351B2 (ja) | 検証装置及び検証方法 | |
Na et al. | Simulated fault injection using simulator modification technique | |
CN103984632A (zh) | 一种基于错误传播分析的sdc脆弱指令识别方法 | |
US9632894B2 (en) | Apparatus for error simulation and method thereof | |
US20230176941A1 (en) | Method and system for tracing error of logic system design | |
Cavagnero et al. | Fault-aware design and training to enhance dnns reliability with zero-overhead | |
US10330728B2 (en) | Method and apparatus for obtaining a maximally compressed verification test set | |
CN112732352A (zh) | 在轨单粒子翻转芯片定位方法和装置 | |
US20030188273A1 (en) | Simulation-based technique for contention avoidance in automatic test pattern generation | |
Krištofík et al. | Enhancement of fault collection for embedded RAM redundancy analysis considering intersection and orphan faults | |
US11868241B1 (en) | Method and system for optimizing a verification test regression | |
Valfre | Testability modeling usage in design-for-test and product lifecycle cost reduction |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |