[go: up one dir, main page]

CN102866900B - Upgrade the method and system of the configurator of control system - Google Patents

Upgrade the method and system of the configurator of control system Download PDF

Info

Publication number
CN102866900B
CN102866900B CN201210275430.5A CN201210275430A CN102866900B CN 102866900 B CN102866900 B CN 102866900B CN 201210275430 A CN201210275430 A CN 201210275430A CN 102866900 B CN102866900 B CN 102866900B
Authority
CN
China
Prior art keywords
configuration program
mcu
data
fpga control
control unit
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.)
Active
Application number
CN201210275430.5A
Other languages
Chinese (zh)
Other versions
CN102866900A (en
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.)
Yuneng Technology Co ltd
Original Assignee
ZHEJIANG YUNENG 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 ZHEJIANG YUNENG TECHNOLOGY Co Ltd filed Critical ZHEJIANG YUNENG TECHNOLOGY Co Ltd
Priority to CN201210275430.5A priority Critical patent/CN102866900B/en
Publication of CN102866900A publication Critical patent/CN102866900A/en
Application granted granted Critical
Publication of CN102866900B publication Critical patent/CN102866900B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Stored Programmes (AREA)
  • Cable Transmission Systems, Equalization Of Radio And Reduction Of Echo (AREA)

Abstract

The invention provides a kind of system upgrading the configurator of control system, comprising: host side, plc communication module, MCU unit and data-carrier store; Wherein, data-carrier store is connected with control system, is stored with and powers on first, second the identical configurator called for control system; Plc communication module is connected with MCU unit with host side respectively, transfers in MCU unit by host side by the configurator to be updated that line of electric force sends; MCU unit is connected with data-carrier store, receives configurator to be updated, after verification is correct in write data-carrier store, replaces the first configurator.Present invention utilizes the remote update of power line communication technology to the configurator of control system, eliminate the worry of traditional communication cable distribution, be very suitable for photovoltaic monitoring, electricity meter-reading industry.

Description

