COTS星载计算机容错设计及可靠性研究*
2020-07-22蒲卫华谢成清姜文志黄维达
蒲卫华,谢成清,姜文志,黄维达
0 引 言
微小卫星是指质量在500 kg以下的卫星,具有制造成本低、研制周期短、可批量生产的优势,预计未来五年全球将发射510颗1 kg~500 kg的小卫星入轨[1].随着工业技术的快速发展,产品的质量与可靠性水平不断提高,在民用领域和军用领域形成了一大批高集成度、低成本、批量化生产的工业级/军品级产品为构建低成本微小卫星配套产品体系,实现批量化生产提供了有力支撑.在国内外微小卫星的研制中,已经有大量的商业货架产品(COTS)被成功应用.英国的萨瑞大学采用COTS技术研制的Uosat-2卫星在轨工作长达14年以上,并利用卫星在轨数据和理论计算值对比,完成了星载计算机TMS4416器件单粒子翻转率研究[2];美国行星公司采用低成本商业现货部件研制的88颗“鸽群”卫星,由印度“极轨卫星运载火箭”搭载一箭104星成功发射,创下运载火箭单次发射卫星数量世界记录[3-4].国内高校和科研院所也在积极的开展星载计算机可靠性研究,文献[5]研究了具有双机容错结构的新型ARM(advanced RISC machine)星载计算机系统,分析了双机容错的故障处理机制和星载计算机软件组成结构;文献[6]提出了一种基于三模冗余的微纳卫星通用计算机体系架构,通过三模冗余设计、硬件看门狗、看闩锁电阻设计等硬件加固设计增强系统可靠性;文献[7]为解决COTS处理器软件容错问题,提出了虚拟寄存器的软件加固技术;文献[8]针对微小卫星星载计算机系统对可靠性和实时性的苛刻要求,提出一种冷、热备份并存的星载计算机系统设计方案;文献[9]为了提高微纳卫星星载计算机系统的可靠性,提出了一种软硬件结合的容错设计方法,硬件容错通过现场可编程门阵列对故障处理器进行仲裁切换,软件容错通过错误检测与纠正(Error detection and correction, EDAC)信息容错技术的实现,对星载计算机整体程序进行纠错检错,以对抗单粒子翻转事件.国内外COTS星载计算机可靠性的研究主要集中在解决抗单粒子防护设计问题上,而对于星载计算机的可靠性预计分析、抗总剂量能力水平、元器件质量保证方法等方面的研究相对较少.
因此,针对工业级星载计算机无可靠性预计指标可能影响其空间应用可靠性的问题开展研究,提出了实现星载计算机容错设计及高可靠性空间应用的解决措施.最后,通过星载计算机加速寿命试验数据和在轨运行表现不仅证明了该方法的有效性,也证明基于工业级元器件研制的星载计算机可以实现高可靠性航天应用.
1 COTS产品和宇航级产品的区别
COTS产品具有使用商用标准和规范、不依靠政府的资金进行发展、可以在普通的流通市场上采购、符合环保条例等特点.宇航级产品具有使用航天标准规范、元器件采购依据采购规范、严格执行航天禁限用工艺、材料、元器件保证要求等特点.COTS产品相比宇航级产品具有集成度高、技术更新换代快、体积小、成本低的优点,但是由于使用环境、器件质量等级、生产过程控制的差异,导致COTS产品空间应用存在一定的可靠性风险.COTS产品与宇航级产品的差异见表1.
表1 COTS产品与宇航级产品的差异Tab.1 Differences between COTS products and space-grade products
因此,为了实现商业货架产品成功在轨应用,需要重点解决以下关键问题:
1)如何开展抗单粒子容错设计及验证?
2)如何开展COTS产品可靠性预计分析及评估?
2 容错设计及验证
针对空间单粒子问题,通过系统、硬件、软件、FPGA(field-programmable gate array)多个方面采取容错设计,使COTS星载计算机有较高的可靠性.
2.1 双机冷备容错
星载计算机采用双机冷备架构,星载计算机通过仲裁单元判断主机是否进入异常处理,仲裁单元采集到多次异常后,进行主备切换.为避免错误逻辑主备频繁互切,备切主需要通过地面指令进行切换.由于重要数据通过CAN总线保存在其它下位机中,星载计算机重上电后能够快速恢复系统,减少切机对姿控等系统造成的影响.
2.2 存储器容错
空间辐射环境会引发存储器单粒子翻转故障,通过研究工业存储器件特点,进行基于FPGA的EDAC(error detection and correction)模块设计,EDAC具备“纠二检三”的能力.模块设计框图如图1所示.
图1 采用FPGA实现EDAC功能框图Fig.1 Block diagram of realize EDAC function using FPGA
2.3 Flash容错
基于低成本的设计约束,采用Flash及FPGA逻辑实现存储方案.引导程序、应用程序及重要参数存储在Flash中,为防止单粒子翻转造成Flash数据错误,将引导程序、应用程序及参数均存储四份并填写校验码.上电后首先运行引导程序,如引导程序1运行不成功则自动切换到下一份引导程序,依次循环.在引导过程中对应用程序进行正确性校验,如错误则自动切换到下一份,判断正确后将应用程序装载在SRAM中运行.引导自动切换由FPGA逻辑实现.Flash容错设计框图如图2所示.
图2 Flash容错设计框图Fig.2 Block diagram of flash tolerant design
2.4 基于脉冲激光的容错设计验证
为验证容错功能正确性,采用脉冲激光单粒子效应试验装置,开展单粒子翻转效应下容错验证.测试环境包括3维移动台、脉冲激光器、物镜、直流电源、示波器、控制计算机、测试计算机等.详见图3.
采用试验装置触发单粒子翻转效应后,利用EDAC模块对RAM、Flash等芯片进行容错功能验证.如图4样品装在3维移动台上.样品上电后开始测试.
图3 脉冲激光模拟单粒子测试环境图Fig.3 Block diagram of Pulse laser simulation ofsingle particle test environment
图4 样品测试过程图Fig.4 Sample test process diagram
3 COTS星载计算机可靠性预计
3.1 可靠性预计数据来源和方法
星载计算机元器件失效率数据来源如下:
1)可靠性预计的基本输入条件为星载计算机产品装机元器件清单;
2)国产元器件失效率采用GJB/Z 299C-2006的数据;
3)国外进口元器件采用GJB/Z 299C-2006附录A和MIL-HDBK-217F的数据.
采用元器件应力分析法,应用可靠性分析软件(isograph reliability workbench)的可靠性预计模块进行失效率统计.
3.2 可靠性建模和预计分析
星载计算机可靠性框图见图5.
图5 星载计算机可靠性框图Fig.5 Reliability block diagram of on-board computer
星载计算机为电子产品,寿命服从指数分布[10],可靠性模型如下:
R(t)=e-λt
(1)
式中,R(t)为可靠度;λ为总失效率;t为任务时间(按3年26280小时计算).
可靠性预计时,工作环境温度根据卫星热分析结果为25 ℃;元器件等级为工业级,不进行器件级筛选,通过板级热循环筛选试验剔除元器件早期质量问题、工艺和制造缺陷.因此,元器件质量等级选取为B1(即进行筛选的B2级产品,B2级产品定义为按照制造商规定的生产和试验流程制造试验的工业级产品[11]).
元器件的失效率统计模型参见GJB/Z 299C-2006标准,可靠性预计时根据元器件的种类、数量、质量等级、工作环境温度、工作电应力等参数进行失效率统计.利用Isograph Reliability Workbench可靠性分析软件可靠性预计模块计算获取的星载计算机各单元失效率见表2.根据公式(1)和图3计算,星载计算机3年寿命末期可靠度预计值为0.974.
表2 星载计算机失效率统计表Tab.2 Statistical table of failure rate of on-board computer
4 COTS星载计算机可靠性分析及验证评估
4.1 COTS星载计算机在轨运行情况
第一代COTS星载计算机产品应用在开拓一号卫星和脉冲星试验卫星上,开拓一号卫星于2015年9月发射,脉冲星试验卫星于2016年11月发射,两颗卫星均顺利完成在轨任务.目前,在轨运行状态良好.星载计算机的在轨良好表现证明了可靠性保证措施的有效性.
第二代COTS星载计算机产品应用鸿雁星座首颗试验星等四型五星上,分别于2018及2019年发射,卫星在轨运行正常.星载计算机采用容错方法使设备可靠性得到提高,无在轨异常复位,保障了整星的安全.其中鸿雁首发星为1095 km轨道,其余卫星位于450 km至780 km中低轨道.2018年12月至2019年4月,A、B星,鸿雁首发星3颗星星载计算机RAM单错数据情况详见图6,通过图6可见1100 km左右轨道的航天器单粒子事件明显多于500 km左右轨道航天器.
图6 3颗星星载计算机RAM单错数据对比Fig.6 RAM single error data comparison from three satellite on-board computer
4.2 COTS星载计算机加速寿命试验验证
为了保证星载计算机3年寿命要求,同时确保板级环境应力筛选试验的正确性,在第二代COTS星载计算机产品上开展了加速寿命试验验证工作.星载计算机为电子产品,温度对产品寿命起主要影响作用,因此采用阿伦尼斯模型,定时截尾试验方案进行恒温加速寿命试验.产品工作温度取25℃,激活能取0.6,试验条件见表3.试验过程中,星载计算机运行正常,加速寿命试验等效时间为40061小时,满足3年寿命要求并留有一定余量.
表3 星载计算机加速寿命试验条件Tab.3 Test conditions for accelerated life ofon-board computer
4.3 星载计算机可靠性评估
星载计算机在轨飞行数据较少,采用Bayes方法可以很好解决产品小子样和数据匮乏的难题.将预计值作为先验信息并融合地面试验数据以及在轨飞行数据可以更加客观的评价其可靠性.星载计算机地面试验数据统计见表4,在轨飞行数据统计见表5.
表4 星载计算机环境试验统计表Tab.4 Statistical table of environmental test of on-board computer
表5 星载计算机在轨数据统计表Tab.5 Statistical table of on-orbit data of on-board computer
星载计算机3年寿命末期可靠性预计值为0.974,根据式(1)计算得等效失效率λ0,利用式(2)计算获得等效试验时间为2017400h[12].
T0=2.02231/λ0×109(h)
(2)
即先验信息为:(T0,r0)=(2017400,1),试验信息为:(T,r)=(168262,0).
对先验信息与试验信息进行相容性检验[12],显著性水平α取0.1,公式如下:
(3)
由式(3)计算
[1.1685e-08,1.1415e-05]
(4)
因此,试验信息与先验信息相容,可以采用Bayes方法进行可靠性评估[12],公式如下:
T1=T0+T
(5)
r1=r0+r
(6)
(7)
RL=e-λUt
(8)
式中:T为累计总试验时间;r为累计总失效数;λU为失效率上限;RL为可靠度下限;γ为置信度取0.6.由式(5)和(6)计算,(T1,r1)=(2185662,1).由式(7)、(8)计算,星载计算机3年寿命末期可靠度下限值为0.976(置信度0.6).
5 结 论
商业货架星载计算机通过开展容错设计验证、可靠性预计分析及验证评估可以实现在轨成功应用.可靠性评估结果表明星载计算机三年寿命末期可靠度下限值能够达到0.976(置信度0.6).为了进一步验证星载计算机能否满足中长寿命(5~8年)卫星要求,需要继续开展加速寿命试验并持续收集已发射卫星在轨运行数据.下一步将针对商业货架产品更新换代快的特点,研究升级换代产品的容错设计及可靠性如何保证.