CN103605542A - Fpga配置文件的在线升级装置 - Google Patents
Fpga配置文件的在线升级装置 Download PDFInfo
- Publication number
- CN103605542A CN103605542A CN201310581145.0A CN201310581145A CN103605542A CN 103605542 A CN103605542 A CN 103605542A CN 201310581145 A CN201310581145 A CN 201310581145A CN 103605542 A CN103605542 A CN 103605542A
- Authority
- CN
- China
- Prior art keywords
- configuration file
- fpga
- storage unit
- module
- online upgrading
- 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
Images
Landscapes
- Stored Programmes (AREA)
Abstract
本发明公开了一种FPGA配置文件的在线升级装置,该装置包括:存储处理模块,具有存储单元和控制单元;总线切换模块,用于在控制单元的控制下,分别连通或断开第一通路和第二通路;FPGA,用于将最新的配置文件写入到存储单元中,并且还用于在控制单元的控制下,从存储单元中重新载入更新后的配置文件,进行配置;时钟提供模块,用于在进行在线升级时,为存储处理模块和FPGA提供时钟频率,时钟频率用于为存储处理模块和FPGA的工作提供工作节拍。本发明实现了利用较少的元器件完成对PFGA配置文件的在线更新,避免了FPGA配置文件在线升级时需要额外物理资源的情况发生,降低了FPGA配置文件在线升级时的投入成本。
Description
技术领域
本发明涉及网络安全领域,具体来说,涉及一种FPGA(Field-Programmable Gate Array,现场可编程门阵列)配置文件的在线升级装置。
背景技术
目前,现有的FPGA设备在升级成品逻辑块时,一般是通过JTAG(JointTest Action Group,联合测试行为组织)下载线进行烧写板载升级的,而在实际使用过程中,一般有许多环境是不允许使用JTAG下载线,且不能够使设备进行***断电的,此时就需要设计一种脱离JTAG下载线的在线升级方法,通过软件或远程控制实现FPGA板卡上的芯片的逻辑更新。
在现有技术中,业界已经提出了解决FPGA在线升级的方法,例如,在申请号为201110060484.5,名称为一种服务器及其可编程逻辑器件的远程升级方法的专利中,提出了利用服务器的BMC通过以太网封装JTAG协议的数据格式,并通过CPLD器件的GPIO接口实现烧录FPGA的方法,然而,此方法需要使用CPLD、PLD、BMC等器件配合实现对FPGA的升级,且总线为JTAG协议,实现方法所需物理资源较多,设计较复杂。
针对现有相关技术中,在进行FPGA在线升级时,所需物理资源较多,设计较复杂的问题,目前尚未提出有效的解决方案。
发明内容
针对现有相关技术中,在进行FPGA在线升级时,所需物理资源较多,设计较复杂的问题,本发明提出一种FPGA配置文件的在线升级装置,能够可以用较少的元器件实现对FPGA的配置文件进行在线升级,降低了FPGA在线升级时所需的物理资源。
本发明的技术方案是这样实现的:
根据本发明的一个方面,提供了一种FPGA配置文件的在线升级装置。
该FPGA配置文件的在线升级装置包括:
存储处理模块,具有存储单元和控制单元;其中,存储单元用于接收并存储FPGA配置文件,控制单元用于在配置文件升级之前,控制总线切换模块将FPGA与存储处理模块之间的第一通路连通、将FPGA与存储处理模块之间的第二通路断开,并且根据存储单元接收到的最新配置文件更新存储单元中的原有配置文件,以及在配置文件更新之后,控制总线切换模块将第一通路断开、将第二通路连通,并且,触发FPGA从存储单元中重新载入更新后的配置文件进行配置。
总线切换模块,用于在控制单元的控制下,分别连通或断开第一通路和第二通路;
FPGA,用于将最新的配置文件写入到存储单元中,并且还用于在控制单元的控制下,从存储单元中重新载入更新后的配置文件先,进行配置;
时钟提供模块,用于在进行在线升级时,为存储处理模块和FPGA提供时钟频率,其中,时钟频率用于为存储处理模块和FPGA的工作提供工作节拍。
其中,FPGA还用于在将最新的配置文件写入到存储单元时,对写入的配置文件进行实时备份。
此外,FPGA还用于在将最新的配置文件写入到所述存储单元后,读取存储单元中写入的配置文件,并将读取的配置文件与备份的配置文件进行比较,在比较结果为一致的情况下,向控制单元发送更新命令,促使控制单元根据写入的最新配置文件更新存储单元中的原有配置文件。
可选地,存储处理模块包括以下至少之一:NorFlash芯片、NandFlash芯片。
可选地,时钟提供模块包括以下至少之一:定频晶振、可编程晶振。
可选地,定频晶振的频率为50MHz。
本发明通过存储处理模块自身所具备的存储单元来存储FPGA的配置文件,并通过存储处理模块自身所具备的控制单元来控制FPGA进行配置文件的升级,从而实现了利用较少的元器件完成对PFGA配置文件的在线更新,避免了FPGA配置文件在线升级时需要额外物理资源的情况发生,降低了FPGA配置文件在线升级时的投入成本。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是根据本发明实施例的FPGA配置文件的在线升级装置的原理框图;
图2是根据本发明实施例的FPGA配置文件的在线升级装置的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员所获得的所有其他实施例,都属于本发明保护的范围。
根据本发明的实施例,提供了一种FPGA配置文件的在线升级装置。
如图1所示,根据本发明实例的FPGA配置文件的在线升级装置包括:
存储处理模块11,具有存储单元111和控制单元112;其中,存储单元111用于接收并存储FPGA配置文件,控制单元112用于在配置文件升级之前,控制总线切换模块12将FPGA13与存储处理模块11之间的第一通路15连通、将FPGA13与存储处理模块11之间的第二通路16断开,并且根据存储单元111接收到的最新配置文件更新存储单元中的原有配置文件,以及在配置文件更新之后,控制总线切换模块12将第一通路15断开、将第二通路16连通,并且,触发FPGA13从存储单元111中重新载入更新后的配置文件进行配置。
总线切换模块12,用于在控制单元112的控制下,分别连通或断开第一通路15和第二通路16;
FPGA13,用于将最新的配置文件写入到存储单元111中,并且还用于在控制单元112的控制下,从存储单元111中重新载入更新后的配置文件先,进行配置;
时钟提供模块14,用于在进行在线升级时,为存储处理模块11和FPGA13提供时钟频率,其中,时钟频率用于为存储处理模块11和FPGA13的工作提供工作节拍。
其中,FPGA13还用于在将最新的配置文件写入到存储单元111时,对写入的配置文件进行实时备份。
此外,FPGA13还用于在将最新的配置文件写入到所述存储单元111后,读取存储单元111中写入的配置文件,并将读取的配置文件与备份的配置文件进行比较,在比较结果为一致的情况下,向控制单元112发送更新命令,促使控制单元112根据写入的最新配置文件更新存储单元中的原有配置文件。
另外,在实际实施时,为了提供FPGA配置文件在线升级时的写逻辑更新或读出逻辑加载FPGA的速度,存储处理模块可以采用NorFlash芯片,而如果控制得当,且对数据完整性要求不高时,也可以采用成本更低的NandFlash芯片,当然,除了上述两种芯片外,也可以选用其他的类似芯片,只要选用的芯片同时具备存储和控制功能即可。
同样的,为了提供FPGA配置文件在线升级时的写逻辑更新或读出逻辑加载FPGA的速度,时钟提供模块可以采用定频晶振,例如,频率为50MHz的定频晶振,当然,也可以根据实际的需求,选用可编程晶振代替。
以下通过具体实例对本发明的上述技术方案进行详细说明。
图2是FPGA配置文件的在线升级装置的结构示意,从图2中可以看出,晶振为NorFlash芯片和FPGA在程序加载时(逻辑程序从FLASH下载到FPGA)提供参考时钟,此晶振频率可以达到50MHz,比传统的JTAG下载先的频率(2~6MHz)高很多,NorFLASH芯片与FPGA连接的专用控制信号和数据信号于程序正常加载时使用,这些信号同时连接到了FPGA的普通IO引脚上,在程序加载时,这些普通IO引脚不会影响正常的记载过程,当程序加载完成并在FPGA起作用后,这些普通IO就获得了对控制线和数据线的访问权限,此时如果不发起加载命令,对NorFLASH芯片的操作不会影响FPGA的专用引脚的功能(即FPGA程序加载专用引脚经在获得启动加载命令后才启用);FPGA内部逻辑通过外接的这些普通IO引脚控制NorFLASH芯片的各个操作命令,包括擦除、读出、写入等,而这些命令均采用异步控制的方式,控制命令的产生都是ns级的,所以比传统的通过JTAG下载线控制PROM的方式快得多;FPGA内部的逻辑程序控制NorFLASH芯片的接口总线,其待升级的逻辑文件由主机通过PCIE总线下传;FPGA内部的控制逻辑在将待升级的逻辑文件写入NorFLASH芯片,并验证正确后,可以发起加载FPGA的命令,并释放FPGA与NorFLASH芯片之间的控制和数据总线;加载FPGA的速度非常的快,一般可以达到ms级,加载完成后,主机端可以进行复位操作,完成全部的升级工作。
由上可见,本发明是使用NorFlash芯片而不是EPROM芯片作为FPGA逻辑的存储和加载,存储时使用异步并行接口,加载时使用同步并行接口,而且接口协议比传统的JTAG协议简单很多,从而使得无论是在写入待更新的逻辑时,还是加载新的逻辑到FPGA时,速度都非常的快,
综上所述,借助于本发明的上述技术方案,通过存储处理模块自身所具备的存储单元来存储FPGA的配置文件,并通过存储处理模块自身所具备的控制单元来控制FPGA进行配置文件的升级,从而实现了利用较少的元器件完成对PFGA配置文件的在线更新,避免了FPGA配置文件在线升级时需要额外物理资源的情况发生,降低了FPGA配置文件在线升级时的投入成本。
此外,本发明还通过存储处理模块所具备的控制单元控制总线切换模块切换不同的通路来实现FPGA配置文件的更新配置,从而保证了FPGA配置文件在进行更新和配置时,均能够通过对应的专用通路来实现,进而有效的提高了FPGA配置文件更新和配置时的速度,保证了FPGA配置文件在线升级时的工作效率。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (6)
1.一种现场可编程门阵列FPGA配置文件的在线升级装置,其特征在于,包括:
存储处理模块,具有存储单元和控制单元;其中,
所述存储单元用于接收并存储FPGA配置文件;
所述控制单元用于在所述配置文件升级之前,控制总线切换模块将所述FPGA与所述存储处理模块之间的第一通路连通、将所述FPGA与所述存储处理模块之间的第二通路断开,并且根据所述存储单元接收到的最新配置文件更新所述存储单元中的原有配置文件,以及在所述配置文件更新之后,控制所述总线切换模块将所述第一通路断开、将所述第二通路连通,并且,触发所述FPGA从所述存储单元中重新载入更新后的所述配置文件,进行配置;
总线切换模块,用于在所述控制单元的控制下,分别连通或断开所述第一通路和所述第二通路;
FPGA,用于将最新的配置文件写入到所述存储单元中,并且还用于在所述控制单元的控制下,从所述存储单元中重新载入更新后的所述配置文件,进行配置;
时钟提供模块,用于在进行在线升级时,为所述存储处理模块和所述FPGA提供时钟频率,其中,所述时钟频率用于为所述存储处理模块和所述FPGA的工作提供工作节拍。
2.根据权利要求1所述的在线升级装置,其特征在于,所述FPGA还用于在将最新的配置文件写入到所述存储单元时,对写入的所述配置文件进行实时备份。
3.根据权利要求2所述的在线升级装置,其特征在于,所述FPGA还用于在将最新的配置文件写入到所述存储单元后,读取所述存储单元中写入的所述配置文件,并将读取的所述配置文件与备份的所述配置文件进行比较,在比较结果为一致的情况下,向所述控制单元发送更新命令,促使所述控制单元根据写入的最新配置文件更新所述存储单元中的原有配置文件。
4.根据权利要求1至3中任意一项所述的在线升级装置,其特征在于,所存储处理模块包括以下至少之一:
NorFlash芯片、NandFlash芯片。
5.根据权利要求1至3中任意一项所述的在线升级装置,其特征在于,所述时钟提供模块包括以下至少之一:
定频晶振、可编程晶振。
6.根据权利要求5所述的在线升级装置,其特征在于,所述定频晶振的频率为50MHz。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310581145.0A CN103605542A (zh) | 2013-11-18 | 2013-11-18 | Fpga配置文件的在线升级装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310581145.0A CN103605542A (zh) | 2013-11-18 | 2013-11-18 | Fpga配置文件的在线升级装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103605542A true CN103605542A (zh) | 2014-02-26 |
Family
ID=50123772
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310581145.0A Pending CN103605542A (zh) | 2013-11-18 | 2013-11-18 | Fpga配置文件的在线升级装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103605542A (zh) |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103970565A (zh) * | 2014-04-24 | 2014-08-06 | 浪潮电子信息产业股份有限公司 | 一种服务器***中fpga多途径下载配置实现方法 |
CN104050006A (zh) * | 2014-07-02 | 2014-09-17 | 曙光信息产业(北京)有限公司 | 一种fpga的更新***及其更新方法 |
CN104636168A (zh) * | 2015-02-09 | 2015-05-20 | 南京国电南自美卓控制***有限公司 | 基于mlvds总线的soc fpga在线升级方法 |
CN106201590A (zh) * | 2016-06-29 | 2016-12-07 | 瑞斯康达科技发展股份有限公司 | 一种fpga配置文件加载方法和*** |
CN106528234A (zh) * | 2016-11-10 | 2017-03-22 | 深圳市紫光同创电子有限公司 | 一种远程升级方法和装置 |
CN106528244A (zh) * | 2016-11-25 | 2017-03-22 | 迈普通信技术股份有限公司 | Fpga配置文件自动加载***及方法 |
CN107357619A (zh) * | 2017-07-07 | 2017-11-17 | 广州视源电子科技股份有限公司 | 一种板卡配置文件的生成方法、装置、设备以及存储介质 |
CN108572835A (zh) * | 2018-04-26 | 2018-09-25 | 南京国电南自维美德自动化有限公司 | 一种fpga配置文件在线升级*** |
WO2019084916A1 (zh) * | 2017-11-03 | 2019-05-09 | 华为技术有限公司 | 恢复fpga芯片中的逻辑的方法、***和fpga设备 |
CN110909394A (zh) * | 2019-11-24 | 2020-03-24 | 苏州浪潮智能科技有限公司 | 一种服务器的配置文件监测方法 |
CN111104362A (zh) * | 2019-12-24 | 2020-05-05 | 海光信息技术有限公司 | 配置现场可编程门阵列的装置及方法、现场可编程门阵列 |
CN112328534A (zh) * | 2020-10-21 | 2021-02-05 | 卓曜(北京)科技有限公司 | 一种fpga芯片在线更新配置电路及方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080252335A1 (en) * | 2005-04-29 | 2008-10-16 | O2Micro, Inc. | Robust and economic solution for fpga bitfile upgrade |
CN102360302A (zh) * | 2011-10-13 | 2012-02-22 | 福建星网锐捷网络有限公司 | 一种fpga配置文件在线升级方法及装置 |
-
2013
- 2013-11-18 CN CN201310581145.0A patent/CN103605542A/zh active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080252335A1 (en) * | 2005-04-29 | 2008-10-16 | O2Micro, Inc. | Robust and economic solution for fpga bitfile upgrade |
CN102360302A (zh) * | 2011-10-13 | 2012-02-22 | 福建星网锐捷网络有限公司 | 一种fpga配置文件在线升级方法及装置 |
Non-Patent Citations (1)
Title |
---|
张刚 等: "《SOC***设计》", 31 January 2013 * |
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103970565A (zh) * | 2014-04-24 | 2014-08-06 | 浪潮电子信息产业股份有限公司 | 一种服务器***中fpga多途径下载配置实现方法 |
CN104050006A (zh) * | 2014-07-02 | 2014-09-17 | 曙光信息产业(北京)有限公司 | 一种fpga的更新***及其更新方法 |
CN104636168A (zh) * | 2015-02-09 | 2015-05-20 | 南京国电南自美卓控制***有限公司 | 基于mlvds总线的soc fpga在线升级方法 |
CN106201590A (zh) * | 2016-06-29 | 2016-12-07 | 瑞斯康达科技发展股份有限公司 | 一种fpga配置文件加载方法和*** |
CN106201590B (zh) * | 2016-06-29 | 2019-06-11 | 瑞斯康达科技发展股份有限公司 | 一种fpga配置文件加载方法和*** |
CN106528234A (zh) * | 2016-11-10 | 2017-03-22 | 深圳市紫光同创电子有限公司 | 一种远程升级方法和装置 |
CN106528234B (zh) * | 2016-11-10 | 2019-09-13 | 深圳市紫光同创电子有限公司 | 一种远程升级方法和装置 |
CN106528244B (zh) * | 2016-11-25 | 2019-05-03 | 迈普通信技术股份有限公司 | Fpga配置文件自动加载***及方法 |
CN106528244A (zh) * | 2016-11-25 | 2017-03-22 | 迈普通信技术股份有限公司 | Fpga配置文件自动加载***及方法 |
CN107357619A (zh) * | 2017-07-07 | 2017-11-17 | 广州视源电子科技股份有限公司 | 一种板卡配置文件的生成方法、装置、设备以及存储介质 |
CN107357619B (zh) * | 2017-07-07 | 2020-06-26 | 广州视源电子科技股份有限公司 | 一种板卡配置文件的生成方法、装置、设备以及存储介质 |
WO2019084916A1 (zh) * | 2017-11-03 | 2019-05-09 | 华为技术有限公司 | 恢复fpga芯片中的逻辑的方法、***和fpga设备 |
CN108572835A (zh) * | 2018-04-26 | 2018-09-25 | 南京国电南自维美德自动化有限公司 | 一种fpga配置文件在线升级*** |
CN110909394A (zh) * | 2019-11-24 | 2020-03-24 | 苏州浪潮智能科技有限公司 | 一种服务器的配置文件监测方法 |
CN111104362A (zh) * | 2019-12-24 | 2020-05-05 | 海光信息技术有限公司 | 配置现场可编程门阵列的装置及方法、现场可编程门阵列 |
CN112328534A (zh) * | 2020-10-21 | 2021-02-05 | 卓曜(北京)科技有限公司 | 一种fpga芯片在线更新配置电路及方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103605542A (zh) | Fpga配置文件的在线升级装置 | |
CN102609286B (zh) | 一种基于处理器控制的fpga配置程序远程更新***及其方法 | |
CN103559053B (zh) | 一种板卡***及通信接口卡fpga在线升级方法 | |
US8386764B2 (en) | BIOS architecture | |
CN102360302B (zh) | 一种fpga配置文件在线升级方法及装置 | |
CN102999350B (zh) | 一种数字信号处理平台中fpga程序升级在线下载方法 | |
CN105700970A (zh) | 服务器*** | |
CN102339242A (zh) | 计算机***数据修复装置 | |
CN102388366B (zh) | 实现不同处理器兼容的方法及装置 | |
CN106201590B (zh) | 一种fpga配置文件加载方法和*** | |
CN105700969A (zh) | 服务器*** | |
CN104035803A (zh) | 一种更新cpld/fpga固件的方法、装置及烧录器 | |
CN109669704B (zh) | 远程传输加载多节点fpga程序加载管理电路 | |
CN105095569A (zh) | 一种基于arm和flash的fpga重配置*** | |
CN102253845B (zh) | 服务器*** | |
CN103530164A (zh) | 一种fpga配置文件远程更新的方法及装置 | |
CN106406936A (zh) | 一种fpga程序多版本管理装置及方法 | |
CN103995939A (zh) | 一种基于arm与fpga的动态可重构嵌入式*** | |
CN102520961A (zh) | 片外在线可编程的soc***及其控制方法 | |
CN102081526B (zh) | 基本输入/输出***架构 | |
WO2016033941A1 (zh) | Boot在线升级装置及方法 | |
JP6175788B2 (ja) | マイクロプログラムを更新可能な電子機器 | |
CN111159090B (zh) | 一种信息处理方法、装置和电子设备 | |
CN111480142A (zh) | 在运行期间对软件密集型***的无缝和安全升级 | |
CN109525276B (zh) | 一种具备外部下载功能的多模数据链***及方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | 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 |
Application publication date: 20140226 |
|
RJ01 | Rejection of invention patent application after publication |