一种FPGA在线升级方法技术

技术编号:37580270 阅读:17 留言:0更新日期:2023-05-15 07:55
本发明专利技术公开了一种FPGA在线升级方法,所述方法包括:FPGA外部连接存储器,所述存储器具有三个分区;所述FPGA在复位或启动后,所述FPGA从第一存储区读取所述FPGA二级启动程序的配置文件并运行,若在预设时间内未收到升级文件,则从第二存储区读取所述FPGA执行的功能对应的配置文件,方法结束;否则,将所述升级文件存储到第三存储区;所述升级文件接收完毕后,对所述升级文件的完整性进行校验,若校验通过,则将所述第三存储区中的所述升级文件转移到所述第二存储区,由所述第一存储区的所述FPGA二级启动程序的配置文件引导所述升级文件的执行。本发明专利技术不需要打开外壳等复杂操作,也不需要借助外部控制器即可完成FPGA的在线升级工作。升级工作。升级工作。

【技术实现步骤摘要】
一种FPGA在线升级方法


[0001]本专利技术涉及FPGA升级
,具体涉及一种FPGA在线升级方法。

技术介绍

[0002]FPGA即现场可编程门阵列,它是在PAL,GAL,EPCL等可编程器件的基础上进一步发展的产物。它是作为专用集成电路领域中的一种半定制电路而出现的,即解决定制电路的不足,又克服了原有可编程器件门电路数量有限的缺点。FPGA具有掩膜可编程门阵列的通用结构,他由逻辑功能块排成阵列,并由可编程的互连资源连接这些逻辑功能块来实现不同的设计。
[0003]基于SRAM工艺的FPGA在掉电后配置数据会丢失,需要增加外部配置FLASH芯片用于保存FPGA配置数据,比如M25P16等。上电后,需从配置FLASH芯片读取配置数据流加载到FPGA才能正常工作。在开发阶段,设计人员通过对应的综合工具编译生成配置文件,利用JTAG下载线缆验证和升级程序。但有的产品是机箱外壳,或者其他原因不利于升级程序,导致升级效率低。
[0004]因此FPGA的升级需要更简便的方法实现,方便产品的升级维护,提升产品的智能化水平。现有技术有部分方法需要借助外部控制器完成FPGA在线升级,鉴于此,克服该现有的技术产品所存在的不足是本
需要解决的问题。

技术实现思路

[0005]有鉴于此,本专利技术提供了一种FPGA在线升级方法,能够解决FPGA在线升级的技术问题。
[0006]为了解决上述技术问题,本专利技术是这样实现的。
[0007]一种FPGA在线升级方法,所述方法包括如下步骤:
[0008]步骤S1:所述FPGA外部连接存储器,所述存储器用于存储所述FPGA二级启动程序的配置文件、所述FPGA执行的功能对应的配置文件以及待升级程序对应的配置文件,所述存储器具有多个分区;
[0009]步骤S2:所述FPGA在复位或启动后,所述FPGA从第一存储区读取所述FPGA二级启动程序的配置文件并运行,若在预设时间内未收到升级文件,则从第二存储区读取所述FPGA执行的功能对应的配置文件,方法结束;否则,将所述升级文件存储到第三存储区,进入步骤S3;
[0010]步骤S3:所述升级文件接收完毕后,对所述升级文件的完整性进行校验,若校验通过,则将所述第三存储区中的所述升级文件转移到所述第二存储区,由所述第一存储区的所述FPGA二级启动程序的配置文件引导所述升级文件的执行。
[0011]优选地,所述存储器为配置Flash。
[0012]优选地,FPGA与所述存储器通过外部接口相连,所述外部接口为串口、并口、网口中的一种。
[0013]优选地,所述FPGA从第一存储区读取所述FPGA二级启动程序的配置文件并运行,若在预设时间内未收到升级文件,则进入预先设置的用户模式,从第二存储区读取所述FPGA执行的功能对应的配置文件。
[0014]优选地,所述步骤S3,若所述升级文件的完整性校验未通过,则从第二存储区读取所述FPGA执行的功能对应的配置文件。
[0015]优选地,在FPGA的设计开发阶段,将所述FPGA的二级启动程序及所述FPGA执行的功能对应的程序经编译器合并成一个文件,通过JTAG烧写到所述存储器中。
[0016]有益效果:
[0017](1)本专利技术不需要打开外壳等复杂操作,也不需要借助外部控制器即可完成FPGA的在线升级工作。
[0018](2)本专利技术在线升级操作零活,响应速度快。
[0019](3)本专利技术方案执行简单,易于执行。
[0020](4)本专利技术在完成FPGA在线升级的同时,加入了校验部分,保证了升级的安全可靠。
附图说明
[0021]图1为本专利技术提供的FPGA配置模式示意图。
[0022]图2为本专利技术提供的FPGA和配置FLASH芯片的连接示意图。
[0023]图3为本专利技术提供的在线升级方法的流程示意图。
[0024]附图标记:
[0025]1:第一存储区
[0026]2:第二存储区
[0027]3:第三存储区
具体实施方式
[0028]下面结合附图和实施例,对本专利技术进行详细描述。
[0029]如图1

图3所示,本专利技术提出了一种FPGA在线升级方法,所述方法包括如下步骤:
[0030]步骤S1:所述FPGA外部连接存储器,所述存储器用于存储所述FPGA二级启动程序的配置文件、所述FPGA执行的功能对应的配置文件以及待升级程序对应的配置文件,所述存储器具有多个分区;
[0031]步骤S2:所述FPGA在复位或启动后,所述FPGA从第一存储区读取所述FPGA二级启动程序的配置文件并运行,若在预设时间内未收到升级文件,则从第二存储区读取所述FPGA执行的功能对应的配置文件,方法结束;否则,将所述升级文件存储到第三存储区,进入步骤S3;
[0032]步骤S3:所述升级文件接收完毕后,对所述升级文件的完整性进行校验,若校验通过,则将所述第三存储区中的所述升级文件转移到所述第二存储区,由所述第一存储区的所述FPGA二级启动程序的配置文件引导所述升级文件的执行。
[0033]本专利技术在FPGAF复位或者启动后,一定时间内未收到升级数据,则从存储器读取FPGA配置文件,若接收到升级数据,则将升级数据写入配置FLASH芯片,升级数据接收、写
入、校验、搬移后触发跳转指令,完成在线升级。
[0034]进一步地,所述存储器为配置Flash。
[0035]进一步地,FPGA与所述存储器通过外部接口相连,所述外部接口为串口、并口、网口中的一种。
[0036]本实施例中,所述FPGA采用二次引导的形式启动、升级。所述存储器具有三个分区。
[0037]进一步地,所述FPGA从第一存储区读取所述FPGA二级启动程序的配置文件并运行,若在预设时间内未收到升级文件,则进入预先设置的用户模式,从第二存储区读取所述FPGA执行的功能对应的配置文件。
[0038]进一步地,所述步骤S3,若所述升级文件的完整性校验未通过,则从第二存储区读取所述FPGA执行的功能对应的配置文件。
[0039]进一步地,在FPGA的设计开发阶段,将所述FPGA的二级启动程序及所述FPGA执行的功能对应的程序经编译器合并成一个文件,通过JTAG烧写到所述存储器中。
[0040]后续FPGA的升级程序开发结束后,通过编译器编译成升级文件。在FPGA启动时通过终端下载所述升级文件,并将所述升级文件发送发到FPGA,发送完成后FPGA自动执行升级结束后的程序。
[0041]以上的具体实施例仅描述了本专利技术的设计原理,该描述中的部件形状,名称可以不同,不受限制。所以,本专利
的技术人员可以对前述实施例记载的技术方案进行修改或等同替换;而这些修改和替换未脱离本专利技术创造宗旨和技术方案,均应属于本专利技术的保护范围。
本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种FPGA在线升级方法,其特征在于,所述方法包括如下步骤:步骤S1:所述FPGA外部连接存储器,所述存储器用于存储所述FPGA二级启动程序的配置文件、所述FPGA执行的功能对应的配置文件以及待升级程序对应的配置文件,所述存储器具有多个分区;步骤S2:所述FPGA在复位或启动后,所述FPGA从第一存储区读取所述FPGA二级启动程序的配置文件并运行,若在预设时间内未收到升级文件,则从第二存储区读取所述FPGA执行的功能对应的配置文件,方法结束;否则,将所述升级文件存储到第三存储区,进入步骤S3;步骤S3:所述升级文件接收完毕后,对所述升级文件的完整性进行校验,若校验通过,则将所述第三存储区中的所述升级文件转移到所述第二存储区,由所述第一存储区的所述FPGA二级启动程序的配置文件引导所述升级文件的执行。2.如权利要求1所述的方法,其特征在于...

【专利技术属性】
技术研发人员:姚廷伟可伟张大为李晓霞
申请(专利权)人:河北汉光重工有限责任公司
类型:发明
国别省市:

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

1