CAN控制器单粒子效应测试系统的研制

2019-08-02 08:05蔡阳阳魏敬和
中国电子科学研究院学报 2019年4期
关键词:寄存器器件粒子

蔡阳阳,陶 伟,郭 刚,魏敬和

(1.中国电子科技集团公司第五十八研究所,江苏 无锡 2141002.中国原子能科学研究院,北京 102488)

0 引 言

进入信息化时代,集成电路作为各种电子设备的硬件核心需求量极大,对其各方面性能的要求也在不断提升。在航天领域,集成电路的抗单粒子效应能力是考核其性能的主要指标。功率器件主要考核单粒子烧毁、单粒子栅穿等,数字器件主要考核单粒子闩锁、单粒子功能中断以及单粒子翻转等事件[1]。

CAN总线由于其实时性、可靠性以及灵活性在航天领域应用广泛,相较用于军事目的的MIL-STD-1553总线功能接近,但性价比更高,可靠性也能满足要求[2-3]。CAN总线控制器应用于航天器有广泛的前景,但在空间环境中的适应性还有待验证,因而装备前必须在地面进行空间辐射环境模拟。

单粒子效应种类较多,SEL会导致电路电流瞬间增大,严重甚至烧毁电路,SEU会导致电路数字逻辑翻转,影响电路正常功能。为了全面反映CAN控制器在辐射条件下的工作状态,不能简单地将SEU、SEL分开监测,需要测试系统在不同辐射条件下动态监测试验过程中的状态,包含电流、电压、通信误码率等。

1 系统测试架构

单粒子效应测试系统需要实现对CAN控制器单粒子翻转效应、单粒子功能中断以及单粒子锁定效应的测试,并且能够使电流数据、通讯数据实时监测以及保存。测试系统主要由远程监控端、上位机以及试验板组成,上位机与试验板之间采用RS232协议通信,实验板板上的控制区与DUT区(Design Under Test,DUT)采用CAN通讯,实现DUT区(CAN控制器)的动态测试。测试系统示意图如图1所示。

图1 单粒子效应测试系统示意图

2 系统硬件设计

系统硬件主要包含了NI工控机、单粒子实验板、远程计算机等,需实现SEU、SEL的准确监测,并保护器件安全。

2.1 单粒子闩锁的特征及硬件防护

单粒子闩锁的主要特征表现为电源输入端的电流突发性地异常增大,一般而言,器件的单粒子闩锁引发的电流在0.03A~3A,且断电前不可恢复正常,严重的会导致器件损毁[4-5]。因此,在设计系统硬件时,需要采取相关措施在确定出现闩锁状态时能迅速切断电源,并且能使瞬间大电流不影响周边器件安全。

选择NI工控机作为上位机进行Labview监测平台设计,采用板卡PXIe-4113对试验板进行供电,该型板卡提供两通道60 W的电源,电压误差范围在±12 mV,电流误差范围在±32 uA,当出现电流波动时能够准确反映电流变化。上位机结合板卡实现电流的实时监测以及电压程控,可以对电流的异常趋势进行监测,当电流过大时可自动断电。单粒子试验板包含有控制区、被测单元区以及隔离区。控制区的核心为ARM系列STM32F103芯片,包含了CAN接口(2.0B主动)、USART以及若干GPIO口,既可以配置CAN控制器实现与其通讯,也可以与上位机的串口通讯;隔离区主要采用磁隔离芯片ADUM1400,以免DUT区出现单粒子闩锁效应时导致的大电流影响周边器件安全。系统硬件图如图2所示。

系统电源分为3.3 V核心区供电以及4.5 V/5.5 V DUT区供电,核心区供电与DUT区供电隔离,保证DUT电流的准确监测;CAN控制器标准供电电压为5 V,采用4.5 V供电可使芯片更容易发生SEU效应,采用5.5 V供电能更容易产生SEL效应。

STM32的工作主频为72 MHz,被测CAN控制器的工作频率为24 MHz,(小于STM32工作主频的1/2),系统的采样频率满足要求。

2.2 单粒子翻转的统计单元分析

CAN控制器的典型内部结构如图3所示,主要的数字单元为RAM类和REG(寄存器)类。信息缓冲存储(TXB、RXFIFO)属于RAM类,其他的逻辑单元属于REG类。SEU效应主要作用于数字单元区,因为高能粒子撞击导致逻辑单元状态改变,RAM区与REG区都极易发生SEU,通常还伴随着单粒子功能中断(SEFI)效应,严重影响器件的正常工作[6-7]。

