APP下载

星载分布式超大容量存储架构中COTS器件的应用

2020-08-12鲍迪孙逸帆刘骁王冠雄杨鹿

航天标准化 2020年2期
关键词:单机器件处理器

鲍迪 孙逸帆 刘骁 王冠雄 杨鹿

(上海航天电子技术研究所/八院智能计算技术重点实验室,上海,201109)

随着空间应用技术的发展,针对星载数据高速处理、交换及大吞吐量的需求,采用COTS器件的分布式大容量存储架构具有成本低廉、功能密度高、开发周期短等特点。然而COTS器件一般不采用抗辐照工艺、器件内部单元库未采取加固设计,通常没有抗辐照指标,器件本身抗单粒子翻转 (SEU)、闩锁 (SEL)、总剂量 (TID)等空间辐射能力较弱。如果不对其进行有针对性的可靠性设计,容易引发数据运算错误、功能中断等故障,影响在轨任务的正常执行。

1 COTS器件应用于星载存储器存在的问题

随着信息技术的高速发展,越来越多的领域采用多片NAND Flash级联或组成阵列以扩大存储空间和提高数据吞吐量。NAND Flash写入的平均时间为 200μs,最大等待时间为 700μs,若不按顺序依次写入数据,速度就会很慢,无法满足实际的使用要求[1]。

采用多通道NAND Flash阵列,可以有效地解决这一问题。在多通道NAND Flash阵列中,每个闪存通道都有自己独立的通道缓存、时序模块、数据总线和控制总线,每个通道并行工作互不影响,由硬件逻辑来实现数据到各个通道上的自动分配,大大提高了数据的传输速度。

但由于NAND Flash本身的工艺局限性,数据在传输与存储过程中可能发生 “位翻转”的现象。故为了保证存储数据的可靠性,NAND Flash存储系统在使用过程中需要伴随一定的检错与纠错机制。而且COTS器件为了减小尺寸,往往采用新材料、新结构及新封装形式。生产厂商为获得最大利益,在满足设计指标的基础上,对设计、工艺、产地的要求都比较宽松,不同批次器件一致性较差,且器件记录不完整,一旦出现问题,用户无法追溯。商用器件的应用环境不是太空环境,设计时不会考虑空间环境应用,更缺乏应用于宇航环境的可靠性数据与试验,因此直接用于宇航领域存在较大风险。

2 COTS器件选用和可靠性设计

2.1 器件筛选要素

与宇航级器件相比,COTS器件在出厂时没有进行严格的筛选试验,导致卫星研制过程中可能采购到固有失效率较高的COTS器件。因此,为保证工程实用性,需要制定针对COTS器件的筛选和选用规范,保证器件的可用性和可靠性。

a)优选具有成功飞行经验的元器件。在轨飞行过的元器件已经经受过空间环境的考验,具有一定的飞行数据。

b)选用元器件的适应温度范围为-40℃~85℃。卫星星内温度一般维持在-10℃~45℃,商业级器件的温度范围是0℃~70℃,工业级器件的温度范围是-40℃~85℃,所以选用工业级COTS器件。

c)选用芯片兼顾 “高性能、先进性、集成化、可获得性、低成本、长期应用”原则。

d)COTS器件的质量等级与筛选试验应考虑低轨互联网星座任务的寿命要求、轨道高度、研制周期、研制成本等综合因素。严格制定试验流程,确保试验到位。

e)考虑元器件的运行环境。在空间运行时需要考虑空间辐射环境,包括总剂量效应、单粒子效应以及空间的真空热环境等。

2.2 模块检错容错技术

为了屏蔽处理器等器件的单粒子效应引起的指令流软错误,在模块层面进行了多级校验纠错进行防护,保证单粒子软错误不在整机/系统数据链路上传递,实现数据层面的故障隔离。

