SRAM-FPGA抗单粒子翻转方法和预估
2018-05-08司圣平蒋应富
郭 强, 刘 波, 司圣平, 刘 辉,蒋应富, 张 恒
(1. 上海航天技术研究院,上海 201109;2. 上海卫星工程研究所,上海 201109)
SRAM-FPGA抗单粒子翻转方法和预估
郭 强1, 刘 波2, 司圣平2, 刘 辉2,蒋应富2, 张 恒2
(1. 上海航天技术研究院,上海 201109;2. 上海卫星工程研究所,上海 201109)
为解决卫星通信系统中赛灵思公司的静态随机存储器型现场可编程门阵列(Xilinx SRAMFPGA)单粒子翻转问题,提出了一种占用硬件资源少,可靠度高的抗单粒子方法.该方法使用爱特公司的现场可编程门阵列作为检测芯片,可编程只读存储器芯片存储屏蔽位文件,通过联合测试工作组模式回读Xilinx FPGA配置文件并进行校验,发现出错则重新加载配置文件,消除单粒子翻转影响.该方法已成功在轨应用于某卫星通信系统.为计算卫星通信系统的可靠度,提出使用品质因数方法预估静态随机存储器型现场可编程门阵列单粒子翻转率,并与在轨实测数据进行比较,证明使用该方法的正确性,同时计算出实际飞行轨道的单粒子翻转率系数,为其他静态随机存储器型现场可编程门阵列、存储器等芯片的单粒子翻转率预估提供数据支撑,为我国卫星通信系统可靠性研究与设计提供参考.
静态随机存储器型现场可编程门阵列;单粒子翻转;抗单粒子翻转方法;单粒子翻转率预估
赛灵思公司的静态随机存储器型现场可编程门阵列(Xilinx Static Random Access Memory-Field Programmable Gate Array,Xilinx SRAM-FPGA)具有高抗辐照指标和灵活的编程配置能力,已广泛用于卫星通信系统,但是该芯片在空间环境中易受到单粒子翻转(Single Event Upset,SEU)的影响,引起芯片功能异常,影响卫星通信系统的可靠性.目前,国内外已有学者对Xilinx SRAM-FPGA单粒子翻转问题进行研究,提出了几种抗单粒子翻转的方法[1-8],但是文献中没有结合实际卫星通信系统的各种条件限制,给出最适合卫星通信系统使用的方法,同时这些方法也没有经过在轨飞行考核.笔者从卫星通信系统设计实际出发,以常用的Xilinx Virtex XQVR300 FPGA为例,提出了一种占用最小硬件资源,满足最大通信可靠度的抗单粒子方法,已成功应用于某卫星型号.为计算卫星通信系统的可靠度,需知道使用的SRAM-FPGA单粒子翻转率.目前,国内外已有学者对SRAM存储器单粒子翻转率预估方法进行研究[9-16],但是还没有对SRAM-FPGA单粒子翻转率进行预估的文献.文中提出使用品质因数(Figure Of Merit, FOM)方法预估SRAM-FPGA单粒子翻转率,并将在轨实测的单粒子翻转率数据与预估的单粒子翻转率数据进行比较分析,证明其正确性,同时反推出预估单粒子翻转率所必需的轨道翻转率系数,为我国卫星通信系统可靠性研究与设计提供参考.
我的建议得到了党委可书记的同意。可书记是一位年轻有为的书记,今年才三十多岁,却是一位经验十分丰富,在多个乡镇锻炼了的老书记。听镇上的干部说,可书记很快就要在县政府班子换届中担任副县长。
ECMO转机期间,为观察患者氧供与氧耗是否平衡,预防呼吸系统受累,需密切动态监测动静脉血的氧分压、二氧化碳分压[7]。
1 抗单粒子翻转方法
目前国内外对Xilinx SRAM-FPGA抗单粒子翻转的方法[1-8]主要包括以下几种:
(1) 定期刷新.定期刷新方法是指在特定程序控制下,以一定的时间周期对FPGA的配置文件进行加载,以消除可能发生的单粒子翻转对FPGA数据处理功能的影响.该方法的优点是通过软件编程即可实现,无需新增硬件消耗,但是无法得知FPGA是否出现过单粒子翻转,同时实时性也不强,不能满足卫星通信系统高可靠度的要求.
在建设内部控制体系的工作中,应把建设的工作进行分割。分割基本包括风险预测评估、制度、流程和评价管理等四部分。公立医院具有丰富的管理经验等优势,所以医院在充分利用这一优势的基础上,建立健全适合内部控制体系执行的各项指标和标准。设立基本的建设框架,指导内部控制体系的建设工作。风险预测评估、制度、流程和评价管理这四部分相互制约相互扶持实现内部控制体系的可持续性发展。
图1 基于硬件的三模冗余原理图
(2) 冗余方法.常用的冗余方法为硬件三模冗余,图1给出典型的硬件三模冗余原理图,该方法可以提高抗单粒子翻转的可靠度,但是会大幅降低模块的数据处理速度,极限情况可能会降低80%,同时所需的硬件资源和功耗至少是原来的3倍.随着卫星通信系统数据处理速度要求的增加,FPGA的资源占用量越来越大,若再采用硬件三模冗余,则往往会超出FPGA的硬件资源限制; 另外,三模冗余的主要问题是表决器的故障将造成系统差错,其可靠性不会高于表决器的可靠性,因此该方法也不能很好地满足卫星通信系统设计的需要.
(3) 纠错编码方法.纠错编码方法是指将在轨出现的单粒子翻转看作通信系统信道干扰,使用循环冗余校验码等编码方式,读取FPGA存储单元的数据,一旦发现出错就将其纠正.该方法可以检错和纠错,但是编码冗余信息本身没有自我保护能力,如FPGA本身发生单粒子翻转,则数据处理功能会出现异常,因此该方法不能用于SRAM-FPGA片内容错设计.
图2 文中设计方法的原理框图
(4) 配置文件回读方法.为了尽量克服上述3种方法的不足,文中采用配置文件回读的方法,利用Xilinx SRAM-FPGA在正常工作时可回读配置文件,不影响FPGA正常工作的特点,提出了一种对Xilinx FPGA的配置文件进行回读并校验,一旦发现校验出错,则重新加载配置文件,消除单粒子翻转影响的方法,最大程度地降低了单粒子翻转对卫星通信系统的影响,同时具有很高的实时性,并占用最少的硬件资源.
WU Tao, QIN Fen, LUO Liefeng, et al. Research on the Design of Single-event Upset for Space Spread Spectrum Transponder[J]. Digital Technology and Application, 2015, 4: 140-141.
回读Xilinx FPGA配置文件有两种模式,一种为选择地图(SelectMAP)模式,另一种为联合测试工作组(Joint Test Action Group,JTAG)模式.SelectMAP模式采用并行模式读取数据,读配置文件的速度较快,但采用该模式FPGA的某些引脚必须作为SelectMAP模式的专用引脚,FPGA引脚被占用得比较多.而JTAG模式采用串行模式读取数据,虽然读配置文件的时间比较长(采用 1 MHz 的时钟,回读配置文件的时间为 2 s 左右),但FPGA被占用的引脚仅为4个,考虑到单粒子翻转的概率较低,2 s 的时间间隔已经足够短,可以满足卫星通信系统对数据可靠性的要求,同时又可以减少对硬件资源的占用,因此,文中采用JTAG模式回读配置文件.
“什么是今天该有的男性气质”,《人民日报》评论员如是发问。是传统意义上的“金戈铁马”的豪情壮志,亦或是大行其道的“桃面柔膝”?而依我之见,正气凛然,刚健勇毅的精神风貌,方才是今日中国男儿所应该追求的。
2 单粒子翻转率预估
为了掌握家长参与家园共育的状况,笔者在济南市历城区范围内随机选择了180位幼儿家长作为调查对象。其中,个体工商户11人,占6.11%;公司职员37人,占 20.56%;工人 112人,占 62.22%;干部 8人,占4.44%;医生2人,占1.11%;从事其他职业的10人,占5.56%。本次调查发放问卷180份,回收有效问卷180份。调查数据统计与处理的结果显示,当前家长参与家园共育的情况不容乐观。笔者围绕家长对家园共育内涵的理解、参与家园共育的意愿、参与家园共育的身份和参与家园共育活动的形式等方面对家长参与家园共育的现状进行了梳理。
FOM方法基于简化的轨道线性能量转移(Linear Energy Transfer,LET)谱,轨道翻转率R的计算公式为
R=CFFOM,
(1)
其中,C是翻转率系数,单位为upset/(d.bit),是一个与轨道倾角、高度、粒子种类、屏蔽层厚度和器件敏感度(普通器件或加固器件)有关的系数;FFOM是一个无量纲的参数,表征器件的单粒子翻转敏感度.对于重离子或质子数据,FFOM的计算公式如下:
FFOM=σHL/(L0.25)2,
(2a)
依据膳食宝塔的推荐,孕妇可以通过“固定食物法”来保证营养搭配的均衡,既保证营养的充足,同时又可以自由选择食物,使孕期饮食丰富多彩。“固定食物法”就是把一些食物种类相对固定,每天保证这些食物种类的摄入。可以固定的食物种类是:
图3 Xilinx Virtex XQVR300 bit翻转截面和LET关系图
[6] SHEN Z T, FENG C Q, GAO S S, et al. Study on FPGA SEU Mitigation for the Readout Electronics of DAMPE BGO Calorimeter in Space[J]. IEEE Transactions on Nuclear Science, 2015, 62(3): 1010-1015.
L0.25=L0+W×0.288(1/S).
(3)
图3给出Xilinx公司在地面对Virtex XQVR300 FPGA进行单粒子翻转测试的结果图.从图中可以看出,重离子饱和截面σHL为 8× 10-8cm2/bit,weibull拟合参数L0= 1.2,W=30,S=2.则根据式(2a)可以计算出FFOM= 2.673 1× 10-10.
笔者对Xilinx SRAM-FPGA单粒子翻转问题进行深入研究,在综合考虑卫星通信系统设计的实际条件基础上,提出了一种SRAM-FPGA抗单粒子翻转方法,并成功应用于某卫星通信系统,最大程度提高了该卫星通信系统的可靠性; 同时对SRAM-FPGA单粒子翻转率预估方法进行研究,通过将预估数据与在轨实测数据进行比较分析,证明了使用FOM方法预估SRAM-FPGA单粒子翻转率的正确性,同时反推出实际飞行轨道的单粒子翻转率系数,为其他SRAM-FPGA、存储器等加固芯片的单粒子翻转率预估提供支撑数据,为我国卫星通信系统可靠性研究和设计提供参考.
3 在轨单粒子翻转数据分析
文中使用两片Xilinx 公司的SRAM Virtex XQVR300 FPGA,分别对两条独立卫星通信链路的数据进行处理,使用文中设计的抗单粒子翻转方法最大程度地保证了卫星通信系统的可靠性.下面对2014年11月至2016年4月间(507天),两片Virtex XQVR300 FPGA的遥测数据进行统计分析,遥测数据中包括每片FPGA单粒子翻转的次数和单粒子翻转时卫星星下点的经纬度.
图4 2014年11月至2015年8月FPGA单粒子翻转次数和位置 图5 2015年9月至2016年4月FPGA单粒子翻转次数和位置
[4] JASON J. Fault-tolerant Sequencer Using FPGA-based Logic Designs for Space Applications[D]. Monterey: Naval Postgraduate School, 2013: 9-96.
(1) 单粒子翻转事件主要出现在南大西洋和南美洲上空的地磁异常区; 北极和南极地区也会出现单粒子事件,但是出现概率远小于南大西洋和南美洲地区;
实值RBM模型相对于二值RBM模型就是将评分数据表示为多维度的0、1向量,以满分5分为例,则在表示评分的向量中第五行为1向量,其他行都为0向量,没有评分即所有的行都为0表示,此方法虽然会在一定程度上导致数据量变大,但是可以很有效地解决多评分问题。具体实值RBM模型如图1所示。
(2) 两片FPGA由于单粒子导致的翻转次数分别为101次和98次,FPGA1翻转率约为 101/ 507= 0.199 2 device/day,FPGA2翻转率约为 98/ 507= 0.193 3 device/day,与前文预估的翻转概率 0.214 0 device/day 很接近,考虑到预估计算时使用的文献中轨道翻转率系数C的轨道参数与文中实际的轨道参数有一定的不同,因此该实测结果可以证明,使用FOM方法预估SRAM-FPGA单粒子翻转率是正确可行的,后续可通过SRAM-FPGA地面测试数据和FOM方法预估在轨单粒子翻转率;
(3) 根据文中的实测数据可以反推出轨道高度为 836.4 km、倾角为98.7°的太阳同步轨道的轨道翻转系数为442.22,该翻转系数可以用于预估其他SRAM-FPGA、存储器等加固芯片的单粒子翻转率.
4 结 束 语
文献[13]中使用质子加速器、重离子加速器等进行地面测试,估计轨道高度为 870 km、倾角为98.9°的太阳同步轨道卫星的轨道翻转率系数C为475.12.文中研究的Virtex XQVR300 FPGA同样也应用于太阳同步轨道,卫星的轨道高度为 836 km、倾角为98.7°,考虑到文献中的轨道参数与笔者实际应用的轨道参数比较接近,可以先使用文献中预估的轨道翻转率系数C,以及Virtex XQVR300 FPGA的地面测试数据,根据式(1)预估Virtex XQVR300 FPGA,在文中应用轨道上的单粒子翻转率R= 0.214 0 device/day.
参考文献:
错误的种类应当分为实体错误和程序错误两种,在之前的实务操作中,大众更多地是关注实体错误,从而忽视了程序错误带来的危害。现今,更多的民众和学者已经意识到程序错误在某种程度上或者在某种环境中比实体错误造成的后果更加严重,因为程序错误在观念上的恶劣影响更为内化和深远。
[1] 郑晓云, 陶淑苹, 冯汝鹏, 等. SRAM型FPGA抗单粒子翻转技术研究[J]. 电子测量技术, 2015, 38(1): 59-63.
ZHENG Xiaoyun, TAO Shuping, FENG Rupeng, et al. Study on Anti SRAM-FPGA Single-event Upset Technology[J]. Electronic Measurement Techonlogy, 2015, 38(1): 59-63.
[2] 郜蓓. 采用SRAM-FPGA星载测控设备抗SEU策略[J]. 遥测遥控, 2015, 36(1): 52-57.
GAO Bei. Research on Single-event Upset Mitigation Strategies of Satellite TT&C On-board Equipment Based on SRAM-FPGA[J]. Journal of Telemetry, Tracking and Command, 2015, 36(1): 52-57.
[3] 吴涛, 秦奋, 罗列峰, 等. 星载扩频应答机抗单粒子翻转的设计研究[J]. 数字技术与应用, 2015, 4: 140-141.
该方法使用一片Actel FPGA(爱特公司反熔丝工艺FPGA对单粒子翻转免疫)作为检测芯片,回读Xilinx FPGA的配置文件并进行校验,实时检测Xilinx FPGA内的配置文件是否发生单粒子翻转,一旦发现校验出错,就自主控制可编程只读存储器(Programmable Read Only Memory,PROM)对发生翻转的Xilinx FPGA配置文件重新进行加载,确保Xilinx FPGA内配置文件的正确性.由于Xilinx FPGA配置文件中存放的是FPGA所有资源的配置信息,包括设计中未使用的资源.此类资源配置信息的翻转并不会影响FPGA的功能,因此增加一片PROM芯片存放屏蔽位文件,该文件专门对设计中未被使用资源的配置信息进行标注.通过对该文件的分析,可以仅对设计中使用资源的配置信息做校验.图2给出文中设计方法的原理框图,采用这种方法能快速检测到单粒子事件的发生,并将单粒子事件造成的影响降到最低.
图4和图5中给出两片Virtex XQVR300 FPGA单粒子翻转的次数和星下点位置.图4中FPGA1单粒子翻转52次,FPGA2单粒子翻转50次;图5中FPGA1单粒子翻转49次,FPGA2单粒子翻转48次.从图中可以得出如下结论:
[5] CIANI L, CATELANI M. A Fault Tolerant Architecture to Avoid the Effects of Single Event Upset (SEU) in Avionics Applications[J]. Measurement, 2014, 54(6): 256-263.
其中,σHL是重离子饱和截面;σPL是质子饱和截面,如果用单位device/day,则得到的是整个器件的参数,如果用cm2/bit,则得到的是每位的参数;L0.25为饱和截面的25%对应的LET值,可以通过威布尔(Weibull)拟合参数L0、W和S计算:
[7] SIEGLE F, VLADIMIROVA T, ILSTAD J, et al. Mitigation of Radiation Effects in SRAM-based FPGAs for Space Applications[J]. ACM Computing Surveys, 2015, 47(2): 37.
第一,优化监督制度。均衡配置自上而下、平行监督、自下而上的三重监督权力,破除信息不对称的固有障碍,降低政府机会主义的主观愿望。
[8] WIRTHLIN M, KELLER A, MCCLOSKEY C, et al. SEU Mitigation and Validation of the LEON3 Soft Processor Using Triple Modular Redundancy for Space Processing[C]//Proceedings of the 2016 ACM/SIGDA International Symposium on Field-programmable Gate Arrays. New York: ACM, 2016: 205-214.
[9] 刘凯哲. 单粒子效应在轨翻转率预计研究[D]. 哈尔滨: 黑龙江大学, 2014: 1-50.
单粒子翻转率预估[9-16]是以地面环境模拟实验为基础,结合卫星在轨粒子分布,预估在轨芯片的单粒子翻转率.目前,国内外已有学者使用FOM方法来预估SRAM存储芯片的单粒子翻转率,预估出了特定轨道单粒子翻转率系数,但还没有预估SRAM-FPGA单粒子翻转率的研究论文.由于SRAM存储芯片与SRAM-FPGA的单粒子翻转原理一致,因此提出使用FOM方法来预估SRAM-FPGA单粒子翻转率,并将预估数据与在轨实测数据进行比较分析.
[10] 楼建设. 卫星用典型SRAM存储器空间辐射效应及模拟试验方法研究[D]. 上海: 上海交通大学, 2013: 8-82.
[11] PETERSEN E L. The SEU Figure of Merit and Proton Upset Rate Calculations[J]. IEEE Transactions on Nuclear Science,1998, 45(6): 2550-2562.
[12] 曹晖, 郑渊, 刘伟鑫, 等. 宇航用SRAM存储器单粒子效应试验研究[J]. 上海航天, 2013, 30(3): 60-64.
应力控制下的肢体创伤修复、畸形矫正与再生重建,是21世纪骨科学发展的大趋势,中国在这个新兴学科领域已经由跟跑者成为领跑者之一。秦泗河教授牵头申办成功“第六届世界外固定肢体延长与重建大会”主办权(2023-北京),届时将有上百个国家的代表汇集北京共镶盛会。为在这个学科领域培育国际化青年才俊,推动中国四肢矫形骨科在世界上的地位,秦泗河教授决定,在全国范围招收青年骨科进修医生。
CAO Hui, ZHENG Yuan, LIU Weixin, et al. Study of Single Event Effects on SRAM Memory for Aerospace[J]. Aerospace Shanghai, 2013, 30(3): 60-64.
[13] 贺朝会. 空间轨道单粒子翻转率预估方法研究[J]. 空间科学学报, 2001, 21(3): 266-273.
HE Chaohui. Study on the Method of Single-event Upset Rate Prediction in Space Orbit[J]. Chinese Journal of Space Science, 2001, 21(3): 266-273.
[14] CRESSLER J D. Radiation Effects in SiGe Technology[J]. IEEE Transactions on Nuclear Science, 2013, 60(3): 1992-2014.
[15] FULLER E, CAFFREY M, BLAIN P, et al. Radiation Test Results of the Virtex FPGA and ZBT SRAM for Space Based Reconfigurable Computing[R/OL].[2017-03-20]. http://www.xilinx.com/appnotes/VtxTest.
手机的短信提示声响了,高潮掏出手机一看,是“诗的妾”发过来的:老公,妾睡不着。高潮看了看手机上的时间,已是十一点多了。高潮想了想,回复“诗的妾”:草坪湖畔月下,虫鸣狼嚎风飒,苦恼人未归家。
[16] DODDS N A, MARTINEZ M J, DODD P E, et al. The Contribution of Low-energy Protons to the Total On-orbit SEU Rate[J]. IEEE Transactions on Nuclear Science, 2015, 62(6): 2440-2451.
SRAM-FPGASEUmitigationmethodandprediction
GUOQiang1,LIUBo2,SIShengping2,LIUHui2,JIANGYingfu2,ZHANGHeng2
(1. Shanghai Academy of Spaceflight Technology, Shanghai 201109, China;2. Shanghai Institute of Satellite Engineering, Shanghai 201109, China)
In order to solve the problem of Xilinx SRAM-FPGA Single Event Upsets(SEU) in the satellite communication system, we design a less hardware resource and high timeliness method of using the Actel FPGA as the detecting chip. The PROM chip stores the mask bit, reads the Xilinx FPGA configuration file through JTAG and verifies the error. Then it reloads the configuration file to eliminate the SEU effect. The method is successfully applied to a satellite communication system. In order to calculate the reliability of the satellite communication system, the FOM method is used to predict the SEU rate in SRAM FPGA. The results show that this method can be used to calculate the SEU rate in the orbit. And the results can be used to predict the SEU rate in the other SRAM FPGA and Memory, and to provide reference for reliability research and design of China's satellite communication system.
static random access memory-field programmable gate array; single event upsets;single event upset mitigation method; single event upset rate prediction
2017-03-15
时间:2017-06-29
郭 强(1983-),男,工程师,硕士, E-mail:qguo1218@qq.com.
http://kns.cnki.net/kcms/detail/61.1076.TN.20170629.1735.040.html
10.3969/j.issn.1001-2400.2018.01.020
V443+.1
A
1001-2400(2018)01-0112-05
(编辑: 王 瑞)