首页> 中国专利> 用于数字信号处理平台架构的单粒子效应防护系统及方法

用于数字信号处理平台架构的单粒子效应防护系统及方法

摘要

用于数字信号处理平台架构的单粒子效应防护系统及方法,目的是解决空间环境下数字信号处理平台的SEFI(Single?Event?Upset单粒子功能中断)问题。本发明通过多种措施的有机融合,细化和完善支持多层级单粒子软错误防护、检测和恢复技术的平台架构,提出了系统的DSP和FPGA单粒子功能中断故障检测及恢复方法,可有效减缓数字信号处理平台的SEFI效应。本发明可以有效克服长时间在轨工作的系统单粒子功能中断问题。

著录项

  • 公开/公告号CN105068969A

    专利类型发明专利

  • 公开/公告日2015-11-18

    原文格式PDF

  • 申请/专利权人 西安空间无线电技术研究所;

    申请/专利号CN201510422774.8

  • 申请日2015-07-17

  • 分类号G06F15/177;

  • 代理机构中国航天科技专利中心;

  • 代理人马全亮

  • 地址 710100 陕西省西安市长安区西街150号

  • 入库时间 2023-12-18 12:16:22

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2018-02-09

    授权

    授权

  • 2015-12-16

    实质审查的生效 IPC(主分类):G06F15/177 申请日:20150717

    实质审查的生效

  • 2015-11-18

    公开

    公开

说明书

技术领域

本发明涉及一种用于数字信号处理平台架构的系统级单粒子效应防护系统 及方法,属于空间通信技术领域。

背景技术

目前,在星载数字信号处理平台中,由于主要采用大规模SRAM型FPGA和 DSP完成数字信号处理功能,该类产品发生单粒子效应的概率大大提高。

从公开刊物了解到,针对目前的数字信号处理系统,主要通过冗余、刷新、 纠检错等方法来缓解系统的单粒子效应,使得系统在发生SEU的情况下仍能够 正常工作。但当系统发生SEFI时,以上这些措施也没办法解决,必须采取有针 对性的SEFI恢复措施,才能让系统恢复正常。

发明内容

本发明的目的是:克服现有技术的不足,提供一种用于数字信号处理平台架 构的单粒子效应防护系统及方法,能够解决系统的SEFI问题,提升了数字信号 处理系统的空间可靠性。

本发明采用的技术方案是:

用于数字信号处理平台架构的单粒子效应防护系统,包括:FPGA芯片、DSP 芯片、SEFI检测恢复单元、第一存储器和第二存储器,SEFI检测恢复单元包含 FPGA状态检测及恢复模块、DSP状态检测及恢复模块、回读校验及刷新模块、 配置模块、看门狗、DSP加载控制模块和存储器控制模块;

FPGA芯片将工作状态信号发送到FPGA状态检测及恢复模块,FPGA状态检 测及恢复模块检测FPGA芯片的工作状态,若FPGA芯片工作正常,则继续进行 工作状态检测,若FPGA芯片发生单粒子功能中断SEFI,则FPGA状态检测及恢 复模块发送复位信号给FPGA芯片,令其复位重配置;

配置模块通过存储器控制模块控制第一存储器,从第一存储器中将FPGA 芯片的配置程序加载到FPGA芯片的配置存储区,回读校验及刷新模块从FPGA 芯片的配置存储区将状态寄存器和控制寄存器的值读取出来,与状态寄存器和 控制寄存器的原始值进行比对,若相同,则继续进行回读检测,若不同,则给 错误指示信号到FPGA状态检测及恢复模块,通过回读校验及刷新模块对FPGA 芯片进行配置存储区刷新,如果状态仍异常,则通过FPGA状态检测及恢复模块 对FPGA芯片复位重配置;

DSP芯片将工作状态信号发送到DSP状态检测及恢复模块,DSP状态检测及 恢复模块检测DSP芯片的工作状态,若DSP芯片工作正常,则判断检测点信息 是否需要存储,若属于要保护的检测点,则将检测点信息通过存储器控制逻辑 存储到第二存储器,并继续进行工作状态检测,若不需要存储检测点,仍继续 进行工作状态检测,若DSP芯片发生SEFI,则DSP状态检测及恢复模块发送复 位信号给DSP芯片,令其复位;所述检测点是指用于恢复DSP工作现场的DSP 程序中的位置点;

DSP加载控制模块通过存储器控制模块控制第二存储器,从第二存储器中 将DSP芯片的配置程序加载到DSP芯片的配置存储区;

