一种FPGA远程更新装置及方法制造方法及图纸

技术编号:28836510 阅读:23 留言:0更新日期:2021-06-11 23:33
本发明专利技术公开了一种FPGA远程更新装置及方法,装置包含FPGA模块,所述FPGA模块内部设有通讯控制器、远程系统更新控制器、双配置控制器和NVM控制器;所述远程系统更新控制器分别通讯连接于通讯控制器、双配置控制器和所述NVM控制器;所述双配置控制器和NVM控制器均与用户NVM、第一配置NVM和第二配置NVM连接,所述用户NVM用于保存用户数据,所述第一配置NVM和第二配置NVM分别用于保存第一固件映像数据和第二固件映像数据;所述FPGA模块和所述通讯控制器通讯连接,所述通讯控制器和接口电路通讯连接,通讯控制器通过接口电路和上位机通讯连接。本发明专利技术采用双配置远程更新模式,更加安全可靠,即使现场更新过程中发生意外,仍可保证系统正常启动。

【技术实现步骤摘要】
一种FPGA远程更新装置及方法
本专利技术涉及数据处理
,具体涉及一种FPGA远程更新装置及方法。
技术介绍
近年来,随着大数据、人工智能、5G、物联网等技术越来越热,FPGA得到越来越广泛的应用。可重编程性是FPGA的本质特性。一般FPGA使用SRAM单元保存配置数据,掉电后数据消失,所以配置数据需保存在外部非易失存储器中,每次上电后加载到SRAM单元中。常用的配置方案有:主动配置方案、被动配置方案和JTAG配置方案等。其中JTAG配置方案是本地的,适用于开发和出厂加载。当配置方案支持远程系统更新时,才能最大程度发挥其“现场可编程”特性。CN201710034806.6公开了一种支持更新单一映像的FPGA远程更新装置,如图1所示,FPGA模块包括嵌入式处理器远程更新系统,远程更新系统包含通讯模块和远程更新模块。通讯模块接收上位机的命令和程序数据,并发送至远程更新模块,嵌入式处理器远程更新系统对接收命令进行解析,并将程序数据转换成适合配置FLASH的数据流和时钟流,进行配置FLASH数据的读写以及擦除。CN201811245075.0公开了一种基于DSP+FPGA架构的程序远程更新系统及方法,如图2所示,包括:DSP、应用FPGA、管理FPGA和外置FLASH。管理FPGA用于在线配置应用FPGA和烧写应用FPGA的外置FLASH;DSP接收应用FPGA的更新数据并通过管理FPGA更新应用FPGA。CN201310530155.1公开了一种使用CPU控制多路模拟开关实现FPGA远程更新的方法和装置,如图3所示,通过CPU控制多路模拟开关控制存储器的主控对象连接,实现CPU更新存储器数据的功能。上述三个现有均使用了单配置模式,仅有一个配置数据存储区,如果配置过程中出现意外,原配置数据破坏,系统将无法正常启动。除此外,现有技术CN201811245075.0需要使用DSP、应用FPGA和管理FPGA,CN201310530155.1需要使用CPU和多路模拟开关控制,结构都较为复杂而且成本较高。
技术实现思路
针对现有技术的不足,本专利技术旨在提供一种FPGA远程更新装置及方法。为了实现上述目的,本专利技术采用如下技术方案:一种FPGA远程更新装置,包含FPGA模块,所述FPGA模块内部设有通讯控制器、远程系统更新控制器、双配置控制器和NVM控制器;所述远程系统更新控制器分别通讯连接于通讯控制器、双配置控制器和所述NVM控制器;所述双配置控制器和NVM控制器均与用户NVM、第一配置NVM和第二配置NVM连接,所述用户NVM用于保存用户数据,所述第一配置NVM和第二配置NVM分别用于保存第一固件映像数据和第二固件映像数据;所述FPGA模块和所述通讯控制器通讯连接,所述通讯控制器和接口电路通讯连接,通讯控制器通过接口电路和上位机通讯连接;所述远程系统更新控制器用于实现远程更新中的上电加载流程控制和远程更新流程控制,设置有关键字Image_load;所述双配置控制器用于在远程系统更新控制器的控制下完成远程更新中的上电加载流程;所述NVM控制器用于在远程系统更新控制器的控制下完成远程更新中的远程更新流程,并负责对用户NVM、第一配置NVM和第二配置NVM的控制和读写访问;所述用户NVM设置有关键字Image_set。进一步地,所述接口电路为以太网、串口、USB、PCIe接口中的任一种。本专利技术还提供一种利用FPGA远程更新装置的方法,具体过程如下:S1、上电加载:S101、上电后,FPGA模块采样CONFIG_SEL管脚电平或读取配置起始地址,确定固件映像数据;S102、FPGA模块加载相应固件映像数据:远程系统更新控制器通过查询双配置控制器确定Image_load的值;S103、远程系统更新控制器通过NVM控制器读取用户NVM内的Image_set;S104、远程系统更新控制器比较Image_load与Image_set是否相等;如果Image_load与Image_set相等,上电加载流程结束;如果Image_load与Image_set不等,远程系统更新控制器通过双配置控制器设置CONFIG_SEL寄存器位值或配置起始地址为用户NVM保存的Image_set的值,并触发重配置,转入S102;S2、远程更新:S201、上位机向FPGA模块发出远程更新请求;S202、远程系统更新控制器通过通讯控制器接收到该远程更新请求后,根据当前Image_load确定要擦除的是第一配置NVM还是第二配置NVM并通过NVM控制器完成擦除;S203、远程系统更新控制器请求一帧固件映像数据,然后通过NVM控制器逐字写入完成擦除的第一配置NVM或第二配置NVM;S204、该帧固件映像数据写完,远程系统更新控制器向上位机发送回码;S205、如果还有固件映像数据没有写完,返回步骤S203请求下一帧固件影像数据并通过NVM控制器写入,直至全部固件映像数据写完后跳转至步骤S206;S206、上位机向远程系统更新控制器发出读回命令,收到命令后,远程系统更新控制器控制NVM控制器开始读回一帧固件映像数据,分帧读回,直至全部帧都被读回;S207、上位机比较全部写入数据与读出数据是否相等;如果不等,返回步骤S201重新开始,否则跳转至步骤S208;S208、上位机向远程系统更新控制器发出更新成功通知,远程系统更新控制器通过NVM控制器修改Image_set并写入用户NVM;S209、远程系统更新控制器通过双配置控制器设置寄存器触发重配置。本专利技术的有益效果在于:1、本专利技术采用双配置远程更新模式,更加安全可靠,即使现场更新过程中发生意外,仍可保证系统正常启动。2、可通过修改关键字Image_set的值在新、旧固件版本间任意切换,从而也可实现版本回滚功能。3、本专利技术在进行完现场更新后无需人为干预,无需进行管脚设置,固件可自动加载到最新版本。4、本专利技术在进行远程更新时,上位机软件无需了解底层硬件细节,固件可自动选择需要更新的扇区。5、本专利技术使用纯硬件逻辑实现,无需硬核或软核处理器,消耗资源小,容易与应用功能进行分割,易于移植。附图说明图1为第一种现有技术的系统结构示意图;图2为第二种现有技术的系统结构示意图;图3为第三种现有技术的系统结构示意图;图4为本专利技术实施例1的装置结构示意图;图5为本专利技术实施例2的上电加载流程示意图;图6为本专利技术实施例2的远程更新流程示意图;图7为本专利技术实施例3的装置结构示意图;图8为本专利技术实施例4的装置结构示意图。具体实施方式以下将结合附图对本专利技术作进一步的描述,需要说明的是,本实施例以本技术方案为前提,给出了详细的实施方式和具体的操作过程,但本专利技术的保护范围并不限于本实施例。实施例1本实施例提供一种FPG本文档来自技高网
...

【技术保护点】
1.一种FPGA远程更新装置,其特征在于,包含FPGA模块,所述FPGA模块内部设有通讯控制器、远程系统更新控制器、双配置控制器和NVM控制器;所述远程系统更新控制器分别通讯连接于通讯控制器、双配置控制器和所述NVM控制器;所述双配置控制器和NVM控制器均与用户NVM、第一配置NVM和第二配置NVM连接,所述用户NVM用于保存用户数据,所述第一配置NVM和第二配置NVM分别用于保存第一固件映像数据和第二固件映像数据;所述FPGA模块和所述通讯控制器通讯连接,所述通讯控制器和接口电路通讯连接,通讯控制器通过接口电路和上位机通讯连接;/n所述远程系统更新控制器用于实现远程更新中的上电加载流程控制和远程更新流程控制,设置有关键字Image_load;所述双配置控制器用于在远程系统更新控制器的控制下完成远程更新中的上电加载流程;所述NVM控制器用于在远程系统更新控制器的控制下完成远程更新中的远程更新流程,并负责对用户NVM、第一配置NVM和第二配置NVM的控制和读写访问;所述用户NVM设置有关键字Image_set。/n

【技术特征摘要】
1.一种FPGA远程更新装置,其特征在于,包含FPGA模块,所述FPGA模块内部设有通讯控制器、远程系统更新控制器、双配置控制器和NVM控制器;所述远程系统更新控制器分别通讯连接于通讯控制器、双配置控制器和所述NVM控制器;所述双配置控制器和NVM控制器均与用户NVM、第一配置NVM和第二配置NVM连接,所述用户NVM用于保存用户数据,所述第一配置NVM和第二配置NVM分别用于保存第一固件映像数据和第二固件映像数据;所述FPGA模块和所述通讯控制器通讯连接,所述通讯控制器和接口电路通讯连接,通讯控制器通过接口电路和上位机通讯连接;
所述远程系统更新控制器用于实现远程更新中的上电加载流程控制和远程更新流程控制,设置有关键字Image_load;所述双配置控制器用于在远程系统更新控制器的控制下完成远程更新中的上电加载流程;所述NVM控制器用于在远程系统更新控制器的控制下完成远程更新中的远程更新流程,并负责对用户NVM、第一配置NVM和第二配置NVM的控制和读写访问;所述用户NVM设置有关键字Image_set。


2.根据权利要求1所述的FPGA远程更新装置,其特征在于,所述接口电路为以太网、串口、USB、PCIe接口中的任一种。


3.一种利用权利要求1-2任一所述FPGA远程更新装置的方法,其特征在于,具体过程如下:
S1、上电加载:
S101、上电后,FPGA模块采样CONFIG_SEL管脚电平或读取配置起始地址,确定固件映像数据;
S102、FPGA模块加载相应固件映像数据:远程系统更新控制器通过查询双配置控制器确定Image_load的值;
S103、远程系统更新控制器通过NVM控制器读取用户N...

【专利技术属性】
技术研发人员:李佩斌廖建新汪凤华
申请(专利权)人:公安部第一研究所北京中盾安民分析技术有限公司
类型:发明
国别省市:北京;11

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

1