CN106919409A - 一种fpga单元升级设备、系统和方法 - Google Patents
一种fpga单元升级设备、系统和方法 Download PDFInfo
- Publication number
- CN106919409A CN106919409A CN201510994018.2A CN201510994018A CN106919409A CN 106919409 A CN106919409 A CN 106919409A CN 201510994018 A CN201510994018 A CN 201510994018A CN 106919409 A CN106919409 A CN 106919409A
- Authority
- CN
- China
- Prior art keywords
- fpga
- unit
- programs
- memory cell
- fpga unit
- 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
-
- 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
- G06F8/654—Updates using techniques specially adapted for alterable solid state memories, e.g. for EEPROM or flash memories
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程序升级领域,公开了一种FPGA单元升级设备、系统和方法,其中,FPGA单元升级设备包括:存储单元;FPGA单元,该FPGA单元包括FPGA芯片;中央控制单元,用于执行以下操作:通过网口接收并存储FPGA程序,并将该FPGA程序存储至所述存储单元;以及控制所述FPGA单元从所述存储单元读取所述FPGA程序,以使得所述FPGA单元利用所述FPGA程序进行升级。利用本发明提供的FPGA单元升级设备可使得FPGA单元的升级变得方便、快捷、容易操作,且支持FPGA单元的远程升级,有利于设备智能化的发展。
Description
技术领域
本发明涉及FPGA程序升级领域,具体地,涉及一种FPGA单元升级设备、系统和方法。
背景技术
FPGA(Field-Programmable Gate Array)是在可编程逻辑阵列(PAL)、逻辑门阵列(GAL)、复杂可编程逻辑器件(cPLD)等可编程器件的基础上进一步发展的产物,具有规模大、成本低的独特优势。近年来,FPGA技术被广泛应用于通信、视频、信息处理等众多领域中。
目前,FPGA程序的升级一般都是采用下载器下载,这种方式需要打开设备机箱,把下载线准确连接到电路板上的FPGA下载接口,利用PC端的专用软件对FPGA程序进行升级,故FPGA程序的升级过程比较复杂,效率较低。随着FPGA在工业领域的大量应用,如果FPGA程序的每一次升级都需要打开设备机箱并连接上下载器进行升级,那么所需的工作量将非常的巨大,而且,FPGA程序的升级需要专业的软件人员进行操作、机箱设备及线路的连接需要专业的硬件人员进行操作,用户自己无法完成对FPGA程序的升级,使得FPGA程序的升级变得更为复杂,严重阻碍了设备智能化的发展。
发明内容
本发明的目的是提供一种FPGA单元升级设备、系统和方法,通过利用该FPGA单元升级设备、系统和方法,可使得FPGA单元的升级变得方便快捷、容易操作,对设备的智能化发展起到了促进的作用。
为了实现上述目的,本发明提供一种FPGA单元升级设备,该设备包括:存储单元;FPGA单元,该FPGA单元包括FPGA芯片;中央控制单元,用于执行以下操作:通过网口接收并存储FPGA程序,并将该FPGA程序存储至所述存储单元;以及控制所述FPGA单元从所述存储单元读取所述FPGA程序,以使得所述FPGA单元利用所述FPGA程序进行升级。
优选地,所述中央控制单元还用于校验所述存储单元存储的所述FPGA程序是否正确。
优选地,在所述存储单元存储的所述FPGA程序不正确的情况下,所述中央控制单元重新将所述FPGA程序存储至所述存储单元内。
优选地,在控制所述FPGA单元从所述存储单元读取所述FPGA程序之前,所述中央控制单元还用于控制所述FPGA单元复位。
优选地,所述中央控制单元还用于接收所述FPGA单元升级完成的指示,并通过所述网口发送所述FPGA单元升级完成的指示。
在基于上述FPGA单元升级设备的基础上,本发明还提供了一种FPGA单元升级系统,该系统包括:终端,用于通过网络上传FPGA程序;以及上述FPGA单元升级设备。
另外,为了实现上述目的,本发明还提供了一种FPGA单元升级方法,该方法包括:通过网口接收并存储FPGA程序,并将该FPGA程序存储至存储单元;以及控制FPGA单元从所述存储单元读取所述FPGA程序,以使得所述FPGA单元利用所述FPGA程序进行升级。
优选地,所述方法还包括:校验所述存储单元存储的所述FPGA程序是否正确。
优选地,所述方法还包括:在所述存储单元存储的所述FPGA程序不正确的情况下,重新将所述FPGA程序存储至所述存储单元内。
优选地,所述方法还包括:在控制所述FPGA单元从所述存储单元读取所述FPGA程序之前,控制所述FPGA单元复位。
优选地,所述方法还包括:接收所述FPGA单元升级完成的指示,并通过所述网口发送所述FPGA单元升级完成的指示。
通过本发明提供的FPGA单元升级设备,使得FPGA单元的升级变得方便快捷,容易操作,且支持FPGA单元的远程升级,解决了现有技术中FPGA单元升级的复杂和繁琐的缺点,有利于设备智能化的发展。
本发明的其它特征和优点将在随后的具体实施方式部分予以详细说明。
附图说明
附图是用来提供对本发明的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本发明,但并不构成对本发明的限制。在附图中:
图1是根据本发明的一实施例的一种FPGA单元升级系统的示意图;
图2是根据本发明的一实施例的一种FPGA单元升级方法的流程示意图。
具体实施方式
以下结合附图对本发明的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本发明,并不用于限制本发明。
图1是根据本发明的一实施例的一种FPGA单元升级系统的示意图,该系统包括:终端(如电脑终端,但并不限于此),用于利用网页或FTP等数据上传工具通过网络上传FPGA程序;以及一种FPGA单元升级设备。其中FPGA单元升级设备包括:存储单元(如Flash存储芯片,但并不限于此);FPGA单元,该FPGA单元包括FPGA芯片;中央控制单元(如CPU,但并不限于此),用于执行以下操作:通过网口接收FPGA程序,并将该FPGA程序存储至所述存储单元;以及控制所述FPGA单元从所述存储单元读取所述FPGA程序,以使得所述FPGA单元利用所述FPGA程序进行升级。
在一实施例中,用户可在终端打开用于上传FPGA程序的网页或FTP等数据上传工具,选择需要上传的FPGA程序,则被选择的FPGA程序会通过网络自动传输并被存储到中央控制单元。在FPGA程序上传的过程中,数据上传工具可读取FPGA程序中的十六进制数据并将上述数据逐帧传输给中央控制单元。中央控制单元接收上述数据并将上述数据重新写入到一文件中进行存储,实现了FPGA程序从终端上载到中央控制单元的远程上载,为FPGA单元的远程升级做准备。
在这一实施例中,在用户通过终端向中央控制单元发出FPGA单元升级命令后,FPGA单元的升级可通过FPGA单元升级设备自动完成,具体流程包括:中央控制单元在接收到FPGA单元升级命令后,创建进程和调用应用程序,通过SPI(Serial Peripheral Interface)总线或其他通讯方式将存储在中央控制单元中的FPGA程序以十六进制数据的形式写入到存储单元中。在中央控制单元将FPGA程序写入到存储单元后,中央控制单元可通过GPIO(General Purpose Input Output)口或SPI总线等通讯方式向FPGA单元发出控制信号,使FPGA单元复位,即使FPGA单元重新启动,以删除FPGA单元中原有的FPGA程序,为FPGA单元写入新的FPGA程序做准备。FPGA单元的复位也可通过给FPGA单元断电的方式实现。在FPGA单元复位后,FPGA单元从存储单元中读取FPGA程序,并利用该FPGA程序进行升级。上述FPGA单元升级设备对FPGA单元进行的自动升级的功能避免了FPGA单元升级的复杂和繁琐的缺点,使得FPGA单元的升级变得方便、快捷、容易操作,有利于设备智能化的发展。
由于这一实施例提供的FPGA单元升级系统中的FPGA程序可从终端远程上载到中央控制单元,故该系统还支持FPGA单元的远程升级,解决了FPGA单元升级必须在现场的缺点,为设备调试和FPGA单元的升级提供了极大的方便,进一步促进了设备智能化的发展。
优选地,中央控制单元还用于校验存储单元存储的FPGA程序是否正确,用于确保存储单元中FPGA程序的正确性,为FPGA单元从存储单元读取上述FPGA程序做准备。在这一优选方式中,中央控制单元校验存储单元中FPGA程序的过程为:中央控制单元将写入至存储单元的FPGA程序读出来,并对读出来的FPGA程序和存储在存储单元中的FPGA程序进行校验。
优选地,在存储单元存储的FPGA程序不正确的情况下,中央控制单元重新将存储在中央控制单元中的FPGA程序存储至存储单元内,以确保存储单元中FPGA程序的正确性,为FPGA单元从存储单元读取上述FPGA程序做准备。
优选地,中央控制单元还用于接收FPGA单元升级完成的指示,并通过网口发送FPGA单元升级完成的指示。在这一优选方式中,FPGA单元在升级完成后,通过GPIO或其他通讯方式向中央控制单元发出FPGA单元升级完成的指示,中央控制单元在接收到FPGA单元升级完成的指示后,通过网口将其发送给终端,以提示用户FPGA程序的升级任务已经完成。
图2是根据本发明的一实施例的一种FPGA单元升级方法的流程示意图,该方法包括:
S1、接收并存储FPGA程序
中央控制单元通过网口接收终端利用数据上传工具上传的FPGA程序,并将上述FPGA程序进行存储。
S2、判断是否发出FPGA单元升级命令
中央控制单元判断用户是否通过终端向中央控制单元发出FPGA单元升级命令,若用户没有向中央控制单元发出FPGA单元升级命令,则中央控制单元一直处于等待状态。
S3、将FPGA程序存储至存储单元
在中央控制单元接收到用户发出的FPGA单元升级命令后,中央控制单元将FPGA程序存储至存储单元。
S4、校验存储单元中存储的FPGA程序是否正确
为了确保存储单元中的FPGA程序的正确性,中央控制单元校验存储单元中存储的中FPGA程序是否正确,校验的过程为:中央控制单元将写入至存储单元的FPGA程序读出来,并对读出来的FPGA程序和存储在存储单元中的FPGA程序进行校验。若存储单元中存储的FPGA程序不正确,则重复步骤S3和S4。
S5、FPGA单元复位并从存储单元读取FPGA程序
在存储单元中的FPGA程序校验正确后,中央控制单元向FPGA单元发送控制信号,以使FPGA单元复位,即使FPGA单元重新启动,以删除FPGA单元中原有的FPGA程序。在FPGA单元复位后,FPGA单元再从存储单元中读取FPGA程序。
S6、FPGA单元进行升级
FPGA单元根据从存储单元中读取的FPGA程序进行升级。
S7、发送FPGA单元升级完成的指示
在FPGA单元完成升级后,向中央控制单元发出FPGA单元升级完成的指示,并经由中央控制单元通过网口将FPGA单元升级完成的指示发送给终端,以反馈给用户,提示用户FPGA单元的升级已经完成。
本实施例提供的FPGA单元升级方法操作简单,方便快捷,容易掌握,避免了使用下载器升级FPGA单元的复杂、繁琐、不易掌握等缺点,且利用该方法可进行远程升级,为FPGA单元的升级带来了极大的便利性。
以上结合附图详细描述了本发明的优选实施方式,但是,本发明并不限于上述实施方式中的具体细节,在本发明的技术构思范围内,可以对本发明的技术方案进行多种简单变型,这些简单变型均属于本发明的保护范围。
另外需要说明的是,在上述具体实施方式中所描述的各个具体技术特征,在不矛盾的情况下,可以通过任何合适的方式进行组合。为了避免不必要的重复,本发明对各种可能的组合方式不再另行说明。
此外,本发明的各种不同的实施方式之间也可以进行任意组合,只要其不违背本发明的思想,其同样应当视为本发明所公开的内容。
Claims (10)
1.一种FPGA单元升级设备,其特征在于,该设备包括:
存储单元;
FPGA单元,该FPGA单元包括FPGA芯片;
中央控制单元,用于执行以下操作:
通过网口接收并存储FPGA程序,并将该FPGA程序存储至所述存储单元;以及
控制所述FPGA单元从所述存储单元读取所述FPGA程序,以使得所述FPGA单元利用所述FPGA程序进行升级。
2.根据权利要求1所述的设备,其特征在于,所述中央控制单元还用于校验所述存储单元存储的所述FPGA程序是否正确。
3.根据权利要求2所述的设备,其特征在于,在所述存储单元存储的所述FPGA程序不正确的情况下,所述中央控制单元重新将所述FPGA程序存储至所述存储单元内。
4.根据权利要求1所述的设备,其特征在于,在控制所述FPGA单元从所述存储单元读取所述FPGA程序之前,所述中央控制单元还用于控制所述FPGA单元复位。
5.根据权利要求4所述的设备,其特征在于,所述中央控制单元还用于接收所述FPGA单元升级完成的指示,并通过所述网口发送所述FPGA单元升级完成的指示。
6.一种FPGA单元升级系统,其特征在于,该系统包含:
终端,用于通过网络上传FPGA程序;以及
根据权利要求1-5中任一项权利要求所述的FPGA程序升级设备。
7.一种FPGA单元升级方法,其特征在于,该方法包括:
通过网口接收并存储FPGA程序,并将该FPGA程序存储至存储单元;以及
控制FPGA单元从所述存储单元读取所述FPGA程序,以使得所述FPGA单元利用所述FPGA程序进行升级。
8.根据权利要求7所述的方法,其特征在于,所述方法还包括:
校验所述存储单元存储的所述FPGA程序是否正确。
9.根据权利要求8所述的方法,其特征在于,所述方法还包括:
在所述存储单元存储的所述FPGA程序不正确的情况下,重新将所述FPGA程序存储至所述存储单元内。
10.根据权利要求7所述的方法,其特征在于,所述方法还包括:
在控制所述FPGA单元从所述存储单元读取所述FPGA程序之前,控制所述FPGA单元复位。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510994018.2A CN106919409A (zh) | 2015-12-25 | 2015-12-25 | 一种fpga单元升级设备、系统和方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510994018.2A CN106919409A (zh) | 2015-12-25 | 2015-12-25 | 一种fpga单元升级设备、系统和方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN106919409A true CN106919409A (zh) | 2017-07-04 |
Family
ID=59455609
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510994018.2A Pending CN106919409A (zh) | 2015-12-25 | 2015-12-25 | 一种fpga单元升级设备、系统和方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106919409A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107505933A (zh) * | 2017-09-05 | 2017-12-22 | 上海地铁电子科技有限公司 | 辅助逆变器控制器测试系统 |
CN108572835A (zh) * | 2018-04-26 | 2018-09-25 | 南京国电南自维美德自动化有限公司 | 一种fpga配置文件在线升级系统 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101211266A (zh) * | 2006-12-30 | 2008-07-02 | 北京天融信网络安全技术有限公司 | 一种实现fpga自动下载和在线升级的方法 |
CN103136028A (zh) * | 2013-03-11 | 2013-06-05 | 西北工业大学 | 一种基于fpga的flash存储器远程在线升级方法 |
CN103617054A (zh) * | 2013-11-15 | 2014-03-05 | 中国航空无线电电子研究所 | 一种远程加载fpga配置文件的装置及加载方法 |
CN104503782A (zh) * | 2014-12-11 | 2015-04-08 | 中国南方电网有限责任公司电网技术研究中心 | 一种就地化继电保护装置远程软件升级的方法 |
CN104901830A (zh) * | 2015-05-12 | 2015-09-09 | 武汉烽火网络有限责任公司 | 一种交换机设备中fpga在线升级方法、装置和系统 |
CN105159731A (zh) * | 2015-10-12 | 2015-12-16 | 中国电子科技集团公司第五十四研究所 | 一种fpga配置文件远程升级的装置 |
-
2015
- 2015-12-25 CN CN201510994018.2A patent/CN106919409A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101211266A (zh) * | 2006-12-30 | 2008-07-02 | 北京天融信网络安全技术有限公司 | 一种实现fpga自动下载和在线升级的方法 |
CN103136028A (zh) * | 2013-03-11 | 2013-06-05 | 西北工业大学 | 一种基于fpga的flash存储器远程在线升级方法 |
CN103617054A (zh) * | 2013-11-15 | 2014-03-05 | 中国航空无线电电子研究所 | 一种远程加载fpga配置文件的装置及加载方法 |
CN104503782A (zh) * | 2014-12-11 | 2015-04-08 | 中国南方电网有限责任公司电网技术研究中心 | 一种就地化继电保护装置远程软件升级的方法 |
CN104901830A (zh) * | 2015-05-12 | 2015-09-09 | 武汉烽火网络有限责任公司 | 一种交换机设备中fpga在线升级方法、装置和系统 |
CN105159731A (zh) * | 2015-10-12 | 2015-12-16 | 中国电子科技集团公司第五十四研究所 | 一种fpga配置文件远程升级的装置 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107505933A (zh) * | 2017-09-05 | 2017-12-22 | 上海地铁电子科技有限公司 | 辅助逆变器控制器测试系统 |
CN108572835A (zh) * | 2018-04-26 | 2018-09-25 | 南京国电南自维美德自动化有限公司 | 一种fpga配置文件在线升级系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104199706B (zh) | 一种eMMC的固件升级方法及其设备 | |
US10474452B2 (en) | Firmware upgrade through GPIO port via UART protocol | |
US10412207B2 (en) | Mobile terminal, power adapter, and upgrade method thereof | |
CN106843983A (zh) | 远程升级现场可编程门阵列的系统及方法 | |
US10298453B2 (en) | Adaptive method and device based on FPGA RRU interface protocol | |
US20130326278A1 (en) | Server and method of manipulation in relation to server serial ports | |
CN108563579B (zh) | 白盒测试方法、装置、系统及存储介质 | |
CN103198042A (zh) | Pci航空串行总线板卡及实现动态加载数据处理方法 | |
CN102662701A (zh) | Cpld在线升级方法、装置及业务单板 | |
CN107454129A (zh) | 固件升级方法、装置和系统 | |
CN109783340B (zh) | SoC的测试代码烧写方法、IP测试方法及装置 | |
CN104035803A (zh) | 一种更新cpld/fpga固件的方法、装置及烧录器 | |
CN105718339A (zh) | 一种fpga/cpld 远程调试系统及方法 | |
CN104079970A (zh) | 一种移动设备与wifi智能电视数据交互及控制的系统和方法 | |
WO2016197883A1 (zh) | 一种在线更新单片机程序的方法及系统 | |
CN104469503A (zh) | 一种电子设备及其外部设备的初始化方法、装置 | |
CN102866900B (zh) | 更新fpga控制单元的配置程序的方法及系统 | |
CN106919409A (zh) | 一种fpga单元升级设备、系统和方法 | |
CN103873566A (zh) | 访问移动设备的方法和装置 | |
CN111181781A (zh) | 一种Vdbench的测试配置方法、系统、终端及存储介质 | |
CN105930284A (zh) | 一种fpga加载的方法和设备 | |
CN104461633A (zh) | 一种单芯片离线编程器及离线编程方法 | |
CN103414772A (zh) | 一种应用于移动设备的云更新资源的方法及装置 | |
CN104468671B (zh) | 一种配置信息处理方法、装置及相关设备 | |
CN103078902A (zh) | 一种嵌入式监控设备传输数据的方法及装置 |
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: 20170704 |