看门狗模块定时接收来自DSP芯片的工作状态指示信号,若长时间没有收 到指示信号,看门狗模块对DSP芯片进行复位。

用于数字信号处理平台架构的单粒子效应防护方法,步骤如下:

(1)配置模块通过存储器控制模块控制第一存储器,从第一存储器中将 FPGA芯片的配置程序加载到FPGA芯片的配置存储区;DSP加载控制模块通过存 储器控制模块控制第二存储器,从第二存储器中将DSP芯片的配置程序加载到 DSP芯片的配置存储区;

(2)FPGA芯片将工作状态信号发送到FPGA状态检测及恢复模块,FPGA 状态检测及恢复模块检测FPGA芯片的工作状态,若FPGA芯片工作正常,则继 续进行工作状态检测,若FPGA芯片工作异常,则表示发生了单粒子功能中断 SEFI,则FPGA状态检测及恢复模块发送复位信号给FPGA芯片,令其复位重配 置;

回读校验及刷新模块从FPGA芯片的配置存储区将状态寄存器和控制寄存 器的值读取出来,与状态寄存器和控制寄存器的值原始值进行比对,若相同, 则继续进行回读检测,若不同,则给错误指示信号到FPGA状态检测及恢复模块, 通过回读校验及刷新模块对FPGA芯片进行配置存储区刷新,如果状态仍异常, 则通过FPGA状态检测及恢复模块对FPGA芯片复位重配置;

(3)DSP芯片将工作状态信号发送到DSP状态检测及恢复模块,DSP状态 检测及恢复模块检测DSP芯片的工作状态,若DSP芯片工作正常,则判断检测 点信息是否需要存储,若属于要保护的检测点,则将检测点信息通过存储器控 制逻辑存储到第二存储器,并继续进行工作状态检测,若不需要存储检测点, 仍继续进行工作状态检测,若DSP芯片工作异常,则表示发生了单粒子功能中 断SEFI,则DSP状态检测及恢复模块发送复位信号给DSP芯片,令其复位;所 述检测点是指用于恢复DSP工作现场的DSP程序中的位置点;

看门狗模块定时接收来自DSP芯片的工作状态指示信号,若长时间没有收 到指示信号,看门狗模块对DSP芯片进行复位,完成所述单粒子效应的防护。

所述FPGA芯片的工作状态信号包括DONE信号、BUSY信号、FAR帧地址寄 存器值、状态寄存器值和控制寄存器值。

所述步骤(2)具体为:

(4.1)监测DONE信号:检测DONE信号是否为高电平,若DONE信号为高 电平,则执行步骤(4.2);否则,认为FPGA芯片的上电复位电路发生了单粒子 功能中断,执行步骤(4.5);

(4.2)监测BUSY信号:检测BUSY信号是否为高电平,若BUSY信号为高 电平,执行步骤(4.3);否则,认为FPGA芯片发生了SELECTMAP接口的单粒子 功能中断,执行步骤(4.5);

(4.3)FAR帧地址寄存器读写:在进行每次刷新或者回读操作前,将FAR 帧地址寄存器先写入FPGA芯片的配置存储区,判断回读出的值是否正确,若正 确,则继续进行步骤(4.4);否则,认为FPGA芯片发生了SELECTMAP接口的单 粒子功能中断,执行步骤(4.5);

(4.4)状态寄存器值和控制寄存器值读写:通过回读状态寄存器和控制寄 存器的值,如果与默认值不相同,认为FPGA芯片发生了GlobalsignalsSEFI(全局 信号的单粒子功能中断)或PORSEFI(上电复位电路的单粒子功能中断),执 行步骤(4.5);

(4.5)通过复位重配置或者断电重配置进行SEFI故障恢复。

所述步骤(3)具体为:

(5.1)启动看门狗,在DSP正常工作过程中产生喂狗信号,并监测DSP 芯片发来的工作状态信号,若工作状态信号为预期的正确值,则进行步骤(5.2); 否则,认为DSP芯片发生了单粒子功能中断,执行步骤(5.3);

(5.2)判断检测点保存条件是否满足,若属于要保护的检测点,则通过存 储器控制模块将检测点的内容保存至第二存储器,存储完成后返回步骤(5.1); 否则,直接返回步骤(5.1);所述要保护的检测点是指:由用户指定的DSP程 序中需要做保存动作的位置或者由指定固定间隔时间自动做保存动作的位置;

(5.3)启动DSP状态检测及恢复模块中的DSP复位逻辑,并执行检测点恢 复;所述检测点恢复的内容包括:(1)DSP程序执行现场:包含控制寄存器和通 用寄存器;(2)程序执行栈;(3)程序的计算数据集合。

所述执行检测点恢复具体为:

检测点的恢复由硬件触发,即被SEFI检测恢复单元中的DSP状态检测及恢复模 块触发中断,根据中断信号复位DSP,DSP重新启动后,自动引导,然后以异常 处理的方式执行检测点恢复;在检测点恢复过程中,从第二存储器中读取DSP 程序上一个检测点的信息,将信息加载到寄存器和堆栈中,然后跳入指定的程 序地址,重新执行被中断的程序。

本发明与现有技术相比的有益效果是:

(1)本发明为了满足数字信号处理系统空间环境适应力要求,采用检测 DONE信号、BUSY信号和FAR值以及状态寄存器值和控制寄存器值的方法检测系 统的单粒子功能中断,解决了由于SELECTMAP接口、POR上电复位电路的SEFI 引起的FPGA上电配置及刷新失效的问题。

(2)本发明通过回写配置文件及检测点存储文件或者系统复位的方式实现 系统功能的恢复,大大降低数字信号处理系统在空间辐射环境下运行时发生单 粒子功能中断的概率,提升系统的抗单粒子能力。

附图说明

图1为本发明防护系统的原理框图;

图2为本发明防护方法流程图;

图3为本发明用于系统FPGA的SEFI检测及恢复流程图;

图4为本发明用于系统DSP的SEFI检测及恢复流程图。

具体实施方式

本发明提供了一种适应于数字信号处理平台的系统级单粒子效应防护系统 及防护方法,采用SEFI检测恢复单元进行系统的状态检测,判断FPGA和DSP 若发生SEFI,采取恢复措施。针对FPGA的SEFI检测及恢复,由SEFI检测恢 复单元对FPGA进行配置,完成配置后检测FPGA的DONE信号、BUSY信号、FAR 值、状态寄存器值及控制寄存器值,若发生SEFI则采取上电重配置或复位方法 进行系统恢复。针对DSP的SEFI检测及恢复,由SEFI检测恢复单元对DSP进 行检测点保存,通过看门狗检测DSP是否发生SEFI,检测未发生SEFI,同时保 存检测点,当发生SEFI时,可以通过恢复检测点达到还原系统的目的。

如图1所示,本发明提供的用于数字信号处理平台架构的单粒子效应防护 系统,包括:FPGA芯片、DSP芯片、SEFI检测恢复单元、第一存储器和第二存 储器,SEFI检测恢复单元包含FPGA状态检测及恢复模块、DSP状态检测及恢复 模块、回读校验及刷新模块、配置模块、看门狗、DSP加载控制模块和存储器 控制模块;

FPGA芯片将工作状态信号发送到FPGA状态检测及恢复模块,FPGA状态检 测及恢复模块检测FPGA芯片的工作状态,若FPGA芯片工作正常,则继续进行 工作状态检测,若FPGA芯片工作异常,则FPGA状态检测及恢复模块发送复位 信号给FPGA芯片,令其复位重配置;

配置模块通过存储器控制模块控制第一存储器,从第一存储器中将FPGA 芯片的配置程序加载到FPGA芯片的配置存储区,回读校验及刷新模块从FPGA 芯片的配置存储区将状态寄存器和控制寄存器的值读取出来,与状态寄存器和 控制寄存器的值原始值进行比对,若相同,则继续进行回读检测,若不同,则 给错误指示信号到FPGA状态检测及恢复模块,通过回读校验及刷新模块对FPGA 芯片进行配置存储区刷新,如果状态仍异常,则通过FPGA状态检测及恢复模块 对FPGA芯片复位重配置;

DSP芯片将工作状态信号发送到DSP状态检测及恢复模块,DSP状态检测及 恢复模块检测DSP芯片的工作状态,若DSP芯片工作正常,则判断检测点信息 是否需要存储,若属于要保护的检测点,则将检测点信息通过存储器控制逻辑 存储到第二存储器,并继续进行工作状态检测,若不需要存储检测点,仍继续 进行工作状态检测,若DSP芯片工作异常,则DSP状态检测及恢复模块发送复 位信号给DSP芯片,令其复位;所述检测点是指用于恢复DSP工作现场的DSP 程序中的位置点;

DSP加载控制模块通过存储器控制模块控制第二存储器,从第二存储器中 将DSP芯片的配置程序加载到DSP芯片的配置存储区;

看门狗模块定时接收来自DSP芯片的工作状态指示信号,若长时间没有收 到指示信号,看门狗模块对DSP芯片进行复位。

如图2所示,本发明基于上述单粒子防护系统,还实现了一种用于数字信 号处理平台架构的单粒子效应防护方法,步骤如下:

(1)配置模块通过存储器控制模块控制第一存储器,从第一存储器中将 FPGA芯片的配置程序加载到FPGA芯片的配置存储区;DSP加载控制模块通过存 储器控制模块控制第二存储器,从第二存储器中将DSP芯片的配置程序加载到 DSP芯片的配置存储区;

(2)FPGA芯片将工作状态信号(FPGA芯片的工作状态信号包括DONE信号、 BUSY信号、FAR帧地址寄存器值、状态寄存器值和控制寄存器值)发送到FPGA 状态检测及恢复模块,FPGA状态检测及恢复模块检测FPGA芯片的工作状态, 若FPGA芯片工作正常,则继续进行工作状态检测,若FPGA芯片工作异常,则 表示发生了单粒子功能中断SEFI,则FPGA状态检测及恢复模块发送复位信号 给FPGA芯片,令其复位;

回读校验及刷新模块从FPGA芯片的配置存储区将状态寄存器和控制寄存 器的值读取出来,与状态寄存器和控制寄存器的值原始值进行比对,若相同, 则继续进行回读检测,若不同,则给错误指示信号到FPGA状态检测及恢复模块, 通过回读校验及刷新模块对FPGA芯片进行配置存储区刷新,如果状态仍异常, 则通过FPGA状态检测及恢复模块对FPGA芯片复位;

如图3所示,具体为:

(2.1)监测DONE信号:检测DONE信号是否为高电平,若DONE信号为高 电平,则执行步骤(2.2);否则,认为FPGA芯片的上电复位电路(POR)发生了单 粒子功能中断,执行步骤(2.5);FPGA芯片处于正常状态时,上电配置完成后, DONE信号应该一直为高电平,任何时候如果出现DONE为低的情况,FPGA芯片 则需要重新配置,如果DONE信号始终为低,则认为FPGA芯片发生了上电复位 电路(POR)单粒子功能中断;POR电路是FPGA芯片内部用于监测FPGA芯片核电 压VCCINT、BANK4的I/O电压和辅助电压VCCAUX的电路。当电压下降时,POR 电路会复位FPGA芯片,清除配置存储区,电流恢复至上电后的初始状态,DONE 信号变低。POR-SEFI的现象类似FPGA掉电,或者是PROG信号被拉低。

(2.2)监测BUSY信号:检测BUSY信号是否为高电平,若BUSY信号为高 电平,执行步骤(2.3);否则,认为FPGA芯片发生了SELECTMAP接口的单粒子 功能中断,执行步骤(2.5);FPGA芯片处于正常状态时,写配置存储区时,BUSY 信号应该为低电平;在回读操作开始时,BUSY信号为高电平,BUSY信号变低电 平意味着数据总线上的回读数据有效;如果从写模式切换到读模式后,BUSY信 号超过32个CCLK周期一直为高电平,意味着发生了SELECTMAP接口的单粒子 功能中断SEFI;

(2.3)FAR帧地址寄存器读写:在进行每次刷新或者回读操作前,将FAR 帧地址寄存器先写入FPGA芯片的配置存储区,判断回读出的值是否正确,若正 确,则继续进行步骤(2.4);否则,认为FPGA芯片发生了SELECTMAP接口的单 粒子功能中断,执行步骤(2.5);FAR是FPGA芯片内部的帧地址寄存器,FARSEFI 可能导致帧地址寄存器无法读写,也有可能触发帧地址寄存器自动计数,从而 导致大面积配置数据错误;

(2.4)状态寄存器值和控制寄存器值读写:通过回读状态寄存器和控制寄 存器的值,如果与默认值不相同,认为FPGA芯片发生了GlobalsignalsSEFI、POR SEFI,执行步骤(2.5);FPGA芯片处于正常状态时,上电配置完成后,状态寄 存器的值应该为X”00007EFC”,控制寄存器的值应该为X”20000109”,可 以通过回读状态寄存器和控制寄存器的值,判断FPGA芯片是否发生了SEFI;

(2.5)通过复位重配置或者断电重加载进行SEFI故障恢复。不同的SEFI 对FPGA的影响不相同。POR电路和GlobalSignals的SEFI会使FPGA功能中 断,必须立即进行重配置。SELECTMAP接口和FAR帧地址寄存器的SEFI不影 响用户功能,但是会丧失对SEU的检测和恢复能力,导致SEU错误累积,从而 导致系统功能中断,因此在任务允许的情况下,应该尽快进行重配置;

