CN100428160C - 一种在线升级逻辑器件的方法和系统 - Google Patents
一种在线升级逻辑器件的方法和系统 Download PDFInfo
- Publication number
- CN100428160C CN100428160C CNB2006101621457A CN200610162145A CN100428160C CN 100428160 C CN100428160 C CN 100428160C CN B2006101621457 A CNB2006101621457 A CN B2006101621457A CN 200610162145 A CN200610162145 A CN 200610162145A CN 100428160 C CN100428160 C CN 100428160C
- Authority
- CN
- China
- Prior art keywords
- programmable gate
- gate array
- field programmable
- nonvolatile memory
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Logic Circuits (AREA)
- Stored Programmes (AREA)
Abstract
本发明属于通信应用技术领域,提供了一种在线升级逻辑器件的方法和系统,该方法具体为:CPU系统访问可擦写非易失存储器,并升级所述非易失存储器中的数据,锁定现场可编程门阵列的管脚,使在线升级逻辑器件的系统保持正常的功能,将所述已升级的非易失存储器中的数据配置到现场可编程门阵列中的随机存储器中,升级所述现场可编程门阵列。利用本发明,可以在保证现场可编程门阵列在线升级或远程升级的基础上,加快现场可编程门阵列的配置时间,从而缩短现场可编程门阵列升级时,业务中断的时间。
Description
技术领域
本发明涉及通信应用技术领域,尤其涉及在线升级逻辑器件的技术。
背景技术
在通信应用技术领域,FPGA(Field Programmable Gate Array,现场可编程门阵列)目前已经是一种常用的逻辑器件,具有密度高、速度快、编程灵活、可重新分配等诸多优点。使用时,首先要配置FPGA中的RAM(Random AccessMemory,随机存储器),才可以使FPGA获得特定的功能。在通信产品中,由于产品功能升级或者是弥补产品的缺陷,FPGA需要不断的升级,即重新配置FPGA。目前主要有两种升级方法:一种方法是使用PROM(ProgrammableRead-Only Memory,可编程只读存储器)加载方式;另一种方法是使用CPU进行加载。所述两种方法都是将存于EEPROM(Electrical Erasable Read-OnlyMemory,电可擦除只读存储器)或者闪速存储器FLASH MEMORY中的数据配置到FPGA的RAM中,但是FPGA配置的过程中,其中的RAM被刷新,FPGA的功能失效,只有当FPGA配置完成后,FPGA的功能才会实现。因此,FPGA配置的时间决定了产品升级时,业务中断的时间。
在现有技术中,一种技术方案是使用PROM方式进行加载,单板通电时,通过触发FPGA的PROGRAM管脚,FPGA主动从串行EEPROM读取数据,完成加载。采用该方案配置速度较快,可以达到20至40兆赫兹,但是由于PROM无法在线升级,所以每次升级都需要离线拔插单板和更新EEPROM 芯片,业务中断时间较长,并且此方案不利于远程维护。
现有技术的另一种技术方案是:使用嵌入式CPU进行加载。利用CPU的SPI(Serial Peripheral Interface,串行外围接口)接口或者IO接口,来实现对FPGA的配置,一般情况下FPGA的数据文件存放在FLASH中,升级时通过CPU系统的网口先升级FLASH的数据文件,再通过CPU的IO接口或者SPI接口配置FPGA。在系统已有CPU的情况下,采用所述方案可以节约成本,而且便于维护和远程升级。但是,使用本技术方案配置因为涉及软件操作,管脚状态不确定,时钟速度较低,配置时间较长,进而导致业务中断的时间也较长。
发明内容
本发明的实施例要解决的问题是提供一种在线升级逻辑器件的方法和系统,该方法能够在保证FPGA在线升级或远程升级的基础上,加快FPGA的配置时间,进而缩短FPGA升级时业务中断的时间。
为解决上述技术问题,本发明的目的是通过以下技术方案实现的:
本发明的实施例提供了一种在线升级可编程逻辑器件的方法,包括:
CPU系统访问可擦写非易失存储器,并升级所述非易失存储器中的数据;
锁定现场可编程门阵列的管脚,使所述现场可编程门阵列所在的系统保持正常的功能;
所述现场可编程门阵列访问已升级的非易失存储器,将所述已升级的非易失存储器中的数据配置到所述现场可编程门阵列中的随机存储器中,升级所述现场可编程门阵列。
本发明的实施例还提供了一种在线升级逻辑器件的系统,包括:
CPU系统,用于访问非易失存储器,升级所述非易失存储器中的数据;
非易失存储器,用于向现场可编程门阵列提供经所述CPU系统升级后的数据;
多路开关,用于通过切换自身的开关,触发所述现场可编程门阵列访问所述非易失存储器;
现场可编程门阵列,用于通过被锁定管脚,访问所述非易失存储器,获取所述非易失存储器中升级后的数据,升级自身的数据。
本发明通过升级所述非易失存储器中的数据,再锁定现场可编程门阵列的管脚,使现场可编程门阵列所在的系统保持正常的功能,缩短了现场可编程门阵列升级时业务中断的时间;并且将所述已升级的非易失存储器中的数据配置到现场可编程门阵列中的随机存储器中,升级所述现场可编程门阵列,再释放所述现场可编程门阵列的管脚,使所述管脚处于正常的工作状态,以实现在现场可编程门阵列在线升级或远程升级的基础上,加快现场可编程门阵列配置的时间。
附图说明
图1为本发明的方法流程图;
图2为本发明实施例一的系统框图;
图3为本发明实施例二的系统框图;
图4为本发明实施例三和实施例四的系统框图。
具体实施方式
本发明实施例提供了一种在线升级逻辑器件的方法和系统,为使本发明的目的、技术方案及优点更加清楚明白,以下参照附图并举实施例,对本发明进一步详细说明。
参见图1,为本发明提供的方法流程图,对本发明提供的一种在线升级逻辑器件的方法进行总体描述:
101:CPU系统访问非易失存储器,将CPU系统中的数据配置到非易失存储器中,升级所述非易失存储器中的数据;
102:锁定现场可编程门阵列的管脚,使所述现场可编程门阵列所在的系统保持正常功能;
103:将所述已升级的非易失存储器中的数据配置到所述现场可编程门阵列中的随机存储器中,升级所述现场可编程门阵列。
104:释放所述现场可编程门阵列的管脚,使所述管脚进入正常的工作状态。
其中,所述非易失存储器包括:电可擦除只读存储器或闪速存储器。
其中,释放现场可编程门阵列的管脚后,现场可编程门阵列内部逻辑单元控制自身的管脚。
其中,所述CPU系统包括:CPU、随机存储器和闪速存储器。
下面分别对本发明提供技术方案的四种实时方式进行详细说明:
实施例一:
(11)切换多路开关,使CPU系统访问非易失存储器,通过所述CPU系统的网口将数据配置到非易失存储器中,升级所述非易失存储器中的数据;
(12)通过使所述现场可编程门阵列的管脚保持固定的电平,锁定所述现场可编程门阵列的管脚;
(13)切换多路开关,现场可编程门阵列访问已升级的非易失存储器,将所述已升级的非易失存储器中的数据配置到所述现场可编程门阵列的随机存储器中;
(14)释放所述现场可编程门阵列的管脚,使现场可编程门阵列进入正常的工作状态。
其中,所述CPU系统包括:CPU、随机存储器和闪速存储器。
其中,所述非易失存储器包括:电可擦除只读存储器或闪速存储器。
其中,释放现场可编程门阵列的管脚后,现场可编程门阵列内部逻辑单元控制自身的管脚。
其中,所述系统的数据线采用串行的加载方式。
实施例二:
此实施例的实现方法和实施例一相似,不同之处在于加载数据线由串行变为并行,并行的数据线在传输的过程中起辅助作用,现场可编程门阵列数据的配置还需切换多路开关来完成,现场可编程门阵列通过访问非易失存储器,升级自身的数据。
实施例三:
(31)CPU系统访问闪速存储器,通过现场可编程门阵列的接口升级闪速存储器中的数据;
(32)通过现场可编程门阵列的接口命令中的信令控制,锁定所述现场可编程门阵列的管脚;
(33)将所述现场可编程门阵列的已升级的闪速存储器中的数据传输到所述现场可编程门阵列中的随机存储器中;
(34)释放所述现场可编程门阵列的管脚,使所述现场可编程门阵列进入正常的工作状态。
其中,所述CPU系统包括:CPU、以及与CPU相连接的随机存储器和闪速存储器。
其中,所述闪速存储器内嵌于现场可编程门阵列中。
其中,释放现场可编程门阵列的管脚后,现场可编程门阵列内部逻辑单元控制自身的管脚。
实施例四:
(41)CPU系统访问电可擦除只读存储器,通过现场可编程门阵列的接口升级电可擦除只读存储器中的数据;
(42)通过所述现场可编程门阵列的接口命令中的信令控制,锁定所述现场可编程门阵列的管脚;
(43)将所述现场可编程门阵列中的已升级的电可擦除只读存储器中的数据传输到所述现场可编程门阵列的随机存储器中;
(44)释放所述现场可编程门阵列的管脚,使所述现场可编程门阵列进入正常的工作状态。
其中,所述CPU系统包括:CPU、以及与CPU相连接的随机存储器和闪速存储器。
其中,所述电可擦除只读存储器内嵌于现场可编程门阵列中。
其中,释放所述现场可编程门阵列的管脚后,现场可编程门阵列内部逻辑单元控制自身的管脚。
下面对本发明提供的系统框图进一步进行详细说明:
参见图2,为本发明实施例一的系统框图,具体如下:
本发明提供的系统包括:CPU系统201、非易失存储器202、多路开关203、现场可编程门阵列204、切换芯片205;
CPU系统201,用于通过访问非易失存储器202,升级所述非易失存储器202中的数据;
非易失存储器202,用于通过将数据配置到现场可编程门阵列204的随机存储器中,升级所述现场可编程门阵列204;
多路开关203,用于通过切换自身的开关,让所述CPU系统201访问非易失存储器202;或者通过切换自身的开关,让现场可编程门阵列204访问非易失存储器202。
现场可编程门阵列204,通过切换芯片205被锁定管脚,访问所述非易失存储器202,升级所述现场可编程门阵列204中的数据。
切换芯片205,用于锁定所述现场可编程门阵列204,所述现场可编程门阵列204正常工作时,所述切换芯片205选择所述现场可编程门阵列204的输出作为最终输出,加载时,选择固定的电平,加载完成后,所述现场可编程门阵列204恢复正常工作状态,所述切换芯片205再切换到所述现场可编程门阵列204的输出。
其中,固定电平针对业务芯片的要求来进行选择。
其中,所述系统中的数据线采用串行的方式连接。
其中,所述非易失存储器202包括但不限于电可擦除只读存储器和闪速存储器。
参见图3,为本发明实施例二的系统框图,具体如下:
本发明提供的系统包括:CPU系统201、非易失存储器202、多路开关203、现场可编程门阵列204、切换芯片205;
CPU系统201,用于通过访问非易失存储器202,升级所述非易失存储器202中的数据;
非易失存储器202,用于通过将数据配置到现场可编程门阵列204的随机存储器中,升级所述现场可编程门阵列204,与其连接的并行数据线用于通知动作等辅助作用;
多路开关203,用于通过切换开关,让所述CPU系统201访问非易失存储器202;或者通过切换多路开关,让所述现场可编程门阵列204访问非易失存储器202。
现场可编程门阵列204,通过切换芯片205被锁定管脚,使其在配置的过程中管脚保持固定的电平,升级自身的数据。
切换芯片205,用于锁定所述现场可编程门阵列204的管脚,所述现场可编程门阵列204正常工作时,所述切换芯片205选择所述现场可编程门阵列204的输出作为最终输出,加载时,选择固定的电平,加载完成后,所述现场可编程门阵列204中被锁定的管脚恢复正常工作状态,所述切换芯片205再切换到所述现场可编程门阵列204的输出。
其中,所述固定电平针对业务芯片的要求进行选择。
其中,所述系统中的数据线采用并行的方式连接。
其中,所述非易失存储器202包括但不限于电可擦除只读存储器和闪速存储器。
此实施例的实现方法和实施例一相似,不同之处在于加载数据线由串行变为并行,并行的数据线在传输的过程中起辅助作用,现场可编程门阵列204仍需切换多路开关来过访问非易失存储器202,升级自身的数据。
参见图4,为本发明实施例三和实施例四的系统框图,具体如下:
本发明提供的系统包括:CPU系统201、现场可编程门阵列204;
现场可编程门阵列204包括:非易失存储器202和随机存储器206;
CPU系统201,用于通过IO接口访问现场可编程门阵列204中的非易失存储器202,将数据配置到非易失存储器202中,升级非易失存储器202中的数据;
非易失存储器202,用于通过将数据传输到现场可编程门阵列204的随机存储器206中,升级现场可编程门阵列204;
现场可编程门阵列204,通过被锁定管脚,使其在配置的过程中管脚保持当前的状态,升级所述现场可编程门阵列204中的数据。
其中,所述非易失存储器202包括但不限于电可擦除只读存储器或闪速存储器。
其中,所述系统提供的实施例与实施例一和实施例二相比,不同之处在于,所述非易失存储器202内嵌于现场可编程门阵列204中,并且现场可编程门阵列管脚的锁定直接由信令来控制。
其中,在加载的过程中,用现场可编程门阵列204接口命令中的SAMPLE和CLAMP语句组合可以方便的保持所述现场可编程门阵列204管脚当前的状态并锁定,直到下命令BYPASS来解除为止。
以上对本发明所提供的在线升级逻辑器件的方法和系统进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (10)
1、一种在线升级逻辑器件的方法,其特征在于,包括:
CPU系统访问可擦写非易失存储器,并升级所述非易失存储器中的数据;
锁定现场可编程门阵列的管脚,使所述现场可编程门阵列所在的系统保持正常的功能;
所述现场可编程门阵列访问已升级的非易失存储器,将所述已升级的非易失存储器中的数据配置到所述现场可编程门阵列中的随机存储器中,升级所述现场可编程门阵列。
2、根据权利要求1所述的方法,其特征在于,所述配置现场可编程门阵列之后,进一步包括:释放所述现场可编程门阵列的管脚。
3、根据权利要求2所述的方法,其特征在于,所述释放现场可编程门阵列的管脚之后,进一步包括:
所述现场可编程门阵列内部逻辑单元控制所述管脚,所述现场可编程门阵列进入正常的工作状态。
4、根据权利要求1所述的方法,其特征在于,所述可擦写非易失存储器包括:电可擦除只读存储器或闪速存储器。
5、根据权利要求1所述的方法,其特征在于,所述升级非易失存储器中的数据,包括:
通过所述CPU系统的网口将数据配置到所述非易失存储器中,升级所述非易失存储器中的数据;或者,
所述CPU系统的网口通过现场可编程门阵列的接口,将数据配置到所述现场可编程门阵列中的非易失存储器中,升级所述非易失存储器中的数据。
6、根据权利要求1所述的方法,其特征在于,所述锁定现场可编程门阵列的管脚,包括:
通过使所述现场可编程门阵列的管脚保持固定的电平,锁定所述现场可编程门阵列的管脚;或者,
通过信令控制使所述现场可编程门阵列管脚保持当前的状态,锁定所述现场可编程门阵列的管脚。
7、根据权利要求1所述的方法,其特征在于,所述非易失存储器内嵌于所述现场可编程门阵列中。
8、一种在线升级逻辑器件的系统,其特征在于,包括:
CPU系统,用于访问非易失存储器,升级所述非易失存储器中的数据;
非易失存储器,用于向现场可编程门阵列提供经所述CPU系统升级后的数据;
多路开关,用于通过切换自身的开关,触发所述现场可编程门阵列访问所述非易失存储器;
现场可编程门阵列,用于通过被锁定管脚,访问所述非易失存储器,获取所述非易失存储器中升级后的数据,升级自身的数据。
9、根据权利要求8所述的方法,其特征在于,所述系统进一步包括:切换芯片,用于锁定所述现场可编程门阵列的管脚,使所述现场可编程门阵列所在的系统处于正常的工作状态。
10、根据权利要求8所述的系统,其特征在于,所述非易失存储器包括:电可擦除只读存储器或闪速存储器。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2006101621457A CN100428160C (zh) | 2006-12-06 | 2006-12-06 | 一种在线升级逻辑器件的方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2006101621457A CN100428160C (zh) | 2006-12-06 | 2006-12-06 | 一种在线升级逻辑器件的方法和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1987787A CN1987787A (zh) | 2007-06-27 |
CN100428160C true CN100428160C (zh) | 2008-10-22 |
Family
ID=38184594
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2006101621457A Expired - Fee Related CN100428160C (zh) | 2006-12-06 | 2006-12-06 | 一种在线升级逻辑器件的方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN100428160C (zh) |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101770376B (zh) * | 2008-12-31 | 2014-03-12 | 华为技术有限公司 | 一种升级软件的方法及控制装置 |
CN102033767B (zh) * | 2010-12-08 | 2015-08-12 | 中兴通讯股份有限公司 | 一种单板及单板在线升级的方法 |
CN102360302B (zh) * | 2011-10-13 | 2014-01-22 | 福建星网锐捷网络有限公司 | 一种fpga配置文件在线升级方法及装置 |
CN102609286B (zh) * | 2012-02-10 | 2015-08-05 | 株洲南车时代电气股份有限公司 | 一种基于处理器控制的fpga配置程序远程更新系统及其方法 |
CN102609287B (zh) * | 2012-02-10 | 2015-08-05 | 株洲南车时代电气股份有限公司 | 一种通过cpu远程更新fpga的装置及其方法 |
CN103677868A (zh) * | 2012-09-06 | 2014-03-26 | 合肥科盛微电子科技有限公司 | 一种通过芯片内部的mcu配置芯片内置fpga的方法 |
WO2015070412A1 (zh) | 2013-11-14 | 2015-05-21 | 华为技术有限公司 | 一种网络设备版本升级的方法及网络设备 |
CN105468387A (zh) * | 2014-09-03 | 2016-04-06 | 华为技术有限公司 | 升级处理方法、装置和系统 |
WO2019084916A1 (zh) * | 2017-11-03 | 2019-05-09 | 华为技术有限公司 | 恢复fpga芯片中的逻辑的方法、系统和fpga设备 |
CN109542484B (zh) * | 2018-11-20 | 2022-02-18 | 浪潮集团有限公司 | 一种在线更新fpga配置芯片的方法及系统 |
CN111026427B (zh) * | 2019-11-14 | 2022-09-02 | 中国航空工业集团公司洛阳电光设备研究所 | 一种含cpu和fpga的嵌入式系统远程在线升级方法 |
CN111158734A (zh) * | 2019-12-29 | 2020-05-15 | 苏州浪潮智能科技有限公司 | 一种cpld-fpga的无缝升级方法、系统及设备 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1397891A (zh) * | 2002-08-30 | 2003-02-19 | 清华大学 | 现场可编程门阵列程序在线升级系统及其实现方法 |
CN1464421A (zh) * | 2002-06-28 | 2003-12-31 | 华为技术有限公司 | 一种对现场可编程门阵列的在线加载方法 |
CN1677346A (zh) * | 2004-04-01 | 2005-10-05 | 迈普(四川)通信技术有限公司 | 可编程器件程序更新方法及可更新程序的板卡 |
US20060244484A1 (en) * | 2005-04-29 | 2006-11-02 | Licai Fang | Robust and economic solution for FPGA bitfile upgrade |
-
2006
- 2006-12-06 CN CNB2006101621457A patent/CN100428160C/zh not_active Expired - Fee Related
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1464421A (zh) * | 2002-06-28 | 2003-12-31 | 华为技术有限公司 | 一种对现场可编程门阵列的在线加载方法 |
CN1397891A (zh) * | 2002-08-30 | 2003-02-19 | 清华大学 | 现场可编程门阵列程序在线升级系统及其实现方法 |
CN1677346A (zh) * | 2004-04-01 | 2005-10-05 | 迈普(四川)通信技术有限公司 | 可编程器件程序更新方法及可更新程序的板卡 |
US20060244484A1 (en) * | 2005-04-29 | 2006-11-02 | Licai Fang | Robust and economic solution for FPGA bitfile upgrade |
Also Published As
Publication number | Publication date |
---|---|
CN1987787A (zh) | 2007-06-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100428160C (zh) | 一种在线升级逻辑器件的方法和系统 | |
CN100472442C (zh) | 一种对固件程序进行在线升级的装置及其方法 | |
CN103299276B (zh) | 嵌入式装置的软件更新过程 | |
CN101226765B (zh) | 多芯片封装快闪存储器器件以及从中读取状态数据的方法 | |
EP1303815B1 (en) | System initialization of microcode-based memory built-in self-test | |
CN102272688B (zh) | 无主从配置的自动多器件事件同步和排序技术 | |
CN101561857B (zh) | 多模式启动的安全嵌入式系统 | |
CN101853207A (zh) | 存储装置 | |
CN101027729A (zh) | 非易失性存储装置的初始化控制方法以及非易失性存储装置 | |
CN101882097A (zh) | 一种主控板、嵌入式系统及嵌入式系统的备份方法 | |
CN103605542A (zh) | Fpga配置文件的在线升级装置 | |
CN101243453A (zh) | 控制内置存储器访问 | |
CN101286738A (zh) | 一种根据设备信息加载逻辑文件的方法、装置和系统 | |
CN1809894A (zh) | 非易失性静态存储器单元 | |
CN104011688A (zh) | 控制装置以及处理监控方法 | |
CN102403036B (zh) | 用于对非易失性存储器中的数据进行编程的方法和装置 | |
CN102033767B (zh) | 一种单板及单板在线升级的方法 | |
US6501700B2 (en) | Internal addressing structure of a semiconductor memory | |
KR20020046218A (ko) | 불휘발성 기억 시스템 | |
US7263575B2 (en) | Electronic control device | |
CN102043636A (zh) | 现场可编程门阵列位文件下载的方法及装置 | |
CN108572835A (zh) | 一种fpga配置文件在线升级系统 | |
WO2006028623A2 (en) | Programmable logic auto write-back | |
CN100388390C (zh) | 半导体存储设备及控制该存储设备的方法 | |
CN105183502A (zh) | 一种雷达阵面数字单元程序并行刷新方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20081022 Termination date: 20161206 |