CN104050006A - 一种fpga的更新系统及其更新方法 - Google Patents
一种fpga的更新系统及其更新方法 Download PDFInfo
- Publication number
- CN104050006A CN104050006A CN201410313013.4A CN201410313013A CN104050006A CN 104050006 A CN104050006 A CN 104050006A CN 201410313013 A CN201410313013 A CN 201410313013A CN 104050006 A CN104050006 A CN 104050006A
- Authority
- CN
- China
- Prior art keywords
- fpga
- renewal
- bmc
- flash storer
- configuration file
- 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
Landscapes
- Stored Programmes (AREA)
Abstract
本发明提供了一种FPGA的更新系统及其更新方法,包括:FPGA、Flash存储器和基板管理控制器BMC,BMC与Flash存储器相连,Flash存储器与FPGA相连接,用于存储FPGA配置文件Configuration data,BMC用于更新Flash存储器中存储的FPGA配置文件;FPGA用于从Flash存储器载入更新后的配置文件进行配置。本发明所提供的技术方案,BMC通过配置FPGA的寄存器,灵活改变FPGA控制器的功能;并且直接更新Flash存储器中存储的FPGA配置文件,BMC可以不经过FPGA直接烧录SPI Flash,这样就可以方便快捷的修改FPGA中的逻辑。
Description
技术领域
本发明涉及数字电路技术领域,尤其涉及一种FPGA的更新系统及其更新方法。
背景技术
目前,现有的服务器架构大多是基于专用集成电路(ASIC,ApplicationSpecific Integrated Circuit),由于ASIC一经流片,其结构和功能就已经固化,也就是说,一旦定型,服务器架构就不能改变。如果想进行变更或者升级,则只能更改设计后重新流片,成本代价比较高,服务器架构的灵活性受到很大的制约。
现有的基于可编程门阵列(FPGA,Field-Programmable Gate Array)等可编程逻辑器件作为控制器的服务器,相比基于ASIC的服务器较为灵活,不仅可以通过配置寄存器改变电路的功能,还可以重构电路逻辑。
现有技术的不足在于:
基于FPGA的服务器在更新或升级系统时,常采用联合测试工作组(JTAG,Joint Test Action Group)方式下载到FPGA以后,再固化到FPGA的非易失性存储器中,这样的做法也不够灵活,且速度较慢,当遇到系统规模非常大时,重复性工作量相应的变大,并且繁琐。
发明内容
本发明实施例提出了一种FPGA的更新系统及其更新方法,使得对服务器的系统架构进行修改和升级更加方便、快捷。
本发明实施例提供了一种FPGA的更新系统,包括FPGA、Flash存储器和BMC,BMC与Flash存储器相连,Flash存储器与FPGA相连接,其中:
Flash存储器用于存储FPGA配置文件;
BMC用于更新Flash存储器中存储的FPGA配置文件;
FPGA用于从Flash存储器载入更新后的配置文件进行配置。
本发明实施例还提供了一种上述更新系统的更新方法,包括如下步骤:
BMC更新Flash存储器中存储的FPGA配置文件;
FPGA从Flash存储器载入更新后的配置文件进行配置。
本发明实施例所提供的FPGA更新方案,BMC与Flash存储器相连,直接更新Flash存储器中存储的FPGA配置文件,BMC可以不经过FPGA直接对FPGA配置文件进行更新;FPGA从Flash存储器载入更新后的配置文件进行配置,这样就可以方便快捷的实现FPGA的更新。
附图说明
下面将参照附图描述本发明的具体实施例,其中:
图1示出了本发明实施例中FPGA的更新系统结构示意图;
图2示出了本发明实施例中FPGA的更新系统的更新方法实施流程示意图。
具体实施方式
为了使本发明的技术方案及优点更加清楚明白,以下结合附图对本发明的示例性实施例进行进一步详细的说明,显然,所描述的实施例仅是本发明的一部分实施例,而不是所有实施例的穷举。并且在不冲突的情况下,本说明中的实施例及实施例中的特征可以互相结合。
本发明实施例提出了一种FPGA的更新系统及其更新方法,下面进行说明。
图1示出了本发明实施例FPGA的更新系统结构示意图,如图所示,系统可以包括FPGA、Flash存储器和基板管理控制器(BMC,Baseboard ManagementController),BMC与Flash存储器相连,Flash存储器与FPGA相连接,其中:
Flash存储器用于存储FPGA配置文件(Configuration data);
BMC用于更新Flash存储器中存储的FPGA配置文件;
FPGA用于从Flash存储器载入更新后的配置文件,进行配置。
本发明实施例中还进一步提供了一种该系统的使用方法,图2示出了本发明实施例上述更新系统的更新方法实施流程示意图,如图所示,可以包括如下步骤:
步骤201、BMC更新Flash存储器中存储的FPGA配置文件;
步骤202、FPGA从Flash存储器中载入更新后的配置文件进行配置。
具体实施中,BMC上的一个Master SPI接口直接与FPGA的boot SPI Flash相连,BMC通过BMC的串行外设接口(SPI,Serial Peripheral Interface)与Flash存储器相连,Flash存储器通过SPI接口与FPGA相连接。BMC可以不经过FPGA直接通过其SPI接口烧录Flash,全部修改或者按功能模块修改FPGA中的逻辑。
实施中,BMC与FPGA通过两线式串行I2C(Inter-Integrated Circuit)总线相连,进一步用于发送寄存器配置指令至FPGA的片上管理系统,读写或配置FPGA的寄存器。
FPGA控制器内存在一个统一的寄存器地址空间,FPGA的不同功能模块共享该地址空间,每个功能模块都分配有一段地址范围,互不干扰。BMC可以通过与FPGA直接相连的I2C总线与FPGA上的片上管理系统进行交互,读取和配置FPGA中各功能模块的寄存器。
实施中,BMC可以进一步用于在完成配置文件的更新后,触发FPGA从Flash存储器载入更新后的配置文件进行配置。
FPGA可以在收到BMC的触发以后,才开始从Flash存储器载入更新后的配置文件进行配置。
实施中,FPGA可以在系统下电重启后从Flash存储器载入更新后的配置文件进行配置。
本发明实施例提供了上述两种FPGA载入更新后的配置文件的方式,一种是当BMC将Flash存储器中的配置文件更新完成后主动控制FPGA载入(load)配置文件进行配置,另一种则是BMC完成更新后不需要做任何动作,当系统下电重启后FPGA自动从Flash存储器中载入更新后的配置文件进行配置。
本发明实施例提供的技术方案,BMC可以通过I2C总线与FPGA的片上管理系统交互,读写或配置FPGA中各个功能模块的寄存器,即可改变FPGA控制器的功能,非常灵活;且BMC可以直接通过其SPI接口烧录FPGA的bootFlash,即可实现FPGA的更新,这样就可以在远程方便快捷的对服务器的系统架构进行修改和升级。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
Claims (7)
1.一种FPGA的更新系统,其特征在于,包括现场可编程门阵列FPGA、Flash存储器和基板管理控制器BMC,所述BMC与所述Flash存储器相连,所述Flash存储器与所述FPGA相连接,其中:
Flash存储器,用于存储FPGA的配置文件;
BMC,用于更新Flash存储器中存储的FPGA配置文件;
FPGA,用于从所述Flash存储器载入更新后的配置文件进行配置。
2.如权利要求1所述的更新系统,其特征在于,所述BMC与所述FPGA通过I2C总线相连,通过所述BMC的串行外设接口SPI与所述Flash存储器相连,所述Flash存储器用于通过SPI接口与所述FPGA相连接。
3.如权利要求1或2所述的更新系统,其特征在于,所述BMC进一步用于在完成配置文件的更新后,触发所述FPGA从所述Flash存储器载入更新后的配置文件进行配置。
4.如权利要求1或2所述的更新系统,其特征在于,所述FPGA用于在系统下电重启后从所述Flash存储器载入更新后的配置文件进行配置。
5.一种如权利要求1至4任一所述更新系统的更新方法,其特征在于,包括如下步骤:
BMC更新所述Flash存储器中存储的FPGA配置文件;
FPGA从所述Flash存储器载入更新后的配置文件进行配置。
6.如权利要求5所述的更新方法,其特征在于,进一步包括:所述BMC在完成配置文件的更新后,触发所述FPGA从所述Flash存储器载入更新后的配置文件进行配置。
7.如权利要求5所述的更新方法,其特征在于,所述FPGA在系统下电重启后从所述Flash存储器载入更新后的配置文件进行配置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410313013.4A CN104050006A (zh) | 2014-07-02 | 2014-07-02 | 一种fpga的更新系统及其更新方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410313013.4A CN104050006A (zh) | 2014-07-02 | 2014-07-02 | 一种fpga的更新系统及其更新方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN104050006A true CN104050006A (zh) | 2014-09-17 |
Family
ID=51502912
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410313013.4A Pending CN104050006A (zh) | 2014-07-02 | 2014-07-02 | 一种fpga的更新系统及其更新方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104050006A (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106294045A (zh) * | 2016-05-11 | 2017-01-04 | 深圳市国鑫恒宇科技有限公司 | 一种基于bmc自动化检测烧录主板供电模组芯片数据的方法 |
WO2018064885A1 (zh) * | 2016-10-08 | 2018-04-12 | 中国科学院微电子研究所 | 一种对可编程逻辑器件进行配置或更新的装置和方法 |
CN109245946A (zh) * | 2018-10-29 | 2019-01-18 | 深圳市瑞驰信息技术有限公司 | 一种远程批量升级服务器节点的方法 |
CN111258951A (zh) * | 2020-01-08 | 2020-06-09 | 中国科学院计算技术研究所 | 一种实现fpga服务器的方法和系统 |
TWI739853B (zh) * | 2017-06-16 | 2021-09-21 | 英業達股份有限公司 | 運算裝置與運作方法 |
CN113835770A (zh) * | 2021-11-30 | 2021-12-24 | 四川华鲲振宇智能科技有限责任公司 | 一种服务器管理模块在线更换方法及系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1677346A (zh) * | 2004-04-01 | 2005-10-05 | 迈普(四川)通信技术有限公司 | 可编程器件程序更新方法及可更新程序的板卡 |
CN102130951A (zh) * | 2011-03-14 | 2011-07-20 | 浪潮(北京)电子信息产业有限公司 | 一种服务器及其可编程逻辑器件的远程升级方法 |
CN102308281A (zh) * | 2011-07-21 | 2012-01-04 | 华为技术有限公司 | 对芯片进行动态升级的方法、系统及基板管理控制器 |
CN103605542A (zh) * | 2013-11-18 | 2014-02-26 | 曙光信息产业(北京)有限公司 | Fpga配置文件的在线升级装置 |
-
2014
- 2014-07-02 CN CN201410313013.4A patent/CN104050006A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1677346A (zh) * | 2004-04-01 | 2005-10-05 | 迈普(四川)通信技术有限公司 | 可编程器件程序更新方法及可更新程序的板卡 |
CN102130951A (zh) * | 2011-03-14 | 2011-07-20 | 浪潮(北京)电子信息产业有限公司 | 一种服务器及其可编程逻辑器件的远程升级方法 |
CN102308281A (zh) * | 2011-07-21 | 2012-01-04 | 华为技术有限公司 | 对芯片进行动态升级的方法、系统及基板管理控制器 |
CN103605542A (zh) * | 2013-11-18 | 2014-02-26 | 曙光信息产业(北京)有限公司 | Fpga配置文件的在线升级装置 |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106294045A (zh) * | 2016-05-11 | 2017-01-04 | 深圳市国鑫恒宇科技有限公司 | 一种基于bmc自动化检测烧录主板供电模组芯片数据的方法 |
CN106294045B (zh) * | 2016-05-11 | 2019-07-19 | 深圳市同泰怡信息技术有限公司 | 一种基于bmc自动化检测烧录主板供电模组芯片数据的方法 |
WO2018064885A1 (zh) * | 2016-10-08 | 2018-04-12 | 中国科学院微电子研究所 | 一种对可编程逻辑器件进行配置或更新的装置和方法 |
US11294660B2 (en) | 2016-10-08 | 2022-04-05 | Institute of Microelectronics, Chinese Academy of Sciences | Apparatus and method for configuring or updating programmable logic device |
TWI739853B (zh) * | 2017-06-16 | 2021-09-21 | 英業達股份有限公司 | 運算裝置與運作方法 |
CN109245946A (zh) * | 2018-10-29 | 2019-01-18 | 深圳市瑞驰信息技术有限公司 | 一种远程批量升级服务器节点的方法 |
CN111258951A (zh) * | 2020-01-08 | 2020-06-09 | 中国科学院计算技术研究所 | 一种实现fpga服务器的方法和系统 |
CN111258951B (zh) * | 2020-01-08 | 2021-10-29 | 中国科学院计算技术研究所 | 一种实现fpga服务器的方法和系统 |
CN113835770A (zh) * | 2021-11-30 | 2021-12-24 | 四川华鲲振宇智能科技有限责任公司 | 一种服务器管理模块在线更换方法及系统 |
CN113835770B (zh) * | 2021-11-30 | 2022-02-18 | 四川华鲲振宇智能科技有限责任公司 | 一种服务器管理模块在线更换方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9652410B1 (en) | Automated modification of configuration settings of an integrated circuit | |
CN104050006A (zh) | 一种fpga的更新系统及其更新方法 | |
CN107493685B (zh) | 经由端口控制器自身的外部端口对端口控制器进行再编程 | |
CN102236621B (zh) | 计算机接口信息配置系统及方法 | |
CN102609286B (zh) | 一种基于处理器控制的fpga配置程序远程更新系统及其方法 | |
US8484631B2 (en) | Supporting hardware configuration changes in a UEFI firmware component | |
CN102880495A (zh) | 移动终端及其软件升级方法 | |
CN103513993A (zh) | 固件更新系统及方法 | |
CN105138382A (zh) | 一种Android系统升级的方法及终端 | |
CN104123153A (zh) | 用于使用usb升级固件的装置与方法 | |
KR101673299B1 (ko) | 운영 시스템 복구 방법 및 장치, 그리고 단말기기 | |
CN101169729A (zh) | 嵌入式系统及其更新应用程序的方法 | |
CN105739961A (zh) | 一种嵌入式系统的启动方法和装置 | |
CN107690630B (zh) | 计算设备中的桥配置 | |
CN105718281A (zh) | 一种触摸屏固件升级方法及装置 | |
CN104035803A (zh) | 一种更新cpld/fpga固件的方法、装置及烧录器 | |
US9672047B1 (en) | Systems and methods for accessing a bootable partition on a serial peripheral interface device | |
JP2023020861A (ja) | ファームウェアの更新 | |
CN105103142A (zh) | 在计算节点中的代理之间共享固件 | |
CN102520961A (zh) | 片外在线可编程的soc系统及其控制方法 | |
CN116737244A (zh) | 芯片多硬件域启动方法及装置 | |
CN102053848A (zh) | Linux操作系统的自动安装方法 | |
CN108121560A (zh) | 差分包升级方法、装置、终端及计算机可读存储介质 | |
CN106648758A (zh) | 一种多核处理器boot启动系统及方法 | |
KR20130068630A (ko) | 임베디드 디바이스의 초기화 방법 및 장치 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into 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: 20140917 |