CN106843938A - Fpga和dsp程序升级和在线重构系统和方法 - Google Patents
Fpga和dsp程序升级和在线重构系统和方法 Download PDFInfo
- Publication number
- CN106843938A CN106843938A CN201611259190.4A CN201611259190A CN106843938A CN 106843938 A CN106843938 A CN 106843938A CN 201611259190 A CN201611259190 A CN 201611259190A CN 106843938 A CN106843938 A CN 106843938A
- Authority
- CN
- China
- Prior art keywords
- fpga
- dsp
- upgrading
- programs
- flash chip
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本发明公开了一种FPGA和DSP程序升级和在线重构系统和方法,其中,系统包括:USB外部接口,用于连接外部的升级设备;FLASH芯片,用于存储USB外部设备导入的升级程序,包括DSP处理器的升级和FPGA的升级程序;DSP处理器,用于将升级程序从FLASH芯片中取出,发给FPGA处理器升级。本发明FPGA和DSP程序升级和在线重构系统和方法,解决目标板更新程序操作复杂的问题,并减少了系统中存储器件的数量,降低硬成本。
Description
技术领域
本发明涉及一种FPGA升级技术,特别涉及一种FPGA和DSP程序升级和在线重构系统系方法。
背景技术
目前DSP程序的升级主要通过仿真器烧写升级和UART串口烧写升级两种方式。使用仿真器烧写升级必须先将产品的封盖打开,然后将仿真器与DSP的JTAG接口连接,在装有仿真器驱动程序和CCS应用软件的电脑上,由专业技术人员操作来完成升级。在外场使用该方法升级程序步骤复杂,并且需要相关专业技术人员进行操作。UART串口烧写升级方式相对使用仿真器烧写升级更简单,但是仍然需要使用上位机进行操作,并且数据传输速度较慢。
目前FPGA程序大多都是固化在外部专用的非易失存储器中,成本较高,且必须使用专用仿真器和特定调试软件进行程序升级。例如Altera公司大多使用EPCS和EPCQ专用存储器储存FPGA的程序代码。
程序固化完成后,FPGA通过AS方式主动从外部的专用存储器中加载代码,这种方式无法进行重构,不适用于多种功能应用场合。
发明内容
本发明的目的在于提供一种FPGA和DSP程序升级和在线重构系统,用于解决上述现有技术的问题。
本发明一种FPGA和DSP程序升级和在线重构系统,其中,包括:USB外部接口,用于连接外部的升级设备;FLASH芯片,用于存储USB外部设备导入的升级程序,包括DSP处理器的升级和FPGA的升级程序;DSP处理器,用于将升级程序从FLASH芯片4中取出,发给FPGA处理器升级。
根据本发明的FPGA和DSP程序升级和在线重构系统的一实施例,其中,还包括:USB驱动电路,连接在USB外部接口与DSP处理器之间。
根据本发明的FPGA和DSP程序升级和在线重构系统的一实施例,其中,DSP处理器为TMS320C6416型号,FPGA处理器型号为Cyclone系统FPGA。
根据本发明的FPGA和DSP程序升级和在线重构系统的一实施例,其中,USB外部接口将多段FPGA升级程序写入Flash芯片中
本发明一种FPGA和DSP程序升级和在线重构方法,其中,包括:将升级文件写入USB存储设备中;DSP读取USB存储设备中指定的文件,并将文件写入Flash芯片的指定区域;DSP在复位完成后,从Flash芯片中加载升级翁建,并运行;DSP将Flash芯片中FPGA的相关升级程序读出,在线配置FPGA,完成整个系统的程序升级。
根据本发明的FPGA和DSP程序升级和在线重构方法的一实施例,其中,升级文件为.rbf和.dat文件。
根据本发明的FPGA和DSP程序升级和在线重构方法的一实施例,其中,还包括DSP将Flash芯片擦除,如果擦除成功,返回擦除完成标志,如果擦除失败,重新擦除,反复4次,如果擦除都失败,提示无法升级。
根据本发明的FPGA和DSP程序升级和在线重构方法的一实施例,其中,DSP将Flash芯片中FPGA的相关升级程序读出后,通过GPIO口在线配置FPGA。
根据本发明的FPGA和DSP程序升级和在线重构方法的一实施例,其中,如果FPGA有多段程序需要分时重构,由DSP在不同的时间点读取Flash芯片相应区域的代码,再以PS方式对FPGA进行在线配置来完成。
根据本发明的FPGA和DSP程序升级和在线重构方法的一实施例,其中,包括:通过USB存储设备将多段程序代码写入Flash芯片中;DSP将第一段FPGA功能代码从Flash中读出,写入FPGA内部;FPGA执行第一段代码功能;DSP检测到FPGA执行完成第一段功能,读取第二段程序代码,重新配置FPGA;FPGA执行第二段代码功能。
本发明FPGA和DSP程序升级和在线重构系统和方法,解决目标板更新程序操作复杂的问题,并减少了系统中存储器件的数量,降低硬成本。
附图说明
图1所示为本发明基于USB传输的FPGA+DSP程序升级和在线重构系统的模块图;
图2所示为本发明FPGA和DSP程序升级和在线重构系统和方法的升级流程图;
图3为本发明的FPGA多段代码重构流程图。
具体实施方式
为使本发明的目的、内容、和优点更加清楚,下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。
图1所示为本发明基于USB传输的FPGA+DSP程序升级和在线重构系统的模块图,如图1所示,本发明基于USB传输的FPGA+DSP程序升级和在线重构系统包括:USB外部接口1、USB驱动电路2、DSP处理器3、Flash芯片4以及FPGA处理器5。
如图1所示,USB外部接口1,用于连接外部的升级设备;FLASH芯片4,用于存储USB外部设备导入的升级程序,包括DSP的升级和FPGA的升级程序。DSP处理器3,用于将升级程序从FLASH芯片4中取出,发给FPGA处理器5升级。
图2所示为本发明FPGA和DSP程序升级和在线重构系统和方法的升级流程图,如图2所示,
本发明的目的是通过以下技术方案来实现的:
S1:通过软件生成.rbf和.dat文件作为升级文件,文件名设定为约定名称。
S2:将文件写入USB存储设备中。
S3:操作员将USB存储设备插入系统。
S4:系统识别到有USB存储设备插入,进入升级流程。
S5:DSP利用Flash擦除函数将Flash芯片擦除,如果擦除成功,返回擦除完成标志并进入下一步骤,如果擦除失败,重新擦除,反复4次,如果擦除都失败,板上升级指示灯常亮。
S6:DSP读取USB存储设备中指定的文件,并将文件写入Flash芯片的指定区域。
S7:程序更新完成后,DSP控制板上升级指示灯常闪烁。操作员将系统重启。
S8:DSP在复位完成后,从Flash芯片中加载指定区域的代码,并运行。
S9:DSP将Flash芯片中FPGA的相关程序数据读出,通过GPIO口在线配置FPGA,完成整个系统的程序升级。
S10:如果FPGA有多段程序需要分时重构,也可以由DSP在不同的时间点读取Flash芯片相应区域的代码,再以PS方式对FPGA进行在线配置来完成。
图3为本发明的FPGA多段代码重构流程图,如图3所示,FPGA多段代码重构方法包括:
通过USB存储设备将多段程序代码写入Flash芯片中;
DSP将第一段FPGA功能代码从Flash中读出,写入FPGA内部;
FPGA执行第一段代码功能;
DSP检测到FPGA执行完成第一段功能,读取第二段程序代码,重新配置FPGA;
FPGA执行第二段代码功能。
本套系统中所述的DSP为TI公司的TMS320C6416,FPGA为Altera公司的Cyclone系统FPGA,其他系列的处理也可参照该方法进行操作。
本发明的有益效果是:(1)整个升级过程更简便,操作员只需要将存有升级文件的USB存储设备插入系统,等到烧写完成后,将系统重启,无需专业技术人员进行操作,提高了效率,且不需要专用的FPGA外在存储器,减少了板上器件的数量,提高了可靠性也降低了器件成本。(2)将多段功能代码存入Flash芯片中,再由DSP通过PS方式对FPGA进行配置,可在FPGA资源较少的情况下完成多种功能。
本发明FPGA和DSP程序升级和在线重构系统和方法,解决目标板更新程序操作复杂的问题,并减少了系统中存储器件的数量,降低硬成本。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明技术原理的前提下,还可以做出若干改进和变形,这些改进和变形也应视为本发明的保护范围。
Claims (10)
1.一种FPGA和DSP程序升级和在线重构系统,其特征在于,包括:
USB外部接口,用于连接外部的升级设备;
FLASH芯片,用于存储USB外部设备导入的升级程序,包括DSP处理器的升级和FPGA的升级程序;
DSP处理器,用于将升级程序从FLASH芯片中取出,发给FPGA处理器升级。
2.如权利要求1所述的FPGA和DSP程序升级和在线重构系统,其特征在于,还包括:USB驱动电路,连接在USB外部接口与DSP处理器之间。
3.如权利要求1所述的FPGA和DSP程序升级和在线重构系统,其特征在于,DSP处理器为TMS320C6416型号,FPGA处理器型号为Cyclone系统FPGA。
4.如权利要求1所述的FPGA和DSP程序升级和在线重构系统,其特征在于,USB外部接口将多段FPGA升级程序写入Flash芯片中。
5.一种FPGA和DSP程序升级和在线重构方法,其特征在于,包括:
将升级文件写入USB存储设备中;
DSP读取USB存储设备中指定的文件,并将文件写入Flash芯片的指定区域;
DSP在复位完成后,从Flash芯片中加载升级翁建,并运行;
DSP将Flash芯片中FPGA的相关升级程序读出,在线配置FPGA,完成整个系统的程序升级。
6.如权利要求5所述的FPGA和DSP程序升级和在线重构方法,其特征在于,升级文件为.rbf和.dat文件。
7.如权利要求5所述的FPGA和DSP程序升级和在线重构方法,其特征在于,还包括DSP将Flash芯片擦除,如果擦除成功,返回擦除完成标志,如果擦除失败,重新擦除,反复4次,如果擦除都失败,提示无法升级。
8.如权利要求5所述的FPGA和DSP程序升级和在线重构方法,其特征在于,DSP将Flash芯片中FPGA的相关升级程序读出后,通过GPIO口在线配置FPGA。
9.如权利要求5所述的FPGA和DSP程序升级和在线重构方法,其特征在于,如果FPGA有多段程序需要分时重构,由DSP在不同的时间点读取Flash芯片相应区域的代码,再以PS方式对FPGA进行在线配置来完成。
10.如权利要求9所述的FPGA和DSP程序升级和在线重构方法,其特征在于,包括:
通过USB存储设备将多段程序代码写入Flash芯片中;
DSP将第一段FPGA功能代码从Flash中读出,写入FPGA内部;
FPGA执行第一段代码功能;
DSP检测到FPGA执行完成第一段功能,读取第二段程序代码,重新配置FPGA;
FPGA执行第二段代码功能。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611259190.4A CN106843938A (zh) | 2016-12-30 | 2016-12-30 | Fpga和dsp程序升级和在线重构系统和方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611259190.4A CN106843938A (zh) | 2016-12-30 | 2016-12-30 | Fpga和dsp程序升级和在线重构系统和方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN106843938A true CN106843938A (zh) | 2017-06-13 |
Family
ID=59113717
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201611259190.4A Pending CN106843938A (zh) | 2016-12-30 | 2016-12-30 | Fpga和dsp程序升级和在线重构系统和方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106843938A (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107832078A (zh) * | 2017-09-15 | 2018-03-23 | 西南电子技术研究所(中国电子科技集团公司第十研究所) | 基于dsp的fpga程序在线更新电路 |
CN109408924A (zh) * | 2018-10-12 | 2019-03-01 | 北京特种机械研究所 | 基于dsp芯片的fpga配置方法 |
CN111142914A (zh) * | 2019-12-31 | 2020-05-12 | 南京中科晶上通信技术有限公司 | 一种基于zynq固件升级的方法及计算机可读存储介质 |
CN111459572A (zh) * | 2020-03-31 | 2020-07-28 | 深圳市汇顶科技股份有限公司 | 程序加载方法、控制器、芯片以及电子设备 |
CN112000360A (zh) * | 2020-08-25 | 2020-11-27 | 山东超越数控电子股份有限公司 | 一种基于动态局部重构的fpga在线升级方法 |
CN113741934A (zh) * | 2021-08-24 | 2021-12-03 | 江苏科曜能源科技有限公司 | 一种逆变器程序升级方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105373407A (zh) * | 2015-12-07 | 2016-03-02 | 中国船舶重工集团公司第七〇五研究所 | 嵌入式系统dsp和fpga在线升级方法 |
CN205212923U (zh) * | 2015-11-02 | 2016-05-04 | 上海唐舜电信科技有限公司 | 可重构网络媒体话机终端 |
CN105786620A (zh) * | 2016-02-25 | 2016-07-20 | 电子科技大学 | 一体化可重构综合信息处理载荷系统 |
CN106155747A (zh) * | 2016-07-13 | 2016-11-23 | 无锡中微亿芯有限公司 | 一种基于fpga可加速配置的方法和控制系统 |
-
2016
- 2016-12-30 CN CN201611259190.4A patent/CN106843938A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN205212923U (zh) * | 2015-11-02 | 2016-05-04 | 上海唐舜电信科技有限公司 | 可重构网络媒体话机终端 |
CN105373407A (zh) * | 2015-12-07 | 2016-03-02 | 中国船舶重工集团公司第七〇五研究所 | 嵌入式系统dsp和fpga在线升级方法 |
CN105786620A (zh) * | 2016-02-25 | 2016-07-20 | 电子科技大学 | 一体化可重构综合信息处理载荷系统 |
CN106155747A (zh) * | 2016-07-13 | 2016-11-23 | 无锡中微亿芯有限公司 | 一种基于fpga可加速配置的方法和控制系统 |
Non-Patent Citations (1)
Title |
---|
毕克允主编: "《微电子技术信息化武器装备的精灵》", 31 July 2008, 国防工业出版社 * |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107832078A (zh) * | 2017-09-15 | 2018-03-23 | 西南电子技术研究所(中国电子科技集团公司第十研究所) | 基于dsp的fpga程序在线更新电路 |
CN107832078B (zh) * | 2017-09-15 | 2020-09-22 | 西南电子技术研究所(中国电子科技集团公司第十研究所) | 基于dsp的fpga程序在线更新电路 |
CN109408924A (zh) * | 2018-10-12 | 2019-03-01 | 北京特种机械研究所 | 基于dsp芯片的fpga配置方法 |
CN109408924B (zh) * | 2018-10-12 | 2022-11-04 | 北京特种机械研究所 | 基于dsp芯片的fpga配置方法 |
CN111142914A (zh) * | 2019-12-31 | 2020-05-12 | 南京中科晶上通信技术有限公司 | 一种基于zynq固件升级的方法及计算机可读存储介质 |
CN111142914B (zh) * | 2019-12-31 | 2021-05-28 | 南京中科晶上通信技术有限公司 | 一种基于zynq固件升级的方法及计算机可读存储介质 |
CN111459572A (zh) * | 2020-03-31 | 2020-07-28 | 深圳市汇顶科技股份有限公司 | 程序加载方法、控制器、芯片以及电子设备 |
CN111459572B (zh) * | 2020-03-31 | 2023-01-31 | 深圳市汇顶科技股份有限公司 | 程序加载方法、控制器、芯片以及电子设备 |
CN112000360A (zh) * | 2020-08-25 | 2020-11-27 | 山东超越数控电子股份有限公司 | 一种基于动态局部重构的fpga在线升级方法 |
CN113741934A (zh) * | 2021-08-24 | 2021-12-03 | 江苏科曜能源科技有限公司 | 一种逆变器程序升级方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106843938A (zh) | Fpga和dsp程序升级和在线重构系统和方法 | |
CN110134415A (zh) | 一种控制器及其软件升级方法和装置 | |
CN101477471B (zh) | 一种嵌入式系统固件在线升级方法 | |
CN102033770B (zh) | 移动终端的触摸屏固件升级方法及装置 | |
CN106547574A (zh) | 一种dsp程序和fpga程序的外部下载系统及方法 | |
CN104881286B (zh) | 可编程器件配置系统及方法 | |
CN111008033A (zh) | 一种基于串口的通用dsp在线升级系统及升级方法 | |
CN103513994A (zh) | 一种通过pcie 进行fpga 在线升级的方法和系统 | |
CN109656593A (zh) | 基于zynq芯片实现fpga程序远程升级的方法 | |
CN103914667B (zh) | 一种安全读写eeprom的方法及其系统 | |
CN110515641A (zh) | 服务器固件的更新方法、装置及系统 | |
CN103049363B (zh) | 一种NAND Flash控制器的验证方法 | |
CN107861745A (zh) | 一种应用程序在线升级方法、装置、设备及存储介质 | |
CN108108193A (zh) | 一种安全易用的固件升级方法及系统 | |
CN107704258A (zh) | Uboot升级方法、系统及终端设备 | |
CN107402776A (zh) | 一种基于蓝牙4的手机无线升级stm32单片机控制器固件方法 | |
CN109032632A (zh) | 一种fota升级方法、无线通信终端及存储介质 | |
CN110096300A (zh) | 一种fpga程序文件备份管理系统、运行方法及升级方法 | |
CN102917242A (zh) | 一种多格式视频解码器的测试系统和测试方法 | |
CN110837385A (zh) | 一种基于CANopen协议的DSP应用程序在线升级方法 | |
CN109710320A (zh) | 一种两级驱动的启动引导BootLoader方法 | |
CN110413298A (zh) | 基于Labwindows平台进行单片机串行升级和调试的方法 | |
CN104461859B (zh) | 一种支持nvm软断点调试的仿真器和方法 | |
CN108920168B (zh) | 支持多个同类ECU同时升级且具防程序不匹配功能的Bootloader方法 | |
CN108170453A (zh) | 一种mit系统升级方法、存储介质及终端设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20170613 |