CN112650543A - FPGA dynamic configuration method - Google Patents
FPGA dynamic configuration method Download PDFInfo
- Publication number
- CN112650543A CN112650543A CN202011522137.5A CN202011522137A CN112650543A CN 112650543 A CN112650543 A CN 112650543A CN 202011522137 A CN202011522137 A CN 202011522137A CN 112650543 A CN112650543 A CN 112650543A
- Authority
- CN
- China
- Prior art keywords
- fpga
- flash
- microprocessor
- bpi
- bpi flash
- 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
- 238000000034 method Methods 0.000 title claims abstract description 20
- 230000005540 biological transmission Effects 0.000 claims description 3
- 238000005034 decoration Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44521—Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
- G06F8/654—Updates using techniques specially adapted for alterable solid state memories, e.g. for EEPROM or flash memories
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Stored Programmes (AREA)
- Logic Circuits (AREA)
Abstract
The invention discloses a FPGA dynamic configuration method, which is suitable for Virtex-7 chips of Xilinx company and comprises the following specific steps: the microprocessor receives a remote control instruction through the Ethernet and stores the control instruction in the EEPROM; the microprocessor controls the high two bits of BPI Flash address through GPIO interface to divide the Flash into four memory areas; the FPGA downloads the user program into different storage areas in the BPI Flash through a JTAG interface; the microprocessor controls the configuration pin of the FPGA and the high two bits of the BPI Flash address through the GPIO interface to realize the dynamic configuration of the FPGA program. The invention can realize the dynamic switching of the FPGA function in a flexible and configurable mode so as to meet different applications.
Description
Technical Field
The invention belongs to the field of electronic engineering and computer science, and particularly relates to a dynamic configuration method of an FPGA (field programmable gate array).
Background
As a highly parallel chip, FPGA is widely used in situations where real-time requirements are stringent. In the aspect of configuring an FPGA program, a JTAG downloading method is generally adopted at present, but only one program code can be downloaded by the method every time, when the FPGA function needs to be replaced, a new user program needs to be downloaded again through the JTAG, and the dynamic configuration of the FPGA program is inconvenient to realize.
Disclosure of Invention
The technical problem to be solved by the invention is as follows: the invention provides a dynamic FPGA configuration method, and discloses a dynamic FPGA configuration method, which can realize dynamic switching of FPGA functions in a flexible and configurable mode so as to meet different applications.
The technical scheme of the invention is as follows: a FPGA dynamic configuration method comprises the following steps:
the microprocessor realizes remote data transmission based on the Ethernet through a PHY chip, receives a remote control instruction through the Ethernet, stores the control instruction in an EEPROM, and automatically loads the last control instruction when the microprocessor is powered on next time; the control instruction is a time sequence instruction for controlling the FPGA to load different storage area codes from the BPI Flash;
the microprocessor controls BPI Flash and high two bits of address through a GPIO interface to divide the Flash into four storage areas, wherein each storage area stores one program and can dynamically configure four programs;
step (3) the FPGA downloads the user program to different storage areas in the BPI Flash through a JTAG interface;
and (4) the microprocessor controls a configuration pin of the FPGA through the GPIO interface to enable the configuration pin to generate a section of low level pulse, and after the FPGA detects the pulse, the FPGA loads user programs from different storage areas of the BPI Flash by combining with the high two bits of the BPI Flash address to realize the dynamic configuration of the FPGA function.
Furthermore, the microprocessor is connected with the Ethernet through a PHY chip, is connected with the EEPROM storage module through an I2C interface, and is also responsible for controlling the upper two bits of a BPI Flash address, controlling a configuration pin of an FPGA and controlling a power supply module; the FPGA is connected with the BPI Flash through an address line, a data line and a control line.
Furthermore, the method is suitable for Virtex-7FPGA chips of Xilinx company.
Further, the microprocessor is an STM32F 429.
Further, the BPI Flash is S29GL 01G.
Has the advantages that:
compared with the prior art, the invention has the advantages that: compared with the user program single download based on the JTAG mode, the FPGA function dynamic switching can be realized in a flexible and configurable mode so as to meet different applications.
Drawings
FIG. 1 is a block diagram of the system architecture of the present invention.
Detailed Description
The technical solutions in the embodiments of the present invention will be described clearly and completely with reference to the accompanying drawings in the embodiments of the present invention, and it is obvious that the described embodiments are only a part of the embodiments of the present invention, rather than all embodiments, and all other embodiments obtained by a person skilled in the art based on the embodiments of the present invention belong to the protection scope of the present invention without creative efforts.
The invention relates to a FPGA dynamic configuration method, which is suitable for Virtex-7FPGA chips of Xilinx company, and the specific model is XC7V690T-2FFG 1927I; the microprocessor is STM32F 429; is suitable for S29GL01G BPI Flash. The dynamic switching of FPGA functions can be realized in a flexible and configurable mode so as to meet different applications.
The system structure block diagram of the invention is shown in fig. 1.
The system comprises a microprocessor STM32F429, XC7V690T-2FFG1927I type FPGA, S29GL01G type BPI Flash, a JTAG download module, a PHY chip, an EEPROM storage module and a power supply module. The microprocessor is connected with the Ethernet through the PHY chip, is connected with the EEPROM storage module through the I2C interface, and is also responsible for controlling the high two bits of the BPI Flash address, controlling the configuration pins of the FPGA and controlling the power supply module. The FPGA is mainly connected with the BPI Flash through an address line, a data line and a control line.
According to one embodiment of the invention, the process of performing FPRA dynamic configuration is as follows:
the microprocessor realizes remote data transmission based on the Ethernet through a PHY chip, receives a remote control instruction through the Ethernet, stores the control instruction in an EEPROM, and automatically loads the last control instruction when the microprocessor is powered on next time; the control instruction can be a time sequence instruction for controlling the FPGA to load different storage area codes from the BPI Flash.
The microprocessor controls BPI Flash and high two bits of address through a GPIO interface to divide the Flash into four storage areas, wherein each storage area stores one program and can dynamically configure four programs; the invention is optional, and the BPI Flash can be other storage modules, and is taken as an example here.
Step (3) the FPGA downloads the user program to different storage areas in the BPI Flash through a JTAG interface;
and (4) the microprocessor controls a configuration pin of the FPGA through the GPIO interface to enable the configuration pin to generate a section of low level pulse, and after the FPGA detects the pulse, the FPGA loads user programs from different storage areas of the BPI Flash by combining with the high two bits of the BPI Flash address to realize the dynamic configuration of the FPGA function. The invention respectively stores 4 programs in 4 storage areas of BPI Flash, and the dynamic configuration of FPGA among 4 programs can be realized by the method of the invention.
In summary, the present invention discloses a dynamic configuration method for an FPGA, which can implement dynamic switching of FPGA functions in a flexible and configurable manner to meet different applications.
Those skilled in the art will appreciate that the invention may be practiced without these specific details.
The foregoing is only a preferred embodiment of the present invention, and it should be noted that, for those skilled in the art, various modifications and decorations can be made without departing from the principle of the present invention, and these modifications and decorations should also be regarded as the protection scope of the present invention.
Claims (5)
1. A FPGA dynamic configuration method is characterized by comprising the following steps:
the microprocessor realizes remote data transmission based on the Ethernet through a PHY chip, receives a remote control instruction through the Ethernet, stores the control instruction in an EEPROM, and automatically loads the last control instruction when the microprocessor is powered on next time; the control instruction is a time sequence instruction for controlling the FPGA to load different storage area codes from the BPI Flash;
the microprocessor controls BPI Flash and high two bits of address through a GPIO interface to divide the Flash into four storage areas, wherein each storage area stores one program and can dynamically configure four programs;
step (3) the FPGA downloads the user program to different storage areas in the BPI Flash through a JTAG interface;
and (4) the microprocessor controls a configuration pin of the FPGA through the GPIO interface to enable the configuration pin to generate a section of low level pulse, and after the FPGA detects the pulse, the FPGA loads user programs from different storage areas of the BPI Flash by combining with the high two bits of the BPI Flash address to realize the dynamic configuration of the FPGA function.
2. The method for dynamically configuring an FPGA of claim 1, wherein:
the microprocessor is connected with the Ethernet through a PHY chip, is connected with the EEPROM storage module through an I2C interface, and is also responsible for controlling the high two bits of the BPI Flash address, controlling the configuration pins of the FPGA and controlling the power supply module; the FPGA is connected with the BPI Flash through an address line, a data line and a control line.
3. The method for dynamically configuring an FPGA of claim 1, wherein: the method is suitable for Virtex-7FPGA chips of Xilinx company.
4. The method for dynamically configuring an FPGA of claim 1, wherein: the microprocessor is STM32F 429.
5. The method for dynamically configuring an FPGA of claim 1, wherein: the BPI Flash is S29GL 01G.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011522137.5A CN112650543A (en) | 2020-12-21 | 2020-12-21 | FPGA dynamic configuration method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011522137.5A CN112650543A (en) | 2020-12-21 | 2020-12-21 | FPGA dynamic configuration method |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112650543A true CN112650543A (en) | 2021-04-13 |
Family
ID=75359022
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011522137.5A Pending CN112650543A (en) | 2020-12-21 | 2020-12-21 | FPGA dynamic configuration method |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112650543A (en) |
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE10355865A1 (en) * | 2003-11-26 | 2005-06-30 | Paul, Lutz, Dipl.-Ing. | Electronic-mail data coding and decoding method for use in e.g. communication system, involves sending signature marked in partial cipher to local area network upon generation of BAPA keys using Diffie-Hellmann procedure |
CN102360302A (en) * | 2011-10-13 | 2012-02-22 | 福建星网锐捷网络有限公司 | On-line upgrading method and device of configuration file of field-programmable gate array (FPGA) |
CN202838306U (en) * | 2012-09-06 | 2013-03-27 | 北京雪迪龙科技股份有限公司 | Field programmable gata array (FPGA) configuration system based on microprocessor |
CN105224503A (en) * | 2015-10-10 | 2016-01-06 | 浙江大学 | A kind of circuit increasing FPGA dynamic-configuration optional procedure quantity |
CN106201605A (en) * | 2016-06-30 | 2016-12-07 | 成都金本华电子有限公司 | FPGA start-up loading FLASH upgrade-system based on FPGA and PowerPC and method |
CN106372032A (en) * | 2016-09-08 | 2017-02-01 | 北京航空航天大学 | FPGA (field programmable gate array) dynamic reconstruction method |
CN106775796A (en) * | 2015-11-25 | 2017-05-31 | 大唐移动通信设备有限公司 | A kind of firmware upgrade method, apparatus and system |
CN107577438A (en) * | 2017-09-22 | 2018-01-12 | 深圳市紫光同创电子有限公司 | The partitioning method and device of the memory space of flash memory in field programmable gate array |
CN107832078A (en) * | 2017-09-15 | 2018-03-23 | 西南电子技术研究所(中国电子科技集团公司第十研究所) | FPGA program online updating circuits based on DSP |
CN109542478A (en) * | 2018-11-09 | 2019-03-29 | 中电科仪器仪表有限公司 | A kind of system and method updating FPGA program in SPI Flash |
CN109710564A (en) * | 2018-11-27 | 2019-05-03 | 上海航天电子通讯设备研究所 | The large-scale wireless reconfiguration system of FPGA configurator based on VDES communication equipment |
CN110045743A (en) * | 2019-05-05 | 2019-07-23 | 西北工业大学 | It is a kind of to be added in the air by oily visual sensing system hardware structure based on nobody of DSP and FPGA |
-
2020
- 2020-12-21 CN CN202011522137.5A patent/CN112650543A/en active Pending
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE10355865A1 (en) * | 2003-11-26 | 2005-06-30 | Paul, Lutz, Dipl.-Ing. | Electronic-mail data coding and decoding method for use in e.g. communication system, involves sending signature marked in partial cipher to local area network upon generation of BAPA keys using Diffie-Hellmann procedure |
CN102360302A (en) * | 2011-10-13 | 2012-02-22 | 福建星网锐捷网络有限公司 | On-line upgrading method and device of configuration file of field-programmable gate array (FPGA) |
CN202838306U (en) * | 2012-09-06 | 2013-03-27 | 北京雪迪龙科技股份有限公司 | Field programmable gata array (FPGA) configuration system based on microprocessor |
CN105224503A (en) * | 2015-10-10 | 2016-01-06 | 浙江大学 | A kind of circuit increasing FPGA dynamic-configuration optional procedure quantity |
CN106775796A (en) * | 2015-11-25 | 2017-05-31 | 大唐移动通信设备有限公司 | A kind of firmware upgrade method, apparatus and system |
CN106201605A (en) * | 2016-06-30 | 2016-12-07 | 成都金本华电子有限公司 | FPGA start-up loading FLASH upgrade-system based on FPGA and PowerPC and method |
CN106372032A (en) * | 2016-09-08 | 2017-02-01 | 北京航空航天大学 | FPGA (field programmable gate array) dynamic reconstruction method |
CN107832078A (en) * | 2017-09-15 | 2018-03-23 | 西南电子技术研究所(中国电子科技集团公司第十研究所) | FPGA program online updating circuits based on DSP |
CN107577438A (en) * | 2017-09-22 | 2018-01-12 | 深圳市紫光同创电子有限公司 | The partitioning method and device of the memory space of flash memory in field programmable gate array |
CN109542478A (en) * | 2018-11-09 | 2019-03-29 | 中电科仪器仪表有限公司 | A kind of system and method updating FPGA program in SPI Flash |
CN109710564A (en) * | 2018-11-27 | 2019-05-03 | 上海航天电子通讯设备研究所 | The large-scale wireless reconfiguration system of FPGA configurator based on VDES communication equipment |
CN110045743A (en) * | 2019-05-05 | 2019-07-23 | 西北工业大学 | It is a kind of to be added in the air by oily visual sensing system hardware structure based on nobody of DSP and FPGA |
Non-Patent Citations (3)
Title |
---|
刘沛文;虞亚君;: "基于FPGA的16位宽加载电路的8位宽加载方法", 电子与封装, no. 10, 20 October 2020 (2020-10-20) * |
孙平, 岳筱萍: "I~2C总线技术在病房呼叫系统中的应用", 微计算机信息, no. 09, 15 September 2002 (2002-09-15) * |
王维;何菲玲;陈卓;: "基于TS201的FPGA配置设计", 声学与电子工程, no. 03, 15 September 2015 (2015-09-15) * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1549961A (en) | Dynamic voltage control method and apparatus | |
CN101593169A (en) | The configuration manager of configurable logic array and collocation method | |
CN102200916A (en) | Electronic equipment, configurable member and method for storing configuration information of configurable member | |
CN107704285B (en) | Multi-version configuration chip, system and method for field programmable gate array | |
CN105159695B (en) | A kind of radio-frequency module initialization system and method based on non-volatile control | |
US9584130B1 (en) | Partial reconfiguration control interface for integrated circuits | |
CN103257612B (en) | A kind of fpga chip of flexible configuration and collocation method thereof | |
JP3880310B2 (en) | Semiconductor integrated circuit | |
CN103777972A (en) | System based on field-programmable gate array, configuration method and upgrading method | |
CN109613970B (en) | Low-power-consumption processing method based on FPGA and DSP framework | |
CN104050146A (en) | Micro control unit (MCU) chip | |
CN201886458U (en) | Large-scale code loading system of FPLD (field programmable logic device) | |
CN111190855A (en) | FPGA multiple remote configuration system and method | |
CN102043636B (en) | Method and device for loading field programmable gate array bit file | |
CN103890713B (en) | Device and method for managing the register information in processing system | |
CN112650543A (en) | FPGA dynamic configuration method | |
CN104049995A (en) | Method and device for configuring FPGA (field programmable gate array) in MCU (microprogrammed control unit) chip | |
CN203250312U (en) | Extensible common core processing daughter board with interferences | |
CN104656871A (en) | Method for reducing power consumption of electronic device and electronic device | |
CN109542484A (en) | A kind of method and system of online updating FPGA configuration chip | |
CN105550010A (en) | Wireless intelligent program loading method and system based on SoC | |
CN101127027B (en) | FPGA loading method and its equipment | |
CN103853561A (en) | Embedded satellite-born software refactoring system and method | |
CN104133545A (en) | State machines of power management module of system-on-chip and creating method thereof | |
JP2001512258A (en) | Circuit device for memory occupation area management and processing of user program in small control unit |
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 |