星载扩频应答机抗单粒子翻转的设计研究

时间:2022-03-16 02:09:19

星载扩频应答机抗单粒子翻转的设计研究

摘要:星载扩频应答机采用软件无线电的设计理念,射频模块硬件电路得到简化,核心信号处理模块通过大规模现场可编程门阵列(FPGA)实现,但存在单粒子效应影响产品功能。本文分析了当前四种抗单粒子翻转(SEU)设计方法,结合扩频应答机工作的任务特点,设计、提出了回读监控的设计方案并在某卫星型号中成功应用,最后提出了进一步研究建议。

关键词:扩频应答机 抗单粒子翻转 SRAM型FPGA 回读重配置

中图分类号:TN927 文献标识码:A 文章编号:1007-9416(2015)04-0140-02

1 前言

星载扩频应答机,在航天测控系统中承担重要的卫星通信和测量功能,用以完成卫星遥控、遥测、测距、测速等具体任务。相对于传统应答机技术,星载扩频应答机由于在测量精度、抗干扰、抗截获方面具有突出的技术优势而获得了广泛应用,但也有基带算法复杂、运算量大的问题。因而,产品设计方案一般采用300~600万门的SRAM型FPGA器件来完成复杂算法任务。

在空间辐射环境中,空间高能粒子入射而引起SRAM型FPGA单粒子翻转,影响星载产品工作。单粒子翻转若发生在逻辑功能区,可能导致星载产品功能中断;如果翻转发生在RAM单元,可能导致数据传输错误或者丢失[1]。因此,本文研究分析了目前主流抗单粒子翻转技术,提出了星载扩频应答机针对SRAM型FPGA的回读监控设计方案及工作流程,最后探讨了后续单粒子防护可改进方面。

2 主流抗单粒子翻转技术

我国空间应用的SRAM型FPGA,主要集中在Xilinx公司的Virtex和Virtex-II系列,广泛应用于各类星载产品中。随着SRAM型FPGA在轨使用数量的增加,FPGA容易发生单粒子翻转的问题日益凸显出来,我国宇航研究人员主要提出了如下四种抗单粒子翻转方法:ASIC芯片设计、三模冗余(TMR)设计、采用反熔丝型FPGA和回读重配置。

2.1 ASIC芯片设计

ASIC芯片设计的抗单粒子翻转,是针对SEU产生的机理,将SRAM型FPGA具体通过ASIC芯片来设计实现,并在ASIC芯片的研制过程中采用底层抗单粒子加固设计和芯片工艺,提高芯片抗SEU能力。该方案可简化硬件电路和降低功耗,但芯片设计开发周期长、成本高和定型后无法灵活更改设计,是该方案所面临的难题。

2.2 三模冗余(TMR)设计

三模冗余也叫三取二,是一种通过软硬件资源冗余配置来提高设备可靠性的设计技术[2]。硬件三模冗余的基本思想是:输入数据同时送入三个实现相同功能的模块,将各个模块输出的数据送到一个多数表决器,进行三选二多数有效的判定,保证输出数据正确。

该方案的优点在于可靠性高,通过硬件冗余的方式提高可靠性;缺点是需要三倍硬件备份,这样产品的资源、面积和功耗都会大幅增加。以星载扩频应答机为例,目前设计采用一片600万门SRAM型FPGA,资源利用率在75%左右,若采用全三模冗余设计,产品方案难以满足大幅提高的资源和功耗要求。

2.3 采用反熔丝型FPGA

应用反熔丝型FPGA的抗单粒子翻转技术,是由于反熔丝型FPGA对单粒子不敏感,单粒子翻转概率低,因此该技术的核心思想,是采用反熔丝型FPGA替代SRAM性FPGA来实现复杂算法。目前,在星载的综合电子类产品,已广泛采用反熔丝型FPGA,有效提高了产品抗单粒子能力,但星载扩频应答机由于其算法规模庞大,需至少400万门以上反熔丝FPGA才能实现全部功能,目前国内尚无满足宇航应用的400万门以上反熔丝FPGA器件。

2.4 回读重配置

回读重配置技术,是对SRAM型FPGA配置存储器进行单粒子翻转检测。由于SRAM型FPGA的逻辑功能由配置信息决定,配置信息存储在FPGA内部的配置存储器中,所以一旦配置存储器发生单粒子翻转,将引起FPGA逻辑功能异常。

回读重配置,是对SRAM型FPGA的配置信息进行动态回读,发现配置信息出错后,对配置信息进行部分重加载或者重新加载FPGA[3]。通过实时或定时回读判断检测,可以检测配置存储器是否发生单粒子翻转,为SRAM型FPGA提供有力的抗单粒子检测措施。回读重配置的缺点,主要是回读的配置信息无法体现Half-latch、SRL16、LUT RAM和BlockRAM的状态,需在软件设计中避免使用这些模块,加大软件设计难度[4]。

综上所述,四种抗单粒子翻转技术的优缺点比较如下表1所示。从效果来说三模冗余设计最可靠,但资源配置要求最高,适用于硬件资源要求小的设计方案;ASIC芯片设计适用于设计输入要求固定、产品配套数量大的设计方案;反熔丝FPGA设计适用于设计输入要求固定、且软硬件资源要求较小(逻辑门数小于200万门)的产品设计;回读重配置可靠度较高,增加少量的硬件资源就可以实现单粒子检测。通过上述优缺点分析,星载产品需根据产品自身任务特点,合理设计抗单粒子方案。

3 星载扩频应答机的回读监控方案设计

星载扩频应答机,承担卫星遥控、遥测、测距、测速任务,需同时对多路高动态测控信号进行扩频捕获、跟踪处理,此外还需完成多路下行测控信号的发射,设计需要消耗大量硬件资源,采用一片Xilinx公司的Virtex II系列600万门FPGA芯片来实现。根据实际分析,产品设计中采用回读重配置设计,增加回读监控电路,可提高产品抗单粒子翻转能力。

回读监控电路,是回读重配置设计的实现,具体是对SRAM型FPGA配置信息进行回读与CRC校验,将计算得到的CRC校验值与正确配置信息的CRC校验值进行比对,当比对出错时认为发生单粒子翻转,对SRAM型FPGA进行重配置以恢复工作状态。

3.1 回读监控硬件电路

回读监控电路利用反熔丝FPGA (A54SX72A)实时读取SRAM型FPGA配置信息进行CRC校验计算,并与预置正确配置信息的CRC校验值进行比对,从而判断SRAM型FPGA是否发生单粒子翻转。

回读监控硬件框图如图1所示,回读监控功能采用ACTEL公司的反熔丝FPGA芯片A54SX72A实现。上电后,回读监控电路根据遥控指令从SRAM型FPGA中回读配置信息并计算CRC值,与预置PROM配置信息CRC值比对。若比对不一致,输出重配置信号PROG_B,控制SRAM型FPGA从PROM存储芯片中读取配置信息重配置。

3.2 回读监控软件流程

回读监控软件,主要在反熔丝FPGA中实现,完成对SRAM型FPGA的配置信息回读、计算CRC校验值并与预置CRC正确值进行比对,比对不一致则输出重加载信号PROG_B对SRAM型FPGA进行程序重配置。

回读监控软件的工作流程如图2所示,具体如下:

(1)初始化和复位:上电复位或复位指令作用时,反熔丝FPGA对SRAM型FPGA输出重加载信号,对SRAM型FPGA进行初始化。

(2)SRAM型FPGA加载:SRAM型FPGA从PROM存储芯片中加载配置信息。

(3)启动回读:加载成功后启动回读,反熔丝FPGA向SRAM型FPGA写入回读配置字;

(4)读取配置信息:反熔丝FPGA从SRAM型FPGA中回读出配置信息;

(5)计算CRC:将读出的配置信息计算CRC校验值;

(6)CRC比对:将计算得到的CRC校验值与预设值进行比对,比对正确表明未发生单粒子翻转;反之则发生单粒子翻转,对SRAM型FPGA进行程序重配置。

其中CRC校验采用Xilinx公司针对芯片提供的32位CRC校验,初始值设为0,采用8位并行CRC校验模式。

4 结语

本文设计的星载扩频应答机回读监控方案,已经成功应用于某卫星型号扩频应答机,通过卫星全过程地面电联试和地面环境模拟试验验证,并通过一年在轨常加电工作考核。目前该扩频应答机在轨工作功能、性能指标正常,未发生单粒子翻转导致单机功能异常的故障现象。通过产品在轨无故障工作经历,验证了回读监控电路对提高扩频应答机抗单粒子翻转能力的有效性。

在现有抗单粒子设计方案上,当扩频应答机检测到单粒子翻转时,需要对SRAM型FPGA重配置,将产生短时工作中断,需对重配置的时机进行进一步合理研究,以作为设计方案的补充内容。

参考文献

[1]邢克飞,杨俊,王跃科,等.Xilinx SRAM型FPGA抗辐射设计技术研究[J].宇航学报.2007,28(1):123-129.

[2]李志刚,潘长勇,杨知行.抗单粒子翻转的可重构卫星通信系统[J].宇航学报,2009.30(5):1752-1756.

[3]马寅.航天用SRAM型FPGA抗单粒子翻转设计[J].航天器环境工程.2011.28(6):551-556.

[4]周秀娟,叶荣润.Virtex-Ⅱ系列FPGA的回读与部分重配置[J].现代电子技术.2012,35(13):159-161.

上一篇:VxWorks下几种任务设计模型的分析与实现 下一篇:数字微波通信中的高阶QAM载波同步算法介绍及仿...