CN105068969B - Single particle effect guard system and method for digital signal processing platform framework - Google Patents
Single particle effect guard system and method for digital signal processing platform framework Download PDFInfo
- Publication number
- CN105068969B CN105068969B CN201510422774.8A CN201510422774A CN105068969B CN 105068969 B CN105068969 B CN 105068969B CN 201510422774 A CN201510422774 A CN 201510422774A CN 105068969 B CN105068969 B CN 105068969B
- Authority
- CN
- China
- Prior art keywords
- dsp
- chip
- fpga
- module
- state
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Landscapes
- Logic Circuits (AREA)
Abstract
用于数字信号处理平台架构的单粒子效应防护系统及方法,目的是解决空间环境下数字信号处理平台的SEFI(Single Event Upset单粒子功能中断)问题。本发明通过多种措施的有机融合,细化和完善支持多层级单粒子软错误防护、检测和恢复技术的平台架构,提出了系统的DSP和FPGA单粒子功能中断故障检测及恢复方法,可有效减缓数字信号处理平台的SEFI效应。本发明可以有效克服长时间在轨工作的系统单粒子功能中断问题。
The single event effect protection system and method for the digital signal processing platform architecture are aimed at solving the SEFI (Single Event Upset single event functional interruption) problem of the digital signal processing platform in the space environment. The present invention refines and perfects the platform framework supporting multi-level single particle soft error protection, detection and recovery technology through the organic integration of various measures, and proposes a systematic DSP and FPGA single particle function interruption fault detection and recovery method, which can effectively Mitigate SEFI effects on digital signal processing platforms. The invention can effectively overcome the problem of single event function interruption of the system working on orbit for a long time.
Description
技术领域technical field
本发明涉及一种用于数字信号处理平台架构的系统级单粒子效应防护系统及方法,属于空间通信技术领域。The invention relates to a system-level single event effect protection system and method for a digital signal processing platform architecture, belonging to the technical field of space communication.
背景技术Background technique
目前,在星载数字信号处理平台中,由于主要采用大规模SRAM型FPGA和DSP完成数字信号处理功能,该类产品发生单粒子效应的概率大大提高。At present, in the on-board digital signal processing platform, since the large-scale SRAM type FPGA and DSP are mainly used to complete the digital signal processing function, the probability of single event effect of this type of product is greatly increased.
从公开刊物了解到,针对目前的数字信号处理系统,主要通过冗余、刷新、纠检错等方法来缓解系统的单粒子效应,使得系统在发生SEU的情况下仍能够正常工作。但当系统发生SEFI时,以上这些措施也没办法解决,必须采取有针对性的SEFI恢复措施,才能让系统恢复正常。It is known from public publications that for the current digital signal processing system, the single event effect of the system is mainly alleviated by means of redundancy, refresh, error correction and detection, so that the system can still work normally in the event of SEU. However, when SEFI occurs in the system, the above measures cannot be solved, and targeted SEFI recovery measures must be taken to restore the system to normal.
发明内容Contents of the invention
本发明的目的是:克服现有技术的不足,提供一种用于数字信号处理平台架构的单粒子效应防护系统及方法,能够解决系统的SEFI问题,提升了数字信号处理系统的空间可靠性。The purpose of the present invention is to overcome the deficiencies of the prior art and provide a single event effect protection system and method for digital signal processing platform architecture, which can solve the SEFI problem of the system and improve the space reliability of the digital signal processing system.
本发明采用的技术方案是:The technical scheme adopted in the present invention is:
用于数字信号处理平台架构的单粒子效应防护系统,包括:FPGA芯片、DSP芯片、SEFI检测恢复单元、第一存储器和第二存储器,SEFI检测恢复单元包含FPGA状态检测及恢复模块、DSP状态检测及恢复模块、回读校验及刷新模块、配置模块、看门狗、DSP加载控制模块和存储器控制模块;The single event effect protection system for digital signal processing platform architecture, including: FPGA chip, DSP chip, SEFI detection and recovery unit, first memory and second memory, SEFI detection and recovery unit includes FPGA state detection and recovery module, DSP state detection and recovery module, readback verification and refresh module, configuration module, watchdog, DSP loading control module and memory control module;
FPGA芯片将工作状态信号发送到FPGA状态检测及恢复模块,FPGA状态检测及恢复模块检测FPGA芯片的工作状态,若FPGA芯片工作正常,则继续进行工作状态检测,若FPGA芯片发生单粒子功能中断SEFI,则FPGA状态检测及恢复模块发送复位信号给FPGA芯片,令其复位重配置;The FPGA chip sends the working status signal to the FPGA status detection and recovery module. The FPGA status detection and recovery module detects the working status of the FPGA chip. If the FPGA chip is working normally, it will continue to detect the working status. , the FPGA state detection and recovery module sends a reset signal to the FPGA chip to reset and reconfigure it;
配置模块通过存储器控制模块控制第一存储器,从第一存储器中将FPGA芯片的配置程序加载到FPGA芯片的配置存储区,回读校验及刷新模块从FPGA芯片的配置存储区将状态寄存器和控制寄存器的值读取出来,与状态寄存器和控制寄存器的原始值进行比对,若相同,则继续进行回读检测,若不同,则给错误指示信号到FPGA状态检测及恢复模块,通过回读校验及刷新模块对FPGA芯片进行配置存储区刷新,如果状态仍异常,则通过FPGA状态检测及恢复模块对FPGA芯片复位重配置;The configuration module controls the first memory through the memory control module, loads the configuration program of the FPGA chip into the configuration storage area of the FPGA chip from the first memory, and reads back the verification and refresh module from the configuration storage area of the FPGA chip. The value of the register is read out and compared with the original value of the status register and the control register. If they are the same, the readback detection will continue. If they are different, an error indication signal will be sent to the FPGA status detection and recovery module. The inspection and refresh module refreshes the configuration storage area of the FPGA chip. If the state is still abnormal, the FPGA chip is reset and reconfigured through the FPGA state detection and recovery module;
DSP芯片将工作状态信号发送到DSP状态检测及恢复模块,DSP状态检测及恢复模块检测DSP芯片的工作状态,若DSP芯片工作正常,则判断检测点信息是否需要存储,若属于要保护的检测点,则将检测点信息通过存储器控制逻辑存储到第二存储器,并继续进行工作状态检测,若不需要存储检测点,仍继续进行工作状态检测,若DSP芯片发生SEFI,则DSP状态检测及恢复模块发送复位信号给DSP芯片,令其复位;所述检测点是指用于恢复DSP工作现场的DSP程序中的位置点;The DSP chip sends the working status signal to the DSP status detection and recovery module. The DSP status detection and recovery module detects the working status of the DSP chip. If the DSP chip is working normally, it will judge whether the detection point information needs to be stored. If it belongs to the detection point to be protected , the detection point information is stored in the second memory through the memory control logic, and the working state detection is continued. If the detection point does not need to be stored, the working state detection is continued. If SEFI occurs on the DSP chip, the DSP state detection and recovery module Send a reset signal to the DSP chip to reset it; the detection point refers to a position point in the DSP program for recovering the DSP work site;
DSP加载控制模块通过存储器控制模块控制第二存储器,从第二存储器中将DSP芯片的配置程序加载到DSP芯片的配置存储区;The DSP loading control module controls the second memory through the memory control module, and loads the configuration program of the DSP chip into the configuration storage area of the DSP chip from the second memory;
看门狗模块定时接收来自DSP芯片的工作状态指示信号,若长时间没有收到指示信号,看门狗模块对DSP芯片进行复位。The watchdog module regularly receives the working status indication signal from the DSP chip, and if the indication signal is not received for a long time, the watchdog module resets the DSP chip.
用于数字信号处理平台架构的单粒子效应防护方法,步骤如下:A single event effect protection method for digital signal processing platform architecture, the steps are as follows:
(1)配置模块通过存储器控制模块控制第一存储器,从第一存储器中将FPGA芯片的配置程序加载到FPGA芯片的配置存储区;DSP加载控制模块通过存储器控制模块控制第二存储器,从第二存储器中将DSP芯片的配置程序加载到DSP芯片的配置存储区;(1) the configuration module controls the first memory by the memory control module, and loads the configuration program of the FPGA chip to the configuration storage area of the FPGA chip from the first memory; the DSP load control module controls the second memory by the memory control module, from the second Loading the configuration program of the DSP chip into the configuration storage area of the DSP chip in the memory;
(2)FPGA芯片将工作状态信号发送到FPGA状态检测及恢复模块,FPGA状态检测及恢复模块检测FPGA芯片的工作状态,若FPGA芯片工作正常,则继续进行工作状态检测,若FPGA芯片工作异常,则表示发生了单粒子功能中断SEFI,则FPGA状态检测及恢复模块发送复位信号给FPGA芯片,令其复位重配置;(2) The FPGA chip sends the working status signal to the FPGA status detection and recovery module. The FPGA status detection and recovery module detects the working status of the FPGA chip. If the FPGA chip is working normally, continue to perform the working status detection. It means that a single event function interrupt SEFI has occurred, and the FPGA state detection and recovery module sends a reset signal to the FPGA chip to reset and reconfigure it;
回读校验及刷新模块从FPGA芯片的配置存储区将状态寄存器和控制寄存器的值读取出来,与状态寄存器和控制寄存器的值原始值进行比对,若相同,则继续进行回读检测,若不同,则给错误指示信号到FPGA状态检测及恢复模块,通过回读校验及刷新模块对FPGA芯片进行配置存储区刷新,如果状态仍异常,则通过FPGA状态检测及恢复模块对FPGA芯片复位重配置;The readback verification and refresh module reads the values of the status register and the control register from the configuration storage area of the FPGA chip, and compares them with the original values of the status register and the control register. If they are the same, continue the readback detection. If it is different, send an error indication signal to the FPGA state detection and recovery module, refresh the configuration storage area of the FPGA chip through the readback verification and refresh module, if the state is still abnormal, reset the FPGA chip through the FPGA state detection and recovery module reconfiguration;
(3)DSP芯片将工作状态信号发送到DSP状态检测及恢复模块,DSP状态检测及恢复模块检测DSP芯片的工作状态,若DSP芯片工作正常,则判断检测点信息是否需要存储,若属于要保护的检测点,则将检测点信息通过存储器控制逻辑存储到第二存储器,并继续进行工作状态检测,若不需要存储检测点,仍继续进行工作状态检测,若DSP芯片工作异常,则表示发生了单粒子功能中断SEFI,则DSP状态检测及恢复模块发送复位信号给DSP芯片,令其复位;所述检测点是指用于恢复DSP工作现场的DSP程序中的位置点;(3) The DSP chip sends the working status signal to the DSP status detection and recovery module. The DSP status detection and recovery module detects the working status of the DSP chip. If the DSP chip is working normally, it is judged whether the detection point information needs to be stored. If there is no detection point, the detection point information is stored in the second memory through the memory control logic, and the working state detection is continued. If the detection point does not need to be stored, the working state detection is still continued. When the single event function interrupts SEFI, the DSP state detection and recovery module sends a reset signal to the DSP chip to reset it; the detection point refers to the position point in the DSP program for recovering the DSP work site;
看门狗模块定时接收来自DSP芯片的工作状态指示信号,若长时间没有收到指示信号,看门狗模块对DSP芯片进行复位,完成所述单粒子效应的防护。The watchdog module regularly receives the working status indication signal from the DSP chip. If the indication signal is not received for a long time, the watchdog module resets the DSP chip to complete the protection against the single event effect.
所述FPGA芯片的工作状态信号包括DONE信号、BUSY信号、FAR帧地址寄存器值、状态寄存器值和控制寄存器值。The working status signals of the FPGA chip include a DONE signal, a BUSY signal, a FAR frame address register value, a status register value and a control register value.
所述步骤(2)具体为:Described step (2) is specifically:
(4.1)监测DONE信号:检测DONE信号是否为高电平,若DONE信号为高电平,则执行步骤(4.2);否则,认为FPGA芯片的上电复位电路发生了单粒子功能中断,执行步骤(4.5);(4.1) Monitor the DONE signal: detect whether the DONE signal is high level, if the DONE signal is high level, then perform step (4.2); otherwise, it is considered that the power-on reset circuit of the FPGA chip has a single event function interruption, and perform step (4.5);
(4.2)监测BUSY信号:检测BUSY信号是否为高电平,若BUSY信号为高电平,执行步骤(4.3);否则,认为FPGA芯片发生了SELECTMAP接口的单粒子功能中断,执行步骤(4.5);(4.2) Monitor the BUSY signal: check whether the BUSY signal is high level, if the BUSY signal is high level, perform step (4.3); otherwise, consider that the single event function of the SELECTMAP interface on the FPGA chip is interrupted, and perform step (4.5) ;
(4.3)FAR帧地址寄存器读写:在进行每次刷新或者回读操作前,将FAR帧地址寄存器先写入FPGA芯片的配置存储区,判断回读出的值是否正确,若正确,则继续进行步骤(4.4);否则,认为FPGA芯片发生了SELECTMAP接口的单粒子功能中断,执行步骤(4.5);(4.3) Reading and writing of FAR frame address register: Before each refresh or readback operation, write the FAR frame address register into the configuration storage area of the FPGA chip to determine whether the value read back is correct, and if it is correct, continue Carry out step (4.4); Otherwise, think that the single event function interruption of SELECTMAP interface has occurred in FPGA chip, carry out step (4.5);
(4.4)状态寄存器值和控制寄存器值读写:通过回读状态寄存器和控制寄存器的值,如果与默认值不相同,认为FPGA芯片发生了Global signals SEFI(全局信号的单粒子功能中断)或POR SEFI(上电复位电路的单粒子功能中断),执行步骤(4.5);(4.4) Reading and writing of the status register value and the control register value: By reading back the value of the status register and the control register, if it is different from the default value, it is considered that the FPGA chip has a Global signals SEFI (single event function interrupt of the global signal) or POR SEFI (single event function interrupt of power-on reset circuit), perform step (4.5);
(4.5)通过复位重配置或者断电重配置进行SEFI故障恢复。(4.5) Perform SEFI fault recovery through reset reconfiguration or power-off reconfiguration.
所述步骤(3)具体为:Described step (3) is specifically:
(5.1)启动看门狗,在DSP正常工作过程中产生喂狗信号,并监测DSP芯片发来的工作状态信号,若工作状态信号为预期的正确值,则进行步骤(5.2);否则,认为DSP芯片发生了单粒子功能中断,执行步骤(5.3);(5.1) Start the watchdog, generate a dog feeding signal during the normal operation of the DSP, and monitor the working status signal sent by the DSP chip, if the working status signal is the expected correct value, then proceed to step (5.2); otherwise, consider A single event function interruption has occurred in the DSP chip, and step (5.3) is performed;
(5.2)判断检测点保存条件是否满足,若属于要保护的检测点,则通过存储器控制模块将检测点的内容保存至第二存储器,存储完成后返回步骤(5.1);否则,直接返回步骤(5.1);所述要保护的检测点是指:由用户指定的DSP程序中需要做保存动作的位置或者由指定固定间隔时间自动做保存动作的位置;(5.2) Judging whether the detection point preservation condition is satisfied, if it belongs to the detection point to be protected, then the content of the detection point is saved to the second memory by the memory control module, and the storage is completed and returns to step (5.1); otherwise, directly returns to step ( 5.1); The detection point to be protected refers to: the position where the save action needs to be done in the DSP program specified by the user or the position where the save action is automatically done by specifying a fixed interval;
(5.3)启动DSP状态检测及恢复模块中的DSP复位逻辑,并执行检测点恢复;所述检测点恢复的内容包括:(1)DSP程序执行现场:包含控制寄存器和通用寄存器;(2)程序执行栈;(3)程序的计算数据集合。(5.3) start DSP state detection and the DSP reset logic in the recovery module, and carry out detection point recovery; The content of described detection point recovery comprises: (1) DSP program execution scene: comprise control register and general purpose register; (2) program Execution stack; (3) The calculation data set of the program.
所述执行检测点恢复具体为:The recovery of the execution detection point is specifically:
检测点的恢复由硬件触发,即被SEFI检测恢复单元中的DSP状态检测及恢复模块触发中断,根据中断信号复位DSP,DSP重新启动后,自动引导,然后以异常处理的方式执行检测点恢复;在检测点恢复过程中,从第二存储器中读取DSP程序上一个检测点的信息,将信息加载到寄存器和堆栈中,然后跳入指定的程序地址,重新执行被中断的程序。The recovery of the detection point is triggered by hardware, that is, it is interrupted by the DSP state detection and recovery module in the SEFI detection and recovery unit, and the DSP is reset according to the interrupt signal. After the DSP restarts, it will automatically boot, and then execute the detection point recovery in the way of exception handling; In the recovery process of the detection point, read the information of the last detection point of the DSP program from the second memory, load the information into the register and the stack, then jump into the specified program address, and re-execute the interrupted program.
本发明与现有技术相比的有益效果是:The beneficial effect of the present invention compared with prior art is:
(1)本发明为了满足数字信号处理系统空间环境适应力要求,采用检测DONE信号、BUSY信号和FAR值以及状态寄存器值和控制寄存器值的方法检测系统的单粒子功能中断,解决了由于SELECTMAP接口、POR上电复位电路的SEFI引起的FPGA上电配置及刷新失效的问题。(1) In order to meet the space environment adaptability requirement of the digital signal processing system, the present invention adopts the single event function interruption of the method detection system of detecting DONE signal, BUSY signal and FAR value and state register value and control register value, has solved due to SELECTMAP interface , The FPGA power-on configuration and refresh failure problems caused by the SEFI of the POR power-on reset circuit.
(2)本发明通过回写配置文件及检测点存储文件或者系统复位的方式实现系统功能的恢复,大大降低数字信号处理系统在空间辐射环境下运行时发生单粒子功能中断的概率,提升系统的抗单粒子能力。(2) The present invention realizes the restoration of system functions by writing back configuration files and detection point storage files or system reset, which greatly reduces the probability of single-event function interruption when the digital signal processing system operates in a space radiation environment, and improves the system performance. single particle resistance.
附图说明Description of drawings
图1为本发明防护系统的原理框图;Fig. 1 is the functional block diagram of protection system of the present invention;
图2为本发明防护方法流程图;Fig. 2 is the flowchart of protection method of the present invention;
图3为本发明用于系统FPGA的SEFI检测及恢复流程图;Fig. 3 is that the present invention is used for the SEFI detection of system FPGA and restores flowchart;
图4为本发明用于系统DSP的SEFI检测及恢复流程图。Fig. 4 is a flow chart of SEFI detection and recovery for system DSP according to the present invention.
具体实施方式detailed description
本发明提供了一种适应于数字信号处理平台的系统级单粒子效应防护系统及防护方法,采用SEFI检测恢复单元进行系统的状态检测,判断FPGA和DSP若发生SEFI,采取恢复措施。针对FPGA的SEFI检测及恢复,由SEFI检测恢复单元对FPGA进行配置,完成配置后检测FPGA的DONE信号、BUSY信号、FAR值、状态寄存器值及控制寄存器值,若发生SEFI则采取上电重配置或复位方法进行系统恢复。针对DSP的SEFI检测及恢复,由SEFI检测恢复单元对DSP进行检测点保存,通过看门狗检测DSP是否发生SEFI,检测未发生SEFI,同时保存检测点,当发生SEFI时,可以通过恢复检测点达到还原系统的目的。The invention provides a system-level single event effect protection system and protection method adapted to a digital signal processing platform. A SEFI detection and recovery unit is used to detect the state of the system, and if SEFI occurs in FPGA and DSP, recovery measures are taken. For the SEFI detection and recovery of the FPGA, the SEFI detection and recovery unit configures the FPGA. After the configuration is completed, it detects the DONE signal, BUSY signal, FAR value, status register value, and control register value of the FPGA. If SEFI occurs, power-on reconfiguration is adopted. or reset method for system recovery. For SEFI detection and recovery of DSP, the SEFI detection and recovery unit saves the detection point of DSP, detects whether SEFI occurs in DSP through the watchdog, detects that SEFI does not occur, and saves the detection point at the same time. When SEFI occurs, the detection point can be restored by To achieve the purpose of restoring the system.
如图1所示,本发明提供的用于数字信号处理平台架构的单粒子效应防护系统,包括:FPGA芯片、DSP芯片、SEFI检测恢复单元、第一存储器和第二存储器,SEFI检测恢复单元包含FPGA状态检测及恢复模块、DSP状态检测及恢复模块、回读校验及刷新模块、配置模块、看门狗、DSP加载控制模块和存储器控制模块;As shown in Figure 1, the single event effect protection system for digital signal processing platform architecture provided by the present invention includes: FPGA chip, DSP chip, SEFI detection recovery unit, first memory and second memory, SEFI detection recovery unit includes FPGA state detection and recovery module, DSP state detection and recovery module, readback verification and refresh module, configuration module, watchdog, DSP loading control module and memory control module;
FPGA芯片将工作状态信号发送到FPGA状态检测及恢复模块,FPGA状态检测及恢复模块检测FPGA芯片的工作状态,若FPGA芯片工作正常,则继续进行工作状态检测,若FPGA芯片工作异常,则FPGA状态检测及恢复模块发送复位信号给FPGA芯片,令其复位重配置;The FPGA chip sends the working status signal to the FPGA status detection and recovery module. The FPGA status detection and recovery module detects the working status of the FPGA chip. If the FPGA chip works normally, it continues to detect the working status. If the FPGA chip works abnormally, the FPGA status The detection and recovery module sends a reset signal to the FPGA chip to reset and reconfigure it;
配置模块通过存储器控制模块控制第一存储器,从第一存储器中将FPGA芯片的配置程序加载到FPGA芯片的配置存储区,回读校验及刷新模块从FPGA芯片的配置存储区将状态寄存器和控制寄存器的值读取出来,与状态寄存器和控制寄存器的值原始值进行比对,若相同,则继续进行回读检测,若不同,则给错误指示信号到FPGA状态检测及恢复模块,通过回读校验及刷新模块对FPGA芯片进行配置存储区刷新,如果状态仍异常,则通过FPGA状态检测及恢复模块对FPGA芯片复位重配置;The configuration module controls the first memory through the memory control module, loads the configuration program of the FPGA chip into the configuration storage area of the FPGA chip from the first memory, and reads back the verification and refresh module from the configuration storage area of the FPGA chip. The value of the register is read out and compared with the original value of the status register and the control register. If they are the same, the readback detection will continue. If they are different, an error indication signal will be sent to the FPGA status detection and recovery module. The verification and refresh module refreshes the configuration storage area of the FPGA chip. If the state is still abnormal, the FPGA chip is reset and reconfigured through the FPGA state detection and recovery module;
DSP芯片将工作状态信号发送到DSP状态检测及恢复模块,DSP状态检测及恢复模块检测DSP芯片的工作状态,若DSP芯片工作正常,则判断检测点信息是否需要存储,若属于要保护的检测点,则将检测点信息通过存储器控制逻辑存储到第二存储器,并继续进行工作状态检测,若不需要存储检测点,仍继续进行工作状态检测,若DSP芯片工作异常,则DSP状态检测及恢复模块发送复位信号给DSP芯片,令其复位;所述检测点是指用于恢复DSP工作现场的DSP程序中的位置点;The DSP chip sends the working status signal to the DSP status detection and recovery module. The DSP status detection and recovery module detects the working status of the DSP chip. If the DSP chip is working normally, it will judge whether the detection point information needs to be stored. If it belongs to the detection point to be protected , the detection point information is stored in the second memory through the memory control logic, and the working state detection is continued. If the detection point does not need to be stored, the working state detection is continued. Send a reset signal to the DSP chip to reset it; the detection point refers to a position point in the DSP program for recovering the DSP work site;
DSP加载控制模块通过存储器控制模块控制第二存储器,从第二存储器中将DSP芯片的配置程序加载到DSP芯片的配置存储区;The DSP loading control module controls the second memory through the memory control module, and loads the configuration program of the DSP chip into the configuration storage area of the DSP chip from the second memory;
看门狗模块定时接收来自DSP芯片的工作状态指示信号,若长时间没有收到指示信号,看门狗模块对DSP芯片进行复位。The watchdog module regularly receives the working status indication signal from the DSP chip, and if the indication signal is not received for a long time, the watchdog module resets the DSP chip.
如图2所示,本发明基于上述单粒子防护系统,还实现了一种用于数字信号处理平台架构的单粒子效应防护方法,步骤如下:As shown in Figure 2, the present invention is based on the above single event protection system, and also realizes a single event effect protection method for digital signal processing platform architecture, the steps are as follows:
(1)配置模块通过存储器控制模块控制第一存储器,从第一存储器中将FPGA芯片的配置程序加载到FPGA芯片的配置存储区;DSP加载控制模块通过存储器控制模块控制第二存储器,从第二存储器中将DSP芯片的配置程序加载到DSP芯片的配置存储区;(1) the configuration module controls the first memory by the memory control module, and loads the configuration program of the FPGA chip to the configuration storage area of the FPGA chip from the first memory; the DSP load control module controls the second memory by the memory control module, from the second Loading the configuration program of the DSP chip into the configuration storage area of the DSP chip in the memory;
(2)FPGA芯片将工作状态信号(FPGA芯片的工作状态信号包括DONE信号、BUSY信号、FAR帧地址寄存器值、状态寄存器值和控制寄存器值)发送到FPGA状态检测及恢复模块,FPGA状态检测及恢复模块检测FPGA芯片的工作状态,若FPGA芯片工作正常,则继续进行工作状态检测,若FPGA芯片工作异常,则表示发生了单粒子功能中断SEFI,则FPGA状态检测及恢复模块发送复位信号给FPGA芯片,令其复位;(2) The FPGA chip sends the working status signal (the working status signal of the FPGA chip includes DONE signal, BUSY signal, FAR frame address register value, status register value and control register value) to the FPGA status detection and recovery module, FPGA status detection and The recovery module detects the working status of the FPGA chip. If the FPGA chip is working normally, it will continue to detect the working status. If the FPGA chip is working abnormally, it means that a single event function interrupt SEFI has occurred, and the FPGA status detection and recovery module sends a reset signal to the FPGA. Chip, reset it;
回读校验及刷新模块从FPGA芯片的配置存储区将状态寄存器和控制寄存器的值读取出来,与状态寄存器和控制寄存器的值原始值进行比对,若相同,则继续进行回读检测,若不同,则给错误指示信号到FPGA状态检测及恢复模块,通过回读校验及刷新模块对FPGA芯片进行配置存储区刷新,如果状态仍异常,则通过FPGA状态检测及恢复模块对FPGA芯片复位;The readback verification and refresh module reads the values of the status register and the control register from the configuration storage area of the FPGA chip, and compares them with the original values of the status register and the control register. If they are the same, continue the readback detection. If it is different, send an error indication signal to the FPGA state detection and recovery module, refresh the configuration storage area of the FPGA chip through the readback verification and refresh module, if the state is still abnormal, reset the FPGA chip through the FPGA state detection and recovery module ;
如图3所示,具体为:As shown in Figure 3, specifically:
(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.1) Monitor the DONE signal: detect whether the DONE signal is high level, if the DONE signal is high level, then perform step (2.2); otherwise, it is considered that the power-on reset circuit (POR) of the FPGA chip has a single event function interruption , execute step (2.5); when the FPGA chip is in a normal state, after the power-on configuration is completed, the DONE signal should always be high. If the DONE is low at any time, the FPGA chip needs to be reconfigured. If the DONE signal is always If it is low, it is considered that the FPGA chip has a power-on reset circuit (POR) single event function interruption; the POR circuit is a circuit inside the FPGA chip used to monitor the FPGA chip core voltage VCCINT, the I/O voltage of BANK4 and the auxiliary voltage VCCAUX. When the voltage drops, the POR circuit will reset the FPGA chip, clear the configuration storage area, the current will return to the initial state after power-on, and the DONE signal will become low. The phenomenon of POR-SEFI is similar to FPGA power down, or the PROG signal is pulled low.
(2.2)监测BUSY信号:检测BUSY信号是否为高电平,若BUSY信号为高电平,执行步骤(2.3);否则,认为FPGA芯片发生了SELECTMAP接口的单粒子功能中断,执行步骤(2.5);FPGA芯片处于正常状态时,写配置存储区时,BUSY信号应该为低电平;在回读操作开始时,BUSY信号为高电平,BUSY信号变低电平意味着数据总线上的回读数据有效;如果从写模式切换到读模式后,BUSY信号超过32个CCLK周期一直为高电平,意味着发生了SELECTMAP接口的单粒子功能中断SEFI;(2.2) Monitor the BUSY signal: check whether the BUSY signal is high level, if the BUSY signal is high level, perform step (2.3); otherwise, consider that the single event function of the SELECTMAP interface on the FPGA chip is interrupted, and perform step (2.5) ;When the FPGA chip is in a normal state, when writing the configuration storage area, the BUSY signal should be low; when the readback operation starts, the BUSY signal is high, and the BUSY signal becomes low, which means the readback on the data bus The data is valid; if the BUSY signal has been at a high level for more than 32 CCLK cycles after switching from the write mode to the read mode, it means that the single event function interrupt SEFI of the SELECTMAP interface has occurred;
(2.3)FAR帧地址寄存器读写:在进行每次刷新或者回读操作前,将FAR帧地址寄存器先写入FPGA芯片的配置存储区,判断回读出的值是否正确,若正确,则继续进行步骤(2.4);否则,认为FPGA芯片发生了SELECTMAP接口的单粒子功能中断,执行步骤(2.5);FAR是FPGA芯片内部的帧地址寄存器,FAR SEFI可能导致帧地址寄存器无法读写,也有可能触发帧地址寄存器自动计数,从而导致大面积配置数据错误;(2.3) Reading and writing of FAR frame address register: Before each refresh or readback operation, write the FAR frame address register into the configuration storage area of the FPGA chip to determine whether the value read back is correct, and if it is correct, continue Proceed to step (2.4); otherwise, think that the single event function interruption of the SELECTMAP interface has occurred on the FPGA chip, and perform step (2.5); FAR is the frame address register inside the FPGA chip, FAR SEFI may cause the frame address register to be unable to read and write, and it is also possible Trigger the automatic counting of the frame address register, resulting in large-area configuration data errors;
(2.4)状态寄存器值和控制寄存器值读写:通过回读状态寄存器和控制寄存器的值,如果与默认值不相同,认为FPGA芯片发生了Global signals SEFI、POR SEFI,执行步骤(2.5);FPGA芯片处于正常状态时,上电配置完成后,状态寄存器的值应该为X”00 00 7EFC”,控制寄存器的值应该为X”20 00 01 09”,可以通过回读状态寄存器和控制寄存器的值,判断FPGA芯片是否发生了SEFI;(2.4) Reading and writing of status register value and control register value: By reading back the value of the status register and control register, if it is different from the default value, it is considered that Global signals SEFI and POR SEFI have occurred on the FPGA chip, and step (2.5) is performed; FPGA chip When the chip is in a normal state, after the power-on configuration is completed, the value of the status register should be X"00 00 7EFC", and the value of the control register should be X"20 00 01 09". You can read back the values of the status register and the control register , to determine whether the FPGA chip has SEFI;
(2.5)通过复位重配置或者断电重加载进行SEFI故障恢复。不同的SEFI对FPGA的影响不相同。POR电路和Global Signals的SEFI会使FPGA功能中断,必须立即进行重配置。SELECTMAP接口和FAR帧地址寄存器的SEFI不影响用户功能,但是会丧失对SEU的检测和恢复能力,导致SEU错误累积,从而导致系统功能中断,因此在任务允许的情况下,应该尽快进行重配置;(2.5) Perform SEFI failure recovery by reconfiguring or power-off and reloading. Different SEFIs have different effects on FPGAs. The POR circuitry and Global Signals' SEFI interrupt FPGA functionality and must be reconfigured immediately. The SEFI of the SELECTMAP interface and the FAR frame address register does not affect the user function, but it will lose the ability to detect and recover SEU, resulting in the accumulation of SEU errors, resulting in interruption of system functions. Therefore, reconfiguration should be performed as soon as possible if the task permits;
(3)DSP芯片将工作状态信号发送到DSP状态检测及恢复模块,DSP状态检测及恢复模块检测DSP芯片的工作状态,若DSP芯片工作正常,则判断检测点信息是否需要存储,若属于要保护的检测点,则将检测点信息通过存储器控制逻辑存储到第二存储器,并继续进行工作状态检测,若不需要存储检测点,仍继续进行工作状态检测,若DSP芯片工作异常,则表示发生了单粒子功能中断SEFI,则DSP状态检测及恢复模块发送复位信号给DSP芯片,令其复位;所述检测点是指用于恢复DSP工作现场的DSP程序中的位置点;(3) The DSP chip sends the working status signal to the DSP status detection and recovery module. The DSP status detection and recovery module detects the working status of the DSP chip. If the DSP chip is working normally, it is judged whether the detection point information needs to be stored. If there is no detection point, the detection point information is stored in the second memory through the memory control logic, and the working state detection is continued. If the detection point does not need to be stored, the working state detection is still continued. When the single event function interrupts SEFI, the DSP state detection and recovery module sends a reset signal to the DSP chip to reset it; the detection point refers to the position point in the DSP program for recovering the DSP work site;
看门狗模块定时接收来自DSP芯片的工作状态指示信号,若长时间没有收到指示信号,看门狗模块对DSP芯片进行复位,完成所述单粒子效应的防护。The watchdog module regularly receives the working status indication signal from the DSP chip. If the indication signal is not received for a long time, the watchdog module resets the DSP chip to complete the protection against the single event effect.
如图4所示,具体为:As shown in Figure 4, specifically:
(3.1)启动看门狗,在DSP正常工作过程中产生喂狗信号,并监测DSP芯片发来的工作状态信号,若工作状态信号为预期的正确值,则进行步骤(3.2);否则,认为DSP芯片发生了单粒子功能中断,执行步骤(3.3);(3.1) Start the watchdog, generate a dog feeding signal during the normal operation of the DSP, and monitor the working status signal sent by the DSP chip, if the working status signal is the expected correct value, then proceed to step (3.2); otherwise, consider A single event function interruption has occurred in the DSP chip, and step (3.3) is performed;
DSP芯片所发出的工作状态信号包括DSP的中断响应信号IACK、中断代码、特定功能的重要变量;例如,DSP芯片采用外部中断机制工作时,可以通过判断IACK和中断代码来识别DSP的工作状态是否正常,若采用外部中断4,中断代码正常应该为“0010”,若不为“0010”,则可断定DSP芯片异常中断;The working status signal sent by the DSP chip includes the DSP interrupt response signal IACK, interrupt code, and important variables of specific functions; Normal, if external interrupt 4 is used, the interrupt code should be "0010" normally, if not "0010", it can be concluded that the DSP chip is interrupted abnormally;
(3.2)判断检测点保存条件是否满足,若属于要保护的检测点,则通过存储器控制模块将检测点的内容保存至第二存储器,存储完成后返回步骤(3.1);否则,直接返回步骤(3.1);所述要保护的检测点是指:由用户指定的DSP程序中需要做保存动作的位置或者由指定固定间隔时间自动做保存动作的位置;存储器控制模块完成对检测点的保存和回读;例如,DSP子程序的程序指针地址位置;(3.2) Judging whether the detection point preservation condition is satisfied, if it belongs to the detection point to be protected, then the content of the detection point is saved to the second memory by the memory control module, and returns to step (3.1) after the storage is completed; otherwise, directly returns to step ( 3.1); The detection point to be protected refers to: in the DSP program designated by the user, the position of the preservation action needs to be done or the position of the preservation action is automatically performed by the specified fixed interval time; the memory control module completes the preservation and return of the detection point Read; for example, the program pointer address location of a DSP subroutine;
(3.3)启动DSP状态检测及恢复模块中的DSP复位逻辑,并执行检测点恢复;所述检测点恢复的内容包括:(1)DSP程序执行现场:包含控制寄存器和通用寄存器;(2)程序执行栈;(3)程序的计算数据集合。DSP芯片寄存器分为通用寄存器和控制寄存器两种。通用寄存器分为两组寄存器,用于存储数据和数据地址指针。DSP芯片共有10个控制寄存器,分别为寻址模式寄存器、控制状态寄存器、中断标志寄存器、中断设置寄存器、中断清除寄存器、中断使能寄存器、中断服务表指针、中断返回指针、不可屏蔽中断返回指针和程序计数器。程序执行栈是函数嵌套调用,中断,任务切换保护现场时存储相关寄存器的地方。程序的计算数据集合是指所要恢复的程序现场的关键变量。例如,中断控制寄存器的单粒子功能中断,引起意外中断的发生,扰乱正常程序进程,在检测点保存时,将存储中断控制寄存器变量值,执行检测点恢复时,DSP能够正确的响应中断;例如,若DSP完成一个顺序执行的计算功能,可以将计算过程中的重要变量保存,若DSP芯片发生单粒子功能中断,可以从最近一次的检测点进行恢复,确保尽快恢复程序现场;(3.3) start DSP state detection and the DSP reset logic in the recovery module, and carry out detection point recovery; The content of described detection point recovery comprises: (1) DSP program execution scene: comprise control register and general purpose register; (2) program Execution stack; (3) The calculation data set of the program. DSP chip registers are divided into general registers and control registers. General-purpose registers are divided into two groups of registers for storing data and data address pointers. The DSP chip has a total of 10 control registers, which are addressing mode register, control status register, interrupt flag register, interrupt setting register, interrupt clearing register, interrupt enabling register, interrupt service table pointer, interrupt return pointer, non-maskable interrupt return pointer and program counter. The program execution stack is the place where related registers are stored when function nested calls, interrupts, and task switching protect the scene. The calculation data set of the program refers to the key variables of the program site to be restored. For example, the single-event function interrupt of the interrupt control register will cause an unexpected interrupt and disturb the normal program process. When the check point is saved, the variable value of the interrupt control register will be stored. When the check point is restored, the DSP can correctly respond to the interrupt; for example , if the DSP completes a sequential calculation function, it can save the important variables in the calculation process. If the single event function of the DSP chip is interrupted, it can recover from the latest detection point to ensure that the program site can be restored as soon as possible;
执行检测点恢复具体为:检测点的恢复由硬件触发,即被SEFI检测恢复单元中的DSP状态检测及恢复模块触发中断,根据中断信号复位DSP,DSP重新启动后,自动引导,然后以异常处理的方式执行检测点恢复;在检测点恢复过程中,从第二存储器中读取DSP程序上一个检测点的信息,将信息加载到寄存器和堆栈中,然后跳入指定的程序地址,重新执行被中断的程序。Execution of detection point recovery is specifically: the recovery of detection points is triggered by hardware, that is, interrupted by the DSP state detection and recovery module in the SEFI detection recovery unit, and the DSP is reset according to the interrupt signal. Execute checkpoint recovery in the same way; during the checkpoint recovery process, read the information of the last checkpoint of the DSP program from the second memory, load the information into the register and stack, then jump into the specified program address, and re-execute the interrupted program.
综上所述,本发明所呈现的单粒子效应防护系统及方法,有效减缓了由FPGA和DSP组成的数字信号处理系统的SEFI问题,提升了数字信号处理系统的空间环境适应能力。可以广泛应用于我国军用通信、导航、遥感卫星的数字信号处理类产品,推动我国新一代军用卫星技术向高性能、高可靠、小型化、长寿命方向发展。In summary, the single event effect protection system and method presented in the present invention effectively alleviate the SEFI problem of the digital signal processing system composed of FPGA and DSP, and improve the space environment adaptability of the digital signal processing system. It can be widely used in digital signal processing products of my country's military communication, navigation, and remote sensing satellites, and promotes the development of my country's new generation of military satellite technology in the direction of high performance, high reliability, miniaturization, and long life.
本发明未详细说明部分属本领域技术人员公知技术。Parts not described in detail in the present invention belong to the well-known technology of those skilled in the art.
Claims (5)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510422774.8A CN105068969B (en) | 2015-07-17 | 2015-07-17 | Single particle effect guard system and method for digital signal processing platform framework |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510422774.8A CN105068969B (en) | 2015-07-17 | 2015-07-17 | Single particle effect guard system and method for digital signal processing platform framework |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105068969A CN105068969A (en) | 2015-11-18 |
CN105068969B true CN105068969B (en) | 2018-02-09 |
Family
ID=54498345
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510422774.8A Active CN105068969B (en) | 2015-07-17 | 2015-07-17 | Single particle effect guard system and method for digital signal processing platform framework |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105068969B (en) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106201759B (en) * | 2016-07-14 | 2023-08-01 | 浙江众合科技股份有限公司 | Detection system and method for preventing FPGA register from adhesion |
CN110383252B (en) | 2017-09-07 | 2023-06-02 | 柏思科技有限公司 | Method for determining a configuration operable by a network device and network device |
CN111552500B (en) * | 2020-03-26 | 2023-06-06 | 北京遥测技术研究所 | Refreshing method suitable for spaceborne FPGA |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101551762A (en) * | 2009-05-15 | 2009-10-07 | 中国人民解放军国防科学技术大学 | Spaceborne processing platform resisting single event effect |
CN101976212A (en) * | 2010-10-27 | 2011-02-16 | 西安空间无线电技术研究所 | Small amount code reloading-based DSP anti-single-event error correction method |
CN102332307A (en) * | 2011-07-28 | 2012-01-25 | 中国空间技术研究院 | SRAM type FPGA single event effect test system and method |
CN103198868A (en) * | 2013-04-16 | 2013-07-10 | 西北核技术研究所 | Fault simulation system and fault analysis method for single event upset |
CN103218272A (en) * | 2013-04-25 | 2013-07-24 | 西安空间无线电技术研究所 | Spaceborne digital signal processor turning reinforcing method |
CN103440185A (en) * | 2013-07-22 | 2013-12-11 | 西安空间无线电技术研究所 | Digital signal processing (DSP) device single particle turning effect testing method |
-
2015
- 2015-07-17 CN CN201510422774.8A patent/CN105068969B/en active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101551762A (en) * | 2009-05-15 | 2009-10-07 | 中国人民解放军国防科学技术大学 | Spaceborne processing platform resisting single event effect |
CN101976212A (en) * | 2010-10-27 | 2011-02-16 | 西安空间无线电技术研究所 | Small amount code reloading-based DSP anti-single-event error correction method |
CN102332307A (en) * | 2011-07-28 | 2012-01-25 | 中国空间技术研究院 | SRAM type FPGA single event effect test system and method |
CN103198868A (en) * | 2013-04-16 | 2013-07-10 | 西北核技术研究所 | Fault simulation system and fault analysis method for single event upset |
CN103218272A (en) * | 2013-04-25 | 2013-07-24 | 西安空间无线电技术研究所 | Spaceborne digital signal processor turning reinforcing method |
CN103440185A (en) * | 2013-07-22 | 2013-12-11 | 西安空间无线电技术研究所 | Digital signal processing (DSP) device single particle turning effect testing method |
Also Published As
Publication number | Publication date |
---|---|
CN105068969A (en) | 2015-11-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111552590B (en) | Detection and recovery method and system for memory bit overturning of power secondary equipment | |
CN102270162B (en) | Fault-tolerant guide method applied to SPARCV8 structure computer | |
CN103984630B (en) | Single event upset fault processing method based on AT697 processor | |
CN102779079B (en) | Configuration method and system used for satellite-bone SRAM (Static Random Access Memory) type FPGA (Field Programmable Gate Array) working on track for long time | |
US9823972B2 (en) | Mobile flash storage boot partition and/or logical unit shadowing | |
CN111176908B (en) | Program on-orbit loading refreshing method based on triple modular redundancy | |
CN108509300B (en) | Single-particle self-correction method based on satellite house-keeping system | |
US10078565B1 (en) | Error recovery for redundant processing circuits | |
EP2770507B1 (en) | Memory circuits, method for accessing a memory and method for repairing a memory | |
US20190019569A1 (en) | Row repair of corrected memory address | |
US10521294B2 (en) | Patrol scrub periods based on power status | |
WO2015157932A1 (en) | Method, apparatus and system for handling data error events with memory controller | |
Bridges et al. | Cooperative application/OS DRAM fault recovery | |
CN102521066A (en) | On-board computer space environment event fault tolerance method | |
CN100536031C (en) | Random storage failure detection processing method and its system | |
CN113608720B (en) | Single event upset resistant satellite-borne data processing system and method | |
CN105068969B (en) | Single particle effect guard system and method for digital signal processing platform framework | |
JP7418397B2 (en) | Memory scan operation in response to common mode fault signals | |
US7702955B2 (en) | Method and apparatus for detecting a fault condition and restoration thereafter using user context information | |
US20120233499A1 (en) | Device for Improving the Fault Tolerance of a Processor | |
CN109213632B (en) | Spaceborne electronic system with anti-radiation reinforcement design and reinforcement method | |
CN104597807A (en) | Space-borne integrated electronic CPU (central processing unit) turnover reinforcement system and method | |
CN103514071A (en) | Nondestructive internal storage online testing method | |
CN112732352A (en) | On-orbit single-particle upset chip positioning method and device | |
CN104866387A (en) | Storage method and system based on stored data anti-jamming of ERC32 processor |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |