CN107870773A - A kind of method of online updating FPGA programs - Google Patents

A kind of method of online updating FPGA programs Download PDF

Info

Publication number
CN107870773A
CN107870773A CN201711189963.0A CN201711189963A CN107870773A CN 107870773 A CN107870773 A CN 107870773A CN 201711189963 A CN201711189963 A CN 201711189963A CN 107870773 A CN107870773 A CN 107870773A
Authority
CN
China
Prior art keywords
fpga
program
external memory
memory storage
online updating
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
Application number
CN201711189963.0A
Other languages
Chinese (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.)
Zhengzhou Yunhai Information Technology Co Ltd
Original Assignee
Zhengzhou Yunhai Information Technology Co Ltd
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 Zhengzhou Yunhai Information Technology Co Ltd filed Critical Zhengzhou Yunhai Information Technology Co Ltd
Priority to CN201711189963.0A priority Critical patent/CN107870773A/en
Publication of CN107870773A publication Critical patent/CN107870773A/en
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

A kind of method for the upgrading of FPGA system remote online program of the present application.The present invention is connected external memory storage by jtag interface in FPGA I/O pin simultaneously;Memory control module, program receiving module are set inside FPGA.By program receiving module by the program transportation to be updated to FPGA, external memory storage is first wiped by memory control module, then write new program;After new procedures download is completed, FPGA is restarted again completes program renewal.Upgrading is updated to external memory storage using FPGA internal logics in the case where not increasing hardware cost substantially.

Description

A kind of method of online updating FPGA programs
Technical field
The present invention relates to server test field, and in particular to a kind of method of online updating FPGA programs.
Background technology
FPGA (Field-Programmable Gate Array field programmable gate arrays) bit stream loading technique is An essential part in FPGA design and debugging.In the prior art the loading of FPGA bit streams be all using outside downloading wire or Device is downloaded, and currently passes through JTAG (Joint to the downloading mode majority of FPGA bit stream files for the online cable of PC Test Act ion Group joint test behavior tissues, a kind of boundary scan technique) interface download, with jtag interface to FPGA External memory storage carries out programming, and PC must be used by JTAG cables, and it is without FPGA remote downloads itself and control work( Can, this mode brings inconvenience to product up-gradation.And remote download will be carried out in actual applications to FPGA by often occurring Scene.
For FPGA system run into can not off line ROMPaq the problem of, the present application it is a kind of for FPGA system it is long-range In the method for sequence of threads upgrading.The present invention by external memory storage by jtag interface connect FPGA, do not increase substantially hardware into Upgrading is updated to external memory storage using FPGA internal logics in the case of this.
The content of the invention
At present in FPGA commercialization, FPGA working method is substantially long-range off-line working, main mesh of the invention Be that how solution does not increase hardware cost and realize remote online and update position in the case of this long-range off-line working The problem of stream code.
In the case of normal, FPGA is to connect FPGA external memory storages by jtag interface.PC utilizes jtag interface line Cable carries out erasable operation to external memory storage, and outside newest program in machine code is put into external memory storage.When upper electricity again When, FPGA loads newest program in machine code from external memory storage automatically, so as to realize the purpose of FPGA programs renewal.But Such case needs to connect circuit board is connected to JTAG cables always, can not accomplish off line or long-range renewal FPGA programs.This Shen The method for the online updating FPGA programs that please be invent, then JTAG cables can be no longer needed completely, but utilize FPGA right in itself External memory storage is updated.
Specifically, a kind of method of online updating FPGA programs is claimed in the application, it is characterised in that this method is specific Including:
While jtag interface is connected to external memory storage, jtag interface is connected in FPGA I/O pin;
Memory control module is set inside FPGA, for controlling the erasable of external memory storage;
One program receiving module is set inside FPGA, for obtaining the program to be updated outside FPGA;
When need to be updated program to FPGA external memory storages when, it will be updated by program receiving module Program transportation is first wiped external memory storage in FPGA by memory control module, is write again after erasure completion new Program;After new procedures download is completed, FPGA is restarted again just completes program renewal.
The method of online updating FPGA programs as described above, is further characterized in that, without using FPGA to external storage When device enters line program renewal, FPGA pins are arranged to high-impedance state.
The method of online updating FPGA programs as described above, is further characterized in that, one is also set up inside FPGA and is delayed Storing module, for preventing the mismatch of program receiving module and memory control module in speed.
The method of online updating FPGA programs as described above, is further characterized in that, the cache module is one small delays FIFO in punch die block piece.
The method of online updating FPGA programs as described above, is further characterized in that, program receiving module can be various Different interface modes.
Brief description of the drawings
Fig. 1, online updating FPGA programs of the present invention operating diagram
Fig. 2, prior art operating diagram
Embodiment
As shown in Figure 1, the present invention needs jtag interface while is connected in FPGA I/O pin, FPGA external memory storages Just linked together with FPGA, the sequential that jtag interface can be simulated by these I/O pins is wiped external memory storage Write, newest program in machine code is put into external memory storage, realize the purpose to be downloaded by JTAG cables.The tool of the function Body is implemented without additional device, it is only necessary to makes when circuit design and a little changes.
In addition to needing to add the pin for downloading external memory storage, FPGA will also have from external reception new procedures Module.This module can be common i2c interfaces, spi interfaces etc. or network interface.It is many in the prior art FPGA system inherently carries this interface, so can substantially not have to add external interface again.
When need to be updated program to FPGA external memory storages when, it be able to will be updated by external interface Program transportation is in FPGA.A memory control module is added inside FPGA, it is advanced to external memory storage by the module Row erasing.New program is write after erasure completion again.After new procedures download is completed, FPGA is restarted again just completes program more Newly.
A specific embodiment of the method for 1 pair of online updating FPGA program of the present invention is carried out below in conjunction with the accompanying drawings Explanation.
The method of online updating FPGA programs of the present invention connects jtag interface and FPGA pin.Normally Design in order to carry out JTAG cable downloads, be that jtag interface is connected on external memory storage.The present invention is same on this basis When be also connected on FPGA pins.Because FPGA pins could be arranged to high-impedance state.Without using, do not need FPGA it is external When portion's memory enters line program renewal, FPGA pins are arranged to high-impedance state, are that jtag interface and outside will not be deposited Reservoir is influential.
External memory storage control module is set inside FPGA, and it is the erasable of control external memory storage that it, which is acted on,.Work as needs When being updated to the program in external memory storage, module is started working.It is advanced according to the timing requirements of external memory storage Row erasing, then by new burning program into external memory storage.
Also set up a program receiving module.The major function of this module is the program for obtaining being updated outside FPGA, Can be a variety of interfaces, such as i2c, spi, Ethernet interface.In general FPGA system is to have this connect in itself Mouthful, so substantially the program of this interface need not be developed again.
One cache module is set inside FPGA, because external program receiving module and memory control module are in speed Some upper mismatches, so having added FIFO on a small buffer module piece inside FPGA.
It should be evident that illustrated above is only the specific embodiment of the present invention, for the common skill in this area For art personnel, on the premise of not paying creative work, other technical schemes can also be obtained according to above-described embodiment, And the equivalent variations made in the scope of protection of the invention all should be fallen within the scope of protection of the present invention, and belong to the present invention The scope of protection.
In summary, the method for the online updating FPGA programs of the present application, JTAG cables can be no longer needed, but External memory storage is updated in itself using FPGA.Can solve remote online more in the case where not increasing hardware cost The problem of new bit stream code.

Claims (5)

  1. A kind of 1. method of online updating FPGA programs, it is characterised in that this method specifically includes:
    While jtag interface is connected to external memory storage, jtag interface is connected in FPGA I/O pin;
    Memory control module is set inside FPGA, for controlling the erasable of external memory storage;
    One program receiving module is set inside FPGA, for obtaining the program to be updated outside FPGA;
    When needing to be updated program to FPGA external memory storages, the program that will be updated by program receiving module It is transferred in FPGA, external memory storage is first wiped by memory control module, writes new journey after erasure completion again Sequence;After new procedures download is completed, FPGA is restarted again just completes program renewal.
  2. 2. the method for online updating FPGA programs as claimed in claim 1, is further characterized in that, without using FPGA to outside When memory enters line program renewal, FPGA pins are arranged to high-impedance state.
  3. 3. the method for online updating FPGA programs as claimed in claim 1, is further characterized in that, one is also set up inside FPGA Individual cache module, for preventing the mismatch of program receiving module and memory control module in speed.
  4. 4. the method for online updating FPGA programs as claimed in claim 1, is further characterized in that, the cache module is one small Buffer module piece on FIFO.
  5. 5. the method for online updating FPGA programs as claimed in claim 1, is further characterized in that, program receiving module can be A variety of interface modes.
CN201711189963.0A 2017-11-24 2017-11-24 A kind of method of online updating FPGA programs Pending CN107870773A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201711189963.0A CN107870773A (en) 2017-11-24 2017-11-24 A kind of method of online updating FPGA programs

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201711189963.0A CN107870773A (en) 2017-11-24 2017-11-24 A kind of method of online updating FPGA programs

Publications (1)

Publication Number Publication Date
CN107870773A true CN107870773A (en) 2018-04-03

Family

ID=61754431

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201711189963.0A Pending CN107870773A (en) 2017-11-24 2017-11-24 A kind of method of online updating FPGA programs

Country Status (1)

Country Link
CN (1) CN107870773A (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102279756A (en) * 2010-06-11 2011-12-14 英业达股份有限公司 CPLD (Complex Programmable Logic Device) firmware updating method
CN102436385A (en) * 2011-11-15 2012-05-02 电子科技大学 Online updating device for configuration files of programmable logic device
CN104407882A (en) * 2014-10-28 2015-03-11 大唐移动通信设备有限公司 Board card device
CN105955783A (en) * 2016-05-09 2016-09-21 浙江大学 Method for downloading remote FPGA logic codes on basis of FPGA control

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102279756A (en) * 2010-06-11 2011-12-14 英业达股份有限公司 CPLD (Complex Programmable Logic Device) firmware updating method
CN102436385A (en) * 2011-11-15 2012-05-02 电子科技大学 Online updating device for configuration files of programmable logic device
CN104407882A (en) * 2014-10-28 2015-03-11 大唐移动通信设备有限公司 Board card device
CN105955783A (en) * 2016-05-09 2016-09-21 浙江大学 Method for downloading remote FPGA logic codes on basis of FPGA control

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
张永乐,王永勇,郑炜: ""一种基于FPGA 的在线程序升级方案"", 《电子技术应用》 *

Similar Documents

Publication Publication Date Title
CN109656593B (en) Method for realizing remote upgrading of FPGA (field programmable Gate array) program based on ZYNQ (z-YNQ) chip
CN105159731B (en) A kind of device of FPGA configuration file remote upgrade
US8386764B2 (en) BIOS architecture
CN102053850A (en) Method for on-line FPGA logic upgrade
CN105955783A (en) Method for downloading remote FPGA logic codes on basis of FPGA control
CN106201590B (en) A kind of FPGA configuration file loading method and system
CN107977217A (en) The method of on-line loaded XILINX-FPGA multi versions more new procedures
CN107273170A (en) A kind of SoPC programs remote update system and method
US10698678B2 (en) Method for online updating firmware of complex programmable logic device
CN104063257A (en) System and method for FPGA automatic loading
CN113434162B (en) Method for remotely updating FPGA multi-version program on line
US9477579B2 (en) Embedded software debug system with partial hardware acceleration
CN104077131A (en) Component deployment system and method
CN110196726B (en) Method for realizing remote upgrading and loading of FPGA program based on CPU+CPLD
CN103067459A (en) Field programmable gate array (FPGA) remote loading device based on digital signal processor
CN104391714A (en) Software update method and software update device for vehicle
WO2016033941A1 (en) Boot on-line upgrading apparatus and method
CN102520961A (en) Off-chip online programmable SOC (system on a chip) and control method for same
CN109525276B (en) Multimode data link system and method with external downloading function
CN104461589A (en) Single-chip microcomputer updating method and system
CN106970778B (en) FPGA-based embedded device online configuration method and system
CN107621943A (en) A kind of FPGA dynamic batch programming system and method
CN207611373U (en) A kind of control system based on master/slave structure
CN107870773A (en) A kind of method of online updating FPGA programs
CN109542484B (en) Method and system for updating FPGA configuration chip on line

Legal Events

Date Code Title Description
PB01 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: 20180403

RJ01 Rejection of invention patent application after publication