CN1168019C - 现场可编程门阵列程序在线升级系统及其实现方法 - Google Patents

现场可编程门阵列程序在线升级系统及其实现方法 Download PDF

Info

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
Application number
CNB021293104A
Other languages
English (en)
Other versions
CN1397891A (zh
Inventor
承 张
张承
蒋东兴
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tsinghua University
Original Assignee
Tsinghua University
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Tsinghua University filed Critical Tsinghua University
Priority to CNB021293104A priority Critical patent/CN1168019C/zh
Publication of CN1397891A publication Critical patent/CN1397891A/zh
Application granted granted Critical
Publication of CN1168019C publication Critical patent/CN1168019C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

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)控制电路判断是否读操作,若为读操作则从非易失性存储器中读出数据,若为写操作,则将数据写入非易失性存储器。
CNB021293104A 2002-08-30 2002-08-30 现场可编程门阵列程序在线升级系统及其实现方法 Expired - Fee Related CN1168019C (zh)

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)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100407143C (zh) * 2005-04-19 2008-07-30 华为技术有限公司 校验可编程逻辑器件中软件版本的方法

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
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
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
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 北京航星机器制造有限公司 一种基于现场可编程门阵列的多片闪存控制器

Cited By (1)

* Cited by examiner, † Cited by third party
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) 现场可编程门阵列程序在线升级系统及其实现方法
US7225357B2 (en) SDIO card development system
JP4664056B2 (ja) 電子機器の動作をエミュレートする装置
EP2306460A3 (en) Concurrent flash memory access
EP0964338A2 (en) Method and apparatus for operating on a memory unit via a JTAG port
EP2264600A3 (en) Enhanced embedded logic analyzer
CN100440805C (zh) 一种atca中jtag器件远程维护的方法及系统
CN1507567A (zh) 测试存取端口的数据同步
JPH01134541A (ja) 情報処理装置
CN101438253A (zh) 写入和配置闪速存储器
US6105154A (en) Multi-bus multi-data transfer protocols controlled by a bus arbiter coupled to a CRC signature compactor
CN106445544A (zh) 一种对可编程逻辑器件进行配置或更新的装置和方法
US6178525B1 (en) Trigger sequencing controller
CN105159731A (zh) 一种fpga配置文件远程升级的装置
CN101645055A (zh) 逻辑器件在线加载的方法、系统和处理器
CN107621819B (zh) 一种三维声波测井仪的fpga配置文件在线更新装置
CN101419582B (zh) 基于sopc技术的mvb/usb适配器及其通信方法
US20060150021A1 (en) Device and method for analyzing embedded systems
CN203260029U (zh) 基于fpga的系统芯片原型验证调试装置
JPH063414A (ja) 疑似lsi装置及びそれを用いたデバッグ装置
US7130788B2 (en) Emulation components and system including distributed event monitoring, and testing of an IC design under emulation
CN100388255C (zh) 一种接口转换模块和对fpga进行配置的方法
CN101281507A (zh) Usb接口型dsp实时仿真开发系统
US6598176B1 (en) Apparatus for estimating microcontroller and method thereof
CN101169767B (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
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