论文部分内容阅读
随着航天技术及集成电路产业的发展,数字式太阳敏感器得到广泛应用,采用So C(System on Chip,片上系统)的方法进行太阳敏感器数据处理电路的实现,体积小、功耗低,符合卫星小型化的趋势。So C中的时序单元极易受到SEU(Single Event Upset,单粒子翻转)的影响导致逻辑翻转,进而引起系统错误,对数字式太阳敏感器(以下简称“数字太敏”)So C进行抗SEU加固设计对保证航天器的正常运行有重要意义。本文完成了数字太敏So C在RTL(Register Transition Level,寄存器传输级)的抗SEU加固设计,并将加固后的设计进行了FPGA(Field-Programmable Gate Array,现场可编程门阵列)实现。首先分析了基于Leon3处理器平台设计的数字太敏So C结构并提取了其中的SEU敏感单元,接下来对不同敏感单元的SEU加固方法进行探讨,根据各敏感单元类型和完成的功能不同,综合考虑速度、开销及加固效果后,确定了针对数字太敏So C的抗SEU加固整体方案。为了减小容错设计对流水线性能的影响并减少开销,对Leon3处理器中的寄存器堆采用分组汉明码加流水线重启的方法加固,对Cache存储体使用CRC(Cyclic Redundancy Check,循环冗余校验)结合强制Cache不命中的方法加固;针对TMR(Triple Modular Redundancy,三模冗余)加固的FSM(Finite-State Machine,有限状态机)在发生两位SEU时失效的问题,并考虑到FSM在设计中的重要地位,对低速设备中的FSM使用One-Hot码加自检测逻辑的方法加固,对高速设备中的FSM使用One-Hot码加TMR的方法加固;为减小开销,对数据预处理模块中的SRAM使用汉明码加固;其他普通寄存器均采用TMR加固实现。本文最后对数字太敏So C的抗SEU加固设计进行功能验证和加固效果分析。使用Modelsim对流水线重启、强制Cache不命中和低速设备中FSM的加固进行验证,并使用FPGA对加固后设计进行实现,证明加固后整体功能正确,使用故障注入工具对寄存器进行故障注入,计算了寄存器加固后的故障率比加固前减小了6个数量级。