APP下载

一种适用于空间信息处理平台的抗单粒子翻转技术研究*

2018-05-25王苏灵谢永春

通信技术 2018年5期
关键词:存储器信息处理校验

王苏灵,谢永春,江 卫

(中国电子科技集团公司第三十研究所,四川 成都 610041)

0 引 言

随着空间技术的发展,世界各国对太空领域的争夺愈演愈烈,国防已经向太空延伸,空间应用、空间攻防能力必将成为未来空间威慑力的重要筹码。我国各种卫星深空探测器飞行器的不断发射成功,标志着我国成为空间领域的大国。空间应用环境的特殊性,对空间信息处理平台的可靠性设计尤其是抗辐射设计提出了更高要求。

目前,空间信息处理平台广泛采用的集成电路主要包括现场可编程逻辑门阵列(Field Programmable Gate Array,FPGA)和数字信号处理器(Digital Signal Processor,DSP)。该类集成电路大量采用片上SRAM,对单粒子翻转非常敏感,容易发生软错误,严重影响器件的正常功能。目前,针对FPGA程序设计常用的抗单粒子翻转设计主要是三模冗余设计(Triple Modular Redundance,TMR),即对某些功能模块或整个程序进行3倍冗余设计,对输出信息通过表决器进行判决。Actel公司根据该原理设计了反熔丝FPGA,成为抗单粒子翻转的高可靠芯片。该芯片所有触发器资源硬件都采用三模冗余设计,且所有片内RAM资源都自带纠错编码功能。

本文介绍单粒子效应[1](Single Event Effect,SEE)机理,提出了一种抗单粒子翻转的设计方法,以期对后续空间信息处理平台抗单粒子设计提供参考依据。

1 单粒子效应机理

单粒子效应是指宇宙空间中单个高能粒子入射半导体器件或集成电路中时诱发的一种现象。高能粒子入射到半导体器件或集成电路芯片中时产生高密度的电子空穴对,这些电子空穴对能够被器件敏感的反偏PN结收集,从而使电路逻辑状态翻转或者诱发寄生结构导通造成器件本身永久性损伤的一种电离辐射效应。单粒子效应包括单粒子翻转(Single Event Upset,SEU)和单粒子闭锁(Single Event Latchup,SEL)。

(1)单粒子翻转。在一些电磁、辐射环境比较恶劣的情况下,大规模集成电路(IC)常常会受到干扰。例如,宇宙中单个高能粒子射入半导体器件灵敏区,使器件逻辑状态翻转,即原来存储的“0”变为“1”,或者“1”变为“0”,从而导致系统功能紊乱,严重时会发生灾难性事故。

(2)单粒子闭锁。高能带电粒子穿过CMOS电路的PN/PN结构时,电离作用会使CMOS电路中的可控硅结构被触发导通,由此在电源与地之间形成低电阻大电流通路的现象。长时间的锁定电流会烧毁器件,造成器件永久失效。当出现闭锁现象时,器件不会自动退出此状态,除非采取断电措施,然后重新启动才可恢复。

SOI工艺的器件不存在PN/PN结构的电流再生放大结构,对SEL有天然的抵抗能力。随着SOI工艺的CMOS器件不断被采用,SEL将不再是超大规模集成电路在空间应用的主要威胁。本文主要研究抗SEU的软硬件平台设计。

2 抗单粒子翻转设计

2.1 硬件平台设计

硬件平台采用传统的DSP+FPGA架构[2],鉴于开发成本和器件容量考虑,业务处理单元采用SRAM(Static Random Access Memory) 型 FPGA,增加反熔丝FPGA作为检测和逻辑译码单元,如图1所 示。 其 中,ROM和MLU(Monitor&Logic Element Unit)单元采用一次性烧写的反熔丝器件,是信息处理平台中抗单粒子翻转的高可靠芯片。DSP和FPGA协同完成空间信息处理平台的主要功能,反熔丝FPGA完成对业务处理FPGA的回读、刷新、重载以及逻辑译码和对DSP的看门狗检测。业务处理单元中的DSP程序和FPGA配置文件,存储于一次性烧写的ROM中,烧写完成后程序即固化,不能再进行升级。信息处理平台的部分有更换需求的关键参数可存放于Flash存储器中,信息处理平台上电后进行加载。

