CN115017071A - 基于fpga srio的多cpu表决系统 - Google Patents
基于fpga srio的多cpu表决系统 Download PDFInfo
- Publication number
- CN115017071A CN115017071A CN202210772841.9A CN202210772841A CN115017071A CN 115017071 A CN115017071 A CN 115017071A CN 202210772841 A CN202210772841 A CN 202210772841A CN 115017071 A CN115017071 A CN 115017071A
- Authority
- CN
- China
- Prior art keywords
- cpu
- fpga
- srio
- interface unit
- voting
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/20—Handling requests for interconnection or transfer for access to input/output bus
- G06F13/28—Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/40—Bus structure
- G06F13/4063—Device-to-bus coupling
- G06F13/4068—Electrical coupling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4204—Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
- G06F13/4221—Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being an input/output bus, e.g. ISA bus, EISA bus, PCI bus, SCSI bus
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Hardware Redundancy (AREA)
Abstract
本方案属于计算机技术领域,具体涉及基于FPGA SRIO的多CPU表决系统。包括一个FPGA和不少于两个CPU,所述FPGA包括管控单元、内部接口单元和外部接口单元,所述内部接口单元包括不少于两个SRIO接口单元,每个SRIO接口单元与所述CPU对应连接,所述管控单元包括处理流程同步、异常状态管理和三区二表决;所述异常状态管理用于管理系统的异常情况;当发生异常状态后,FPGA通过中断线向CPU发起硬件中断,并提供寄存器,用于指示当前故障类型,CPU获取到当前中断类型之后,启动内部的故障隔离及恢复功能。当表决系统出现异常时,通过本系统实现了自主故障诊断、故障隔离及恢复功能,通过故障诊断隔离恢复手段,延长计算机工作时间,可应用于更广泛工作环境。
Description
技术领域
本方案属于计算机技术领域,具体涉及基于FPGA SRIO的多CPU表决系统。
背景技术
由于三冗余计算机独特的优势,在未来的各种类型的上面级、快速响应的液体小火箭、固体小运载、空射小运载和用于载人探月的重型运载火箭上将具有广泛的应用。
运载火箭与航天器采用三冗余架构计算机的型号较多,一般采用单点表决、单点接口或多台冗余等方案,从冗余程度与经济性上无法做到平衡,且无法适应长航时航天器计算机应用。
在实时性、自主性控制要求较高的应用环境,如火星探测、大机动变轨运输器等,不仅需要自主故障诊断与决策的能力,现有航天器计算机一般采用双机冗余、三机不可恢复故障冗余,所以需要设计一种一度故障后恢复与故障隔离技术,通过可重构与降级设计实现长时间的自主故障诊断与决策的能力。
申请号为CN202111342321.6的专利公开了基于三CPU冗余架构的飞行控制任务同步系统及方法,包括三个CPU模块,三个CPU模块之间通信连接;每个CPU模块均包括三个冗余时钟,每个CPU模块分别设置有处理器时钟,该处理器时钟同时对三个CPU模块的同一个冗余时钟发送时钟信号;每个CPU模块包括一FPGA模块,FPGA模块包括中断使能寄存器;FPGA模块对接收的时钟信号分频产生毫秒中断;三个CPU模块之间的毫秒中断通过表决产生一个同步毫秒中断。
上述方案实现了在三CPU各自独立执行高实时飞行控制任务情况下的任务同步,确保了控制输出三取二表决的过程中三CPU使用同一拍运算的结果值。但是在实时性、自主性控制要求较高的应用环境,如火星探测、大机动变轨运输器等,还需要自主故障诊断与决策的能力,解决火箭与航天器计算机系统在实时性较高应用环境下长时间全自主故障诊断问题,以及通过故障恢复重构方法保证长航时工作可靠性。
发明内容
本方案提供一种基于能自主故障诊断与决策修复的FPGA SRIO的多CPU表决系统。
为了达到上述目的,本方案提供一种基于FPGA SRIO的多CPU表决系统,包括一个FPGA和不少于两个CPU,
所述FPGA包括管控单元、内部接口单元和外部接口单元,所述内部接口单元包括不少于两个SRIO接口单元,每个SRIO接口单元与所述CPU对应连接,
所述管控单元包括处理流程同步、异常状态管理和三区二表决;所述异常状态管理用于管理系统的异常情况;
所述内部接口单元包括MESSAGE、DMA READ和DMA WRITE;
所述外部接口单元包括Aurora RX接口和Aurora TX接口,所述Aurora RX接口用于获取到板外系统发送的上行数据和上行帧信息,
管控单元根据帧信息,发起同步写请求,再通过内部接口单元中的SRIO DMAWRITE将数据搬运到CPU指定内存中,数据搬运完成后,向CPU发送MESSAGE,用于指示数据存放的位置、长度以及任务类型;
CPU将数据计算完成后,将数据存放到内存中,并通过MESSAGE通知FPGA当前已处理完成数据存放的位置、长度以及任务类型;
FPGA管控单元将收到的来自CPU的MESSAGE信息存放到相对应的独立的ram中,并启动MESSAGE信息的三取二表决;
表决之后管控单元获取到当前下行数据的帧信息,发起同步读请求,由内部接口单元中的DMA READ向对应CPU发起DMA READ操作;
CPU响应DMA READ请求之后,启动下行数据的三取二表决,并最终输出表决后的下行数据,由Aurora TX模块将数据发往其他系统;
当发生异常状态后,FPGA通过中断线向CPU发起硬件中断,并提供寄存器,用于指示当前故障类型,CPU获取到当前中断类型之后,启动内部的故障隔离及恢复功能。
本方案的有益效果:
(1)当表决系统出现异常时,通过本系统实现了自主故障诊断、故障隔离及恢复功能,通过故障诊断隔离恢复手段,延长计算机工作时间,可应用于更广泛工作环境。
(2)本方案采用三取二的原则进行故障识别,再采用三取二的原则对故障判断结果进行确认,然后通过寄存器,获取当前故障类型,CPU获取到当前中断类型之后,启动内部的故障隔离及恢复功能,进而提高了计算机系统的可靠性。
(3)本发明在编码实现上相对简单,可降低软件复杂度,也符合简单即可靠的编码原则。
进一步,还包括通过硬件复位重启CPU的方式。通过硬件将CPU重启,然后通过同步模块,在CPU重启完成后,将其同步到当前处理进程中。
进一步,所述异常状态具体情况信息如下:
a) CPU超时未完成DMA WRITE操作;
b) CPU超时未回复MESSAGE操作;
c) CPU超时未完成DMA READ操作;
d) CPU回复的MESSAGE错误;
e) CPU回复的DMA READ数据错误。
本系统可对多种异常状态进行管理诊断并修复,适用性强。保障了计算机的工作效率,提升了产品质量和客户体验。
进一步,所述系统包括三个CPU,分别是CPUA、CPUB和CPUC。
进一步,所述内部接口单元包括三个MESSAGE、三个DMA READ和三个DMA WRITE。
进一步,所述三取二表决将异常状态信息发送至异常状态管理。
进一步,所述外部接口单元将上行帧信息发送至处理流程同步,所述三取二表决将下行帧信息发送至处理流程同步。
附图说明
图1为本发明实施例的总体框架图。
具体实施方式
下面通过具体实施方式进一步详细说明:
实施例基本如附图1所示:
一种基于FPGA SRIO的多CPU表决系统,包括一个FPGA和三个CPU,分别是CPUA、CPUB和CPUC。
FPGA包括管控单元、内部接口单元和外部接口单元,内部接口单元包括三个SRIO接口单元,每个SRIO接口单元与CPU对应连接,
管控单元包括处理流程同步、异常状态管理和三区二表决;异常状态管理用于管理系统的异常情况;
异常状态具体情况信息如下:
a) CPU超时未完成DMA WRITE操作;
b) CPU超时未回复MESSAGE操作;
c) CPU超时未完成DMA READ操作;
d) CPU回复的MESSAGE错误;
e) CPU回复的DMA READ数据错误。
本系统可对多种异常状态进行管理诊断并修复,适用性强。
内部接口单元包括三个MESSAGE、三个DMA READ和三个DMA WRITE;
外部接口单元包括Aurora RX接口和Aurora TX接口,Aurora RX接口用于获取到板外系统发送的上行数据和上行帧信息。
管控单元根据外部接口单元发送的上行帧信息,发起同步写请求,再通过内部接口单元中的SRIO DMA WRITE将数据搬运到CPU指定内存中,数据搬运完成后,向CPU发送MESSAGE,用于指示数据存放的位置、长度以及任务类型。
CPU将数据计算完成后,将数据存放到内存中,并通过MESSAGE通知FPGA当前已处理完成数据存放的位置、长度以及任务类型。
FPGA管控单元将收到的来自CPU的MESSAGE信息存放到相对应的独立的ram中,并启动MESSAGE信息的三取二表决; 表决之后管控单元中的处理流程同步获取到当前下行数据的帧信息,发起同步读请求,由内部接口单元中的DMA READ向对应CPU发起DMA READ操作。
CPU响应DMA READ请求之后,启动下行数据的三取二表决,并最终输出表决后的下行数据,由Aurora TX模块将数据发往其他系统。
当发生异常状态后,FPGA通过中断线向CPU发起硬件中断,并提供寄存器,用于指示当前故障类型,CPU获取到当前中断类型之后,启动内部的故障隔离及恢复功能。也可以通过硬件将CPU重启,然后通过同步模块,在CPU重启完成后,将其同步到当前处理进程中。
以上所述的仅是本发明的实施例,方案中公知的具体结构及特性等常识在此未作过多描述。应当指出,对于本领域的技术人员来说,在不脱离本发明结构的前提下,还可以作出若干变形和改进,这些也应该视为本发明的保护范围,这些都不会影响本发明实施的效果和专利的实用性。本申请要求的保护范围应当以其权利要求的内容为准,说明书中的具体实施方式等记载可以用于解释权利要求的内容。
Claims (7)
1.基于FPGA SRIO的多CPU表决系统,包括一个FPGA和不少于两个CPU,
其特征在于:所述FPGA包括管控单元、内部接口单元和外部接口单元,所述内部接口单元包括不少于两个SRIO接口单元,每个SRIO接口单元与所述CPU对应连接,
所述管控单元包括处理流程同步、异常状态管理和三区二表决;所述异常状态管理用于管理系统的异常情况;
所述内部接口单元包括MESSAGE、DMA READ和DMA WRITE;
所述外部接口单元包括Aurora RX接口和Aurora TX接口,所述Aurora RX接口用于获取到板外系统发送的上行数据和上行帧信息,
管控单元根据帧信息,发起同步写请求,再通过内部接口单元中的SRIO DMA WRITE将数据搬运到CPU指定内存中,数据搬运完成后,向CPU发送MESSAGE,用于指示数据存放的位置、长度以及任务类型;
CPU将数据计算完成后,将数据存放到内存中,并通过MESSAGE通知FPGA当前已处理完成数据存放的位置、长度以及任务类型;
FPGA管控单元将收到的来自CPU的MESSAGE信息存放到相对应的独立的ram中,并启动MESSAGE信息的三取二表决;
表决之后管控单元获取到当前下行数据的帧信息,发起同步读请求,由内部接口单元中的DMA READ向对应CPU发起DMA READ操作;
CPU响应DMA READ请求之后,启动下行数据的三取二表决,并最终输出表决后的下行数据,由Aurora TX模块将数据发往其他系统;
当发生异常状态后,FPGA通过中断线向CPU发起硬件中断,并提供寄存器,用于指示当前故障类型,CPU获取到当前中断类型之后,启动内部的故障隔离及恢复功能。
2.根据权利要求1所述的基于FPGA SRIO的多CPU表决系统,其特征在于:还包括通过硬件复位重启CPU的方式。
3.根据权利要求1所述的基于FPGA SRIO的多CPU表决系统,其特征在于:
所述异常状态具体情况信息如下:
a)CPU超时未完成DMA WRITE操作;
b)CPU超时未回复MESSAGE操作;
c)CPU超时未完成DMA READ操作;
d)CPU回复的MESSAGE错误;
e)CPU回复的DMA READ数据错误。
4.根据权利要求1所述的基于FPGA SRIO的多CPU表决系统,其特征在于:所述系统CPU设有三个,分别是CPUA、CPUB和CPUC。
5.根据权利要求1所述的基于FPGA SRIO的多CPU表决系统,其特征在于:所述内部接口单元包括三个MESSAGE、三个DMA READ和三个DMA WRITE。
6.根据权利要求1所述的基于FPGA SRIO的多CPU表决系统,其特征在于:所述三取二表决将异常状态信息发送至异常状态管理。
7.根据权利要求1所述的基于FPGA SRIO的多CPU表决系统,其特征在于:所述外部接口单元将上行帧信息发送至处理流程同步,所述三取二表决将下行帧信息发送至处理流程同步。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210772841.9A CN115017071A (zh) | 2022-06-30 | 2022-06-30 | 基于fpga srio的多cpu表决系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210772841.9A CN115017071A (zh) | 2022-06-30 | 2022-06-30 | 基于fpga srio的多cpu表决系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115017071A true CN115017071A (zh) | 2022-09-06 |
Family
ID=83079335
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210772841.9A Pending CN115017071A (zh) | 2022-06-30 | 2022-06-30 | 基于fpga srio的多cpu表决系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115017071A (zh) |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101576836A (zh) * | 2009-06-12 | 2009-11-11 | 北京航空航天大学 | 一种可降级的三机冗余容错系统 |
CN106970857A (zh) * | 2017-02-09 | 2017-07-21 | 上海航天控制技术研究所 | 一种可重构三冗余计算机系统及其重构降级方法 |
CN107239433A (zh) * | 2017-06-06 | 2017-10-10 | 上海航天控制技术研究所 | 一种三冗余计算机同步方法 |
CN107247644A (zh) * | 2017-07-03 | 2017-10-13 | 上海航天控制技术研究所 | 一种三冗余计算机系统的重构降级方法 |
CN108776649A (zh) * | 2018-06-11 | 2018-11-09 | 山东超越数控电子股份有限公司 | 一种基于cpu+fpga异构计算系统及其加速方法 |
CN108958987A (zh) * | 2018-06-13 | 2018-12-07 | 武汉市聚芯微电子有限责任公司 | 一种低轨小卫星容错系统及方法 |
CN109189600A (zh) * | 2018-08-17 | 2019-01-11 | 四川航天系统工程研究所 | 一种基于多模冗余嵌入式软件的计算机系统及设计方法 |
CN112445751A (zh) * | 2020-12-01 | 2021-03-05 | 航天新长征大道科技有限公司 | 适用于多模冗余系统的计算机主机接口板 |
-
2022
- 2022-06-30 CN CN202210772841.9A patent/CN115017071A/zh active Pending
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101576836A (zh) * | 2009-06-12 | 2009-11-11 | 北京航空航天大学 | 一种可降级的三机冗余容错系统 |
CN106970857A (zh) * | 2017-02-09 | 2017-07-21 | 上海航天控制技术研究所 | 一种可重构三冗余计算机系统及其重构降级方法 |
CN107239433A (zh) * | 2017-06-06 | 2017-10-10 | 上海航天控制技术研究所 | 一种三冗余计算机同步方法 |
CN107247644A (zh) * | 2017-07-03 | 2017-10-13 | 上海航天控制技术研究所 | 一种三冗余计算机系统的重构降级方法 |
CN108776649A (zh) * | 2018-06-11 | 2018-11-09 | 山东超越数控电子股份有限公司 | 一种基于cpu+fpga异构计算系统及其加速方法 |
CN108958987A (zh) * | 2018-06-13 | 2018-12-07 | 武汉市聚芯微电子有限责任公司 | 一种低轨小卫星容错系统及方法 |
CN109189600A (zh) * | 2018-08-17 | 2019-01-11 | 四川航天系统工程研究所 | 一种基于多模冗余嵌入式软件的计算机系统及设计方法 |
CN112445751A (zh) * | 2020-12-01 | 2021-03-05 | 航天新长征大道科技有限公司 | 适用于多模冗余系统的计算机主机接口板 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11755435B2 (en) | Cluster availability management | |
CN107347018B (zh) | 一种三冗余1553b总线动态切换方法 | |
US4634110A (en) | Fault detection and redundancy management system | |
JP2505928B2 (ja) | フォ―ルト・トレラント・システムのためのチェックポイント機構 | |
Wensley | Sift: software implemented fault tolerance | |
JP2540006B2 (ja) | 記憶制御システム | |
US4805107A (en) | Task scheduler for a fault tolerant multiple node processing system | |
US5758157A (en) | Method and system for providing service processor capability in a data processing by transmitting service processor requests between processing complexes | |
RU2455681C1 (ru) | Отказоустойчивая вычислительная система с аппаратно-программной реализацией функций отказоустойчивости и динамической реконфигурации | |
JPH0511820A (ja) | 主制御器と少くとも一対のスレーブ入力/出力プロセツサを有するプロセス制御装置の一対の入力/出力プロセツサの同期を維持する方法 | |
JPH0373055A (ja) | データ処理システム | |
CN102402220B (zh) | 基于负荷分担式的容错飞行控制系统的故障检测方法 | |
CN107025152B (zh) | 基于任务级的双冗余热备份设备的数据同步方法 | |
JPH086910A (ja) | クラスタ型計算機システム | |
WO2020097166A2 (en) | Three lane bit-for-bit remote electronic unit | |
US9672165B1 (en) | Data management tier coupling primary storage and secondary storage | |
CN111400086B (zh) | 虚拟机容错的实现方法和系统 | |
US20040193735A1 (en) | Method and circuit arrangement for synchronization of synchronously or asynchronously clocked processor units | |
JPH05100879A (ja) | 制御情報のインテグリテイを維持するための装置及び方法 | |
CN115017071A (zh) | 基于fpga srio的多cpu表决系统 | |
Johnson et al. | Fault tolerant computer system for the A129 helicopter | |
CN116088369A (zh) | 一种星载计算机重构方法和系统 | |
JPH07183891A (ja) | 計算機システム | |
JPH07182189A (ja) | 計算機システム及びプロセッサチップ及び障害復旧方法 | |
CN113312094A (zh) | 一种多核处理器应用系统及提高其可靠性的方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |