法律状态公告日
法律状态信息
法律状态
2020-07-17
授权
授权
2018-03-23
实质审查的生效 IPC(主分类):G01R31/28 申请日:20171012
实质审查的生效
2018-02-27
公开
公开
技术领域
本发明属于可靠性仿真测试技术领域,更为具体地讲,涉及一种面向空间辐射环境下的单粒子翻转仿真测试系统及方法。
背景技术
在电磁、辐射恶劣的太空环境下,集成电路及各类SRAM(Static Random AccessMemory,静态随机存取存储器)型FPGA器件发生故障的可能性大大增加,微电子器件内的敏感逻辑区与带电离子碰撞会改变电路的状态,当带电高能粒子击中半导体器件的敏感区域时,配置程序存储位由“0”变为“1”,或由“1”变为“0”,这种现象通常称为单粒子翻转(SEU,Single Event Upset)。单粒子翻转通常会导致系统信息缺失和功能失效。
半导体器件现场可编程门阵列FPGA具有高性能处理能力、开发成本低等优点,在空间辐射环境中的应用越来越广泛,特别是基于SRAM型FPGA器件,其可以反复重配置的特性使得短时间内多次现场定制的FPGA成为可能。但与此同时基于SRAM型FPGA器件对单粒子翻转十分敏感,因此设计面向基于SRAM型FPGA器件的单粒子翻转仿真测试系统及方法尤为重要。
针对单粒子翻转故障的模拟测试方法主要有地面辐射模拟和故障注入模拟。首先,辐射模拟采用重离子或质子等辐射源来辐照器件,测试其辐射敏感参数,但此方法需要昂贵复杂的设备,测试周期较长,灵活性较差,并且这种模拟方法可能造成辐射污染,具有较高风险。相比之下故障注入模拟的方法试验周期短,可避免装置复杂、费用高等缺点,成为地面模拟单粒子翻转的主要手段。
发明内容
本发明的目的在于克服现有技术的不足,提供一种面向空间辐射环境下的单粒子翻转测试系统及方法,并根据不同的测试需要对数据进行单个比特位翻转测试或者进行多比特位翻转测试,具有高灵活性、可靠性和稳定性等特点。
为实现上述发明目的,本发明为一种面向空间辐射环境下的单粒子翻转测试系统,其特征在于,包括:
一PC上位机,通过串口与单粒子翻转故障评估模块连接通信,用于发送测试指令和终止测试指令,以及模拟辐射水平参数生成对应的故障配置文件,同时还完成系统工作状态监测和日志文件管理;
一单粒子翻转故障评估模块,包括:配置FPGA模块、功能FPGA模块、串口控制模块、配置存储FLASH和结果存储FLASH,并集成在同一块测试板上,通过串口与上位机进行信息交互;
功能FPGA模块通过串口控制模块接收PC上位机发送测试指令,并为被测FPGA模块提供时钟、使能信号和复位信号,当功能FPGA模块接收到测试指令后,控制配置FPGA模块通过串口控制模块从PC上位机中读取故障配置文件,并将读取的故障配置文件存储在配置存储FLASH中;
当测试开始时,功能FPGA模块控制配置FPGA模块将配置存储FLASH中的故障配置文件读取到配置FPGA模块,并通过SelectMAP方式写入到被测FPGA模块,从而完成翻转故障的注入过程;
一被测FPGA模块,包含有标准系统设计和待测试系统设计;功能FPGA模块发送时钟、使能信号至被测FPGA模块,驱动被测FPGA模块运行,被测FPGA模块根据接收到的故障配置文件,将翻转故障注入到待测试系统设计,然后分别运行标准系统设计和待测试系统设计,并将待测试系统设计的输出结果与标准系统设计文件的输出结果进行比对,再将比对的结果通过总线DUT IO上传至功能FPGA模块中,功能FPGA模块再将此结果存储在结果存储FLASH中,同时回传至PC上位机,便于用户查看;同时,功能FPGA模块发送复位信号至被测FPGA模块,使被测FPGA模块进入复位状态。
同时,本发明还提供一种利用单粒子翻转测试系统进行仿真测试的方法,其特征在于,包括以下步骤:
(1)、仿真测试系统上电,通过JTAG方式对配置FPGA模块和功能FPGA模块进行功能配置;
(2)、PC上位机设定初始帧地址和翻转故障参数,模拟辐射水平参数并生成翻转故障配置文件;并发送开始测试指令至功能FPGA模块;
(3)、当功能FPGA模块通过串口控制模块接收PC上位机发送的开始测试指令后,功能FPGA模块控制配置FPGA模块通过串口控制模块从PC上位机中读取故障配置文件,并将读取的故障配置文件存储在配置存储FLASH中;然后功能FPGA模块对配置FPGA模块发送故障注入指令;
(4)、配置FPGA模块接收到故障注入指令后,配置FPGA模块根据读取到的故障配置文件中的翻转故障参数及待配置帧地址,通过SelectMAP回读方式从被测FPGA模块的待测试系统设计中读取一帧数据,然后将该帧数据的指定位进行单位翻转后通过SelectMAP方式配置到被测FPGA模块的待测试系统设计中,进而实现了翻转故障的注入;
(5)、翻转故障注入后,功能FPGA模块发送时钟、使能信号至被测FPGA模块,驱动被测FPGA模块的测试功能运行,测FPGA模块分别运行标准系统设计和待测试系统设计,并将运行结果传至功能FPGA模块进行对比分析,随后中断被测FPGA时钟,再将比对的结果通过总线DUT IO上传至功能FPGA模块中,功能FPGA模块再将比对结果存储在结果存储FLASH中,同时回传给PC上位机,如果待测系统设计和参考系统设计结果不一致,则返回到步骤(2),如果两者结果一致,则跳转至步骤(6);
(6)、重复(2)至(5)的步骤,直至完成对所有需要进行故障注入的待配置帧地址都进行了翻转故障注入,即一次完整的模拟测试完成;功能FPGA模块发送复位信号至被测FPGA模块,使被测FPGA模块进入复位状态;
(7)、一次完整模拟实验完成后PC上位机对该次实验的故障数据进行分析,统计总的引起功能故障的翻转位数,计算被测FPGA模块的功能故障率、被测FPGA模块的敏感位置以及评估针对性的加固设计效果,然后将数据分析结果以文本文件格式保存。
本发明的发明目的是这样实现的:
本发明一种面向空间辐射环境下的单粒子翻转测试系统及方法,基于空间应用中SRAM型FPGA动态可重构的特点,结合本发明提出的单粒子翻转测试方法,可以根据不同的测试需要对提取的数据进行单个比特位翻转测试或者进行多比特位翻转测试;其中,系统中的功能FPGA模块又可以根据不同测试需求进行功能配置,其灵活性高;其次,通过对注入故障的待测系统设计与标准系统设计的输出结果对比分析,得到系统设计中对单粒子翻转的敏感区域,以此设计出抗单粒子翻转加固程序,增加空间应用中SRAM型FPGA的可靠性和稳定性。
附图说明
图1是本发明一种面向空间辐射环境下的单粒子翻转测试系统原理图;
图2是本发明一种面向空间辐射环境下的单粒子翻转测试方法流程图。
具体实施方式
下面结合附图对本发明的具体实施方式进行描述,以便本领域的技术人员更好地理解本发明。需要特别提醒注意的是,在以下的描述中,当已知功能和设计的详细描述也许会淡化本发明的主要内容时,这些描述在这里将被忽略。
实施例
图1是本发明一种面向空间辐射环境下的单粒子翻转测试系统原理图。
在本实施例中,如图1所示,本发明一种面向空间辐射环境下的单粒子翻转测试系统,包括:PC上位机1、单粒子翻转故障评估模块2和被测FPGA模块3;其中,单粒子翻转故障评估模块2,又包括:配置FPGA模块4、功能FPGA模块5、串口控制模块6、配置存储FLASH 7和结果存储FLASH 8,并集成在同一块测试板上。
在本实施例中,结果存储FLASH 8是由一片SRAM flash组成,主要负责存储功能FPGA模块5的对比分析结果;配置存储FLASH 7由一片SRAM flash组成,主要负责存储故障配置文件。此处采用两块flash可以方便存储一次完整的模拟仿真测试中的全部结果,以便后续的分析。在配置FPGA模块4与功能FPGA模块5之间通过16位宽的互联总线通信。
PC上位机1,通过串口与单粒子翻转故障评估模块2连接通信,用于向功能FPGA模块发送测试指令和终止测试指令,设定模拟辐射水平参数并根据参数生成对应的故障配置文件,同时还完成系统工作状态监测和日志文件管理。
单粒子翻转故障评估模块2作为本发明的核心模块,分别与PC上位机1和被测FPGA模块3连接,并通过串口与上位机进行信息交互,通过SelectMAP和DUT IO与被测FPGA模块3进行信息交互,主要负责从PC上位机接收测试指令和故障配置文件,并实现将故障注入到被测FPGA模块,回收对比分析结果,回传结果至上位机的工作。
被测FPGA模块,包含有标准系统设计和待测试系统设计,两种设计分配相同的逻辑资源和实现同样的逻辑功能,这样设计的目的主要是在注入翻转故障之后,通过对比两种系统设计的输出差异来判断翻转故障是否会引起系统设计发生故障。
下面我们对单粒子翻转测试系统的工作流程进行详细描述:功能FPGA模块5通过串口控制块模6接收PC上位机1发送的测试指令,并为被测FPGA模块3提供时钟、使能和复位信号,当功能FPGA模块5接收到测试指令后,控制配置FPGA模块4通过串口控制模块6从PC上位机1中读取故障配置文件,并将读取的故障配置文件存储在配置存储FLASH 7中,此处加入一块FLASH的优势在于增加仿真测试的可靠性,防止数据丢失等意外发生;
当测试开始时,功能FPGA模块5控制配置FPGA模块4将配置存储FLASH 7中的故障配置文件读取到配置FPGA模块4,通过SelectMAP方式从被测FPGA模块3中回读一帧数据,根据故障配置文件中的参数翻转某一位后再将此帧数据写入到被测FPGA模块3,从而完成翻转故障的注入过程;
功能FPGA模块5发送时钟、使能信号至被测FPGA模块3,驱动被测FPGA模块3运行,被测FPGA模块3运行标准系统设计和待测试系统设计,并将待测试系统设计的输出结果与标准系统设计文件的输出结果进行比对,再将比对的结果通过总线DUT IO上传至功能FPGA模块5中,功能FPGA模块5再将此结果存储在结果存储FLASH 8中,同时回传至PC上位机1,便于用户查看;同时,功能FPGA模块5发送复位信号至被测FPGA模块3,使被测FPGA模块3进入复位状态。
下面我们对本发明一种面向空间辐射环境下的单粒子翻转测试方法进行详细说明,如图2所示,具有包括以下步骤:
S1、仿真测试系统上电,通过JTAG方式对配置FPGA模块和功能FPGA模块进行功能配置;
S2、PC上位机设定初始帧地址和翻转故障参数,模拟辐射水平参数并生成翻转故障配置文件;并发送开始测试指令至功能FPGA模块;
S3、当功能FPGA模块通过串口控制模块接收PC上位机发送的开始测试指令后,功能FPGA模块控制配置FPGA模块通过串口控制模块从PC上位机中读取故障配置文件,并将读取的故障配置文件存储在配置存储FLASH中;然后功能FPGA模块对配置FPGA模块发送故障注入指令;
S4、配置FPGA模块接收到故障注入指令后,配置FPGA模块根据读取到的故障配置文件中的翻转故障参数及待配置帧地址,通过SelectMAP回读方式从被测FPGA模块的待测试系统设计中读取一帧数据,然后将该帧数据的指定位进行单位翻转后通过SelectMAP方式配置到被测FPGA模块的待测试系统设计中,进而实现了翻转故障的注入;
S5、翻转故障注入后,功能FPGA模块发送时钟、使能信号至被测FPGA模块,驱动被测FPGA模块的测试功能运行,测FPGA模块分别运行标准系统设计和待测试系统设计,并将运行结果传至功能FPGA模块进行对比分析,随后中断被测FPGA时钟,再将比对的结果通过总线DUT IO上传至功能FPGA模块中,功能FPGA模块再将比对结果存储在结果存储FLASH中,同时回传给PC上位机,如果待测系统设计和参考系统设计结果不一致,则返回到步骤S2,如果两者结果一致,则跳转至步骤S6;
S6、重复S2至S5的步骤,直至完成对所有需要进行故障注入的待配置帧地址都进行了翻转故障注入,即一次完整的模拟测试完成;功能FPGA模块发送复位信号至被测FPGA模块,使被测FPGA模块进入复位状态;
S7、一次完整模拟实验完成后PC上位机对该次实验的故障数据进行分析,统计总的引起功能故障的翻转位数,计算被测FPGA模块的功能故障率、被测FPGA模块的敏感位置以及评估针对性的加固设计效果,然后将数据分析结果以文本文件格式保存。
其中,计算被测FPGA模块的功能故障率的方法为:
其中,#falsebits表示引起功能故障的翻转位数,#totalbits表示单次配置全部翻转位数,θ表示功能故障率。
尽管上面对本发明说明性的具体实施方式进行了描述,以便于本技术领域的技术人员理解本发明,但应该清楚,本发明不限于具体实施方式的范围,对本技术领域的普通技术人员来讲,只要各种变化在所附的权利要求限定和确定的本发明的精神和范围内,这些变化是显而易见的,一切利用本发明构思的发明创造均在保护之列。
机译: 紧凑的电子测试系统,具有用户可编程的设备接口和板上功能,可在测试以及各种环境下(包括靠近辐射场的多种环境)与多种设备配合使用
机译: 空间飞船条件下暴露于紫外线辐射的环境,事物和生物学对象的方法和装置
机译: 一种白天用于存储和控制太阳辐射进入建筑物外墙的装置,其具有用于在充气状态下填充壳体内部空间并在去除压缩空气时排空和塌陷内部空间的气球