图1 硬件平台

2.2 业务处理单元抗翻转设计

2.2.1 DSP抗翻转设计

DSP的片上存储器受单粒子效应影响较大,程序和数据存储区组成了DSP的片上RAM。DSP受控于作为数据存储的程序指令,本文DSP抗翻转设计主要集中在程序执行流程和片上RAM的纠检错设计方面。

DSP程序存储于反熔丝ROM中,一旦固化,不可更改。DSP的BOOT过程是把ROM中的程序数据导入内部RAM空间进行加载,加载成功后进行正常的业务处理。在业务处理流程中,在不影响空间信息处理平台主要功能前提下,对DSP的RAM和Flash中的数据进行周期自检,并在业务处理流程中增加软件看门狗程序。当周期自检检测到RAM中程序或数据被打翻时,通过纠错码或与ROM中数据对比的方式予以纠正。如果被打翻数据刚好导致自检程序失效,程序跑飞或紊乱,软件看门狗程序失效。此时,需通过MLU的看门狗检测和复位电路,对DSP进行重新加载。对Flash中数据进行周期自检,一旦检测到有错,则通过纠错码或三模冗余方式进行纠正,详见2.3节。

2.2.2 FPGA抗翻转设计

基于SRAM的FPGA对单粒子翻转非常敏感,其中配置存储器的单粒子翻转在FPGA整个单粒子翻转事件中占90%以上。SRAM型FPGA抗单粒子翻转设计主要采用三模冗余和回读刷新[3]。

三模冗余设计是指利用3个功能相同的冗余模块和多数表决器,输出时对所有数据实行3选2多数有效的判定,可以有效实现容错运行,但不会对出错位进行修正和定位。

回读刷新是指将SRAM型FPGA的重要配置信息进行回读和对比,发现配置信息有错则进行重配置操作。采用反熔丝FPGA对业务处理单元FPGA进行回读和配置。处理平台上电时,SRAM型FPGA从配置ROM中加载配置数据。上电后,反熔丝FPGA周期回读SRAM型FPGA配置区的帧数据,并对单帧或多帧计算CRC校验,然后与初始存储的CRC结果进行比较,如果不一致,则对出错帧或者整个配置帧进行刷新。

2.3 存储单元抗翻转设计

关键参数指空间信息处理平台的可升级程序代码、配置参数等。关键参数可存放于Flash存储器中。该关键参数可进行更换,信息处理平台上电后进行加载。

对于存放于Flash存储器中的关键参数,抗翻转设计有两种方法:一种是先进行纠错编码再存储,一种是进行三模冗余存储。

2.3.1 编码抗翻转设计

国际空间数据系统咨询委员会(CCSDS)推荐使用的航天器遥测信道编码是卷积编码和R-S编码。其中,R-S码对突发性差错的纠错能力很强,本文将以R-S码为例进行介绍。

CCSDS规定了两种纠错能力的R-S码供选择使用:一种是(255,223)R-S码,可纠16个R-S符号差错;一种是(255,239)R-S码,可纠8个R-S符号差错。该两种编码符号长度为8 bit,即1个字节,码字长度均为255,即含有255个符号,其中(255,223)R-S码所包含的校验符号个数为32,(255,239)R-S码所包含的校验符号个数为16。该两种编码长度较长,若关键参数较少,进行编码时需填充到223或239字节再进行编码。这里选用(20,16)R-S码,该码型每次对16个字节进行编码,编码后信息长度为20个字节,增加了4字节冗余,可以纠正2个字节的错误。