(3)DSP芯片将工作状态信号发送到DSP状态检测及恢复模块,DSP状态 检测及恢复模块检测DSP芯片的工作状态,若DSP芯片工作正常,则判断检测 点信息是否需要存储,若属于要保护的检测点,则将检测点信息通过存储器控 制逻辑存储到第二存储器,并继续进行工作状态检测,若不需要存储检测点, 仍继续进行工作状态检测,若DSP芯片工作异常,则表示发生了单粒子功能中 断SEFI,则DSP状态检测及恢复模块发送复位信号给DSP芯片,令其复位;所 述检测点是指用于恢复DSP工作现场的DSP程序中的位置点;

看门狗模块定时接收来自DSP芯片的工作状态指示信号,若长时间没有收 到指示信号,看门狗模块对DSP芯片进行复位,完成所述单粒子效应的防护。

如图4所示,具体为:

(3.1)启动看门狗,在DSP正常工作过程中产生喂狗信号,并监测DSP 芯片发来的工作状态信号,若工作状态信号为预期的正确值,则进行步骤(3.2); 否则,认为DSP芯片发生了单粒子功能中断,执行步骤(3.3);

DSP芯片所发出的工作状态信号包括DSP的中断响应信号IACK、中断代码、 特定功能的重要变量;例如,DSP芯片采用外部中断机制工作时,可以通过判 断IACK和中断代码来识别DSP的工作状态是否正常,若采用外部中断4,中断 代码正常应该为“0010”,若不为“0010”,则可断定DSP芯片异常中断;

(3.2)判断检测点保存条件是否满足,若属于要保护的检测点,则通过存 储器控制模块将检测点的内容保存至第二存储器,存储完成后返回步骤(3.1); 否则,直接返回步骤(3.1);所述要保护的检测点是指:由用户指定的DSP程 序中需要做保存动作的位置或者由指定固定间隔时间自动做保存动作的位置; 存储器控制模块完成对检测点的保存和回读;例如,DSP子程序的程序指针地 址位置;

(3.3)启动DSP状态检测及恢复模块中的DSP复位逻辑,并执行检测点恢 复;所述检测点恢复的内容包括:(1)DSP程序执行现场:包含控制寄存器和通 用寄存器;(2)程序执行栈;(3)程序的计算数据集合。DSP芯片寄存器分为 通用寄存器和控制寄存器两种。通用寄存器分为两组寄存器,用于存储数据和数 据地址指针。DSP芯片共有10个控制寄存器,分别为寻址模式寄存器、控制状 态寄存器、中断标志寄存器、中断设置寄存器、中断清除寄存器、中断使能寄 存器、中断服务表指针、中断返回指针、不可屏蔽中断返回指针和程序计数器。 程序执行栈是函数嵌套调用,中断,任务切换保护现场时存储相关寄存器的地 方。程序的计算数据集合是指所要恢复的程序现场的关键变量。例如,中断控 制寄存器的单粒子功能中断,引起意外中断的发生,扰乱正常程序进程,在检 测点保存时,将存储中断控制寄存器变量值,执行检测点恢复时,DSP能够正 确的响应中断;例如,若DSP完成一个顺序执行的计算功能,可以将计算过程 中的重要变量保存,若DSP芯片发生单粒子功能中断,可以从最近一次的检测 点进行恢复,确保尽快恢复程序现场;

执行检测点恢复具体为:检测点的恢复由硬件触发,即被SEFI检测恢复单 元中的DSP状态检测及恢复模块触发中断,根据中断信号复位DSP,DSP重新启 动后,自动引导,然后以异常处理的方式执行检测点恢复;在检测点恢复过程 中,从第二存储器中读取DSP程序上一个检测点的信息,将信息加载到寄存器 和堆栈中,然后跳入指定的程序地址,重新执行被中断的程序。

综上所述,本发明所呈现的单粒子效应防护系统及方法,有效减缓了由 FPGA和DSP组成的数字信号处理系统的SEFI问题,提升了数字信号处理系统 的空间环境适应能力。可以广泛应用于我国军用通信、导航、遥感卫星的数字 信号处理类产品,推动我国新一代军用卫星技术向高性能、高可靠、小型化、 长寿命方向发展。

本发明未详细说明部分属本领域技术人员公知技术。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号