Method and system for updating configuration program of FPGA control unit
Technical Field
The invention relates to the technical field of data updating of an FPGA (field programmable gate array) control unit, in particular to a method and a system for remotely updating a configuration program of the FPGA control unit by utilizing a power line communication technology.
Background
The Field Programmable Gate Array (FPGA) completes circuit design by configuring a program file, thereby realizing different application functions. The downloading of the configuration file mostly uses a method for loading the configuration program by a plug-in special configuration device, and the method uses a device socket, is not beneficial to the manufacturing process of a high-density printing plate and can not realize the remote updating of the configuration program. Nowadays, more and more power systems are expected to enhance the maintainability of the system and realize system upgrade through the remote update of the FPGA configuration program.
Disclosure of Invention
The technical problem to be solved by the invention is to provide a method and a system for updating a configuration program of an FPGA control unit, which can save a communication cable and carry out remote operation by using a power line communication technology (PLC).
In order to solve the above technical problem, the present invention provides a system for updating a configuration program of an FPGA control unit, including: the system comprises a host terminal, a PLC communication module, an MCU unit and a data memory; wherein,
the data memory is connected with the FPGA control unit and internally stores a first configuration program for the FPGA control unit to be electrified and called;
the PLC communication module is respectively connected with the host computer end and the MCU unit, and transmits the configuration program to be updated, which is sent by the host computer end through a power line, to the MCU unit;
and the MCU unit is connected with the data memory, receives the configuration program to be updated, writes the configuration program into the data memory after checking the configuration program to be updated, and replaces the first configuration program.
The data storage also stores a second configuration program which is completely the same as the first configuration program and is used as a backup program.
Optionally, the data storage may further store application layer setting parameters of the FPGA control unit.
Optionally, the MCU unit is further connected to the FPGA control unit, and performs read-write operation on the application layer setting parameters stored in the data storage.
Optionally, the data memory is a flash memory.
Optionally, the number of the FPGA control units is one or more, and the FPGA control units are respectively located in one or more inverters, optimizers or smart meters.
In order to solve the above technical problem, the present invention further provides a method for updating a configuration program of an FPGA control unit, comprising the steps of:
A. the host end broadcasts a frame to inform an MCU unit correspondingly connected with one or more FPGA control units to start updating a configuration program;
B. the host side sequentially sends a plurality of data packets containing the configuration programs to be updated to one or more MCU units, the MCU unit (104) sequentially checks the configuration programs to be updated in the data packets, and the configuration programs to be updated are written into a data memory (105) after being checked correctly;
C. the host side inquires whether one or more MCU units receive all data packets of the configuration program, if not, the step is skipped to step D, and if so, the step is skipped to step G;
D. the host side retransmits the data packet to the MCU unit which does not receive the data packet in a fixed point manner;
E. the host terminal inquires whether the MCU unit which retransmits the data packet completely receives the data packet, if not, the step F is skipped, and if so, the step G is skipped;
F. the host side sends an instruction for recovering a first configuration program to the MCU unit which still cannot receive the data packet at a fixed point;
G. and the host end informs the MCU unit to send a signal to inform the FPGA control unit that the updating of the configuration program is completed, and needs to be electrified again to call a new program.
Optionally, after the step B and before the step C, the method further includes the steps of:
I. and C, the host end judges whether all data packets containing the configuration program to be updated are sent completely, if not, the host end waits for the continuous sending, and if so, the step C is skipped.
Compared with the prior art, the invention has the following advantages:
the MCU (microprocessor) unit of the invention is used as a medium for updating the configuration program, so that the program update is more flexible and reliable. In addition, the invention utilizes the power line communication technology to remotely update the configuration program of the FPGA control unit such as an inverter, an optimizer or an intelligent electric meter, and the like, thereby avoiding the trouble of traditional communication cable wiring and being very suitable for the photovoltaic monitoring and electric meter reading industries.
Drawings
The above and other features, properties and advantages of the present invention will become more apparent from the following description of the embodiments with reference to the accompanying drawings, in which:
FIG. 1 is a block diagram of a system for updating a configuration program of an FPGA control unit according to an embodiment of the present invention;
FIG. 2 is a flowchart illustrating a method for updating a configuration program of an FPGA control unit according to an embodiment of the present invention;
fig. 3 is a flowchart illustrating a method for updating a configuration program of an FPGA control unit according to another embodiment of the present invention.
Detailed Description
The present invention is further described in the following description with reference to specific embodiments and the accompanying drawings, wherein the details are set forth in order to provide a thorough understanding of the present invention, but it is apparent that the present invention can be embodied in many other forms different from those described herein, and it will be readily appreciated by those skilled in the art that the present invention can be implemented in many different forms without departing from the spirit and scope of the invention.
Fig. 1 is a block diagram of a system for updating a configuration program of an FPGA control unit according to an embodiment of the present invention. The FPGA control unit may be adapted to devices such as (micro) inverters, (micro) optimizers or smart meters of a distributed photovoltaic power generation system, the number of which may be one or more. As shown in fig. 1, the system 100 mainly includes: the host computer 102, the PLC communication module 103, the MCU 104 and the data memory 105. The data memory 105 is a Flash memory (Flash) and is connected to the FPGA control unit 101, and two configuration programs a and B identical to each other are stored therein. The configuration program a is a default configuration program for the FPGA control unit 101 to be powered on and called and a remote update replacement program. The configuration program B is only a backup program and does not carry out remote configuration. Once the data update of the configuration program A fails, the configuration program B is copied to the address unit of the configuration program A as a system recovery program. The PLC communication module 103 is connected to the host 102 and the MCU unit 104, respectively, and transmits the configuration program to be updated, which is transmitted by the host 102 through the power line 106, to the MCU unit 104. The MCU unit 104 is connected to the data storage 105, and is used as a medium for the configuration program, receives the configuration program to be updated, writes the configuration program into the data storage 105 after checking the configuration program, and replaces the first configuration program to complete the update of the configuration program of the FPGA control unit.
In addition, the data storage 105 may also store application layer setting parameters of the FPGA control unit 101, which are used to store adjustable parameters and may also be controlled remotely. The MCU unit 104 may also be connected to and communicate with the FPGA control unit 101 to perform read/write operations on application layer setting parameters stored in the data storage 105, so as to implement power-down protection on some key parameters.
The following describes the detailed procedures of configuration program update and system recovery of the FPGA control unit 101 of the present invention:
the microprocessor (MCU unit 104) is an important component in the system design, which performs data read and write operations on the data memory 105 through the SPI serial bus. When the MCU unit 104 performs read/write operations on the data storage 105, the FPGA control unit 101 sets the I/O port connected to the data storage 105 to a high impedance state. In this case, MCU 104 and data memory 105 form a 3-wire single-group connection.
Before the configuration program is updated, the original configuration program needs to be erased, and the address unit data where the configuration program a of the FPGA control unit 101 is located is cleared.
And then executing a programming instruction, and writing the configuration program to be updated into an address unit for the power-on call of the FPGA control unit 101.
After the above operations are completed, the FPGA control unit 101 is restarted, and at this time, the configuration program of the FPGA control unit 101 has been updated.
After the FPGA control unit 101 is started, CRC check is performed on data of the configuration program to detect whether there is data loss or confusion caused by remote communication.
Once the verification fails, the MCU unit 104 recovers the system program according to the change of the DONE signal of the pin of the FPGA control unit 101. Firstly, data in the address unit is cleared, then the data of the configuration program B of the FPGA control unit 101 is read out and written in a page programming mode until all the configuration programs are written in.
The following describes the steps of the remote batch update configuration program in the above embodiment:
based on a power line communication technology (PLC), the host side can update the configuration programs for a plurality of terminals at the same time. And the configuration file is continuously sent out through the PLC communication module through the host end. The MCU unit 104 of the terminal will record the sequence number of the received data packet statistically, and once the data packet is lost, it will inform the host to send the lost data packet again.
Fig. 2 is a flowchart illustrating a method for updating a configuration program of an FPGA control unit according to an embodiment of the present invention. The present embodiment follows the reference numerals and parts of the foregoing embodiments, wherein the same reference numerals are used to indicate the same or similar elements, and the description of the same technical contents is optionally omitted. For the description of the omitted parts, reference may be made to the foregoing embodiments, and the description of the embodiments is not repeated.
As shown in fig. 2, the method flow is mainly described from the perspective of the host 102, and may include:
executing step S201, the host 102 broadcasts a frame to notify the MCU unit 104 correspondingly connected to one or more FPGA control units 101 to start updating the configuration program;
step S202 is executed, the host 102 sequentially sends a plurality of data packets containing the configuration program to be updated to one or more MCU units 104, the MCU units 104 sequentially check the configuration program to be updated in the data packets after gradually receiving the data packets, and write the data packets into the data storage 105 after checking the configuration program to be updated;
executing step S203, the host 102 queries whether one or more MCU units 104 receive all the data packets of the configuration program, if not, jumping to step S204, if yes, jumping to step S207;
executing step S204, the host 102 retransmits the data packet to the MCU unit 104 that has not received the data packet at a fixed point;
step S205 is executed, the host 102 queries whether to receive the data packet from the MCU unit 104 that retransmits the data packet, if not, step S206 is skipped, and if yes, step S207 is skipped;
executing step S206, the host 102 sends an instruction to recover the first configuration program to the MCU unit 104 that still cannot receive the data packet at a fixed point;
step S207 is executed, the host 102 notifies the MCU unit 104 to send a signal to notify the FPGA control unit 101 that the update of the configuration program is completed, and the FPGA control unit needs to be powered on again to call a new program.
Fig. 3 is a flowchart illustrating a method for updating a configuration program of an FPGA control unit according to another embodiment of the present invention. The main difference between the present embodiment and the foregoing embodiment is that after step S202 is executed, before step S303 is executed, the method may further include the steps of:
step S202' is executed, the host 102 determines whether all the data packets containing the configuration program to be updated have been sent, if not, the host 102 waits for sending, and if yes, the next step S303 is skipped to.
The invention provides a method for realizing configuration of an FPGA control unit through a power line communication technology (PLC), which uses a Flash memory (Flash) as a data storage device and is matched with a microprocessor and a program to realize remote update of a configuration program of the FPGA control unit.
The MCU (microprocessor) unit of the invention is used as a medium for updating the configuration program, so that the program update is more flexible and reliable. In addition, the invention utilizes the power line communication technology to remotely update the configuration program of the FPGA control unit such as an inverter, an optimizer or an intelligent electric meter, and the like, thereby avoiding the trouble of traditional communication cable wiring and being very suitable for the photovoltaic monitoring and electric meter reading industries.
Although the present invention has been disclosed in terms of the preferred embodiment, it is not intended to limit the invention, and variations and modifications may be made by one skilled in the art without departing from the spirit and scope of the invention. Therefore, any modification, equivalent change and modification of the above embodiments according to the technical essence of the present invention are within the protection scope defined by the claims of the present invention, unless the technical essence of the present invention departs from the content of the present invention.

