CN1168019C - 现场可编程门阵列程序在线升级系统及其实现方法 - Google Patents
现场可编程门阵列程序在线升级系统及其实现方法 Download PDFInfo
- Publication number
- CN1168019C CN1168019C CNB021293104A CN02129310A CN1168019C CN 1168019 C CN1168019 C CN 1168019C CN B021293104 A CNB021293104 A CN B021293104A CN 02129310 A CN02129310 A CN 02129310A CN 1168019 C CN1168019 C CN 1168019C
- Authority
- CN
- China
- Prior art keywords
- bus
- programmable gate
- gate array
- control circuit
- fpga
- 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
- 238000000034 method Methods 0.000 title claims abstract description 10
- 238000011065 in-situ storage Methods 0.000 title claims description 5
- 238000010586 diagram Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 4
- 102100031941 Enhancer of polycomb homolog 2 Human genes 0.000 description 2
- 101000920664 Homo sapiens Enhancer of polycomb homolog 2 Proteins 0.000 description 2
- 101000885321 Homo sapiens Serine/threonine-protein kinase DCLK1 Proteins 0.000 description 2
- 102100039758 Serine/threonine-protein kinase DCLK1 Human genes 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
Images
Landscapes
- Stored Programmes (AREA)
- Logic Circuits (AREA)
Abstract
现场可编程门阵列程序在线升级系统及其实现方法属于FPGA程序升级技术领域,其系统的特征在于,它含有:与外部总线交互连接的现场可编程门阵列(FPGA),在与上述FPGA经专用配置总线相连的同时又彼此经专用编程总线交互连接的控制电路,以及与上述控制电路交互连接的非易失性存储器。本系统的实现方法其特征在于,它依次含有以下步骤:在系统工作时,用户执行特定程序,向外部总线发出I/O指令,把数据传输到FPGA或从FPGA中取出;FPGA根据要求控制专用编程总线把数据发送到控制电路或从控制电路取出数据;控制电路直接操作非易失性存储器,完成数据写入或读出任务。它可以不用专用编程电缆实现FPGA程序的在线升级任务。
Description
技术领域
现场可编程门阵列(FPGA)程序在线升级系统及其实现方法属于FPGA在线程序升级技术领域,尤其涉及在系统上电后、使用FPGA所连接的外部总线更新FPGA程序的系统及其实现方法。
背景技术
现场可编程门阵列(Field Programmable Gate Array,FPGA)因为其可以实现专用集成电路(Application Specific Integrated Circuit,ASIC)的功能,又避免了使用ASIC周期长、成本高的缺点,在电子设备中有广泛的应用。
FPGA的逻辑功能是通过其内部的静态随机存储器(Static Random Access Memory,SRAM)实现的。因为SRAM是一种易失性存储器,所以FPGA掉电后,描述其功能的SRAM信息将全部丢失。我们把描述FPGA逻辑功能的SRAM信息称为FPGA的程序。为了使FPGA系统上电后能够正常工作,需要将FPGA的程序保存到FPGA外的非易失性存储器中,并且在系统上电时,通过控制电路把程序下载到FPGA中去。
图1为实现上述功能时常用的电路原理框图。其中的控制电路在系统上电时把非易失性存储器中的信息取出,通过专用配置总线1下载到FPGA。非易失性存储器可在系统不掉电的情况下通过控制电路所连接的专用编程电缆,经编程总线2写入程序。图2即为其所使用的一种电路连接图。其中,FPGA是Altera公司生产的FLEX6000系列芯片,也可以用该公司的APEX20K或FLEX10K系列芯片代替;芯片EPC2含有非易失性存储器和进行程序下载的控制电路,是一个专用配置芯片。专用配置芯片的nCS、OE、DCLK、DATA管脚分别连接FPGA的CONF DONE、nStatus、DCLK、DATA0,组成专用配置总线。在系统上电时,将通过这条专用总线对FPGA进行程序下载。此外,通过IEEE Std 1149.1所定义的,包括TCK、TMS、TDI、TDO信号的JTAG(Joint Test Action Group)总线,外部设备ByteBlaster等可以对EPC2等专用配置芯片中的非易失性存储器的内容重新写入。
通过控制电路连接另外的编程总线,将程序通过该编程总线传输到控制电路并写入非易失性存储器中,它的优点是系统不用掉电,即可在线升级程序,实施简单;但是它需要专用的编程电缆,不利于用户自行升级程序。
发明内容
本发明的内容是提供一种FPGA程序的在线升级系统及其实现方法。它是利用FPGA工作时的外部总线,在系统不掉电的情况下,将程序传递到控制电路并写入非易失性存储器中的。用户可以不使用任何专用编程器或编程电缆,自行升级。
本发明的特征在于:它含有与外部总线交互连接的现场可编程门阵列,控制电路,它与上述现场可编程门阵列经专用配置总线相连,同时又经专用编程总线与上述现场可编程门阵列交互连接,以及与上述控制电路交互连接的非易失性存储器。所述的外部总线是外部设备接口(PCI)总线、工业标准结构(ISA)总线、控制域网络(CAN)总线、通用串行总线(USB)中的任何一种。所述的控制电路是芯片EPM7064S。
它的实现方法依次含有以下步骤:
(1)在系统上电后,控制电路经并行的数据线从非易失性存储器中读出程序;
(2)控制电路把并行数据转换成串行数据后经专用配置总线向现场可编程门阵列下载程序;
(3)待现场可编程门阵列编程完毕,判断用户是否经上述外部总线向专用编程总线发送I/O指令,若没有I/O指令,则等待;否则,则执行下一步骤;
(4)控制电路判断是否读操作,若为读操作,则从非易失性存储器中读出数据,若为写操作,则将数据写入非易失性存储器。
使用证明,它可以不用专门的编程电缆来完成FPGA程序的在线升级任务。
附图说明
图1使用编程电缆编程的常用电路原理框图。
图2图1电路原理框图的一个实施例。
图3本发明提出的FPGA程序在线升级系统的电路原理框图。
图4图3电路原理框图的一个实施例。
图5本发明提出的FPGA程序在线升级方法的程序流程框图。
具体实施方法
请见图3:3是专用编程总线,其余与图1同。在工作时,FPGA以及外部总线等按照自身设计要求进行工作,不受控制电路的影响。在编程时,外部总线通过某种约定方式,将数据传输到FPGA,FPGA则通过专用编程总线3将数据传输到控制电路,然后写入到非易失性存储器。图4是图3的一个实施例。专用编程总线是是I2C总线。FPGA是Altera公司FLEX10K系列的10K30,该FPGA通过外部总线——PCI总线与微机连接,再通过I2C的双线传输协议将数据传输芯片EPM7064S做的控制电路。控制电路与用SST公司的芯片29EE010做的非易失性存储器双向连接。
再见图5:在29EE010中保存了FPGA的程序,当系统上电时,7064S将等待FPGA就绪后,将程序从29EE010中读出。由于29EE010输出的是并行的8位数据,7064S芯片把它变成串行数据,输出到FPGA的专用配置总线1来完成程序下载任务。
在系统工作时,用户可以执行特定的程序,向PCI总线发送I/O指令,把数据传输到FPGA,或者读取FPGA中的数据。FPGA根据要求控制I2C总线将数据发送到控制电路7064S,或者把数据从7064S读出。控制电路7064S则直接操作29EE010来完成数据写入或者读取任务。
由此可见,本发明可以不用专用的编程器或编程电缆来完成FPGA程序的在线升级任务。
Claims (4)
1、现场可编程门阵列程序在线升级系统,含有经专用配置总线与现场可编程门阵列(FPGA)相连的控制电路以及和该控制电路交互连接的非易失性存储器,其特征在于,它含有:与外部总线交互连接的上述现场可编程门阵列,控制电路,它与上述现场可编程门阵列经专用配置总线相连,又经专用编程总线与上述现场可编程门阵列交互连接,以及与上述控制电路交互连接的非易失性存储器。
2、根据权利要求1所述的现场可编程门阵列程序在线升级系统,其特征在于:所述的外部总线是外部设备接口(PCI)总线、工业标准结构(ISA)总线、控制域网络(CAN)总线、通用串行总线(USB)中的任何一种。
3、根据权利要求1所述的现场可编程门阵列程序在线升级系统,其特征在于:所述的控制电路是芯片EPM7064S。
4、现场可编程门阵列程序在线升级方法,其特征在于,它依次含有以下步骤:
(1)在系统上电后,控制电路经并行的数据线从非易失性存储器中读出程序;
(2)控制电路把并行数据转换成串行数据后经专用配置总线向现场可编程门阵列下载程序;
(3)待现场可编程门阵列编程完毕,判断用户是否经上述外部总线向专用编程总线发送I/O指令,若没有I/O指令,则等待;否则,则执行下一步骤;
(4)控制电路判断是否读操作,若为读操作则从非易失性存储器中读出数据,若为写操作,则将数据写入非易失性存储器。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB021293104A CN1168019C (zh) | 2002-08-30 | 2002-08-30 | 现场可编程门阵列程序在线升级系统及其实现方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB021293104A CN1168019C (zh) | 2002-08-30 | 2002-08-30 | 现场可编程门阵列程序在线升级系统及其实现方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1397891A CN1397891A (zh) | 2003-02-19 |
CN1168019C true CN1168019C (zh) | 2004-09-22 |
Family
ID=4746191
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB021293104A Expired - Fee Related CN1168019C (zh) | 2002-08-30 | 2002-08-30 | 现场可编程门阵列程序在线升级系统及其实现方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN1168019C (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100407143C (zh) * | 2005-04-19 | 2008-07-30 | 华为技术有限公司 | 校验可编程逻辑器件中软件版本的方法 |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050093572A1 (en) * | 2003-11-03 | 2005-05-05 | Macronix International Co., Ltd. | In-circuit configuration architecture with configuration on initialization function for embedded configurable logic array |
US20050097499A1 (en) * | 2003-11-03 | 2005-05-05 | Macronix International Co., Ltd. | In-circuit configuration architecture with non-volatile configuration store for embedded configurable logic array |
CN1299209C (zh) * | 2003-11-17 | 2007-02-07 | 中兴通讯股份有限公司 | Fpga逻辑程序下载装置及方法 |
CN100421073C (zh) * | 2005-12-14 | 2008-09-24 | 英业达股份有限公司 | 通用编程器及其编程方法 |
CN100386730C (zh) * | 2006-05-26 | 2008-05-07 | 杭州华三通信技术有限公司 | 一种实现现场可编程门阵列加载的方法 |
CN100375030C (zh) * | 2006-07-14 | 2008-03-12 | 杭州国芯科技有限公司 | 一种电子系统程序加载方法 |
CN100462985C (zh) * | 2006-08-25 | 2009-02-18 | 西安交通大学 | 一种现场可编程门阵列的快速配置方法 |
CN100428160C (zh) * | 2006-12-06 | 2008-10-22 | 华为技术有限公司 | 一种在线升级逻辑器件的方法和系统 |
CN102033767B (zh) * | 2010-12-08 | 2015-08-12 | 中兴通讯股份有限公司 | 一种单板及单板在线升级的方法 |
CN104953418A (zh) * | 2014-03-28 | 2015-09-30 | 无锡信捷电气股份有限公司 | 一种新型的plc编程电缆 |
CN105653299A (zh) * | 2014-11-12 | 2016-06-08 | 杭州华三通信技术有限公司 | 一种固件升级方法及设备 |
CN109710546A (zh) * | 2018-12-13 | 2019-05-03 | 北京航星机器制造有限公司 | 一种基于现场可编程门阵列的多片闪存控制器 |
-
2002
- 2002-08-30 CN CNB021293104A patent/CN1168019C/zh not_active Expired - Fee Related
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100407143C (zh) * | 2005-04-19 | 2008-07-30 | 华为技术有限公司 | 校验可编程逻辑器件中软件版本的方法 |
Also Published As
Publication number | Publication date |
---|---|
CN1397891A (zh) | 2003-02-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1168019C (zh) | 现场可编程门阵列程序在线升级系统及其实现方法 | |
CN201698002U (zh) | 一种针对fpga芯片的通用测试装置 | |
US7225357B2 (en) | SDIO card development system | |
JP4664056B2 (ja) | 電子機器の動作をエミュレートする装置 | |
CN101211266A (zh) | 一种实现fpga自动下载和在线升级的方法 | |
EP2264598A3 (en) | Enhanced embedded logic analyzer | |
CN1507567A (zh) | 测试存取端口的数据同步 | |
CN101645055B (zh) | 逻辑器件在线加载的方法、系统和处理器 | |
JPH01134541A (ja) | 情報処理装置 | |
US6105154A (en) | Multi-bus multi-data transfer protocols controlled by a bus arbiter coupled to a CRC signature compactor | |
US20090249136A1 (en) | Accessing sequential data in a microcontroller | |
CN106445544A (zh) | 一种对可编程逻辑器件进行配置或更新的装置和方法 | |
US6178525B1 (en) | Trigger sequencing controller | |
CN1949723A (zh) | 一种atca中jtag器件远程维护的方法及系统 | |
CN107621819B (zh) | 一种三维声波测井仪的fpga配置文件在线更新装置 | |
JP2941135B2 (ja) | 疑似lsi装置及びそれを用いたデバッグ装置 | |
CN203260029U (zh) | 基于fpga的系统芯片原型验证调试装置 | |
US7130788B2 (en) | Emulation components and system including distributed event monitoring, and testing of an IC design under emulation | |
CN114138297A (zh) | 一种基于zynq的fpga雷达数据调试系统及调试方法 | |
CN100388255C (zh) | 一种接口转换模块和对fpga进行配置的方法 | |
US6850880B1 (en) | High speed software driven emulator comprised of a plurality of emulation processors with an improved maintenance bus that streams data at high speed | |
CN101281507A (zh) | Usb接口型dsp实时仿真开发系统 | |
US6598176B1 (en) | Apparatus for estimating microcontroller and method thereof | |
CN101169767B (zh) | 访问控制设备及访问控制方法 | |
EP1677195A3 (en) | Enhanced embedded logic analyzer |
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 | ||
C19 | Lapse of patent right due to non-payment of the annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |