System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种基于国产FPGA软核的在线升级方法技术_技高网

一种基于国产FPGA软核的在线升级方法技术

技术编号:40344375 阅读:6 留言:0更新日期:2024-02-09 14:30
本发明专利技术公开了一种基于国产FPGA软核的在线升级方法,包括测试PC机和FPGA板卡;通过在线升级的方法快速完成bit文件更换,实现国产FPGA的网络在线升级,并基于快速升级的需求,采用了国产BPI‑FLASH;为了优化在线升级的时间,在UDP传输前对数据进行压缩,依据bit.bin文件内数据的规律,只传输非零的有效数据及数据位置,缩短了数据传输量;FPGA板卡上运行两个Microblaze软核,一个完成数据UDP接收、数据解压缩,另一个完成FLASH擦除、烧写,并且将数据接收、数据解压缩与FLASH擦除并行处理,两个软核通过DDR共享数据,无需借助辅助芯片,缩减在线升级成本。

【技术实现步骤摘要】

本专利技术涉及一种软核升级方法,具体为一种基于国产fpga软核的在线升级方法,属于智能硬件开发。


技术介绍

1、随着集成电路的发展,国产fpga芯片在越来越多的研发型设备中占据着更重要的地位。在数据接口领域,fpga可以适应各种各样的接口需求,包括网络、串口、can、srio、emif、hdmi等等;在数据处理领域,随着深度学习、并行计算的发展,fpga也能完成复杂的数据计算。因此,fpga可以依据不同的应用需求来进行逻辑适配,运行不同的bit文件进而实现不同的功能。此外,为方便特殊设备的fpga固件更新需求,在只保留对外网络接口的情况下,满足fpga的在线升级功能。

2、现有技术中,国产fpga在线升级方案主要是通过辅助芯片,但可能存在以下问题:1)通过dsp、mcu、cpld等微处理器来实现,虽然实现起来难度小些,但增加了板卡器件成本和板卡尺寸;2)直接利用fpga的逻辑电路来完成在线升级,但开发难度相对较大,而且针对不同的flash型号,需要更改fpga的接口逻辑,增加了fpga的逻辑复杂度,实现起来耗时耗力。


技术实现思路

1、本专利技术的目的就在于为了解决上述至少一个技术问题而提供一种基于国产fpga软核的在线升级方法。

2、本专利技术通过以下技术方案来实现上述目的:一种基于国产fpga软核的在线升级方法,包括测试pc机和fpga板卡,测试pc机通过网络与fpga板卡呈信号传输连接,测试pc机用于完成bit文件读取、数据压缩、udp传输,fpga板卡用于完成udp接收、数据解压缩、bpi-flash擦除、bpi-flash烧写;

3、该在线升级方法包括以下步骤:

4、步骤一、测试pc机读取本地bit.bin文件,依据bit.bin文件的规律,提取元素既不为0也不为0xff的数据元素及元素位置,同时,提取元素为0xff的位置;

5、步骤二、利用udp协议分包依次发送提取的数据元素、元素位置及0xff的位置,通过udp协议类型来区分数据类型,udp数据发送完后,等待fpga板卡反馈烧录成功命令;

6、步骤三、fpga板卡上运行两个microblaze软核,microblaze_1通过中断回调函数的方式等待接收udp帧数据,microblaze_2循环查询共享ddr地址的状态变量是否置1,当microblaze_1接收到第1帧udp数据时,将共享ddr地址的状态变量置1,此时,microblaze_2开始对bpi-flash进行块擦除;

7、步骤四、microblaze_1接收完所有udp数据后,进行解压缩操作,依据数据元素位置对bit.bin文件数据进行恢复,并将恢复后的数据元素存放到共享ddr中,存放完数据元素后,再通过共享ddr状态变量通知microblaze_2可以进行烧写操作,此时,flash擦除完成,立即开始bit.bin数据烧写;

8、步骤五、bpi-flash烧写完成后,再通过共享ddr状态变量通知microblaze_1发送烧写完成udp命令,告知测试pc机烧录完成。

9、作为本专利技术再进一步的方案:fpga板卡上集成的相关器件包括但不限于国产fpga、国产ddr、国产bpi-flash和国产phy。

10、作为本专利技术再进一步的方案:步骤二中,在通过udp发送bit.bin数据前,依据数据规律,进行数据压缩。

11、作为本专利技术再进一步的方案:步骤三中,fpga板卡上运行了两个microblaze软核,均为standalone裸机状态,microblaze_1用于接收udp数据与解压缩,microblaze_2完成bpi-flash的擦除与烧录,利用共享ddr来实现数据接收、解压缩与flash擦除并行处理的效果。

12、本专利技术的有益效果是:

13、1)通过网络在线升级的方法快速完成bit文件更换,实现了国产fpga的网络在线升级,并基于快速升级的需求,采用了国产bpi-flash的方案,为了优化在线升级的时间,在udp传输前对数据进行压缩,降低发送的二进制文件字节数,依据bit.bin文件(二进制文件)内数据的规律,只传输非零的有效数据及数据位置,缩短了数据传输量;

14、2)fpga板卡上运行两个microblaze软核,一个完成数据udp接收、数据解压缩,另一个完成flash擦除、烧写,并且将数据接收、数据解压缩与flash擦除并行处理,两个软核通过ddr共享数据实现数据接收、解压缩与flash擦除并行处理的效果,相较于传统升级方法,无需借助辅助芯片,缩减了在线升级成本;

15、3)相较于直接由fpga逻辑实现的方法,软核操作起来更加简单,省时省力,降低开发难度,且软件代码具有良好的可移植性。

本文档来自技高网...

【技术保护点】

1.一种基于国产FPGA软核的在线升级方法,包括测试PC机和与所述测试PC机呈信号传输连接的FPGA板卡,其特征在于:所述测试PC机用于完成bit文件读取、数据压缩和UDP传输;所述FPGA板卡用于完成UDP接收、数据解压缩、BPI-FLASH擦除和BPI-FLASH烧写;

2.根据权利要求1所述的在线升级方法,其特征在于:所述FPGA板卡上集成的相关器件包括但不限于国产FPGA、国产DDR、国产BPI-FLASH和国产PHY。

3.根据权利要求1所述的在线升级方法,其特征在于:所述步骤二中,在通过UDP发送bit.bin数据前,依据数据规律,进行数据压缩。

4.根据权利要求1或2所述的在线升级方法,其特征在于:所述步骤三中,所述FPGA板卡上运行两个Microblaze软核,均为standalone裸机状态,Microblaze_1用于接收UDP数据与解压缩,Microblaze_2完成BPI-FLASH的擦除与烧录,利用共享DDR来实现数据接收、解压缩与FLASH擦除并行处理的效果。

【技术特征摘要】

1.一种基于国产fpga软核的在线升级方法,包括测试pc机和与所述测试pc机呈信号传输连接的fpga板卡,其特征在于:所述测试pc机用于完成bit文件读取、数据压缩和udp传输;所述fpga板卡用于完成udp接收、数据解压缩、bpi-flash擦除和bpi-flash烧写;

2.根据权利要求1所述的在线升级方法,其特征在于:所述fpga板卡上集成的相关器件包括但不限于国产fpga、国产ddr、国产bpi-flash和国产phy。

3.根据权...

【专利技术属性】
技术研发人员:王春辉罗亚军徐传勇付力肖登
申请(专利权)人:中船凌久电子武汉有限责任公司
类型:发明
国别省市:

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

1