Claims (7)

1. A system (100) for updating a configuration program of an FPGA control unit (101), comprising: the system comprises a host terminal (102), a PLC communication module (103), an MCU unit (104) and a data memory (105); wherein,
the data memory (105) is connected with the FPGA control unit (101), and a first configuration program for the FPGA control unit (101) to be powered on and called and a second configuration program which is completely the same as the first configuration program and is used as a backup program are stored in the data memory;
the PLC communication module (103) is respectively connected with the host end (102) and the MCU unit (104), and transmits the configuration program to be updated, which is sent by the host end (102) through a power line (106), to the MCU unit (104);
the MCU unit (104) is respectively connected with the data memory (105) and the FPGA control unit (101), and the MCU unit (104) receives the configuration program to be updated, writes the configuration program into the data memory (105) after checking the configuration program to be updated correctly, and replaces the first configuration program;
in addition, after the FPGA control unit (101) is started, firstly, the replaced data of the first configuration program is checked to detect whether data loss and confusion caused by remote communication exist or not; and once the verification fails, the MCU (104) reads the backup program according to the pin signal change of the FPGA control unit (101) to recover the system program.
2. The system (100) according to claim 1, wherein said data memory (105) further stores application layer setting parameters of said FPGA control unit (101).
3. The system (100) according to claim 2, wherein said MCU unit (104) performs read and write operations on said application layer setting parameters stored in said data storage (105).
4. The system (100) of claim 1, wherein the data memory (105) is a flash memory.
5. The system (100) according to claim 1, wherein the number of FPGA control units (101) is one or more, respectively located in one or more inverters, optimizers or smartmeters.
6. A method of updating a configuration program of an FPGA control unit (101) using the system (100) of any one of claims 1 to 5, comprising the steps of:
A. a host terminal (102) broadcasts a frame to inform an MCU unit (104) correspondingly connected with one or more FPGA control units (101) to start updating a configuration program;
B. the host terminal (102) successively sends a plurality of data packets containing the configuration programs to be updated to one or more MCU units (104), and the MCU units (104) successively verify the configuration programs to be updated in the data packets and write the configuration programs into a data memory (105) after the configuration programs are verified to be correct;
C. the host (102) inquires whether one or more MCU units (104) receive all data packets of the configuration program, if not, skipping to step D, and if yes, skipping to step G;
D. the host end (102) retransmits the data packet to the MCU unit (104) which does not receive the data packet in a fixed point manner;
E. the host (102) inquires whether the MCU (104) retransmitting the data packet completely receives the data packet, if not, the step F is skipped, and if so, the step G is skipped;
F. the host end (102) sends an instruction for restoring a first configuration program to the MCU unit (104) which can not receive the data packet at a fixed point;
G. and the host end (102) informs the MCU unit (104) to send a signal to inform the FPGA control unit (101) that the updating of the configuration program is completed, and a new program needs to be called by electrifying again.
7. The method of claim 6, further comprising, after step B and before step C, the steps of:
I. and the host (102) judges whether all data packets containing the configuration program to be updated are sent, if not, the host (102) waits for the continuous sending, and if so, the step C is skipped.
CN201210275430.5A 2012-08-03 2012-08-03 Upgrade the method and system of the configurator of control system Active CN102866900B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210275430.5A CN102866900B (en) 2012-08-03 2012-08-03 Upgrade the method and system of the configurator of control system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210275430.5A CN102866900B (en) 2012-08-03 2012-08-03 Upgrade the method and system of the configurator of control system

