张庆祥,于登云,李衍存,贾晓宇,王 颖,郑玉展,郭 刚,丁李利
(1.北京空间飞行器总体设计部,北京100094;2.中国航天科技集团公司,北京100048;3.中国原子能科学研究院,北京102413;4.西北核技术研究院,西安710024)
SRAM 型FPGA(feld-programmable gate array)由于其成本低、开发时间短和设计具有柔性,近年来在空间电子系统中得到广泛应用。空间高能粒子产生的单粒子翻转可能导致基于SRAM型FPGA实现的系统输出发生错误或功能失效,因此在应用前,需要对系统的单粒子效应敏感度或防护设计进行评估和验证,通常采用高能粒子(包括重离子和质子)辐照的方法。然而如何在有限的束流时间内,获得具有统计意义的评估结果,目前还没有建立有效方法,是国内外该领域研究的热点。
在SRAM 型FPGA 中,从高能粒子入射到出现错误的整个过程可以分为2个阶段:首先,入射粒子与存储单元相互作用产生位翻转,这主要取决于器件的单粒子敏感度和粒子沉积的能量;然后,翻转造成的信息改变影响系统的功能,这主要取决于翻转位所属资源的类型和电路的设计。对于这2个过程,国内外均有很多研究工作分别关注,但很少同时研究[1-8]。
本文用高能质子辐照典型电路,同时获得了位流文件中的翻转位数和电路的输出错误,并分析不同条件下获得的试验结果之差别及其背后的影响因素,希望为后续建立适合工程应用的基于SRAM型FPGA 实现的系统的单粒子效应敏感度评估方法奠定基础。
CYCIAE-100回旋加速器是北京放射性核束装置的重要组成部分,可提供的质子能量范围为75~100 MeV,束流为200~500 μA。为基于CYCIAE-100开展单粒子效应试验,初步建成了一个包括双散射靶、降能系统、样品支架和束流诊断系统的质子辐照装置(PIE)[9],其中,双散射靶可降低束流,降能系统中的降能片可降低质子能量。该装置可提供的束流参数见表1。2016年11月17日,在CYCIAE-100回旋加速器试运行阶段,采用初步建成的质子辐照装置开展了试验。选用的质子能量分别为30、60、80和100MeV,注量率为107~109cm-2·s-1。
表1 质子辐照装置束流参数Table 1 Beam parameters for proton irradiation equipment
为了完整地评估试验样品的本征单粒子效应敏感度,采用中国原子能科学研究院HI-13串列静电加速器进行80MeV 的12C离子、115MeV 的19F离子辐照试验,用中国科学院近代物理研究所兰州重离子加速器(HIRFL)进行2150MeV 的86Kr 离子辐照试验。所选择的粒子都具有足够的射程穿透至器件的敏感区,同时将86Kr 离子的能量进一步降低,以获得不同的LET值,重离子的束流密度在102~104cm-2·s-1之间。采用瑞士PSI(Paul Scherrer Institut)质子辐照装置提供的7~200MeV 的质子开展了试验,束流密度在2×107~5×107cm-2·s-1之间。
本试验的测试样品选择倒装商用器件XC4VSX55。国内外不同机构已对该器件及其对应的宇航器件进行了详细研究,并且开展了飞行试验验证[3-7]。为了确保重离子入射到器件的敏感区,将样品衬底材料减薄到大约54μm(见图1)。
图1 减薄的FPGA 试验样品Fig.1 Thinned FPGA sample for experiment
测试系统如图2所示,包括测试FPGA、被测FPGA、对照FPGA、电流检测电路和控制计算机等。该系统可以将测试FPGA 位流文件回读以检测配置存储器中的翻转,同时不间断地比较测试FPGA 和对照FPGA 的输出,如果不一致则自动进行记录。该系统既可以用于加速器试验也可以进行故障注入。图3给出了测试电路的功能框图,包括2个累加器、2个FIFO链和2个移位寄存器链。资源使用包括5%Slice、5%LUT、1%Flip flop和10%IOB。
图2 单粒子效应评估测试系统Fig.2 Single event sensitivity evaluation system
单粒子翻转截面σ可通过公式σ=n/(F×N)得到,式中:n是配置位中发生翻转的位数;F是试验中总的质子注量;N是XC4VSX55配置位的总数,N=20 921 420,其中减去了用于存储数据的部分。
图4给出了在瑞士PSI质子辐照装置获得的XC4VSX55单粒子翻转截面与质子能量的关系,从该试验曲线拟合可以得到XC4VSX55的饱和截面是2.7×10-14cm2/bit,与文献[3]中的结果(4.5×10-14cm2/bit)相近。
图4 XC4VSX55的质子单粒子翻转截面Fig.4 Single event upset cross section of XC4VSX55 acquired by using proton
图5给出XC4VSX55的重离子辐照单粒子翻转截面与LET值的关系曲线,与文献[5]中的结果接近。
图5 XC4VSX55重离子翻转截面与LET 值的关系曲线Fig.5 Intrinsic SEU cross section of XC4VSX55 induced by heavy ion irradiation
本文结果比较PSI的质子试验结果和HI-13串列静电加速器、兰州重离子加速器获得的重离子试验结果以及国外文献结果[6-7]可知,XC4VSX55的翻转截面均在同一量级内且较为接近,证明本文研究中所采用的测试系统性能可靠,测试方法正确。
试验中观察到2种错误:数据错误和功能错误。数据错误的定义是1路或几路输出管脚瞬时出现错误,但很快恢复;功能错误的定义是输出管脚持续错误,需要通过重新配置来恢复。功能错误对于基于SRAM型FPGA 实现的系统的危害更大,因此本文主要关注功能错误。在测试辐照试验过程中,一旦检测到功能错误,则停止试验,记录粒子的累积注量,同时将配置文件回读以检测位翻转。表2给出了针对同样的系统和应用程序,CYCIAE-100和PSI 的试验中检测到的功能错误数及其对应的位流文件的翻转位数[10]对比。
表2 质子辐照下的单粒子翻转试验结果Table 2 Experimental result of SEU data under proton irradiation
从位流文件翻转到功能错误这一阶段,可以不考虑注量的影响。从某种角度而言,这一阶段也与辐照粒子的种类无关,除非对于采用三模冗余(TMR)防护措施的电路,不同粒子的辐照产生的多位翻转可能引发不同的影响。但根据文献[3,6]中的结果,质子引起的多位翻转的比例小于4%。因此从这个意义上来讲,加速器试验(重离子或质子)的作用与故障注入类似,只不过加速器试验可以覆盖所有的资源类型。
位流文件中的翻转位数与观察到的功能错误数的比例可以度量一个翻转通过电路逻辑产生错误输出的概率。这个比例取决于以下几个因素:一是发生翻转的位是否被使用;二是发生翻转的位的功能(资源类型);三是具体的设计(包括是否采用了针对单粒子翻转的防护设计)。由于采用的典型电路的资源使用率较小,并且束流时间有限,在所有的试验中绝大多数情况下翻转位数大于1000,而功能错误数小于10。相对而言,CYCIAE-100回旋加速器获得的翻转位数和功能错误数均高于PSI 试验的。
不同粒子能量下得到的翻转位数与功能错误数的平均比例表现出较大的偏差(如图6所示)。相对而言,CYCIAE-100回旋加速器获得的4个能量点的比例值比较接近,平均数为2334;而PSI试验中8个能量点的比例在356到2692之间,比较离散,平均值为1359。
图6 不同能量下翻转位数与功能错误数的平均比例Fig.6 The average ratio of the upset bits to the functional errors for different energiesof protons
图7中给出在CYCIAE-100进行的所有32轮试验的翻转位数与功能错误率关系曲线,虽然以单次试验得到电路错误率的置信度并不高,但是通过对翻转位数-错误率关系的拟合,可以依据少量的加速器辐照试验数据得到较准确的电路错误率。拟合结果表明,单个配置位翻转引起受照电路出现错误的概率为5×10-4,即平均2000位翻转导致1次错误的发生[10]。在99%置信度下,产生1次功能错误平均需要的翻转位数在1233~3141之间。CYCIAE-100回旋加速器和PSI获得的翻转位数与功能错误数的比例均在此范围之内。以100MeV 质子辐照为例,CYCIAE-100获得的比例为2415,是PSI获得的比例(356)的6倍以上。其原因可能在于两试验中检测到的功能错误数(分别为5和2)均太少,使得统计涨落显大。
图7 CYCIAE-100进行的32轮试验单粒子翻转位数与功能错误率的关系Fig.7 Upset bits vs.functional errors in repeated 32 tests using CYCIAE-100 cyclotron
基于SRAM 型FPGA 实现的系统的单粒子效应敏感度评价或设计验证可以分为2个步骤:
1)采用重离子和质子获得器件的本征单粒子翻转敏感度,用来预示器件在轨的本征翻转率。HI-13串列静电加速器、兰州重离子加速器(HIRFL)和北京放射性核束装置的CYCIAE-100回旋加速器均可为在中国国内获得器件质子辐照下的本征单粒子效应敏感度提供条件。
2)在器件的配置区注入单粒子翻转来产生功能错误,获得器件在特定应用程序中翻转位数与功能错误数的比例系数,这一比例由资源使用情况、电路设计和防护措施使用情况等多种因素决定。尤其是对于采用TMR 等防护措施的电路,这个比例很大,因此需要大量的束流时间来获得具有统计意义的试验结果。同时,对于倒装芯片,需要入射粒子具有足够的射程穿透器件的衬底材料(例如XC4VSX55的衬底厚度约为800μm),必要时须对器件衬底进行减薄处理。对于100MeV 的质子,其在硅中的射程为26 300μm,可以用于没有减薄的样品的试验。CYCIAE-100回旋加速器的建成和投入使用,将提供更多的束流时间和更长射程的粒子用于基于SRAM型FPGA 实现的系统的单粒子效应敏感度的考核和设计验证。
将本征在轨翻转率与第2阶段获得的比例系数相结合,就可以对特定应用的在轨功能错误进行有效的估计。器件的本征单粒子效应敏感度是器件固有的属性,只需要1次测定即可;而比例系数需要针对具体的应用来做,除了加速器试验,也可以用故障注入法获得。实践表明,要得到具有统计意义的比例系数,功能错误数不可过少,建议至少大于10。
采用北京放射性核束装置的CYCIAE-100回旋加速器提供的100MeV 质子对基于典型SRAM型FPGA 实现的系统的单粒子效应敏感度进行了评估。获得了器件的特定应用单粒子翻转截面以及翻转位数与功能错误数的比例系数,并将这些数据与用瑞士PSI质子辐照装置在同等条件下得到的试验结果进行了比较,结果表明,CYCIAE-100产生的高能质子为在中国国内进行器件和系统的单粒子效应敏感度评价提供了新的有效手段。
本文针对基于SRAM 型FPGA 实现的系统的单粒子效应敏感度评价或设计验证提出两步骤方法,可以方便和较准确地得到特定应用的在轨功能错误数;需指出的是,观察到的功能错误数应该较大(至少大于10)才能得到具有统计意义的试验结果。CYCIAE-100回旋加速器提供了更多的束流时间和更长射程的质子,尤其适合倒装的SRAM型FPGA 的验证试验。