CN110944042A - 一种基于fpga的在线自动更新协议方法 - Google Patents
一种基于fpga的在线自动更新协议方法 Download PDFInfo
- Publication number
- CN110944042A CN110944042A CN201911100096.8A CN201911100096A CN110944042A CN 110944042 A CN110944042 A CN 110944042A CN 201911100096 A CN201911100096 A CN 201911100096A CN 110944042 A CN110944042 A CN 110944042A
- Authority
- CN
- China
- Prior art keywords
- board card
- module
- version
- controller
- address
- 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
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/34—Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/71—Version control; Configuration management
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)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Stored Programmes (AREA)
Abstract
本发明属于工业级控制系统技术领域,具体涉及一种基于FPGA的在线自动更新协议方法。一个DCS分布式控制系统中包含多块电路板,控制站中控制器作为通信的主节点,其他板卡作为通信的从节点;从节点在上电后先进行初始化获取版本信息,等待控制器读取其状态和版本信息,当接收到控制器的启动命令后,才能启动。上述技术方案可以依靠DCS系统自身来保证板卡程序版本的一致性,无需人工干预;板卡进行热更换时,能够对板卡的版本进行确认,不一致时,自动更新。
Description
技术领域
本发明属于工业级控制系统技术领域,具体涉及一种基于FPGA的在线自动更新协议方法。
背景技术
在核电和工业控制等领域,一个分布式控制系统(DCS)往往有几百甚至几千块电路板,每个电路板有1个甚至多个处理器(FPGA、CPU)由于生产批次不同、或者板卡损坏更换,都可能导致处理器的程序版本存在不一致,由于数量众多排查困难,亟需研制一种基于FPGA的在线自动更新协议方法,从而解决上述问题。
发明内容
本发明要解决的技术问题是提供一种基于FPGA的在线自动更新协议方法,从而能于对分布式控制系统(DCS)中的处理器(CPU、FPGA)的程序版本进行确认,当不是预期版本时,自动进行更新。
为了实现这一目的,本发明采取的技术方案是:
一种基于FPGA的在线自动更新协议方法,一个DCS分布式控制系统中包含多块电路板,控制站中控制器作为通信的主节点,其他板卡作为通信的从节点;从节点在上电后先进行初始化获取版本信息,等待控制器读取其状态和版本信息,当接收到控制器的启动命令后,才能启动;
具体包括以下步骤:
(1)控制站各板卡处理器程序存储
工程师站编译工程组态时,将DCS控制站的所有板卡的配置信息一起编译,下装到控制器中;
控制站下装数据区按模块存储了CPU或FPGA的程序及校验信息,功能区分是控制站所有模块配置信息,地址根据配置分配;
(2)控制站各板卡处理器程序版本确认;
当控制站启动、更换新板卡时,控制器与站内其他板卡依次建立通信,首先询问该板卡的版本信息和状态;
板卡的状态分为以下四种:
一、板卡刚上电初始化中;
二、板卡初始化完成,等待启动;
三、板卡初始化失败;
四、板卡处于运行状态;
(3)控制站各板卡处理器程序版本更新
当其他板卡发送的程序版本信息与控制器本地存储版本不一致时,控制器将此板卡的程序逐包发送,然后回读比对成功后,发送复位命令,板卡进行初始化,此后控制器读取此板卡的程序版本并且比对成功后,发送启动命令启动此板卡。
进一步的,如上所述的一种基于FPGA的在线自动更新协议方法,步骤(1)中,板卡包括控制器和其他板卡。
进一步的,如上所述的一种基于FPGA的在线自动更新协议方法,步骤(1)中,配置信息包括板卡槽位、程序版本、程序所存的位置、校验。
进一步的,如上所述的一种基于FPGA的在线自动更新协议方法,在控制器存储分配表中,分组表头1的功能区分为预留区,地址为0x00-0x3FF。
进一步的,如上所述的一种基于FPGA的在线自动更新协议方法,分组表头2存储了每个板卡的CPU或FPGA程序版本及存储位置信息,功能区分包括三部分:(a)模块1-模块56的配置信息;每个模块16byte;模块1地址为0x400~0x40F,模块2地址为0x410~0x41F。。。。。。模块56地址为0x770~0x77F;(b)保留区;地址为0x780~0xBFB;(c)CRC32,地址为0xBFC~0xBFF。
进一步的,如上所述的一种基于FPGA的在线自动更新协议方法,分组表头2的模块1-模块56的模块版本信息中:
地址偏移0x00表示模块类型;
地址偏移0x01表示模块是否在位;
地址偏移0x02表示模块逻辑地址;
地址偏移0x03~0x05表示配置文件起始地址;
地址偏移0x06~0x08表示配置文件终止地址;
地址偏移0x09~0x0C表示目标模块存储器版本;
地址偏移0x0D~x0F表示保留区。
进一步的,如上所述的一种基于FPGA的在线自动更新协议方法,步骤(2)中:
当板卡处于第一种状态时,控制器跳过此板卡;
当板卡处于第二种状态时,控制器询问版本,比对与本地存储的版本信息是否一致:如果不一致,则进行下装更新程序版本,完成后发送复位此板卡的命令;若一致,发送启动命令,板卡进入运行状态;
当板卡处于第三种状态,控制器直接进行下装更新程序版本,完成后发送复位此板卡的命令;
当板卡处于第四种状态,则不作任何操作。
本发明技术方案的有益效果在于:
可以依靠DCS系统自身来保证板卡程序版本的一致性,无需人工干预;
板卡进行热更换时,能够对板卡的版本进行确认,不一致时,自动更新。
具体实施方式
下面结合具体实施例对本发明技术方案进行详细说明。
一种基于FPGA的在线自动更新协议方法,一个DCS分布式控制系统中包含多块电路板,控制站中控制器作为通信的主节点,其他板卡作为通信的从节点;从节点在上电后先进行初始化获取版本信息,等待控制器读取其状态和版本信息,当接收到控制器的启动命令后,才能启动;
具体包括以下步骤:
(1)控制站各板卡处理器程序存储
工程师站编译工程组态时,将DCS控制站的所有板卡的配置信息一起编译,下装到控制器中;
板卡包括控制器和其他板卡;
配置信息包括板卡槽位、程序版本、程序所存的位置、校验;
在控制器存储分配表中,分组表头1的功能区分为预留区,地址为0x00-0x3FF;
分组表头2存储了每个板卡的CPU或FPGA程序版本及存储位置信息,功能区分包括三部分:(a)模块1-模块56的配置信息;每个模块16byte;模块1地址为0x400~0x40F,模块2地址为0x410~0x41F。。。。。。模块56地址为0x770~0x77F;(b)保留区;地址为0x780~0xBFB;(c)CRC32,地址为0xBFC~0xBFF;
分组表头2的模块1-模块56的模块版本信息中:
地址偏移0x00表示模块类型;
地址偏移0x01表示模块是否在位;
地址偏移0x02表示模块逻辑地址;
地址偏移0x03~0x05表示配置文件起始地址;
地址偏移0x06~0x08表示配置文件终止地址;
地址偏移0x09~0x0C表示目标模块存储器版本;
地址偏移0x0D~x0F表示保留区;
控制站下装数据区按模块存储了CPU或FPGA的程序及校验信息,功能区分是控制站所有模块配置信息,地址根据配置分配;
(2)控制站各板卡处理器程序版本确认;
当控制站启动、更换新板卡时,控制器与站内其他板卡依次建立通信,首先询问该板卡的版本信息和状态;
板卡的状态分为以下四种:
一、板卡刚上电初始化中;
二、板卡初始化完成,等待启动;
三、板卡初始化失败;
四、板卡处于运行状态;
当板卡处于第一种状态时,控制器跳过此板卡;
当板卡处于第二种状态时,控制器询问版本,比对与本地存储的版本信息是否一致:如果不一致,则进行下装更新程序版本,完成后发送复位此板卡的命令;若一致,发送启动命令,板卡进入运行状态;
当板卡处于第三种状态,控制器直接进行下装更新程序版本,完成后发送复位此板卡的命令;
当板卡处于第四种状态,则不作任何操作。
(3)控制站各板卡处理器程序版本更新
当其他板卡发送的程序版本信息与控制器本地存储版本不一致时,控制器将此板卡的程序逐包发送,然后回读比对成功后,发送复位命令,板卡进行初始化,此后控制器读取此板卡的程序版本并且比对成功后,发送启动命令启动此板卡。
Claims (8)
1.一种基于FPGA的在线自动更新协议方法,其特征在于,一个DCS分布式控制系统中包含多块电路板,控制站中控制器作为通信的主节点,其他板卡作为通信的从节点;从节点在上电后先进行初始化获取版本信息,等待控制器读取其状态和版本信息,当接收到控制器的启动命令后,才能启动;
具体包括以下步骤:
(1)控制站各板卡处理器程序存储
工程师站编译工程组态时,将DCS控制站的所有板卡的配置信息一起编译,下装到控制器中;
控制站下装数据区按模块存储了CPU或FPGA的程序及校验信息,功能区分是控制站所有模块配置信息,地址根据配置分配;
(2)控制站各板卡处理器程序版本确认;
当控制站启动、更换新板卡时,控制器与站内其他板卡依次建立通信,首先询问该板卡的版本信息和状态;
板卡的状态分为以下四种:
一、板卡刚上电初始化中;
二、板卡初始化完成,等待启动;
三、板卡初始化失败;
四、板卡处于运行状态;
(3)控制站各板卡处理器程序版本更新
当其他板卡发送的程序版本信息与控制器本地存储版本不一致时,控制器将此板卡的程序逐包发送,然后回读比对成功后,发送复位命令,板卡进行初始化,此后控制器读取此板卡的程序版本并且比对成功后,发送启动命令启动此板卡。
2.如权利要求所述的一种基于FPGA的在线自动更新协议方法,其特征在于:步骤(1)中,板卡包括控制器和其他板卡。
3.如权利要求所述的一种基于FPGA的在线自动更新协议方法,其特征在于:
步骤(1)中,配置信息包括板卡槽位、程序版本、程序所存的位置、校验。
4.如权利要求所述的一种基于FPGA的在线自动更新协议方法,其特征在于:
在控制器存储分配表中,分组表头1的功能区分为预留区,地址为0x00-0x3FF。
5.如权利要求所述的一种基于FPGA的在线自动更新协议方法,其特征在于:
分组表头2存储了每个板卡的CPU或FPGA程序版本及存储位置信息,功能区分包括三部分:(a)模块1-模块56的配置信息;每个模块16byte;模块1地址为0x400~0x40F,模块2地址为0x410~0x41F。。。。。。模块56地址为0x770~0x77F;(b)保留区;地址为0x780~0xBFB;(c)CRC32,地址为0xBFC~0xBFF。
6.如权利要求所述的一种基于FPGA的在线自动更新协议方法,其特征在于:
分组表头2的模块1-模块56的模块版本信息中:
地址偏移0x00表示模块类型;
地址偏移0x01表示模块是否在位;
地址偏移0x02表示模块逻辑地址;
地址偏移0x03~0x05表示配置文件起始地址;
地址偏移0x06~0x08表示配置文件终止地址;
地址偏移0x09~0x0C表示目标模块存储器版本;
地址偏移0x0D~x0F表示保留区。
7.如权利要求所述的一种基于FPGA的在线自动更新协议方法,其特征在于:步骤(2)中:
当板卡处于第一种状态时,控制器跳过此板卡;
当板卡处于第二种状态时,控制器询问版本,比对与本地存储的版本信息是否一致:如果不一致,则进行下装更新程序版本,完成后发送复位此板卡的命令;若一致,发送启动命令,板卡进入运行状态;
当板卡处于第三种状态,控制器直接进行下装更新程序版本,完成后发送复位此板卡的命令;
当板卡处于第四种状态,则不作任何操作。
8.如权利要求所述的一种基于FPGA的在线自动更新协议方法,其特征在于:步骤(1)中,板卡包括控制器和其他板卡;
配置信息包括板卡槽位、程序版本、程序所存的位置、校验;
在控制器存储分配表中,分组表头1的功能区分为预留区,地址为0x00-0x3FF;
分组表头2存储了每个板卡的CPU或FPGA程序版本及存储位置信息,功能区分包括三部分:(a)模块1-模块56的配置信息;每个模块16byte;模块1地址为0x400~0x40F,模块2地址为0x410~0x41F。。。。。。模块56地址为0x770~0x77F;(b)保留区;地址为0x780~0xBFB;(c)CRC32,地址为0xBFC~0xBFF;
分组表头2的模块1-模块56的模块版本信息中:
地址偏移0x00表示模块类型;
地址偏移0x01表示模块是否在位;
地址偏移0x02表示模块逻辑地址;
地址偏移0x03~0x05表示配置文件起始地址;
地址偏移0x06~0x08表示配置文件终止地址;
地址偏移0x09~0x0C表示目标模块存储器版本;
地址偏移0x0D~x0F表示保留区;
步骤(2)中:
当板卡处于第一种状态时,控制器跳过此板卡;
当板卡处于第二种状态时,控制器询问版本,比对与本地存储的版本信息是否一致:如果不一致,则进行下装更新程序版本,完成后发送复位此板卡的命令;若一致,发送启动命令,板卡进入运行状态;
当板卡处于第三种状态,控制器直接进行下装更新程序版本,完成后发送复位此板卡的命令;
当板卡处于第四种状态,则不作任何操作。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911100096.8A CN110944042A (zh) | 2019-11-12 | 2019-11-12 | 一种基于fpga的在线自动更新协议方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911100096.8A CN110944042A (zh) | 2019-11-12 | 2019-11-12 | 一种基于fpga的在线自动更新协议方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110944042A true CN110944042A (zh) | 2020-03-31 |
Family
ID=69906702
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911100096.8A Pending CN110944042A (zh) | 2019-11-12 | 2019-11-12 | 一种基于fpga的在线自动更新协议方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110944042A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114172803A (zh) * | 2021-10-12 | 2022-03-11 | 四川恒湾科技有限公司 | 基于以太网交换技术的多fpga版本控制和配置系统及方法 |
WO2024060166A1 (zh) * | 2022-09-23 | 2024-03-28 | 华为技术有限公司 | 一种传感器软件变更方法、装置以及智能驾驶设备 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102629905A (zh) * | 2012-03-15 | 2012-08-08 | 汉柏科技有限公司 | 网络设备子卡启动控制方法 |
CN106293786A (zh) * | 2015-05-25 | 2017-01-04 | 特变电工新疆新能源股份有限公司 | 一种fpga配置文件更新方法及设备 |
CN106293797A (zh) * | 2015-06-11 | 2017-01-04 | 中兴通讯股份有限公司 | 一种在线更新单片机程序的方法及系统 |
CN106919426A (zh) * | 2017-03-03 | 2017-07-04 | 广东浪潮大数据研究有限公司 | 一种多路服务器fpga版本同步的方法 |
CN107402795A (zh) * | 2017-08-04 | 2017-11-28 | 北京煜邦电力技术股份有限公司 | 一种固件升级方法和系统 |
CN107533490A (zh) * | 2015-04-13 | 2018-01-02 | 三菱电机株式会社 | 控制系统及可编程逻辑控制器 |
CN109032635A (zh) * | 2018-07-16 | 2018-12-18 | 新华三技术有限公司 | 软件升级方法、装置和网络设备 |
CN110209405A (zh) * | 2019-06-04 | 2019-09-06 | 杭州安恒信息技术股份有限公司 | 分布式系统的自动化升级方法及装置 |
-
2019
- 2019-11-12 CN CN201911100096.8A patent/CN110944042A/zh active Pending
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102629905A (zh) * | 2012-03-15 | 2012-08-08 | 汉柏科技有限公司 | 网络设备子卡启动控制方法 |
CN107533490A (zh) * | 2015-04-13 | 2018-01-02 | 三菱电机株式会社 | 控制系统及可编程逻辑控制器 |
CN106293786A (zh) * | 2015-05-25 | 2017-01-04 | 特变电工新疆新能源股份有限公司 | 一种fpga配置文件更新方法及设备 |
CN106293797A (zh) * | 2015-06-11 | 2017-01-04 | 中兴通讯股份有限公司 | 一种在线更新单片机程序的方法及系统 |
CN106919426A (zh) * | 2017-03-03 | 2017-07-04 | 广东浪潮大数据研究有限公司 | 一种多路服务器fpga版本同步的方法 |
CN107402795A (zh) * | 2017-08-04 | 2017-11-28 | 北京煜邦电力技术股份有限公司 | 一种固件升级方法和系统 |
CN109032635A (zh) * | 2018-07-16 | 2018-12-18 | 新华三技术有限公司 | 软件升级方法、装置和网络设备 |
CN110209405A (zh) * | 2019-06-04 | 2019-09-06 | 杭州安恒信息技术股份有限公司 | 分布式系统的自动化升级方法及装置 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114172803A (zh) * | 2021-10-12 | 2022-03-11 | 四川恒湾科技有限公司 | 基于以太网交换技术的多fpga版本控制和配置系统及方法 |
CN114172803B (zh) * | 2021-10-12 | 2023-08-01 | 四川恒湾科技有限公司 | 基于以太网交换技术的多fpga版本控制和配置系统及方法 |
WO2024060166A1 (zh) * | 2022-09-23 | 2024-03-28 | 华为技术有限公司 | 一种传感器软件变更方法、装置以及智能驾驶设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11575769B2 (en) | Redundancy in a network centric process control system | |
CN110944042A (zh) | 一种基于fpga的在线自动更新协议方法 | |
US20090172223A1 (en) | Method and Apparatus for Distributing Configuration Files in a Distributed Control System | |
CN110209405B (zh) | 分布式系统的自动化升级方法及装置 | |
CN101814036A (zh) | 一种rf远程升级方法及系统 | |
US10469620B2 (en) | Method for transferring a new software version to at least one electricity meter via a communication network | |
CN109284121B (zh) | 储能电源多级网络多控制设备同步更新程序的方法及系统 | |
US20230131136A1 (en) | Configuration of slave devices in an industrial network system | |
CN104102519A (zh) | 机架式服务器系统的固件更新方法及其装置 | |
CN110990325A (zh) | 一种基于i2c总线的数据传输方法与装置 | |
CN111290351A (zh) | 一种驱动器管理方法、系统、计算机设备及存储介质 | |
US20090031177A1 (en) | Method for providing download and upload service in network control system | |
CN112286945A (zh) | 基于pbft算法的配置变更方法、系统、设备及介质 | |
CN110362323B (zh) | 基于分布式自组网的嵌入式终端设备程序更新方法 | |
CN101695027A (zh) | 一种分布式通信系统软件升级方法、装置和网络设备 | |
CN116170337A (zh) | 测试网络设备可靠性的方法、装置及系统 | |
CN116315168A (zh) | 一种电池管理系统信息更新方法和装置 | |
CN116016433A (zh) | 一种控制器局域网络的网络标识配置方法及装置 | |
CN115883360A (zh) | 一种基于物联网多层分级的远程升级方法 | |
CN104022901A (zh) | 国网集中器onu模块的plc配置管理方法 | |
CN110149389B (zh) | 一种全息显示装置的数据传输控制方法及系统 | |
CN110830275B (zh) | 一种转发器配置方法、装置、设备及可读存储介质 | |
EP3532931A1 (en) | Multi-core device with separate redundancy schemes in a process control system | |
CN116996341B (zh) | 设备管理方法、装置、终端设备以及存储介质 | |
CN116506296B (zh) | 一种基于入网地址标识的设备数据管理方法及计算机设备 |
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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20200331 |