Publications (2)

Publication Number Publication Date
CN102866900A CN102866900A (en) 2013-01-09
CN102866900B true CN102866900B (en) 2016-04-13

Family

ID=47445782

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210275430.5A Active CN102866900B (en) 2012-08-03 2012-08-03 Upgrade the method and system of the configurator of control system

Country Status (1)

Country Link
CN (1) CN102866900B (en)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104281470B (en) * 2014-05-09 2017-07-21 浙江大学 A kind of Multiple MCU System method for upgrading software based on single external serial ports
CN106293524B (en) * 2016-08-02 2019-05-24 浙江昱能科技有限公司 A kind of method of data storage
CN109086068A (en) * 2017-06-14 2018-12-25 浙江昱能科技有限公司 A kind of configuration data update system and method for control system
CN107465542A (en) * 2017-08-01 2017-12-12 郑州云海信息技术有限公司 A kind of remote management FPGA method and system
CN108873802A (en) * 2018-08-02 2018-11-23 佛山职业技术学院 A kind of circuit control system cleaning detection robot for photovoltaic module
CN109408099B (en) * 2018-09-13 2021-11-09 华东计算技术研究所(中国电子科技集团公司第三十二研究所) Remote FPGA firmware code updating system, method and medium
CN119718449A (en) * 2023-09-28 2025-03-28 宁德时代未来能源(上海)研究院有限公司 Configuration method, device, electronic device, and storage medium

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1843024A (en) * 2003-07-17 2006-10-04 埃内尔迪斯特里布齐恩公司 Method and system for remote updates of meters for metering the consumption of electricity, water or gas
CN102227090A (en) * 2011-06-27 2011-10-26 山西省电力公司临汾供电分公司 10kV Carrier Communication Intelligent Feeder Automation System
CN102609287A (en) * 2012-02-10 2012-07-25 株洲南车时代电气股份有限公司 Device for updating FPGA (Field Programmable Gate Array) from a long distance by CPU (Central Processing Unit) and method therefor

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9000897B2 (en) * 2010-09-14 2015-04-07 Texas Instruments Incorporated Systems and methods for implementing application profiles and device classes in power line communication (PLC) environments
CN102609286B (en) * 2012-02-10 2015-08-05 株洲南车时代电气股份有限公司 A kind of FPGA configurator remote update system based on processor control and method thereof

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1843024A (en) * 2003-07-17 2006-10-04 埃内尔迪斯特里布齐恩公司 Method and system for remote updates of meters for metering the consumption of electricity, water or gas
CN102227090A (en) * 2011-06-27 2011-10-26 山西省电力公司临汾供电分公司 10kV Carrier Communication Intelligent Feeder Automation System
CN102609287A (en) * 2012-02-10 2012-07-25 株洲南车时代电气股份有限公司 Device for updating FPGA (Field Programmable Gate Array) from a long distance by CPU (Central Processing Unit) and method therefor

