
技术摘要:
一种星载XILINX V4 FPGA刷新方法,属于FPGA配置和监测技术领域。刷新功能可以避免单粒子效应累积,延长星载信号处理FPGA的工作时长,提高星载设备的可靠性。单粒子效应导致单粒子功能中断时,需要重新配置信号处理FPGA。单粒子效应没有导致单粒子功能中断时,需要通过 全部
背景技术:
空间辐照引起的单粒子翻转,有可能导致单粒子功能中断。单粒子翻转分为两种 类型,一种是单粒子功能中断型单粒子翻转,一种是非单粒子功能中断型单粒子翻转。对于 非单粒子功能中断型单粒子翻转,包括SMAP/JTAG单粒子功能中断、帧地址寄存器单粒子功 能中断两种情况。其中使用SelectMAP或JTAG口,会发生SMAP/JTAG单粒子功能中断,导致后 配置控制(如回读或配置刷新)失效;而导致帧地址寄存器读或写失效的单粒子翻转称为帧 地址寄存器单粒子功能中断。上述两种情况不会中断用户应用,但会使进一步的单粒子效 应检测和纠正失效,直接影响FPGA工作的稳定性和可靠性,导致星载设备发生在轨故障,严 重危及卫星的正常在轨运行。
技术实现要素:
本发明要解决的技术问题是:克服现有技术的不足,提供了一种适用于星载FPGA 的刷新方法,刷新功能可以避免单粒子效应累积,延长星载信号处理FPGA的工作时长,提高 星载设备的可靠性。单粒子效应导致单粒子功能中断时,需要重新配置信号处理FPGA。单粒 子效应没有导致单粒子功能中断时,需要通过刷新来纠正,刷新不会影响信号处理FPGA的 功能。 本发明目的通过以下技术方案予以实现: 一种适用于星载FPGA的刷新方法,包括如下步骤: S1、选定状态寄存器和控制寄存器中能够刷新的类型块,将按最小地址、列地址、 行地址,且从顶比特到底比特、从序数较小的类型块到序数较大的类型块的顺序,作为选定 类型块的帧地址递增顺序; S2、向所述帧地址寄存器写入预定定义值,然后回读帧地址寄存器的值,如果预定 定义值与回读值一致,则帧地址寄存器正常,转入S3;否则,判定帧地址寄存器异常,转入 S4; S3、回读状态寄存器的值或控制寄存器的值,如果回读值与相应的默认值不一致, 判定状态寄存器异常或控制寄存器异常; S4、当帧地址寄存器异常时对FPGA进行重新配置,当状态寄存器异常或控制寄存 器异常时,根据S1中的帧地址递增顺序对FPGA的配置存储区进行刷新;然后重复S2~S4。 上述适用于星载FPGA的刷新方法,优选的,刷新的配置数据存储在三片存储器中, 读取数据时,进行三模比对。 上述适用于星载FPGA的刷新方法,优选的,三模比对时,比对颗粒度为bit级。 上述适用于星载FPGA的刷新方法,优选的,每个存储器中存放多份配置文件,当状 3 CN 111552500 A 说 明 书 2/8 页 态寄存器异常或控制寄存器异常时,根据S1中的帧地址递增顺序对FPGA的配置存储区进行 刷新,刷新后再次检测状态寄存器或控制寄存器,如果仍然异常,则更换为其他配置文件进 行刷新。 上述适用于星载FPGA的刷新方法,优选的,刷新采用基于帧的刷新命令或基于设 备的刷新命令。 上述适用于星载FPGA的刷新方法,优选的,状态寄存器的默认值为0x00007EFC;如 果FPGA的GLUT_MASK_B使能,控制寄存器的默认值为0x20000009,否则控制寄存器的默认值 为0x20000 109。 上述适用于星载FPGA的刷新方法,优选的,如果状态寄存器的bit4或5或6或7或13 或14变为0,或状态寄存器的bit1或15或16变为1,则判定状态寄存器的值与相应的默认值 不一致;如果控制寄存器的bit0或4或5或6或9或10或11或13~30,与,相应的默认值不一 致,则判定控制寄存器与相应的默认值不一致。 上述适用于星载FPGA的刷新方法,优选的,帧地址寄存器中能够刷新的类型块包 括第零个类型块、第一个类型块、第六个类型块。 上述适用于星载FPGA的刷新方法,优选的,采用基于帧的刷新命令时,需要写入两 帧数据,第一帧数据是实际刷新数据,第二帧数据是虚拟数据。 上述适用于星载FPGA的刷新方法,优选的,第二帧数据均为0。 本发明相比于现有技术具有如下有益效果: (1)本发明对在轨信号处理FPGA进行刷新,与不刷新相比,能够提高信号处理FPGA 的可靠性,延长信号处理FPGA的工作时长。 (2)本发明刷新方法对第零个类型块、第一个类型块和第六个类型块进行刷新,刷 新完整,没有遗漏。 (3)本发明刷新方法通过设置控制寄存器的GLUT_MASK bit,可以灵活使用SRL 16 和LUTRAM,从而能够更好地利用资源。 附图说明 图1为本发明方法的流程图; 图2为帧地址递增流程图。