图2 单粒子效应硬件框图

图3 CAN控制器的内部结构

因此,ARM需要能够访问所有可读寄存器与缓冲器,从而实时监测各单元的逻辑状态,并将错误结果发送给上位机显示保存。STM32可通过CAN控制器的地址数据总线端口直接访问所有可读寄存器以及缓存器(RXB、TXB、RXFIFO)。

3 系统软件设计

3.1 系统软件方案

单粒子效应监测系统的软件分为试验板上的ARM控制程序、与上位机的通信程序、上位机程序。其中,ARM控制程序是软件核心,需要通过串口建立与上位机的通信,实现与某型CAN控制器的CAN通讯,并统计SEU的翻转个数。

上位机程序是在NI测试系统自带的Windows平台下开发的Labview应用程序,可通过串口对单粒子效应板进行数据读取。通过NI的供电板卡对辐照试验板供电,并监测电源电流大小,如果超过设定的电流阈值,控制被测芯片的电源通断,同时实时显示电流值、翻转次数以及功能中断次数,并将实时电流数据以及有数据翻转的地址,翻转位数保存下来。

3.2 单粒子翻转统计模型

单粒子翻转表现为同一时刻1位翻转或多位翻转,且会出现多地址的寄存器或者缓冲器同时翻转,采用合适的方法保证统计数目的准确性以及地址覆盖的全面性很必要[8]。

为了保证测试覆盖性,首先划分CAN控制器翻转统计区域,主要分为RXB、TXB、FIFO以及寄存器。TXB和RXB为8字节,FIFO为64字节,寄存器需要覆盖所有可读寄存器,包括MOD、CMR、SR、IR、IER、BTR0、BTR1、OCR、ALC、ECC、EWLR、TXERR、RMC、RBSA、CDR。统计翻转数时,将四个区域(RXB、TXB、FIFO以及寄存器)分开统计,最后再求和。

数字单元在翻转过程中,可能会出现连续翻转,例如从0翻转为1,再翻转回0;也可能出现翻转过后一直维持在错误状态,例如由0翻转为1,并一直维持在1。为了准确计算翻转次数,需要建立合适的统计模型。首先将预设数据写入统计对象,通讯正常后,读取第一时间辐照下器件各地址的存储数据,生成第一读数据,将预设数据与第一读数据进行逐位比较,统计翻转位与翻转位数目,并将第一读数据赋值成为新的预设数据,作为第二时间读数据的对比数据,避免出现重复统计。所谓预设数据,即为在通讯过程中某地址正确的数据读值。单粒子翻转统计模型如图4所示。

图4 单粒子翻转统计模型

统计过程中,如果某地址内数据的读值不断变化,仅采用单一的预设数据会导致统计结果不准确,因此需要找出读值的变化规律来采用不同的预设值。CAN控制器的FIFO在未满时,未填充数据的地址会读出随机数,无法统计翻转数目,所以选择在FIFO满时读取。FIFO满后各地址内容会随着通讯过程不断变化,变化规律表现为:

FIFOFULL=64*n+c

其中,n为非负整数,c={5,11,17,23,29,34,40,46,52,58,63},FIFOFULL为FIFO第几次满。

c的取值共11种,表明FIFO满情况可分为11种,因而预设数据需要根据不同满状况设置,可采用语句if((n-c)%64= =0))来分类选择。

4 单粒子辐照试验

4.1 测试系统的功能验证

测试系统在单粒子试验之前需要进行功能验证。系统功能主要验证单粒子翻转统计模型有效、单粒子闩锁电流能单独监测、上位机能实时显示电流及数据并能在过电流时切断电源。

首先验证单粒子闩锁的检测以及电源切断动作是否及时,将CAN控制器电源地短接,模拟SEL效应现象,试验结果如图5所示。被测CAN控制器的正常工作电流在35 mA左右,SEL阈值电流设计为52.5 mA(正常工作电流的1.5倍),工控机板卡电流分辨精度在uA级,能够准确监测电流的异常变化。

图5 SEL效应显示界面

图7中,当出现SEL现象时,电流指示灯以及SEL指示灯都会变“红”提醒,5V处的电流数字显示以及坐标显示都会实时反映电流异常,在程序设定的时间内电流不恢复,则切断电源,5V电流坐标显示处也不再有曲线。