Also Published As

Publication number Publication date
CN102866900A (en) 2013-01-09

Similar Documents

Publication Publication Date Title
CN102866900B (en) Upgrade the method and system of the configurator of control system
CN102609287B (en) A kind of devices and methods therefor by CPU remote update FPGA
CN102662701B (en) CPLD online upgrading method, device and service board
TWI467594B (en) Storage system and method for managing a plurality of storage devices
CN102591727B (en) Method for processing application data and computing node
CN106874054B (en) Method and system for on-line upgrading module program in repeater
WO2012079301A1 (en) Method and device for upgrading touch screen firmware of mobile terminal
CN109032632A (en) A kind of FOTA upgrade method, wireless communication terminal and storage medium
CN113672270B (en) Upgrading method, computer system and remote upgrading device
CN111506449B (en) Air conditioner parameter storage method and device and storage medium
CN111045703A (en) A method and system for upgrading battery management unit software
CN101815099B (en) Double-controller configuration information synchronization method and device in double-control disk array
CN102446141B (en) Device and method for realizing write protection control
CN111459516A (en) Firmware upgrading method and charging base
CN109992555A (en) A kind of management board shared for multipath server
CN104104436A (en) Electricity meter data acquisition apparatus with infrared upgrade function and upgrade method thereof
CN102043634A (en) Embedded system and embedded software upgrading method
CN103488516A (en) System repair method and electronic equipment
CN102543181A (en) Method and system for data storage
CN108287770B (en) Electronic device, information processing method, and readable storage medium
CN110096291A (en) Power management chip upgrades circuit, method and the network equipment
CN111124455B (en) Battery management system upgrading method, device, server and storage medium
CN110673871A (en) Online upgrade apparatus, control method, electronic device, and computer-readable medium
CN102142093A (en) Operation method and device for memory card
CN110704073A (en) Microcontroller programmer and programming method thereof

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C53 Correction of patent of invention or patent application
CB02 Change of applicant information

