软核更新方法和系统技术方案

技术编号:20517592 阅读:37 留言:0更新日期:2019-03-06 02:33
本发明专利技术实施例公开了一种软核更新方法及系统,其利用第一程序文件对可编程逻辑器件进行配置并在配置完成后向可编程逻辑器件发送第二程序文件并利用可编程逻辑器件中的寄存器传输级代码将所述第二程序文件存储至可编程逻辑器件的外部存储器,之后将程序运行的入口地址跳转到外部存储器中的目标地址,以运行所述第二程序文件对应的软核代码。因此,本发明专利技术实施例可以节省成本和/或节省内部RAM的使用。

Soft Kernel Updating Method and System

The embodiment of the present invention discloses a soft core updating method and system, which configures the programmable logic device by using the first program file and sends the second program file to the programmable logic device after the configuration is completed, and stores the second program file to the external memory of the programmable logic device by using the register transfer level code in the programmable logic device, and then stores the program. The running entry address jumps to the target address in the external memory to run the soft core code corresponding to the second program file. Therefore, embodiments of the present invention can save cost and/or use of internal RAM.

【技术实现步骤摘要】
软核更新方法和系统
本专利技术涉及软件更新
,尤其涉及一种软核更新方法以及一种软核更新系统。
技术介绍
LED显示屏控制卡一般采用FPGA进行图像和通讯处理。在与外围通讯处理器例如ARM通讯中为了解析协议一般采用软核进行处理。软核更新方式一般采用JTAG口和AS(ActiveSerial,主动串行)方式,JTAG只适合调试阶段,不适合产品阶段。AS方式适合产品阶段,但要增加一片EEPROM存储器挂接至FPGA来专门存放FPGA的配置程序和软核程序,这也就增加了成本。而且当软核应用程序在外部存储器例如DDR3中运行的应用场合,利用软核程序中的Boot程序将EEPROM存储器中的软核应用程序文件转写到外部存储器,这样就增加了内部RAM的使用个数,当内部RAM非常紧张时这种方式是不可取的。
技术实现思路
因此,本专利技术的实施例提供一种软核更新方法以及一种软核更新系统,以实现降低成本和/或节省内部RAM资源的技术效果。一方面,提供了一种软核更新方法,包括:将第一程序文件从第一存储器读出并加载至可编程逻辑器件;在将所述第一程序文件从所述第一存储器读出并加载至可编程逻辑器件后,与所述可编程逻辑器件进行握手通信,并在握手通信成功后将第二程序文件从所述第一存储器读出并发送给所述可编程逻辑器件;所述可编程逻辑器件的寄存器传输级代码将所述第二程序文件存储至第二存储器;以及在所述可编程逻辑器件的寄存器传输级(RTL)代码将所述第二程序文件存储至第二存储器后,所述可编程逻辑器件将程序运行的入口地址跳转到所述第二存储器中的目标地址,运行所述第二程序文件对应的软核代码。在本专利技术的一个实施例中,所述第一程序文件包含所述可编程逻辑器件的配置程序和软核引导程序,所述第二程序文件包含所述可编程逻辑器件的软核应用程序。在本专利技术的一个实施例中,在将所述第一程序文件从所述第一存储器读出并加载至所述可编程逻辑器件后,所述可编程逻辑器件根据所述配置程序进行配置、并在配置完成后运行所述软核引导程序。在本专利技术的一个实施例中,所述方法还包括:获取初始配置程序和软核程序,其中所述软核程序包含ELF格式的软核引导程序和ELF格式的软核应用程序;根据所述初始配置程序和所述ELF格式的软核引导程序生成BIT格式的所述第一程序文件;根据所述ELF格式的软核应用程序生成BIN格式的所述第二程序文件;以及将BIT格式的所述第一程序文件和BIN格式的所述第二程序文件从上位机发送至微处理器,以供所述微处理器接收所述第一程序文件和所述第二程序文件并存储至所述第一存储器,其中所述微处理器连接所述第一存储器和所述可编程逻辑器件。在本专利技术的一个实施例中,所述根据所述ELF格式的软核应用程序生成BIN格式的所述第二程序文件包括:将所述ELF格式的软核应用程序转换成SREC格式文件;对所述SREC文件进行局部内容修改,以设置软核应用程序在所述第二存储器中的基地址,得到修改后SREC格式文件;以及将所述修改后SREC格式文件转换成BIN格式文件,得到转换后BIN格式文件。在本专利技术的一个实施例中,所述根据所述ELF格式的软核应用程序生成BIN格式的所述第二程序文件还包括:对所述转换后BIN格式文件进行局部内容修改,以设置复位和中断执行代码,得到BIN格式的所述第二程序文件。在本专利技术的一个实施例中,所述第一程序文件为BIT格式文件且所述配置程序和所述软核引导程序位于同一个BIT格式文件中,所述第二程序文件为BIN格式文件。再一方面,提供了一种软核更新系统,包括:微处理器、第一存储器、可编程逻辑器件和第二存储器,所述微处理器连接所述第一存储器和所述可编程逻辑器件,所述第二存储器连接所述可编程逻辑器件;所述微处理器用于将第一程序文件从所述第一存储器读出并加载至所述可编程逻辑器件,在将所述第一程序文件从所述第一存储器读出并加载至所述可编程逻辑器件后与所述可编程逻辑器件进行握手通信,并在握手通信成功后将第二程序文件从所述第一存储器读出并发送给所述可编程逻辑器件;所述可编程逻辑器件用于利用寄存器传输级代码将所述第二程序文件存储至第二存储器,以及在将所述第二程序文件存储至第二存储器后将程序运行的入口地址跳转到所述第二存储器中的目标地址,运行所述第二程序文件对应的软核代码。在本专利技术的一个实施例中,所述第一程序文件包含所述可编程逻辑器件的配置程序和软核引导程序,所述第二程序文件包含所述可编程逻辑器件的软核应用程序。在本专利技术的一个实施例中,所述可编程逻辑器件还用于根据所述配置程序进行配置、并在配置完成后运行所述软核引导程序。在本专利技术的一个实施例中,所述系统还包括:上位机,所述上位机通过通信接口连接所述微处理器;所述上位机用于:获取初始配置程序和软核程序,其中所述软核程序包含ELF格式的软核引导程序和ELF格式的软核应用程序;根据所述初始配置程序和所述ELF格式的软核引导程序生成BIT格式的所述第一程序文件;以及根据所述ELF格式的软核应用程序生成BIN格式的所述第二程序文件。在本专利技术的一个实施例中,所述上位机根据所述ELF格式的软核应用程序生成BIN格式的所述第二程序文件包括:将所述ELF格式的软核应用程序转换成SREC格式文件;对所述SREC文件进行局部内容修改,以设置软核应用程序在所述第二存储器中的基地址,得到修改后SREC格式文件;以及将所述修改后SREC格式文件转换成BIN格式文件,得到转换后BIN格式文件。在本专利技术的一个实施例中,所述上位机根据所述ELF格式的软核应用程序生成BIN格式的所述第二程序文件还包括:对所述转换后BIN格式文件进行局部内容修改,以设置复位和中断执行代码,得到BIN格式的所述第二程序文件。在本专利技术的一个实施例中,所述第一程序文件为BIT格式文件且所述配置程序和所述软核引导程序位于同一个BIT格式文件中,所述第二程序文件为BIN格式文件。上述技术方案的一个技术方案具有如下优点或有益效果:通过连接至微处理器的第一存储器来存储程序文件,其可以节省一片挂接至FPGA的存储器,以节省成本;此外利用RTL代码进行程序文件写入至可编程逻辑器件的外部存储器(第二存储器),可以节省内部RAM的使用。附图说明为了更清楚地说明本专利技术实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本专利技术实施例中提出的一种软核更新方法的流程示意图;图2为本专利技术实施例中提出的一种软核更新系统的架构示意图;图3为本专利技术实施例中ELF格式文件转SREC格式文件的界面图片;图4A和图4B为本专利技术实施例中将SREC格式文件转换为BIN格式文件前对SREC格式文件进行局部内容修改的界面图片;图5A为本专利技术实施例中SREC格式文件中的复位及中断执行代码的界面图片;图5B为本专利技术实施例中已设置好复位及中断程序代码的BIN格式文件的局部内容界面图片。具体实施方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有作出本文档来自技高网...

