FPGA加载启动方法及系统技术方案

技术编号:37581996 阅读:19 留言:0更新日期:2023-05-15 07:56
本发明专利技术提供一种FPGA加载启动方法及系统。本发明专利技术在现有的系统架构上新增一个FPGA,以新增的FPGA为执行主体,从存储器件中读取目标固件;向原FPGA加载所述目标固件,以供加载成功后所述原FPGA运行所述目标固件对应的程序。由于固件的读取和加载都是由新增的FPGA内的代码实现的,所以几乎所有的可读写器件都可以作为存储器件,例如eMMC、EEPROM、FLASH闪存、SD卡等等,大大降低了硬件选型和采购的难度;且由于存储器件的存储规格选择面较大,因此可以预存任意数量的固件。存任意数量的固件。存任意数量的固件。

【技术实现步骤摘要】
FPGA加载启动方法及系统


[0001]本专利技术涉及电子信息
,尤其涉及一种FPGA加载启动方法及系统。

技术介绍

[0002]FPGA加载启动程序的传统方法是:
[0003]FPGA上电后首选从FLASH闪存中加载boot程序,然后基于boot程序判断FLASH闪存中是否存在程序对应的目标固件,若存在,则从FLASH闪存中加载该目标固件,以供运行该程序。
[0004]传统方法存在如下缺点:
[0005]加载启动整个流程由FPGA实现,无法修改和定制,这就导致只能根据FPGA的型号选用特定型号的FLASH闪存;
[0006]能预存的固件数量受FLASH闪存的容量大小限制,当需要预存的固件数量比较多时,可供选择的FLASH闪存就非常少了;
[0007]无法实时监控FPGA工作状态,不能灵活的进行固件切换,对于死机、跑飞等异常清楚不能很好监控;
[0008]加载速度受限于与FLASH闪存进行通信的速率。

技术实现思路

[0009]本专利技术的主要目的在于提供一种FPGA加载启动方法及系统,旨在解决传统的FPGA加载启动程序方法存在的缺点中的至少一个。
[0010]第一方面,本专利技术提供一种FPGA加载启动方法,所述FPGA加载启动方法包括:
[0011]新增的FPGA从存储器件中读取目标固件;
[0012]新增的FPGA向原FPGA加载所述目标固件,以供加载成功后所述原FPGA运行所述目标固件对应的程序。
[0013]可选的,在从存储器件中读取目标固件的固件数据的步骤之前,还包括:
[0014]新增的FPGA从FLASH闪存中加载自启动固件,以供完成新增的FPGA的自启动。
[0015]可选的,在所述从FLASH闪存中加载自启动固件,以供完成新增的FPGA的自启动的步骤之后,还包括:
[0016]新增的FPGA从存储器件中读取配置信息,并根据所述配置信息确定目标固件。
[0017]可选的,所述新增的FPGA向原FPGA加载所述目标固件的步骤包括:
[0018]新增的FPGA通过快速被动并行接口向原FPGA加载所述目标固件。
[0019]可选的,在所述向原FPGA加载所述目标固件的步骤之后,还包括:
[0020]新增的FPGA检测加载是否成功;
[0021]若失败,则新增的FPGA从存储器件中读取boot固件,向原FPGA加载所述boot固件。
[0022]可选的,所述FPGA加载启动方法还包括:
[0023]新增的FPGA对原FPGA的运行状态进行监控;
[0024]当原FPGA的运行状态为目标异常状态时,新增的FPGA从存储器件中读取boot固件,向原FPGA加载所述boot固件。
[0025]第二方面,本专利技术还提供一种FPGA加载启动系统,所述FPGA加载启动系统包括新增的FPGA、存储器件以及原FPGA,其中:
[0026]新增的FPGA从存储器件中读取目标固件;
[0027]新增的FPGA向原FPGA加载所述目标固件,以供加载成功后所述原FPGA运行所述目标固件对应的程序。
[0028]可选的,所述新增的FPGA,还用于:
[0029]从FLASH闪存中加载自启动固件,以供完成新增的FPGA的自启动;
[0030]从存储器件中读取配置信息,并根据所述配置信息确定目标固件。
[0031]可选的,所述新增的FPGA,还用于:
[0032]检测加载是否成功;
[0033]若失败,则从存储器件中读取boot固件,向原FPGA加载所述boot固件。
[0034]可选的,所述新增的FPGA,还用于:
[0035]对原FPGA的运行状态进行监控;
[0036]当原FPGA的运行状态为目标异常状态时,从存储器件中读取boot固件,向原FPGA加载所述boot固件。
[0037]本专利技术中,在现有的系统架构上新增一个FPGA,以新增的FPGA为执行主体,从存储器件中读取目标固件;向原FPGA加载所述目标固件,以供加载成功后所述原FPGA运行所述目标固件对应的程序。由于固件的读取和加载都是由新增的FPGA内的代码实现的,所以几乎所有的可读写器件都可以作为存储器件,例如eMMC、EEPROM、FLASH闪存、SD卡等等,大大降低了硬件选型和采购的难度;且由于存储器件的存储规格选择面较大,因此可以预存任意数量的固件。
附图说明
[0038]图1为本专利技术FPGA加载启动方法第一实施例的流程示意图;
[0039]图2为本专利技术FPGA加载启动方法第二实施例的流程示意图;
[0040]图3为本专利技术FPGA加载启动方法一实施例的场景示意图;
[0041]图4为本专利技术FPGA加载启动方法第三实施例的流程示意图;
[0042]图5为本专利技术FPGA加载启动方法第四实施例的流程示意图;
[0043]图6为本专利技术FPGA加载启动系统一实施例的功能模块示意图。
[0044]本专利技术目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
[0045]应当理解,此处所描述的具体实施例仅仅用以解释本专利技术,并不用于限定本专利技术。
[0046]第一方面,本专利技术实施例提供了一种FPGA加载启动方法。
[0047]参照图1,图1为本专利技术FPGA加载启动方法第一实施例的流程示意图。如图1所示,FPGA加载启动方法包括:
[0048]步骤S30,新增的FPGA从存储器件中读取目标固件;
[0049]本实施例中,执行主体为一新增的FPGA,该新增的FPGA性能和片上硬件资源可以不用很强大,可根据实际需要进行选择。
[0050]新增的FPGA从存储器件中读取目标固件,其中,目标固件为存储器件中存储的一个或多个固件中的一个。存储器件的类型和容量大小根据实际需要进行选用,例如eMMC、EEPROM、FLASH闪存、SD卡等等都可以用作存储器件。
[0051]新增的FPGA和存储器件之间的通信方式根据新增的FPGA的类型而定。
[0052]其中,存储器件可以选用高速存储器件,从而加快从存储器件中读取目标固件的速率,从而提高了整体的加载速率。
[0053]步骤S40,新增的FPGA向原FPGA加载所述目标固件,以供加载成功后所述原FPGA运行所述目标固件对应的程序。
[0054]本实施例中,新增的FPGA从存储器件中读取目标固件后,并向原FPGA加载该目标固件,以供加载成功后原FPGA运行该目标固件对应的程序。
[0055]进一步地,一实施例中,所述新增的FPGA向原FPGA加载所述目标固件的步骤包括:
[0056]新增的FPGA通过快速被动并行接口向原FPGA加载所述目标固件
[0057]本实施例中,例如新增的FPGA为intel的FPGA,则通过本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种FPGA加载启动方法,其特征在于,所述FPGA加载启动方法包括:新增的FPGA从存储器件中读取目标固件;新增的FPGA向原FPGA加载所述目标固件,以供加载成功后所述原FPGA运行所述目标固件对应的程序。2.如权利要求1所述的FPGA加载启动方法,其特征在于,在从存储器件中读取目标固件的固件数据的步骤之前,还包括:新增的FPGA从FLASH闪存中加载自启动固件,以供完成新增的FPGA的自启动。3.如权利要求2所述的FPGA加载启动方法,其特征在于,在所述从FLASH闪存中加载自启动固件,以供完成新增的FPGA的自启动的步骤之后,还包括:新增的FPGA从存储器件中读取配置信息,并根据所述配置信息确定目标固件。4.如权利要求1所述的FPGA加载启动方法,其特征在于,所述新增的FPGA向原FPGA加载所述目标固件的步骤包括:新增的FPGA通过快速被动并行接口向原FPGA加载所述目标固件。5.如权利要求1所述的FPGA加载启动方法,其特征在于,在所述向原FPGA加载所述目标固件的步骤之后,还包括:新增的FPGA检测加载是否成功;若失败,则新增的FPGA从存储器件中读取boot固件,向原FPGA加载所述boot固件。6.如权利要求1至5中任一项所述的FPGA加载启动方法,其特...

【专利技术属性】
技术研发人员:张魁阳芬
申请(专利权)人:武汉精测电子集团股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1