CN111694303A - 一种基于cpld的fpga可靠加载的方法 - Google Patents
一种基于cpld的fpga可靠加载的方法 Download PDFInfo
- Publication number
- CN111694303A CN111694303A CN202010467621.6A CN202010467621A CN111694303A CN 111694303 A CN111694303 A CN 111694303A CN 202010467621 A CN202010467621 A CN 202010467621A CN 111694303 A CN111694303 A CN 111694303A
- Authority
- CN
- China
- Prior art keywords
- fpga
- reset
- cpld
- loading
- pin
- 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
- 238000011068 loading method Methods 0.000 title claims abstract description 54
- PWPJGUXAGUPAHP-UHFFFAOYSA-N lufenuron Chemical group C1=C(Cl)C(OC(F)(F)C(C(F)(F)F)F)=CC(Cl)=C1NC(=O)NC(=O)C1=C(F)C=CC=C1F PWPJGUXAGUPAHP-UHFFFAOYSA-N 0.000 claims abstract description 25
- 238000000034 method Methods 0.000 claims abstract description 22
- 238000012544 monitoring process Methods 0.000 claims description 16
- RZKYEQDPDZUERB-UHFFFAOYSA-N Pindone Chemical compound C1=CC=C2C(=O)C(C(=O)C(C)(C)C)C(=O)C2=C1 RZKYEQDPDZUERB-UHFFFAOYSA-N 0.000 claims description 6
- 238000012545 processing Methods 0.000 abstract description 4
- 238000013461 design Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 2
- 230000015556 catabolic process Effects 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000012827 research and development Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/04—Programme control other than numerical control, i.e. in sequence controllers or logic controllers
- G05B19/042—Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
- G05B19/0423—Input/output
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/20—Pc systems
- G05B2219/23—Pc programming
- G05B2219/23306—Load program from host, remote load, non volatile card to volatile, ram
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Automation & Control Theory (AREA)
- Stored Programmes (AREA)
Abstract
本发明提出了一种基于CPLD的FPGA可靠加载方法,包括以下步骤:加载步骤:CPLD的加载逻辑控制模块通过FPGA的DONE信号,检测FPGA加载成功与否。如果未加载成功,则置FPGA的PROGRAM信号有效,启动FPGA从PROM中再加载。复位步骤:CPLD的复位控制逻辑通过对FPGA的输出DONE信号和MAX706的复位输出RESET#信号处理,以保证FPGA再加载后FPGA内部逻辑可正常工作。该方法不依赖处理器CPU,纯硬件架构实现,该方法可靠性高,通用性好,使用过程稳定可靠,在航空航天领域具有广阔的应用前景。
Description
技术领域
本发明属于机载计算机领域,涉及一种FPGA配置文件的可靠加载的方法。
背景技术
某型飞机机电管理分系统的远程接口单元设置有独立控制模块,实现火警监控告警和机翼折叠控制功能。独立控制模块采用纯硬件实现,选择FPGA作为控制器。系统上电后,FPGA从PROM中加载配置文件(PROM和FPGA是两个独立的器件),然后执行控制逻辑。
在以往机载产品中,因为电源抖动等因素出现过多起FPGA加载不成功,引起产品降级或输入输出异常,导致产品不能正常工作,因为有必要提供一种FPGA配置文件的可靠加载的方法。
发明内容
本发明目的:提出了一种FPGA的可靠加载方法,实现FPGA在加载失败时,能够进行FPGA再加载,从而保证了机载产品的可靠性。
为实现上述目的,本发明提出以下技术方案:
一种基于CPLD的FPGA可靠加载的方法,包括:
加载步骤:系统上电后,CPLD通过检测FPGA的DONE信号,判断FPGA当前加载成功与否;如果未加载成功,则CPLD置FPGA的PROGRAM信号有效,使能FPGA启动自身加载程序从PROM中再加载;
复位步骤:CPLD对FPGA的DONE信号和复位监控芯片的复位输出信号进行逻辑运算,得出FPGA的复位输入信号RESET#,以保证FPGA再加载后FPGA内部逻辑正常工作。
进一步地,所述加载步骤和复位步骤,是基于CPLD内部设置的再加载控制逻辑电路和复位控制逻辑电路分别实现的。本发明可使用纯硬件架构实现,在加载和再加载过程中不需要处理器CPU干预,加载速度更快,故障模式更少。
进一步地,所述CPLD对FPGA的DONE信号和复位监控芯片的复位输出信号进行逻辑与运算,输出信号作为FPGA的复位输入信号RESET#,FPGA的复位输入信号RESET#为低电平有效。
进一步地,在FPGA加载过程中,FPGA的DONE输出引脚输出低电平;在FPGA加载完成后,FPGA的DONE输出引脚输出高电平;所述判断FPGA当前加载成功与否,具体是检测到FPGA的DONE信号为低电平持续设定时长,则判定为加载失败;在FPGA加载完成后,FPGA的PROGRAM输入引脚一直为高;所述CPLD置FPGA的PROGRAM信号有效,具体是CPLD将PROGRAM输入引脚先拉低再拉高形成触发脉冲,从而使能FPGA启动自身加载程序进行再加载。
进一步地,系统上电后,如果检测到FPGA的DONE信号为低电平持续500ms,判定为加载失败,则CPLD置FPGA的PROGRAM信号低电平脉冲持续300ns,FPGA检测到PROGRAM信号为低则启动自身加载程序进行再加载。
一种实现上述基于CPLD的FPGA可靠加载的方法的系统,包括FPGA、CPLD和复位监控芯片;所述CPLD内部设置有再加载控制逻辑电路和复位控制逻辑电路;
所述CPLD的引脚包括:复位输入引脚RST、复位FPGA输出引脚FPGA_RST、FPGA加载指示输入引脚DONE_I、FPGA加载输出引脚PROG;
所述FPGA的引脚包括PROGRAM输入引脚、DONE输出引脚和复位输入引脚RESET#;
所述复位监控芯片的引脚包括复位输出引脚RESET#;
复位监控芯片的复位输出引脚RESET#与CPLD的复位输入引脚RST连接,CPLD的复位FPGA输出引脚FPGA_RST、FPGA加载指示输入引脚DONE_I、FPGA加载输出引脚PROG分别对应连接FPGA的复位输入引脚RESET#、DONE输出引脚、PROGRAM输入引脚。
进一步地,所述复位监控芯片的引脚还包括手动复位输入引脚MR。
进一步地,该系统还包括处理器PowerPC,所述CPLD还设置有复位处理器输出引脚CPU_RST,与处理器PowerPC的复位输入引脚RST#连接,该复位输入引脚RST#为低电平有效。
进一步地,所述复位控制逻辑电路包括逻辑与门,逻辑与门的两个输入端分别为复位输入引脚RST和FPGA加载指示输入引脚DONE_I,输出端为复位FPGA输出引脚FPGA_RST,FPGA的复位输入信号RESET#为低电平有效。
本发明应用于机载产品,能够在FPGA加载不成功时,进行FPGA再加载(FPGA再次从PROM中加载配置文件),从而保证了机载产品的可靠性。本发明具体有以下优点:
1、采用CPLD实现,不需要增加任何外围扩展电路,可控制研发成本;
2、采用纯硬件架构实现,不需要处理器干预,加载速度更快,实时性高;
3、FPGA加载成功与否,不影响处理器的正常工作;
4、使用此方法可减少使用一片监控芯片MAX706;
5、使用器件少,硬件设计简单,故障模式更少;
6、不会对机载其他产品产生影响。
附图说明
图1为本发明的系统原理示意图。
图2为CPLD再加载逻辑控制示意图。
图3为CPLD复位逻辑控制示意图。
具体实施方式
以下结合附图,通过实施例进一步详述本发明。
a、基于CPLD的FPGA可靠加载的硬件设计
本实施例由纯硬件进行设计,加载和再加载步骤不需要处理器CPU干预。如图1所示,该系统由复位监控芯片、CPLD和FPGA组成;复位监控芯片MAX706的MR脚为手动复位输入引脚,RESET#为复位输出引脚;FPGA的DONE脚为FPGA加载成功与否的指示引脚,PROGRAM脚为控制FPGA再加载引脚(当PROGRAM为低电平时,FPGA进行再加载);处理器PowerPC的RST#脚为处理器的复位输入引脚;PROM为存放配置文件的非易失存储器,该存储器通过FPGA厂商的编程线缆进行配置文件的烧写,在再加载过程中不需要更新PROM中的配置文件。
b、FPGA加载步骤的设计
如图2所示,FPGA加载步骤通过CPLD中的再加载逻辑控制,其中FPGA的DONE引脚为再加载逻辑控制的输入,PROG为输出,再加载控制逻辑通过对DONE信号的检测判断FPGA首次加载是否成功,如果DONE信号低电平持续500ms加载不成功(低电平持续时间根据所要加载的配置文件大小设定,满足正常加载所需时长),则置PROG低电平脉冲持续300ns(根据FPGA器件型号设定,满足使能条件),启动FPGA的再加载功能,FPGA检测到PROG信号为低则启动自身加载程序进行再加载,通过加载和再加载确保FPGA能成功的加载,避免产品快速降级。
c、FPGA复位逻辑的设计
如图3所示,为了保证FPGA在加载完成后FPGA内部逻辑能正常工作,将复位监控芯片MAX706的复位输出RESET#与FPGA的DONE信号处理后再进行FPGA的复位。具体是设置逻辑与门,与门的两个输入端分别接FPGA的DONE信号(变高后延迟5ms再变高)和MAX706的复位输出RESET#信号,与门的输出端接FPGA的复位输入端。
另外,为了保证处理器和FPGA内部逻辑的正常工作,将处理器的复位输入RST#与MAX706的复位输出引脚RESET#直接相接,实现了处理器在外部手动复位和上电复位有效情况下复位,保证了处理器的正常工作与FPGA的加载成功与否无关。
本实施例中,处理器工作和复位不受FPGA加载成功与否而影响,处理器的复位输入信号RST#为低电平有效;FPGA内部逻辑的正常工作和复位受MAX706的复位输出和FPGA的加载成功与否影响,FPGA的复位输入信号RESET#为低电平有效。可以看出,本实施例与常规方法相比,在FPGA的加载和再加载过程中不需要处理器CPU干预协助(不依赖处理器CPU),通用性好;加载和再加载过程使用纯硬件架构实现,加载和再加载过程中不需要更新PROM中的配置文件,加载速度快,实时性高,设计简洁,故障模式少,在航空航天等领域具有广阔的应用前景。
Claims (9)
1.一种基于CPLD的FPGA可靠加载的方法,其特征在于,包括:
加载步骤:系统上电后,CPLD通过检测FPGA的DONE信号,判断FPGA当前加载成功与否;如果未加载成功,则CPLD置FPGA的PROGRAM信号有效,使能FPGA启动自身加载程序从PROM中再加载;
复位步骤:CPLD对FPGA的DONE信号和复位监控芯片的复位输出信号进行逻辑运算,得出FPGA的复位输入信号RESET#,以保证FPGA再加载后FPGA内部逻辑正常工作。
2.根据权利要求1所述的基于CPLD的FPGA可靠加载的方法,其特征在于:所述加载步骤和复位步骤,是基于CPLD内部设置的再加载控制逻辑电路和复位控制逻辑电路分别实现的。
3.根据权利要求1所述的基于CPLD的FPGA可靠加载的方法,其特征在于:所述CPLD对FPGA的DONE信号和复位监控芯片的复位输出信号进行逻辑与运算,输出信号作为FPGA的复位输入信号RESET#,FPGA的复位输入信号RESET#为低电平有效。
4.根据权利要求1或2所述的基于CPLD的FPGA可靠加载的方法,其特征在于:
在FPGA加载过程中,FPGA的DONE输出引脚输出低电平;在FPGA加载完成后,FPGA的DONE输出引脚输出高电平;所述判断FPGA当前加载成功与否,具体是检测到FPGA的DONE信号为低电平持续设定时长,则判定为加载失败;
在FPGA加载完成后,FPGA的PROGRAM输入引脚一直为高;所述CPLD置FPGA的PROGRAM信号有效,具体是CPLD将PROGRAM输入引脚先拉低再拉高形成触发脉冲,从而使能FPGA启动自身加载程序进行再加载。
5.根据权利要求4所述的基于CPLD的FPGA可靠加载的方法,其特征在于:系统上电后,如果检测到FPGA的DONE信号为低电平持续500ms,判定为加载失败,则CPLD置FPGA的PROGRAM信号低电平脉冲持续300ns,FPGA检测到PROGRAM信号为低则启动自身加载程序进行再加载。
6.一种实现权利要求1所述基于CPLD的FPGA可靠加载的方法的系统,包括FPGA,其特征在于,还包括CPLD和复位监控芯片;所述CPLD内部设置有再加载控制逻辑电路和复位控制逻辑电路;
所述CPLD的引脚包括:复位输入引脚RST、复位FPGA输出引脚FPGA_RST、FPGA加载指示输入引脚DONE_I、FPGA加载输出引脚PROG;
所述FPGA的引脚包括PROGRAM输入引脚、DONE输出引脚和复位输入引脚RESET#;
所述复位监控芯片的引脚包括复位输出引脚RESET#;
复位监控芯片的复位输出引脚RESET#与CPLD的复位输入引脚RST连接,CPLD的复位FPGA输出引脚FPGA_RST、FPGA加载指示输入引脚DONE_I、FPGA加载输出引脚PROG分别对应连接FPGA的复位输入引脚RESET#、DONE输出引脚、PROGRAM输入引脚。
7.根据权利要求6所述的系统,其特征在于,所述复位监控芯片的引脚还包括手动复位输入引脚MR。
8.根据权利要求6所述的系统,其特征在于,还包括处理器PowerPC,所述CPLD还设置有复位处理器的输出引脚CPU_RST,与处理器PowerPC的复位输入引脚RST#连接,该复位输入引脚RST#为低电平有效。
9.根据权利要求6所述的系统,其特征在于,所述复位控制逻辑电路包括逻辑与门,逻辑与门的两个输入端分别为复位输入引脚RST和FPGA加载指示输入引脚DONE_I,输出端为复位FPGA输出引脚FPGA_RST,FPGA的复位输入信号RESET#为低电平有效。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010467621.6A CN111694303A (zh) | 2020-05-28 | 2020-05-28 | 一种基于cpld的fpga可靠加载的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010467621.6A CN111694303A (zh) | 2020-05-28 | 2020-05-28 | 一种基于cpld的fpga可靠加载的方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111694303A true CN111694303A (zh) | 2020-09-22 |
Family
ID=72478725
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010467621.6A Pending CN111694303A (zh) | 2020-05-28 | 2020-05-28 | 一种基于cpld的fpga可靠加载的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111694303A (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN201638201U (zh) * | 2009-10-26 | 2010-11-17 | 广东高新兴通信股份有限公司 | 一种应用于嵌入式系统的看门狗设备 |
CN102779079A (zh) * | 2011-05-12 | 2012-11-14 | 中国科学院空间科学与应用研究中心 | 一种用于长期在轨工作的星载sram型fpga的配置方法及系统 |
CN103150224A (zh) * | 2013-03-11 | 2013-06-12 | 杭州华三通信技术有限公司 | 用于提高启动可靠性的电子设备及方法 |
CN103196478A (zh) * | 2013-02-23 | 2013-07-10 | 中北大学 | 多个测试记录仪的时基统一系统 |
CN104063257A (zh) * | 2014-07-23 | 2014-09-24 | 武汉邮电科学研究院 | 一种fpga自动加载系统及方法 |
CN110134549A (zh) * | 2019-05-09 | 2019-08-16 | 中国航空工业集团公司西安航空计算技术研究所 | 一种fpga的重加载电路 |
-
2020
- 2020-05-28 CN CN202010467621.6A patent/CN111694303A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN201638201U (zh) * | 2009-10-26 | 2010-11-17 | 广东高新兴通信股份有限公司 | 一种应用于嵌入式系统的看门狗设备 |
CN102779079A (zh) * | 2011-05-12 | 2012-11-14 | 中国科学院空间科学与应用研究中心 | 一种用于长期在轨工作的星载sram型fpga的配置方法及系统 |
CN103196478A (zh) * | 2013-02-23 | 2013-07-10 | 中北大学 | 多个测试记录仪的时基统一系统 |
CN103150224A (zh) * | 2013-03-11 | 2013-06-12 | 杭州华三通信技术有限公司 | 用于提高启动可靠性的电子设备及方法 |
CN104063257A (zh) * | 2014-07-23 | 2014-09-24 | 武汉邮电科学研究院 | 一种fpga自动加载系统及方法 |
CN110134549A (zh) * | 2019-05-09 | 2019-08-16 | 中国航空工业集团公司西安航空计算技术研究所 | 一种fpga的重加载电路 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107589825B (zh) | 看门狗电路、功率ic和看门狗监视系统 | |
CN111488233A (zh) | 一种处理PCIe设备掉带宽问题的方法及系统 | |
CN104731668A (zh) | Fpga三模冗余架构的故障管理与恢复控制器及其控制方法 | |
US20210224158A1 (en) | Data storage device restoring method | |
CN114816022A (zh) | 一种服务器电源异常监控方法、系统及存储介质 | |
CN110096105B (zh) | 控制电源供应单元的方法 | |
CN111914497B (zh) | 一种dsp核心模块故障恢复方法 | |
CN103890713B (zh) | 用于管理处理系统内的寄存器信息的装置及方法 | |
CN112596798A (zh) | 一种芯片启动控制电路及控制方法 | |
CN111694303A (zh) | 一种基于cpld的fpga可靠加载的方法 | |
GB2105877A (en) | Watch-dog timer circuit | |
CN115480884A (zh) | 芯片、芯片的测试监控方法及计算机可读存储介质 | |
CN115904793B (zh) | 一种基于多核异构系统的内存转存方法、系统及芯片 | |
CN217386347U (zh) | 看门狗系统 | |
US20160179626A1 (en) | Computer system, adaptable hibernation control module and control method thereof | |
US10921875B2 (en) | Computer system, operational method for a microcontroller, and computer program product | |
WO2021169476A1 (zh) | 一种服务器扩充系统及其电源控制方法 | |
CN107453316B (zh) | 安全电路 | |
CN112269463A (zh) | 一种掉电保护电路、方法及电能表 | |
CN112234690A (zh) | 电源保护电路、设备以及方法 | |
CN110941510A (zh) | 一种fpga的在线重加载电路及方法 | |
CN110231862B (zh) | 具有掉电保护功能的服务器系统及其方法 | |
CN113687843B (zh) | 自动回复基板管理控制器之韧体的方法 | |
CN118113521A (zh) | 基于fpga+mcu板卡的高可靠复位系统及控制方法 | |
EP2833240A2 (en) | Electronic device |
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 |