【技术保护点】
1.一种软核更新方法,其特征在于,包括:将第一程序文件从第一存储器读出并加载至可编程逻辑器件;与所述可编程逻辑器件进行握手通信,并在握手通信成功后将第二程序文件从所述第一存储器读出并发送给所述可编程逻辑器件;所述可编程逻辑器件的寄存器传输级代码将所述第二程序文件存储至第二存储器;所述可编程逻辑器件将程序运行的入口地址跳转到所述第二存储器中的目标地址,运行所述第二程序文件对应的软核代码。

【技术特征摘要】
1.一种软核更新方法,其特征在于,包括:将第一程序文件从第一存储器读出并加载至可编程逻辑器件;与所述可编程逻辑器件进行握手通信,并在握手通信成功后将第二程序文件从所述第一存储器读出并发送给所述可编程逻辑器件;所述可编程逻辑器件的寄存器传输级代码将所述第二程序文件存储至第二存储器;所述可编程逻辑器件将程序运行的入口地址跳转到所述第二存储器中的目标地址,运行所述第二程序文件对应的软核代码。2.如权利要求1所述的方法,其特征在于,所述第一程序文件包含所述可编程逻辑器件的配置程序和软核引导程序,所述第二程序文件包含所述可编程逻辑器件的软核应用程序。3.如权利要求2所述的方法,其特征在于,在将所述第一程序文件从所述第一存储器读出并加载至所述可编程逻辑器件后,所述可编程逻辑器件根据所述配置程序进行配置、并在配置完成后运行所述软核引导程序。4.如权利要求2所述的方法,其特征在于,所述方法还包括:获取初始配置程序和软核程序,其中所述软核程序包含ELF格式的软核引导程序和ELF格式的软核应用程序;根据所述初始配置程序和所述ELF格式的软核引导程序生成BIT格式的所述第一程序文件;根据所述ELF格式的软核应用程序生成BIN格式的所述第二程序文件;将BIT格式的所述第一程序文件和BIN格式的所述第二程序文件从上位机发送至微处理器,以供所述微处理器接收所述第一程序文件和所述第二程序文件并存储至所述第一存储器,其中所述微处理器连接所述第一存储器和所述可编程逻辑器件。5.如权利要求4所述的方法,其特征在于,所述根据所述ELF格式的软核应用程序生成BIN格式的所述第二程序文件包括:将所述ELF格式的软核应用程序转换成SREC格式文件;对所述SREC文件进行局部内容修改,以设置软核应用程序在所述第二存储器中的基地址,得到修改后SREC格式文件;将所述修改后SREC格式文件转换成BIN格式文件,得到转换后BIN格式文件。6.如权利要求5所述的方法,其特征在于,所述根据所述ELF格式的软核应用程序生成BIN格式的所述第二程序文件还包括:对所述转换后BIN格式文件进行局部内容修改,以设置复位和中断执行代码,得到BIN格式的所述第二程序文件。7.如权利要求2所述的方法,其特征在于,所述第一程序文件为BIT格式文件且所述配置程序和所述软核引导程序位于同一个BIT格式文件中,所述第二程序文件...

【专利技术属性】
技术研发人员:吕京梅梁伟
申请(专利权)人:西安诺瓦电子科技有限公司
类型:发明
国别省市:陕西,61

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

1