[发明专利]一种FPGA的在线重加载电路及方法有效
申请号: | 201911112286.1 | 申请日: | 2019-11-14 |
公开(公告)号: | CN110941510B | 公开(公告)日: | 2023-05-05 |
发明(设计)人: | 屈盼让;於二军;呼明亮;孙少华;蔡晓乐;肖鹏 | 申请(专利权)人: | 中国航空工业集团公司西安航空计算技术研究所 |
主分类号: | G06F11/14 | 分类号: | G06F11/14 |
代理公司: | 北京清大紫荆知识产权代理有限公司 11718 | 代理人: | 张梦龙 |
地址: | 710065 陕西省*** | 国省代码: | 陕西;61 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 fpga 在线 加载 电路 方法 | ||
本发明属于数字电路技术领域,提出一种FPGA的在线重加载电路及方法。所述方法基于心跳信号检测FPGA是否加载成功,在检测到FPGA上电加载失败时,MCU启动在线重加载流程,将存储在其外部FLASH中的目标文件通过其GPIO实现的JTAG协议传输给FPGA;本发明可检测FPGA上电加载是否成功,并在上电加载失败时启动在线重加载流程,实现FPGA的在线重加载,避免FPGA加载不成功,显著提高了产品的可靠性。
技术领域
本发明提供了一种FPGA在线重加载电路及方法,属于数字电路技术领域,特别适用于具有高可靠性要求的机载计算机领域。
背景技术
SRAM工艺的FPGA属于掉电易失元件,当产品上电时需要将PROM中存储的目标文件加载到FPGA中,当加载完成后,FPGA才能按照设计要求完成指定工作。然而,在实际应用中常出现因为电源抖动、PROM异常等多种原因导致的FPGA加载不成功现象,导致产品功能失效,进而发生故障。目前比较常用的重加载策略是在上电加载失败以后,通过重置PROGRAM信号再次启动从PROM中加载的过程,属于同构型重加载方法,因为上电加载过程已经失败,所以重加载成功的概率较小。针对上述问题,本发明提出了一种异构型重加载策略,在上电加载失败后,通过JTAG接口重新加载,提高了FPGA重加载成功的概率,显著提高了产品的可靠性。
发明内容
发明目的:
提供一种FPGA在线重加载电路及方法,能够检测上电加载是否成功,并在上电加载失败时完成FPGA的在线重加载。
技术方案:
本发明提供一种FPGA在线重加载方法,MCU通过GPIO实现JTAG协议,从FLASH中调用目标文件,对FPGA进行重加载。
优选的,所述的一种FPGA在线重加载方法,
包括以下步骤:
步骤1MCU检测FPGA上电加载是否成功,若加载不成功则进入步骤2;
步骤2MCU按照JTAG信号定义配置GPIO的方向;
步骤3MCU从FLASH中读取目标文件,通过步骤2定义的GPIO传输给FPGA,完成重加载。
优选的,所述的一种FPGA在线重加载方法,所述步骤1,检测FPGA上电加载是否成功具体包括:
MCU在FPGA上电加载完成后获取FPGA心跳信号,如果心跳信号正常,则FPGA上电加载成功,如果心跳信号异常,则FPGA上电加载失败。
优选的,所述的一种FPGA在线重加载方法,所述MCU的4个GPIO引脚与JTAG连接器的4个信号线直接连接在一起,MCU的4个GPIO的默认状态为高阻;
所述步骤2中,MCU按照JTAG信号定义分别配置4个GPIO的方向;
所述步骤3结束后MCU将所述4个GPIO的状态配置为高阻。
优选的,所述的一种FPGA在线重加载方法,FPGA驻留有心跳信号驱动电路,在上电加载完成后,若上电加载成功,则心跳引脚会输出心跳信号,心跳信号为指定频率和占空比的方波;若上电加载没有成功,则不产生心跳信号。
本发明还提供一种FPGA在线重加载电路,包括MCU和FLASH,在线重加载的对象是FPGA,所述MCU的GPIO引脚连接FPGA的JTAG接口,所述MCU与FPGA的通过一根心跳信号线连接,MCU与FLASH连接。
优选的,所述的一种FPGA在线重加载电路,所述FPGA的JTAG接口与JTAG连接器链接,所述MCU的4个GPIO引脚与JTAG连接器的4个信号线直接连接在一起,MCU的4个GPIO的默认状态为高阻;在离线时,使用仿真器连接JTAG连接器进行加载;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国航空工业集团公司西安航空计算技术研究所,未经中国航空工业集团公司西安航空计算技术研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911112286.1/2.html,转载请声明来源钻瓜专利网。