然后验证单粒子翻转效应能否准确统计,将FIFO第十一次满时首地址的预设数据由“0x00”修改为“0x01”,表示FIFO首地址内的数据有一位一直维持错误,按照统计模型计算翻转数应该为1,试验结果如图6所示。

图6 SEU效应显示界面

图8中,显示界面“总错误比特数”处显示为1,验证了统计模型的正确性。

4.2 辐照试验

单粒子效应试验选用中国原子能科学研究院核物理研究所的HI-13串列加速器和兰州近代物理研究所的回旋加速器进行。选择粒子种类如表1。

表1 单粒子效应试验用的离子

SEL测试主要统计出现大电流的次数。试验流程图如图7所示。

图7 SEL试验流程图

单粒子锁定的具体流程如下:

(1)由NI工控机监测待测芯片电流是否突然增大至设定的阈值;如果达到,控制芯片对其进行复位;

(2)上述操作完成后,电流仍然不减小则认为发生SEL效应;

(3)断开电源至芯片恢复正常温度后,接通电源重新配置JRCAN控制器芯片;

SEU测试需要统计芯片内部所有可读模块的位翻转数目(寄存器、TXB、RXB、FIFO等)。通过STM32对CAN控制器进行功能配置,建立STM32的CAN通道与CAN控制器之间的通讯,在动态过程中统计翻转位数。SEU试验流程图如图8所示。

单粒子翻转测试具体流程如下:

(1) 初始化待测CAN控制器芯片。

(2) 核心控制器配置待测芯片寄存器并写入功能数据帧建立CAN通讯,CAN控制器被配置为PeliCAN模式,相比于BasicCAN可实现更多的逻辑单元翻转;控制器读取缓冲器、寄存器的值,与配置时的值对比,统计发生SEU的位数,并将控制器读取到的数据通过串口发送到上位机。

(3) 重复步骤(2)。

(4) 控制器发送重新配置命令,使JRCAN控制器重新配置数据为初始值。

(5) SEU效应监测过程中,一并监测SEL效应,以防止芯片因电流过大被烧坏。

单粒子功能中断(SEFI)测试主要统计器件功能中断的发生次数,无论寄存器区还是缓冲器区出现逻辑翻转都会影响通讯功能,所以在SEU试验过程中一并监测SEFI效应,统计CAN控制器在通讯过程中出现的停止收发数据或者收发数据帧不正确的次数。

两种粒子下的单粒子效应实验数据如表2所示。

图8 SEU试验流程图

表2 单粒子效应实验粒子

粒子加速器名称粒子注量/cm-2翻转位数SEL次数SEFI次数GeHI-131.20×104000BiHIRFL0.8×104000

表2实验数据表明,器件在Ge粒子(LET值=36.8 MeV·cm2/mg)、Bi粒子(LET值=98.5 MeV·cm2/mg)辐照条件下,数字逻辑单元翻转数目为0,同时也未出现单粒子闩锁和功能中断。该器件抗单粒子辐照效应能力较强,符合《QJ 10005—2008 宇航用半导体器件重离子效应试验指南》的要求,能够满足宇航级的使用。

5 结 语

本文介绍了一种CAN控制器单粒子试验系统,可以在试验过程中对CAN控制器进行全面的监测,实时准确地保存试验数据,方便后续计算评估被测器件是否符合航天要求。提出一种单粒子翻转统计模型,既保证全面统计翻转位,也避免出现重复统计,影响数据的准确性,同时针对地址内容动态变化的单元,找出变化规律进行统计。最终测试结果表明,测试系统满足了对待测器件进行单粒子评估的要求。

猜你喜欢
寄存器器件粒子
碘-125粒子调控微小RNA-193b-5p抑制胃癌的增殖和侵袭
基于膜计算粒子群优化的FastSLAM算法改进
Lite寄存器模型的设计与实现
Conduit necrosis following esophagectomy:An up-to-date literature review
二进制翻译中动静结合的寄存器分配优化方法
移位寄存器及算术运算应用
基于粒子群优化极点配置的空燃比输出反馈控制
旋涂-蒸镀工艺制备红光量子点器件
一种加载集总器件的可调三维周期结构
高分辨率遥感相机CCD器件精密热控制