Address after: 314050 Jiaxing, South Lake District, Zhejiang, Asia Pacific Road, No. 1

Applicant after: Zhejiang Yuneng Technology Co.,Ltd.

Address before: 314050 Jiaxing, South Lake District, Zhejiang, Asia Pacific Road, No. 1

Applicant before: ALTENERGY POWER SYSTEM, Inc.

COR Change of bibliographic data

Free format text: CORRECT: APPLICANT; FROM: ALTENERGY POWER SYSTEM INC. TO: ZHEJIANG YUNENG TECHNOLOGY CO., LTD.

C14 Grant of patent or utility model
GR01 Patent grant
PE01 Entry into force of the registration of the contract for pledge of patent right
PE01 Entry into force of the registration of the contract for pledge of patent right

Denomination of invention: Method and system for updating configuration program of FPGA (Field Programmable Gate Array) control unit

Effective date of registration: 20191014

Granted publication date: 20160413

Pledgee: Bank of Jiaxing science and technology branch of Limited by Share Ltd.

Pledgor: Zhejiang Yuneng Technology Co.,Ltd.

Registration number: Y2019330000114

CP03 Change of name, title or address
CP03 Change of name, title or address

Address after: 3 / F, building 1, No. 1, Asia Pacific Road (Jiaxing Science and technology city), Nanhu District, Jiaxing City, Zhejiang Province

Patentee after: Yuneng Technology Co.,Ltd.

Address before: 314050 No. 1 Asia Pacific Road, South Lake District, Zhejiang

Patentee before: Zhejiang Yuneng Technology Co.,Ltd.

PC01 Cancellation of the registration of the contract for pledge of patent right
PC01 Cancellation of the registration of the contract for pledge of patent right

Granted publication date: 20160413

Pledgee: Bank of Jiaxing science and technology branch of Limited by Share Ltd.

Pledgor: Zhejiang Yuneng Technology Co.,Ltd.

Registration number: Y2019330000114