CN114706607B - 一种用于全可编程片上系统的软件在线升级方法 - Google Patents
一种用于全可编程片上系统的软件在线升级方法 Download PDFInfo
- Publication number
- CN114706607B CN114706607B CN202210633730.XA CN202210633730A CN114706607B CN 114706607 B CN114706607 B CN 114706607B CN 202210633730 A CN202210633730 A CN 202210633730A CN 114706607 B CN114706607 B CN 114706607B
- Authority
- CN
- China
- Prior art keywords
- chip
- upgrading
- main control
- control module
- software
- 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
Links
Images
Classifications
-
- 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
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Abstract
本发明涉及片上系统软件升级技术领域,公开了一种用于全可编程片上系统的软件在线升级方法,包括以下步骤:S1,确定升级模块需要的升级软件程序版本后,升级软件处理模块将升级软件程序生成boot文件并存储;S2,上位机的升级软件处理模块将boot文件传输给主控模块;S3,主控模块将boot文件传输给全可编程片上系统,并命令全可编程片上系统进行在线升级操作;S4,全可编程片上系统进行在线升级操作。本发明解决了现有技术存在的软件升级操作复杂、便捷性差、效率较低等问题。
Description
技术领域
本发明涉及片上系统软件升级技术领域,具体是一种用于全可编程片上系统的软件在线升级方法。
背景技术
SoC(System on Chip)称为系统级芯片,又称为片上系统,Xilinx公司的Zynq7000系列产品是一种常用的全可编程片上系统,主要包含PS(processing system)和PL(Programmable Logic)两部分。Zynq 7000系列可扩展处理平台将双核ARMCortex-A9MPCore处理器的处理系统(ProcessingSystem,PS)与可编程逻辑资源的可编程逻辑(ProgrammableLogic,PL)系统紧密集成在一起,实现了灵活性更高、可配置性更高、功耗更低、运行效率更高的嵌入式系统硬件设计。Zynq 7000系列可扩展处理平台具有软件、硬件和I/O的可编程性,可通过AXI总线实现ARM与FPGA之间逻辑功能互联与功能扩展。Zynq7000系列基于“ARM+FPGA”的体系结构,主要包括处理器系统、可编程逻辑资源;其中,处理器系统包括应用处理单元、存储器接口和内部互联中心;可编程逻辑资源,也就是FPGA部分。
伴随社会的迅猛发展,面对通讯、测控一系列科技产品的新需求不断增加,功能的不断叠加、产品软件问题的修改等问题,需要及时对产品软件进行升级和维护,不断提升产品性能,使得产品适用性更高。传统的软件升级方法需要连接仿真器对程序进行烧写。由于现在的设备都是集成度很高的产品,对产品进行升级需要拆卸其他无关模块,连接相应仿真器,对软件进行升级。这种方式面对升级产品数量巨大、拆卸环境复杂、产品进行升级、维护的便捷性和适用性都很差。
发明内容
为克服现有技术的不足,本发明提供了一种用于全可编程片上系统的软件在线升级方法,解决现有技术存在的软件升级操作复杂、便捷性差、效率较低等问题。
本发明解决上述问题所采用的技术方案是:
一种用于全可编程片上系统的软件在线升级系统,包括相互通信相连的上位机、集成机箱,所述上位机包括升级软件处理模块,所述集成机箱包括相互通信相连的主控模块、升级模块,所述升级软件处理模块与所述主控模块通信相连,所述升级模块包括全可编程片上系统,所述全可编程片上系统与所述主控模块通信相连。
作为一种优选的技术方案,所述全可编程片上系统为ZYNQ-7000系列芯片,所述升级模块还包括与所述全可编程片上系统通信相连的FLASH芯片。
作为一种优选的技术方案,所述主控模块与ZYNQ-7000系列芯片通过RapidIO总线通信相连。
作为一种优选的技术方案,所述FLASH芯片的型号为SM25QH256MX。
作为一种优选的技术方案,所述上位机还包括网口,所述升级软件处理模块与所述主控模块通过所述网口通信相连。
作为一种优选的技术方案,所述升级软件处理模块用以,将升级软件程序生成boot文件并存储,以及,将boot文件传输给主控模块;所述主控模块用以,将boot文件传输给全可编程片上系统,并命令全可编程片上系统进行在线升级操作;所述全可编程片上系统用以,进行在线升级操作。
一种用于全可编程片上系统的软件在线升级方法,采用所述的一种用于全可编程片上系统的软件在线升级系统,包括以下步骤:
S1,确定升级模块需要的升级软件程序版本后,升级软件处理模块将升级软件程序生成boot文件并存储;
S2,上位机的升级软件处理模块将boot文件传输给主控模块;
S3,主控模块将boot文件传输给全可编程片上系统,并命令全可编程片上系统进行在线升级操作;
S4,全可编程片上系统进行在线升级操作。
作为一种优选的技术方案,步骤S4包括以下步骤:
S41,全可编程片上系统接收主控模块传输的boot文件;
S42,启动boot文件在线升级。
作为一种优选的技术方案,采用的一种用于全可编程片上系统的软件在线升级系统的所述升级模块还包括与所述全可编程片上系统通信相连的FLASH芯片,步骤S42包括以下步骤:
S421,全可编程片上系统将boot文件存储到FLASH芯片相应存储空间中;
S422,全可编程片上系统通过QSPI FLASH方式启动FLASH芯片相应存储空间中的boot文件。
本发明相比于现有技术,具有以下有益效果:
(1)本发明对设备软件的升级只需要通过上位机升级软件就能完成,解决了传统方式面对升级产品数量巨大、拆卸环境复杂等情况,产品进行升级、维护的便捷性和适用性都很差的不足,软件升级操作简单,使用便捷,升级效率较高;
(2)本发明选用RapidIO总线用于升级,RapidIO具备高性能、低引脚数、其带宽能够达到1Gbps-10 Gbps的特点,非常适合高性能的嵌入式互联系统等特性,因此选用本发明在主控模块和升级模块之间带宽和速率资源都非常充足,不但在线升级时效高,而且因为硬件资源十分充裕,如果后续需要添加主控模块和升级模块在线升级以外的其他功能交互,只需要考虑软件功能添加就可以,产品实用性和延续性都很高;
(3)本发明对于升级设计一套集成机箱和主控模块,在集成机箱里面可以添加多套升级模块,提高了在线升级功能的沿用性和时效性。
附图说明
图1为本发明所述的一种用于全可编程片上系统的软件在线升级系统的结构框图;
图2为本发明所述的一种用于全可编程片上系统的软件在线升级方法的流程示意图;
图3为软件在线升级启动的流程示意图。
具体实施方式
下面结合实施例及附图,对本发明作进一步的详细说明,但本发明的实施方式不限于此。
实施例1
如图1至图3所示,本实施例阐述本发明的一种具体的实施方式。
本发明所述的一种用于全可编程片上系统的软件在线升级系统的结构框图如图1所示。
上位机包括升级软件处理模块,升级软件处理模块硬件包含上位机交互的网口,升级软件处理模块软件包含上位机升级软件。上位机里开发升级软件,升级软件通过网口交互将升级程序发送给主控模块,主控模块通过RapidIO总线将升级程序发送给升级模块的ZYNQ-7000系列芯片,ZYNQ-7000将升级程序存储在FLASH芯片中,ZYNQ-7000通过QSPIFLASH方式启动升级程序。
对于升级模块的控制选用ZYNQ-7000芯片,ZYNQ-7000包含处理器系统(Processing System,PS)和可编程逻辑器件(Programmable Logic,PL)两部分,处理器系统集成了ARM Cortex-A9双核,PS和PL可以通过高效的AXI总线进行交互。通过PS进行与RapidIO总线进行协议的处理,因为协议经常会根据需求进行更改,其C语言平台方便修改进行调试。PL进行部分驱动的处理。升级模块中的FLASH芯片,用于存储升级的BOOT程序,BOOT程序通过QSPI FLASH方式启动程序。FLASH芯片选用SM25QH256MX,其为国产化芯片,沿用性更高,而且成本较低、应用广泛。
升级模块和主控模块选用RapidIO总线进行交互,RapidIO具备高性能、低引脚数、其带宽能够达到1Gbps-10 Gbps的特点,非常适合高性能的嵌入式互联系统,在集成机箱里面用于模块之间的交互。由于其高性能、高带宽的优势,如果主控模块和升级模块交互之间添加升级功能以外的功能,资源和性能都足够,使得整体架构继承性和拓展性更高。
上位机上设计一套升级软件,升级软件通过网口与主控模块进行交互,并且设计一套交互协议。上位机升级软件用网口进行交互,该方法继承现在常用硬件方式,使其适用性更高。制定交互协议保证了升级功能的可靠性。
在线升级方法流程如图2所示。
确定程序版本后将程序生成boot文件,存储在上位机升级软件中,通过网口按照网口交互协议将boot文件传输到主控模块,主控模块通过RapidIO总线控制ZYNQ-7000按照交互协议对在线升级进行操作:分别进行boot文件的接收,boot文件存储到FLASH交互等。
RapidIO在线升级交互协议如表1所示。
表1RapidIO在线升级交互协议表
软件在线升级启动流程如图3所示。
首先升级模块上电,升级模块自动执行ZYNQ-7000的片内BootROM程序,完成对相应控制其初始化,然后加载ZYNQ-7000的FSBL程序加载到OCM上运行,并完成ZYNQ-7000的DDR、时钟等初始化,加载程序到DDR,进而加载PL程序、PS的cpu0程序,PS的cpu1程序。整个程序完全启动,实现在线升级程序的启动功能。其中,cpu0、cpu1是ZYNQ-7000的PS中的两个cpu核,本方案也可以采用只含有一个cpu的ZYNQ-7000。
1、通过本发明,对设备软件的升级只需要通过上位机升级软件就能完成,由于现在的设备都是集成度很高的产品,对产品进行升级需要拆卸相邻模块,连接相应仿真器,对软件进行升级。传统方式面对升级产品数量巨大、拆卸环境复杂等情况,产品进行升级、维护的便捷性和适用性都很差。本发明有效的解决了传统方法的上述在线软件升级的不足。
2、本发明选用RapidIO总线用于升级,RapidIO具备高性能、低引脚数、其带宽能够达到1Gbps-10 Gbps的特点,非常适合高性能的嵌入式互联系统等特性,因此选用本发明在主控模块和升级模块之间带宽和速率资源都非常充足,不但在线升级时效高,而且因为硬件资源十分充裕,如果后续需要添加主控模块和升级模块在线升级以外的其他功能交互,只需要考虑软件功能添加就可以,产品实用性和延续性都很高。
3、本发明对于升级设计一套集成机箱和主控模块,在集成机箱里面可以添加多套升级模块,提高了在线升级功能的沿用性和时效性。
如上所述,可较好地实现本发明。
本说明书中所有实施例公开的所有特征,或隐含公开的所有方法或过程中的步骤,除了互相排斥的特征和/或步骤以外,均可以以任何方式组合和/或扩展、替换。
以上所述,仅是本发明的较佳实施例而已,并非对本发明作任何形式上的限制,依据本发明的技术实质,在本发明的精神和原则之内,对以上实施例所作的任何简单的修改、等同替换与改进等,均仍属于本发明技术方案的保护范围之内。
Claims (1)
1.一种用于全可编程片上系统的软件在线升级方法,其特征在于,采用用于全可编程片上系统的软件在线升级系统,包括相互通信相连的上位机、集成机箱,所述上位机包括升级软件处理模块,所述集成机箱包括相互通信相连的主控模块、升级模块,所述升级软件处理模块与所述主控模块通信相连,所述升级模块包括全可编程片上系统,所述全可编程片上系统与所述主控模块通信相连;
所述全可编程片上系统为ZYNQ-7000系列芯片,所述升级模块还包括与所述全可编程片上系统通信相连的FLASH芯片;
所述升级软件处理模块用以,将升级软件程序生成boot文件并存储,以及,将boot文件传输给主控模块;所述主控模块用以,将boot文件传输给全可编程片上系统,并命令全可编程片上系统进行在线升级操作;所述全可编程片上系统用以,进行在线升级操作;
所述主控模块与ZYNQ-7000系列芯片通过RapidIO总线通信相连;
所述FLASH芯片的型号为SM25QH256MX;
所述上位机还包括网口,所述升级软件处理模块与所述主控模块通过所述网口通信相连;
包括以下步骤:
S1,确定升级模块需要的升级软件程序版本后,升级软件处理模块将升级软件程序生成boot文件并存储;
S2,上位机的升级软件处理模块将boot文件传输给主控模块;
S3,主控模块将boot文件传输给全可编程片上系统,并命令全可编程片上系统进行在线升级操作;
S4,全可编程片上系统进行在线升级操作;
步骤S4包括以下步骤:
S41,全可编程片上系统接收主控模块传输的boot文件;
S42,启动boot文件在线升级;
步骤S42包括以下步骤:
S421,全可编程片上系统将boot文件存储到FLASH芯片相应存储空间中;
S422,全可编程片上系统通过QSPI FLASH方式启动FLASH芯片相应存储空间中的boot文件。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210633730.XA CN114706607B (zh) | 2022-06-07 | 2022-06-07 | 一种用于全可编程片上系统的软件在线升级方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210633730.XA CN114706607B (zh) | 2022-06-07 | 2022-06-07 | 一种用于全可编程片上系统的软件在线升级方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114706607A CN114706607A (zh) | 2022-07-05 |
CN114706607B true CN114706607B (zh) | 2022-09-02 |
Family
ID=82177619
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210633730.XA Active CN114706607B (zh) | 2022-06-07 | 2022-06-07 | 一种用于全可编程片上系统的软件在线升级方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114706607B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105573800A (zh) * | 2015-12-22 | 2016-05-11 | 中船重工(武汉)凌久电子有限责任公司 | 一种基于zynq的单板或多板系统及在线更新方法 |
CN108415717A (zh) * | 2018-03-22 | 2018-08-17 | 南京尤尼泰信息科技有限公司 | 一种zynqsoc固件升级方法及升级装置 |
CN112379895A (zh) * | 2020-11-13 | 2021-02-19 | 天津市英贝特航天科技有限公司 | 通过1553b升级zynq fpga程序的方法 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN207586900U (zh) * | 2017-12-13 | 2018-07-06 | 天津光电通信技术有限公司 | 基于zynq的远程升级系统 |
US11860815B2 (en) * | 2018-10-04 | 2024-01-02 | Brookhaven Science Associates, Llc | High-data throughput reconfigurable computing platform |
CN110806889B (zh) * | 2019-11-01 | 2023-05-26 | 中电凯杰科技有限公司 | 一种基于5g的zynq程序远程升级系统及升级方法 |
CN112711560B (zh) * | 2021-02-10 | 2023-05-26 | 西南电子技术研究所(中国电子科技集团公司第十研究所) | ZYNQ芯片单点连接RapidIO总线的重构方法 |
CN114281394A (zh) * | 2021-12-06 | 2022-04-05 | 武汉船舶通信研究所(中国船舶重工集团公司第七二二研究所) | 一种快速在线升级程序的方法、系统、设备及介质 |
-
2022
- 2022-06-07 CN CN202210633730.XA patent/CN114706607B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105573800A (zh) * | 2015-12-22 | 2016-05-11 | 中船重工(武汉)凌久电子有限责任公司 | 一种基于zynq的单板或多板系统及在线更新方法 |
CN108415717A (zh) * | 2018-03-22 | 2018-08-17 | 南京尤尼泰信息科技有限公司 | 一种zynqsoc固件升级方法及升级装置 |
CN112379895A (zh) * | 2020-11-13 | 2021-02-19 | 天津市英贝特航天科技有限公司 | 通过1553b升级zynq fpga程序的方法 |
Non-Patent Citations (1)
Title |
---|
CAN总线实现的ZYNQ-7000程序在线升级方法;龚行梁等;《新器件技术》;20181101;63-66 * |
Also Published As
Publication number | Publication date |
---|---|
CN114706607A (zh) | 2022-07-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105279133B (zh) | 基于SoC在线重构的VPX并行DSP信号处理板卡 | |
CN104881105B (zh) | 电子装置 | |
CN111488308B (zh) | 一种支持不同架构多处理器扩展的系统和方法 | |
WO2023208135A1 (zh) | 一种服务器及其服务器管理系统 | |
CN111190855A (zh) | 一种fpga多重远程配置系统及方法 | |
CN102253844B (zh) | 一种启动处理器的方法和设备 | |
CN105159617A (zh) | 一种池化存储系统架构 | |
CN109542481B (zh) | 一种多模式多功能测试仪器自动配置装置和方法 | |
CN110222007B (zh) | 一种基于申威众核处理器的加速运行方法 | |
CN114138360B (zh) | DSP在Flash上的多核烧写启动方法及系统 | |
CN105912493B (zh) | 车载高速数字信号运算板卡及数字信号运算方法 | |
CN109525276B (zh) | 一种具备外部下载功能的多模数据链系统及方法 | |
CN112631968B (zh) | 一种动态可演化智能处理芯片结构 | |
CN114706607B (zh) | 一种用于全可编程片上系统的软件在线升级方法 | |
CN111309667A (zh) | 基于实时总线的异构多处理器平台的动态可重配置方法 | |
CN107273249A (zh) | 主板测试方法、处理器和主板测试系统 | |
CN116306408B (zh) | 片上系统soc的验证环境确定方法、装置、设备和存储介质 | |
CN116757132A (zh) | 异构多核fpga电路架构、构建方法及数据传输方法 | |
CN110768874B (zh) | 一种模块化的以太网测试仪 | |
CN113849355A (zh) | I2c速率自适应调整方法、系统、终端及存储介质 | |
CN113377404A (zh) | 一种新能源车域控制器安全监控芯片程序更新方法及系统 | |
CN113778040B (zh) | 一种基于火电厂嵌入式智能控制的装置及方法 | |
CN116501508B (zh) | 一种天基边缘计算模块及设备 | |
CN211123939U (zh) | 一种具有海量复杂数据处理能力的amc信号处理板 | |
CN216719089U (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |