一种MCU更新FPGA固件方法、装置、电子设备、存储介质和计算机程序产品制造方法及图纸

技术编号:37356766 阅读:26 留言:0更新日期:2023-04-27 07:06
本发明专利技术实施例提供一种MCU更新FPGA固件方法、装置、电子设备、存储有计算机指令的非瞬时计算机可读存储介质和计算机程序产品,即提供了一种简单灵活的更新FPGA固件的方案以解决嵌入式电子产品固件更新的技术问题。本发明专利技术实施例提供一种MCU更新FPGA固件方法,包括:MCU通过电源芯片关闭FPGA的电源,然后通过模拟开关,设置FLASH的引脚连通MCU的引脚,通过模拟开关先关闭FLASH的电源,再打开FLASH电源,保证FLASH处于刚上电状态,然后MCU把新固件写入FLASH。FLASH。FLASH。

【技术实现步骤摘要】
一种MCU更新FPGA固件方法、装置、电子设备、存储介质和计算机程序产品


[0001]本专利技术涉及嵌入式电子
,具体地,涉及一种MCU更新FPGA固件方法、装置、电子设备、存储有计算机指令的非瞬时计算机可读存储介质和计算机程序产品。

技术介绍

[0002]嵌入式电子产品往往会提供固件更新功能,以便在出售后通过更新固件,提供新的软件功能,或者修复软件漏洞。FPGA的固件一般保存在FLASH中。当产品中使用FPGA芯片时,通常是自定义一个协议与FPGA通信,并通过协议把新固件传输到FPGA,然后FPGA写入FLASH,固化FPGA的固件。
[0003]
技术介绍
的缺点:FPGA价格昂贵,实现一个固件更新的功能需要消耗宝贵的FPGA资源。FPGA使用Verilog之类的硬件描述语言,使用复杂,开发工程量大,开发速度慢。

技术实现思路

[0004]本专利技术实施例提供一种MCU更新FPGA固件方法、装置、电子设备、存储有计算机指令的非瞬时计算机可读存储介质和计算机程序产品,即提供了一种简单灵活的更新FPGA固件的方案以解决嵌入式电子产品固件更新的技术问题。
[0005]第一方面,本专利技术实施例提供一种MCU更新FPGA固件方法方法,包括:
[0006]MCU通过电源芯片关闭FPGA的电源,然后通过模拟开关,设置FLASH的引脚连通MCU的引脚,通过模拟开关先关闭FLASH的电源,再打开FLASH电源,保证FLASH处于刚上电状态,然后MCU把新固件写入FLASH。
[0007]可选的,
[0008]MCU使用CH32V305RBT6,FPGA芯片使用PGL22G

6CMBG324,FPGA电源管理芯片使用EA3036QBR,FLASH芯片使用W25Q128,模拟开关使用SGM3157;
[0009]CH32V305RBT6更新PGL22G

6CMBG324固件的步骤如下:
[0010]CH32V305RBT6设置PB10引脚为低电平,断开PGL22G

6CMBG324的电源;
[0011]CH32V305RBT6设置PB11引脚为低电平,断开W25Q128的电源;
[0012]CH32V305RBT6设置PB1引脚为高电平,CH32V305RBT6数据引脚PB3、PB4、PB5、PB8、PC12、PD2通过多个SGM3157连接W25Q128的引脚;
[0013]CH32V305RBT6设置PB11引脚为高电平,连接W25Q128的电源;
[0014]CH32V305RBT6通过PB3、PB4、PB5、PB8、PC12、PD2这些数据引脚,并依据W25Q128对应的协议把新固件写入W25Q128。
[0015]第二方面,本专利技术实施例提供一种MCU更新FPGA固件装置,应用如上述的方法,所述装置包括:
[0016]MCU、FPGA和FLASH;
[0017]MCU用于通过电源芯片打开和关闭FPGA的电源;
[0018]还用于通过模拟开关,设置FLASH的引脚连通MCU的引脚。
[0019]第三方面,本专利技术提供一种电子设备,包括:
[0020]至少一个处理器;以及
[0021]与所述至少一个处理器通信连接的存储器;其中,
[0022]所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行上述的方法。
[0023]第四方面,本专利技术提供一种存储有计算机指令的非瞬时计算机可读存储介质,所述计算机指令用于使所述计算机执行上述的方法。
[0024]第五方面,本专利技术提供一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时,执行上述的方法。
[0025]相比于现有技术,本专利技术技术方案提供了一种简单灵活的更新FPGA固件的方案,包括:MCU通过电源芯片关闭FPGA的电源,然后通过模拟开关,设置FLASH的引脚连通MCU的引脚,通过模拟开关先关闭FLASH的电源,再打开FLASH电源,保证FLASH处于刚上电状态,然后MCU把新固件写入FLASH。MCU的开发一般使用C语言配合小量的汇编语言,使用简单,开发工程量小,开发速度快。
附图说明
[0026]此处所说明的附图用来提供对本专利技术的进一步理解,构成本专利技术的一部分,本专利技术的示意性实施例及其说明用于解释本专利技术,并不构成对本专利技术的不当限定。在附图中:
[0027]图1为本专利技术中CH32V305RBT6接线原理图;
[0028]图2为本专利技术中PGL22G

6CMBG324接线原理图;
[0029]图3为本专利技术中EA3036QBR接线原理图;
[0030]图4为本专利技术中W25Q128以及多个SGM3157模拟开关接线原理图;
[0031]图5为本专利技术中W25Q128电源部分接线原理图;
[0032]图6为本专利技术中MCU更新FPGA固件流程图。
具体实施方式
[0033]为了使本专利技术实施例中的技术方案及优点更加清楚明白,以下结合附图对本专利技术的示例性实施例进行进一步详细的说明,显然,所描述的实施例仅是本专利技术的一部分实施例,而不是所有实施例的穷举。需要说明的是,在不冲突的情况下,本专利技术中的实施例及实施例中的特征可以相互组合。
[0034]一种MCU更新FPGA固件的装置工作时,MCU通过电源芯片关闭FPGA的电源,然后通过模拟开关,设置FLASH的引脚连通MCU的引脚,通过模拟开关先关闭FLASH的电源,再打开FLASH电源,保证FLASH处于刚上电状态,然后MCU把新固件写入FLASH。
[0035]所述MCU是一种微型控制芯片。所述FPGA是一种可编程逻辑芯片。所述FLASH是一种掉电存储数据的芯片。
[0036]下面结合图1~6,对本专利技术的具体实施方式详细说明。
[0037]一种MCU更新FPGA固件的装置,MCU使用CH32V305RBT6,FPGA芯片使用PGL22G

6CMBG324,FPGA电源管理芯片使用EA3036QBR,FLASH芯片使用W25Q128,模拟开关使用
SGM3157。芯片之间的接线如图1~5所示,相同名字的线表示连接在一起。
[0038]如图6所示,CH32V305RBT6更新PGL22G

6CMBG324固件的步骤如下:
[0039]步骤1:CH32V305RBT6设置PB10引脚为低电平,断开PGL22G

6CMBG324的电源。
[0040]步骤2:CH32V305RBT6设置PB11引脚为低电平,断开W25Q128的电源。
[0041]步骤3:CH32V305RBT6设置PB1引脚为高电平,CH32V305RBT6数据引脚PB3、PB4、PB5、PB8、本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种MCU更新FPGA固件方法,其特征在于,包括:FPGA的固件存储在FLASH,MCU通过电源芯片关闭FPGA的电源,然后通过模拟开关,设置FLASH的引脚连通MCU的引脚,通过模拟开关先关闭FLASH的电源,再打开FLASH电源,保证FLASH处于刚上电状态,然后MCU把新固件写入FLASH。2.根据权利要求1所述的MCU更新FPGA固件方法,其特征在于:MCU使用CH32V305RBT6,FPGA芯片使用PGL22G

6CMBG324,FPGA电源管理芯片使用EA3036QBR,FLASH芯片使用W25Q128,模拟开关使用SGM3157;CH32V305RBT6更新PGL22G

6CMBG324固件的步骤如下:CH32V305RBT6设置PB10引脚为低电平,断开PGL22G

6CMBG324的电源;CH32V305RBT6设置PB11引脚为低电平,断开W25Q128的电源;CH32V305RBT6设置PB1引脚为高电平,CH32V305RBT6数据引脚PB3、PB4、PB5、PB8、PC12、PD2通过多个SGM3157连接W25Q128的引脚;CH32V305RBT6设置PB11引脚为高电平,连接W25Q128的电源;CH32V305RBT6通过PB3、...

【专利技术属性】
技术研发人员:徐樟海
申请(专利权)人:广州市星翼电子科技有限公司
类型:发明
国别省市:

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

1