CN103064695A - Dynamic loading system of field-programmable gate array and loading method thereof - Google Patents
Dynamic loading system of field-programmable gate array and loading method thereof Download PDFInfo
- Publication number
- CN103064695A CN103064695A CN2011103240677A CN201110324067A CN103064695A CN 103064695 A CN103064695 A CN 103064695A CN 2011103240677 A CN2011103240677 A CN 2011103240677A CN 201110324067 A CN201110324067 A CN 201110324067A CN 103064695 A CN103064695 A CN 103064695A
- Authority
- CN
- China
- Prior art keywords
- fpga
- cpld
- load
- loading
- logic
- 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
- 238000011068 loading method Methods 0.000 title claims abstract description 47
- 238000012795 verification Methods 0.000 claims description 21
- 238000000034 method Methods 0.000 claims description 11
- 230000002093 peripheral effect Effects 0.000 abstract 1
- 238000004891 communication Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 3
- 239000004065 semiconductor Substances 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000001105 regulatory effect Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Landscapes
- Stored Programmes (AREA)
Abstract
The invention discloses a dynamic loading system of a field-programmable gate array and a loading method of the dynamic loading system of the field-programmable gate array. The dynamic loading system comprises an upper computer, a Peripheral Component Interconnect (PCI) interface, a Complex Programmable Logic Device (CPLD) and a memorizer. The upper computer is connected with a Field Programmable Gate Array (FPGA), and the FPGA is connected with the CPLD. The CPLD is connected with the memorizer. The dynamic loading system of the field-programmable gate array and the loading method of the dynamic loading system of the field-programmable gate array can update content in the memorizer in different loading environments and therefore meets different system requirements.
Description
Technical field
The present invention relates to communication field, particularly dynamic loading system and the loading method thereof of a kind of field programmable gate array (FPGA).
Background technology
Field programmable gate array (Field Programmable Gate Array, FPGA) has flexible in programming and High-Speed Hardware, therefore, is widely used at communication field.The FPGA device has a lot of loading modes, for example: JTAG pattern (Joint Test Action Group Mode, boundary scan technique), PS pattern (Passive Serial mode, passive serial mode), AS pattern (Active Serial mode, initiatively serial mode), programming mode (In-Socket Programming mode) etc. in the socket.In the above-mentioned pattern, the AS pattern is to adopt outside FLASH that FPGA is carried out serial to load.The PS pattern is to adopt external devices to carry out the serial of FPGA is loaded.JTAG, AS, PS are the many loading modes that adopt at present.
By comparing, analyzing, filter out the higher patent information of following degree related to the present invention, information is following to be listed: the patent " a kind of method of online upgrading fpga logic " of China's application, its application number is 201010598499.2, publication number is 102053850A.The loading procedure of this technical scheme is as follows: A, the download bus interface of FPGA is connected by the PCIE bus interface with CPU; B, log in remote machine by the windows remote desktop, the control remote terminal writes logical file and the logical message that will upgrade by the PCIE bus to nonvolatile semiconductor memory member; C, write that upgrade logic carries out verification to the write store content among the complete FPGA; D, write end after, carry out automatic load instructions, finish loading procedure.
The shortcoming of prior art scheme is as follows:
One, in the existing scheme, in the whole system on-line loaded process, CPU intervenes whole loading procedure all the time, and under some occasions without CPU, this scheme can't load FPGA like this.And in the request for proposal, the renewal of load document upgrading is to finish under the Firmware in FPGA controls.Load document can in the situation without CPU, be carried out the dynamic load process of FPGA after upgrading by the steering logic among the CPLD.
Two, in the existing scheme, write complete after, by the upgrade logic among the FPGA content among the PROM is carried out verification, again check results is carried out subsequent operation.And in the application's motion, the not responsible verification content of fpga logic, the expense of logic is less.
Three, in the existing scheme, as run into the damage of PROM misoperation, in the time of can't loading FPGA, without emergency plan, this can cause heavy losses in some scenarios.And this motion has added two allocation plans, and when FLASH can't load, system can automatically switch to the configuration that alternative scheme is carried out FPGA.
Summary of the invention
The technical problem to be solved in the present invention provides a kind of dynamic loading system and loading method thereof of field programmable gate array, and it can upgrade memory content in different loading environments, thereby adapts to different system requirements.
For solveing the technical problem, the invention provides a kind of dynamic loading system of field programmable gate array, it is characterized in that, it comprises host computer, pci interface, CPLD, storer, host computer is by being connected with a FPGA, and FPGA is connected with CPLD, and CPLD is connected with storer.
The present invention also provides a kind of loading method of dynamic loading system of field programmable gate array, it is characterized in that, it may further comprise the steps: A, host computer read load document, then are transferred among the FPGA by pci interface; B, subsequently, the memory write logic control CPLD in the FPGA is in the load document write store of receiving; C, write complete after, the memory read logic among the FPGA will be controlled CPLD the content in the storer will be read out, and be transferred in the host computer by pci interface; The data that D, host computer read from storer and load document data are carried out verification; E, verification succeeds then show in the load document success write store; Unsuccessful such as verification, then again carry out said process; If repeatedly verification is unsuccessful, will produce alerting signal, reminding user carries out subsequent operation; After F, the verification succeeds, carry out warm start and reset; At this moment, the load logic in the CPLD is the load document in the read memory, and by the load logic among the CPLD, FPGA carried out dynamic load; G, fortuitous event cause FPGA can't dynamic load after, can automatically switch to the standby configuration scheme by system and carry out reloading of FPGA; Wherein, fortuitous event is included in power down when upgrading the upgrading load document, loads and repeatedly unsuccessfully wait situation, causes memory content to damage, and can't automatically load; At this moment, after repeated loading was unsuccessful, logic by the gauge tap state, was adjusted the loading mode of FPGA with initiatively switching to standby configuration among the CPLD, enables the start-up loading that spare chip carries out FPGA, load successfully after, CPLD is with the switching attitude loading mode that reverses.
Positive progressive effect of the present invention is:
One, under some environment of intervening without CPU, can carry out the dynamic load of FPGA.Simultaneously, the present invention can make module, joins in the existing system, and is portable high.After the FPGA internal logic is revised, can add the multiple interfaces logic such as logic among the FPGA, can from different equipment, obtain the renewal upgraded version of FPGA load document, can in different loading environments, upgrade the FLASH content, thereby adapt to different system requirements.
Two, cost of the present invention is low, flexibility ratio is high.FPGA is more cheap such as the dilatation of CPLD cost ratio, and the storeies such as FLASH ROM can be selected suitable capacity according to the load document size.The FPGA loading only needs the CPLD logic control need not the CPU intervention, and loading is flexible and cost is low.The each several part degree of association is not strong, can upgrade separately during each parts upgrading, and flexibility ratio is high.
Three, the present invention adds the standby configuration scheme, has added the load mode that gate-controlled switch can be regulated FPGA on the circuit, and when fortuitous event can't carry out dynamic load, by-pass cock was adjusted the FPGA load mode, and FPGA can start again by the standby configuration scheme.
Description of drawings
Fig. 1 is the structural representation of one embodiment of the invention.
Embodiment
The below lifts a preferred embodiment, and comes by reference to the accompanying drawings the clearer the present invention that intactly illustrates.
As shown in Figure 1, the dynamic loading system of field programmable gate array of the present invention comprises host computer, pci interface, CPLD (Complex Programmable Logic Device, the complex programmable device), storer, host computer is by being connected with a FPGA, FPGA is connected with CPLD, and CPLD is connected with storer.Host computer be can operating software processor DSP or the processor of ARM or PowerPC or single-chip microcomputer or universal PC processor or programmable logic device (PLD).Pci interface comprises PCI, PCIE, but is not limited to above two kinds, can be the communication interface between other host computers and the FPGA.Storer can be Nand FLASH or Nor FLASH or EEPROM or other nonvolatile semiconductor memory member.
The function of upper computer software is as follows: one, accept the control signal of FPGA, by PCI correct load document is transferred among the FPGA.Two, according to the FPGA control signal that receives, the file among the FLASH that transmits among the FPGA is carried out verification.Three, verification succeeds then load document be transmitted.If verification is unsuccessful, then again repeat said process.As repeatedly writing not success, then the warning reminding user operates.Logic function in the FPGA comprises: one, PCI logic (or other communication interface logic of PCIE logical OR), responsible and host computer carries out the agreements such as data transmission of PCI.Two, the logic of upper computer software being controlled is responsible for accepting data that software sends over and is sent data in the FLASH in upper computer software.Three, the logic of control CPLD.Be responsible for control CPLD FLASH is carried out read-write operation.Logic function in the CPLD comprises: one, read-write FLASH logic.According to control signal write data among the FLASH or from FLASH reading out data be transferred among the FPGA.Two, FPGA load logic, when being responsible for starting, reading out data carries out load operation to FPGA from FLASH.FLASH is responsible for storing data, selects suitable capacity according to the size of load document.
The loading of the dynamic loading system of field programmable gate array may further comprise the steps: A, host computer read load document, then are transferred among the FPGA by pci interface; B, subsequently, the memory write logic control CPLD in the FPGA is in the load document write store of receiving; C, write complete after, the memory read logic among the FPGA will be controlled CPLD the content in the storer will be read out, and be transferred in the host computer by pci interface; The data that D, host computer read from storer and load document data are carried out verification; E, verification succeeds then show in the load document success write store; Unsuccessful such as verification, then again carry out said process; If repeatedly verification is unsuccessful, will produce alerting signal, reminding user carries out subsequent operation; After F, the verification succeeds, carry out warm start and reset; At this moment, the load logic in the CPLD is the load document in the read memory, and by the load logic among the CPLD, FPGA carried out dynamic load; G, fortuitous event cause FPGA can't dynamic load after, can automatically switch to the standby configuration scheme by system and carry out reloading of FPGA; Wherein, fortuitous event is included in power down when upgrading the upgrading load document, loads and repeatedly unsuccessfully wait situation, causes memory content to damage, and can't automatically load; At this moment, after repeated loading was unsuccessful, logic by the gauge tap state, was adjusted the loading mode of FPGA with initiatively switching to standby configuration among the CPLD, enables the start-up loading that spare chip carries out FPGA, load successfully after, CPLD is with the switching attitude loading mode that reverses.
Although more than described the specific embodiment of the present invention, it will be understood by those of skill in the art that these only illustrate, under the prerequisite that does not deviate from principle of the present invention and essence, can make various changes or modifications to these embodiments.Therefore, protection scope of the present invention is limited by appended claims.
Claims (2)
1. the dynamic loading system of a field programmable gate array is characterized in that, it comprises host computer, pci interface, CPLD, storer, and host computer is by being connected with a FPGA, and FPGA is connected with CPLD, and CPLD is connected with storer.
2. the loading method of the dynamic loading system of a field programmable gate array is characterized in that, it may further comprise the steps: A, host computer read load document, then are transferred among the FPGA by pci interface; B, subsequently, the memory write logic control CPLD in the FPGA is in the load document write store of receiving; C, write complete after, the memory read logic among the FPGA will be controlled CPLD the content in the storer will be read out, and be transferred in the host computer by pci interface; The data that D, host computer read from storer and load document data are carried out verification; E, verification succeeds then show in the load document success write store; Unsuccessful such as verification, then again carry out said process; If repeatedly verification is unsuccessful, will produce alerting signal, reminding user carries out subsequent operation; After F, the verification succeeds, carry out warm start and reset; At this moment, the load logic in the CPLD is the load document in the read memory, and by the load logic among the CPLD, FPGA carried out dynamic load; G, fortuitous event cause FPGA can't dynamic load after, can automatically switch to the standby configuration scheme by system and carry out reloading of FPGA; Wherein, fortuitous event is included in power down when upgrading the upgrading load document, loads and repeatedly unsuccessfully wait situation, causes memory content to damage, and can't automatically load; At this moment, after repeated loading was unsuccessful, logic by the gauge tap state, was adjusted the loading mode of FPGA with initiatively switching to standby configuration among the CPLD, enables the start-up loading that spare chip carries out FPGA, load successfully after, CPLD is with the switching attitude loading mode that reverses.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2011103240677A CN103064695A (en) | 2011-10-21 | 2011-10-21 | Dynamic loading system of field-programmable gate array and loading method thereof |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2011103240677A CN103064695A (en) | 2011-10-21 | 2011-10-21 | Dynamic loading system of field-programmable gate array and loading method thereof |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103064695A true CN103064695A (en) | 2013-04-24 |
Family
ID=48107333
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2011103240677A Pending CN103064695A (en) | 2011-10-21 | 2011-10-21 | Dynamic loading system of field-programmable gate array and loading method thereof |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103064695A (en) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104572213A (en) * | 2015-01-23 | 2015-04-29 | 北京控制工程研究所 | Reconstruction method of satellite-borne control computer |
CN104657173A (en) * | 2015-02-03 | 2015-05-27 | 烽火通信科技股份有限公司 | Processing method for not interrupting service during upgrading of card software |
CN105511897A (en) * | 2014-09-26 | 2016-04-20 | 杭州华三通信技术有限公司 | Method and device used for initialization of programmable device |
CN107038040A (en) * | 2016-11-01 | 2017-08-11 | 中国人民解放军国防科学技术大学 | FPGA based on PCIE more new systems and update method |
CN109542522A (en) * | 2018-11-02 | 2019-03-29 | 杭州迪普科技股份有限公司 | A kind of FPGA starting method and device |
CN110888834A (en) * | 2019-11-06 | 2020-03-17 | 武汉船舶通信研究所(中国船舶重工集团公司第七二二研究所) | Method and system for dynamically reconstructing FPGA function in PCIE equipment |
CN111381889A (en) * | 2018-12-27 | 2020-07-07 | 西安诺瓦星云科技股份有限公司 | Multi-device system and programmable logic device loading method and device |
CN111813432A (en) * | 2020-06-01 | 2020-10-23 | 大唐微电子技术有限公司 | FPGA configuration upgrading method and FPGA platform |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101420328A (en) * | 2008-12-03 | 2009-04-29 | 杭州华三通信技术有限公司 | System, interface card and method for remote upgrading field programmable gate array |
CN101452502A (en) * | 2008-12-30 | 2009-06-10 | 华为技术有限公司 | Method for loading on-site programmable gate array FPGA, apparatus and system |
CN102053850A (en) * | 2010-12-17 | 2011-05-11 | 天津曙光计算机产业有限公司 | Method for on-line FPGA logic upgrade |
-
2011
- 2011-10-21 CN CN2011103240677A patent/CN103064695A/en active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101420328A (en) * | 2008-12-03 | 2009-04-29 | 杭州华三通信技术有限公司 | System, interface card and method for remote upgrading field programmable gate array |
CN101452502A (en) * | 2008-12-30 | 2009-06-10 | 华为技术有限公司 | Method for loading on-site programmable gate array FPGA, apparatus and system |
CN102053850A (en) * | 2010-12-17 | 2011-05-11 | 天津曙光计算机产业有限公司 | Method for on-line FPGA logic upgrade |
Non-Patent Citations (1)
Title |
---|
张洪刚等: "基于CPLD的FPGA快速配置电路的设计", 《电子技术应用》 * |
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10268631B2 (en) | 2014-09-26 | 2019-04-23 | Hewlett Packard Enterprise Development Lp | Initialize programmable components |
CN105511897A (en) * | 2014-09-26 | 2016-04-20 | 杭州华三通信技术有限公司 | Method and device used for initialization of programmable device |
CN105511897B (en) * | 2014-09-26 | 2018-11-09 | 新华三技术有限公司 | Method and apparatus for initializing programming device |
CN104572213A (en) * | 2015-01-23 | 2015-04-29 | 北京控制工程研究所 | Reconstruction method of satellite-borne control computer |
CN104572213B (en) * | 2015-01-23 | 2017-11-07 | 北京控制工程研究所 | A kind of reconstructing method of spaceborne control computer |
CN104657173A (en) * | 2015-02-03 | 2015-05-27 | 烽火通信科技股份有限公司 | Processing method for not interrupting service during upgrading of card software |
CN104657173B (en) * | 2015-02-03 | 2017-12-22 | 烽火通信科技股份有限公司 | A kind of processing method for upgrading board software non-interrupting service |
CN107038040A (en) * | 2016-11-01 | 2017-08-11 | 中国人民解放军国防科学技术大学 | FPGA based on PCIE more new systems and update method |
CN109542522A (en) * | 2018-11-02 | 2019-03-29 | 杭州迪普科技股份有限公司 | A kind of FPGA starting method and device |
CN111381889A (en) * | 2018-12-27 | 2020-07-07 | 西安诺瓦星云科技股份有限公司 | Multi-device system and programmable logic device loading method and device |
CN111381889B (en) * | 2018-12-27 | 2024-04-05 | 西安诺瓦星云科技股份有限公司 | Multi-device system and programmable logic device loading method and device |
CN110888834A (en) * | 2019-11-06 | 2020-03-17 | 武汉船舶通信研究所(中国船舶重工集团公司第七二二研究所) | Method and system for dynamically reconstructing FPGA function in PCIE equipment |
CN110888834B (en) * | 2019-11-06 | 2022-05-31 | 武汉船舶通信研究所(中国船舶重工集团公司第七二二研究所) | Method and system for dynamically reconstructing FPGA function in PCIE equipment |
CN111813432A (en) * | 2020-06-01 | 2020-10-23 | 大唐微电子技术有限公司 | FPGA configuration upgrading method and FPGA platform |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103064695A (en) | Dynamic loading system of field-programmable gate array and loading method thereof | |
CN102945173B (en) | User program online upgrade system and upgrade method | |
US7908417B2 (en) | Motherboard system, storage device for booting up thereof and connector | |
CN101645055B (en) | Logic device on-line loaded method, system and processor | |
CN102053850A (en) | Method for on-line FPGA logic upgrade | |
US20190250821A1 (en) | Electronic system with storage management mechanism and method of operation thereof | |
US20120079263A1 (en) | Method and Device for Initiating System on Chip | |
KR20180086129A (en) | Information processing apparatus, control method of the same, and storage medium | |
US10922150B2 (en) | Deep hardware access and policy engine | |
US7607001B2 (en) | Memory management method for simultaneously loading and executing program codes | |
KR20140083530A (en) | System on chip including boot shell debugging hardware and driving method thereof | |
CN103842966A (en) | Electronic device | |
CN202331426U (en) | Dynamic loading system of field programmable gate array | |
CN100592257C (en) | System and method for starting mainboard by loading starting program through different interfaces | |
CN101373438B (en) | Method, system and apparatus for managing basic input and output system | |
CN105718416A (en) | Method for upgrading configuration file of FPGA (Field Programmable Gate Array) and upgrading device | |
CN110908733B (en) | Working mode determining method and device, and control method and device | |
CN108958837B (en) | Method, system and medium for dynamically configuring ME firmware | |
US7680909B2 (en) | Method for configuration of a processing unit | |
CN104615387A (en) | Vehicle-mounted equipment based on XPE system and design method of vehicle-mounted equipment | |
CN107515730B (en) | Data storage device and method of operation | |
CN111273936A (en) | ZYNQ program curing method based on USB | |
CN103235921B (en) | A kind of computer system | |
CN112486274A (en) | Computer expansion card and computer system | |
US20240427608A1 (en) | System and method for resetting computing devices |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20130424 |