本文采用一种基于软件的Cache抗单粒子加固手段,即Cache重载刷新技术。由于SM750处理器的Cache可配置成写通模式 (write through),保证每次写入 Cache的数据会同时写入NAND Flash主存储器,从而可以确保Cache和NAND Flash主存储器之间的数据一致性。通过软件的指令控制,使得Cache定期从NAND Flash主存储器中重新载入相应数据,完成对Cache数据的刷新,修复由于单粒子翻转引起的Cache数据错误。而主存储器的SRAM或SDRAM因为在芯片外部,可以通过传统的纠错校验码进行加固,从而保证重新载入的数据的正确性。

这种方法不需要更改芯片本身的结构,只需要在软件中增加相应的重载刷新控制即可实现,回避了重新设计和验证芯片带来的诸多不利因素。同时,软件可以实现刷新算法的动态调整,在刷新效果和系统性能之间找到一个平衡。同时本文提出了自主重载算法 (Automatic Refetch Algorithm)。这种算法充分利用了Cache数据结构中的状态位,软件按照一定频率将选中数据块的状态位改写成无效,这样当下次处理器需要访问该数据块时,按照Cache未命中处理,处理器会访问主存储器,并将对应数据自动更新至Cache。其工作流程如图1所示。

这种算法利用了Cache访问本身的机制,虽然会将所有选中数据块的状态位都改写成无效,但是只会对处理器需要使用到的数据块进行实际的存储器访问和刷新,从而避免了静态重载算法中出现的大量不必要的刷新工作,提高了系统效率。同时,与事件触发重载算法相比,由于具体的重载刷新工作可以利用处理器原有的Cache工作机制来自动完成,软件除了修改状态位,没有其他对硬件的控制,从而可以有效降低软件的负担。另一方面,这种算法可以动态调整刷新频率,在实际应用中针对不同需求,可以通过增加刷新频率来达到更好的抗单粒子效果,或者通过降低刷新频率来进一步降低软件用于刷新操作的工作量,增加有效数据在Cache中的保持时间,从而提升系统性能。

2.3 系统级可靠性设计

考虑到系统的集成性和低价性,不再做整体备份,而是突出关键和薄弱环节的加固。为了满足单机的抗总剂量指标要求,需要对上述器件进行屏蔽防护,主要通过机壳的3mmAL和加贴0.5mm铅皮进行防护,提高整机的抗辐射性能指标。

系统级可靠性设计方法还可以通过故障维护与自主管理软件 (FDIR)完成。具体工作方式如下。

a)模拟量采集模块采集各模块/器件的模拟量运行参数,将数据进行汇总后发送至串行IO模块。串行IO模块通过串行通信接口接收各模块发来的数字量运行参数,与模拟量参数汇总后保存至缓存。

图1 自主重载刷新工作流程图

b)当单机工作在主备双机工作模式下,处理器模块的CPU通过内总线从串行IO缓存中读取各模块/器件的运行参数,按照故障判据完成对模块/器件的故障识别,由串行IO模块通过串行通信接口向指令驱动模块发送对应模块/器件的断电、复位和切机指令。

c)当单机工作在加固对比模式下,处理器模块的FPGA负责处理各模块/器件的运行参数,按照故障判据完成对各模块/器件的故障识别,由串行IO模块通过串行通信接口向指令驱动模块发送对应模块/器件的关机、复位和切机指令。

d)指令驱动模块接收串行IO模块发来的指令,驱动OC门电路向对应模块/器件发送关机、复位和切机指令脉冲。

e)对于像 SM750和 SMSJA1000的核心器件,处理器模块FPGA具备检测其功能中断的设计,可以在不通过串行IO模块和指令模块的情况下,对器件进行局部断电和复位等操作,完成比较快速的故障恢复。检测和故障维护结果也作为处理器模块的单机级FDIR遥测内容。

f)局部器件进行恢复期间,处理器模块暂时接替SM750处理器进行遥控遥测链路的控制,CAN总线控制器则切换至备份机通道,确保故障恢复器件不造成单机功能中断。

g)单机遥测采集模块需要实时检测各参试设备的运行参数,作为辐射诱导故障的判据。其中模拟量参数通过数据采集模块进行AD转换后进行采集,FDIR(主备双机模式)或串行IO模块(加固对比模式)对数据进行分析比对。

数字量参数主要用于检测单机的各项功能是否正常运行,各功能模块会按一定控制周期检测单机各项功能,将检测结果以数字量遥测形式由FDIR(主备双机模式)或串行IO模块 (加固对比模式)进行数据分析比对。由于许多检测功能需要占用处理器/FPGA运算资源,可以在单机运行时根据需要可关闭相应的检测功能。具体的参数检测内容见表1。

2.4 闩锁电流检测与恢复

各模块从内总线获得二次电源后,经过电源检测芯片后作为单板供电电源,电源检测芯片可以检测到单板电流的变化情况,如图2所示。

三端稳压器用来给辐射敏感器件供电,闩锁检测电路首先预设一个正常的电流阈值,当发生闩锁后产生的电流超过阈值,触发运算放大器产生过流指示信号给单机的抗辐射FPGA检测单元。FPGA一旦收到过流信号即输出约2s的复位信号。对于处理器这种具备软件控制周期的器件,还可以设计硬件看门狗电路,当辐照效应造成软件无法正常运行时,看门狗计数器溢出,会产生周期的复位信号。因此当出现闩锁过流后,首先会导致约2s的单板复位,使闩锁器件进入低功耗的等待状态,尝试退出闩锁。复位后可能会遇到以下3种故障模式:①复位后仍有闩锁,再次复位2s;②复位后闩锁信号消失,但系统软件无法重新运行,则在看门狗电路作用下,仍输出持续的复位信号;③复位后若闩锁信号消失且系统软件重新运行,无复位信号输出。

表1 单机FDIR数字量检测参数

图2 存储器模块电流检测电路原理框图

如果尝试复位恢复超过3次 (等效于复位超过6s),FPGA可以通过控制三端使能信号对闩锁器件进行局部断电。在供电电路设计时,闩锁敏感器件的各档电压均使用独立的三端稳压器供电,并且设计了独立的断电电路,从而确保FPGA可以对其进行局部断电而不影响其他外围器件的状态。在断电3s后,闩锁器件重新上电,并进行软件重启。

同时,需要采用抗闩锁电阻对整机电流进行限流保护,防止闩锁造成器件烧毁。考虑到部分器件自身工作电流较大,因而不适合在器件端加装抗闩锁电阻。在单机其他器件对单粒子闩锁效应不敏感或者电流较小的情况下,因闩锁造成的电流增量可以通过单机的电流增量体现,因而采用抗闩锁电阻对整机电流进行保护,可以有效防止闩锁过流引起的器件烧毁,从而保证闩锁现象不对单机造成永久性损伤。

COTS器件构建的星载分布式超大容量存储架构具备新一代综合电子系统低成本、高可靠性的特点。针对COTS可靠性数据不足、抗辐射能力不确定的薄弱环节,针对性的提出了器件筛选、模块检错容错、系统可靠性设计、软件纠错、闩锁检测与恢复等方面的抗辐射加固解决措施,为我国卫星快速集成研制、通用化、产品化等方面提供了有益参考。

猜你喜欢

单机器件处理器
Dirac Live加持!让好效果来得更容易 ROTEL Rotel RAP-1580MKⅡ AV功放/RSP-1576MKⅡ环绕声处理器/RMB-1585五声道功放
一种单机式涡流探伤仪电性能校准装置
Finding the Extraterrestrial
民用飞机单机设计资料管理方案探索
基于Hadoop的舌部图像预处理时间对比研究
放射性废液输送设施调试大纲及设备单机负荷调试
火线热讯
AItera推出Nios II系列软核处理器
通用贴片式器件及应用电路(五)电压变换器MAX860及MAX881R