为避免存储器中关键参数单粒子翻转错误累积,差错个数超出所选码型可纠最大差错数,可采用CRC循环检错码检测数据有效性。在关键参数写入存储器前,先进行R-S编码,将编码后的数据计算CRC校验码,并将编码后数据和校验码写入存储器,过程如图2所示。

图2 数据写入存储器过程

从存储器中读取关键参数时,先将读出的数据进行CRC校验。若校验正确,则表明该数据未发生单粒子翻转错误。因为R-S码为系统码,它的有效数据部分不予改变的出现在R-S码字的数据域,所以CRC校验正确后可不做R-S解码,直接将R-S数据域中的数据取走。当CRC校验错误时,进行R-S解码,解码正确后将数据域的数据读走,再进行R-S编码和计算CRC校验并重写存储器。读取存储器数据过程如图3所示。

图3 数据从存储器读出过程

2.3.2 三模冗余抗翻转设计

对存放于存储器中的关键参数三模冗余设计,即存3份相同的数据,读出时进行大数判决。同时,为避免存储器中关键参数单粒子翻转错误累积,可采用CRC循环检错码检测数据的有效性。

对关键参数进行CRC校验,将关键参数和校验值一同写入存储器,分别存3份。读取时,将3份数据读出进行CRC校验。只要有一份校验正确,则取走该份数据,并刷新出错的存储区,处理流程如图4所示。

图4 读取关键参数流程

(1)从存储器中读出3个数据区的关键参数。

(2)对数据1区进行CRC校验,若校验正确,取走数据待用。将数据2区和数据3区的数据与数据1区数据进行比较,若都相同,则结束流程;若2区或3区数据与1区数据不同,则用1区数据刷新有误的区,结束流程。

(3)数据1区校验错误,对数据2区进行CRC校验。若数据2区校验正确,将数据3区的数据与数据2区数据进行比较,若相同,则用2区数据刷新数据1区;若不同,则刷新1区和3区,结束流程。

(4)数据2区校验错误,对数据3区进行CRC校验。若数据3区校验正确,则用3区数据刷新数据1区和2区,结束流程。

(5)数据3区校验错误,对3个区数据按位进行大数判决,对大数判决得到的数据进行CRC校验。若校验正确,读走数据,并用新数据刷新3个区,结束流程;若校验错误,则纠错失败,3个区数据均不可用。

3 结 语

本文提出的空间信息处理平台设计技术,能对SEU引起的数据错误翻转进行有效检测和纠正。该技术已在某航天产品中得到应用,既可靠有效,又具有较好的移植性和参考价值。

参考文献:

[1] 陆荣,游月辉.卫星扩频应答机抗单粒子翻转技术研究[J].航天电子对抗,2016,32(04):52-55.LU Rong,YOU Yue-hui.The Anti-SEU Technology of Satellite-borne Spread-spectrum Transponder[J].Aerospace Electronic Warfare,2016,32(04):52-55.

[2] 江卫,郑艳.一种适用于空间飞行器的可重构信息处理平台硬件设计[J].通信技术,2014,47(06):697-701.JIANG Wei,ZHENG Yan.Platform Hardware Design for Spacecraft Reconfigurable Information Processing[J].Communications Technology,2014,47(06):697-701.

[3] 陈贺贤,尹庆军.一种星载信号处理机FPGA防单粒子翻转加固方法[J].航天电子对抗,2015,31(03):62-64.CHEN He-xian,YIN Qing-jun.An Anti-fuse FPGA Bassed Method for Single Event Space-brone Signal Processor Missiles[J].Aerospace Electronic Warfare,2015,31(03):62-64.

猜你喜欢

存储器信息处理校验
东营市智能信息处理实验室
使用Excel朗读功能校验工作表中的数据
基于Revit和Dynamo的施工BIM信息处理
静态随机存储器在轨自检算法
地震烈度信息处理平台研究
CTCS-3级列控系统RBC与ATP结合部异常信息处理
炉温均匀性校验在铸锻企业的应用
电子式互感器校验方式研究
任意2~k点存储器结构傅里叶处理器
浅谈微电子故障校验