CN111008029A - 一种Zynq处理器的远程升级系统和方法 - Google Patents
一种Zynq处理器的远程升级系统和方法 Download PDFInfo
- Publication number
- CN111008029A CN111008029A CN201911237808.0A CN201911237808A CN111008029A CN 111008029 A CN111008029 A CN 111008029A CN 201911237808 A CN201911237808 A CN 201911237808A CN 111008029 A CN111008029 A CN 111008029A
- Authority
- CN
- China
- Prior art keywords
- zynq processor
- zynq
- memory
- processor
- program
- 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.)
- Granted
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
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)
- Stored Programmes (AREA)
Abstract
本发明实施例公开了一种Zynq处理器的远程升级系统和方法,远程升级系统包括:远程服务器,Zynq处理器和存储器;远程服务器通过串口与Zynq处理器连接,远程服务器和Zynq处理器,被配置为通过串口连接进行数据通信,使得Zynq处理器接收由远程服务器发送的升级程序;Zynq处理器通过快速串行接口与存储器连接,Zynq处理器,被配置为通过快速串行接口与存储器进行数据通信。本发明实施例解决了Zynq处理器在使用中的程序的不便捷加载问题,在程序升级过程中,可以使用简单便捷的方式,在无需提供额外仿真器的情况下,实现批量生产。
Description
技术领域
本申请涉及但不限于通信技术领域,尤指一种Zynq处理器的远程升级系统和方法。
背景技术
随着嵌入式系统的发展与创新,越来越多的场合需要嵌入式芯片有更多功能、更高性能以及更高灵活性。
赛灵思(又称为:Xilinx)公司提出的Zynq处理器拥有全可编程、且可扩展的处理平台结构,越来越多的用户倾向于该产品的使用,但是该产品的程序升级需要使用到Xilinx公司提供的一系列软件和硬件(仿真器)的支持,而传统工业技术使用的串口通信技术成熟可靠,而且价格低廉,在需要用到批量生产的情况下,有必要设计通过串口等成熟简单的通信方式去加载升级其程序。
发明内容
为了解决上述技术问题,本发明实施例提供了一种Zynq处理器的远程升级系统和方法,以解决Zynq处理器在使用中的程序的不便捷加载问题,在程序升级过程中,可以使用简单便捷的方式,在无需提供额外仿真器的情况下,实现批量生产。
本发明实施例提供一种Zynq处理器的远程升级系统,包括:远程服务器,Zynq处理器和存储器;
所述远程服务器通过串口与Zynq处理器连接,远程服务器和Zynq处理器,被配置为通过串口连接进行数据通信,使得Zynq处理器接收由远程服务器发送的升级程序;
所述Zynq处理器通过快速串行接口与存储器连接,Zynq处理器,被配置为通过所述快速串行接口与存储器进行数据通信。
可选地,如上所述的Zynq处理器的远程升级系统中,所述Zynq处理器通过所述快速串行接口与存储器进行数据通信,包括:
Zynq处理器通过快速串行接口向存储器写入升级程序,Zynq处理器在启动阶段调用存储器中的升级程序。
可选地,如上所述的Zynq处理器的远程升级系统中,所述Zynq处理器包括:计算处理模块和可编程模块,计算处理模块内配置有内存单元。
可选地,如上所述的Zynq处理器的远程升级系统中,所述内存单元存储有快速串行接口驱动程序,所述远程服务器和Zynq处理器通过串口连接进行数据通信,包括:
计算处理模块,被配置为接收远程服务器发送的升级程序,并将所述升级程序存储在内存单元中;
所述Zynq处理器通过所述快速串行接口与存储器进行数据通信,包括:
计算处理模块,还被配置为通过所述快速串行接口和快速串行接口驱动程序将内存单元中的升级程序写入到存储器中,还被配置为在Zynq处理器的启动阶段调用存储器中的升级程序。
可选地,如上所述的Zynq处理器的远程升级系统中,所述计算处理模块和可编程模块通过先进可扩展接口总线相连接;
计算处理模块,还被配置为在Zynq处理器的启动阶段,将从存储器中调用的升级程序通过先进可扩展接口总线传输给可编程模块。
可选地,如上所述的Zynq处理器的远程升级系统中,所述远程服务器和Zynq处理器为通过串口连接进行数据通信,包括:
所述远程服务器和Zynq处理器在通过串口连接进行数据通信的过程中,采用握手协议发送升级程序的数据包。
本发明实施例还一种Zynq处理器的远程升级方法,采用如上述任一项所述的Zynq处理器的远程升级系统执行所述远程升级方法,包括:
远程服务器通过串口将升级程序传输给Zynq处理器;
Zynq处理器通过快速串行接口将接收到的升级程序写入到存储器中;
Zynq处理器在启动阶段调用存储器中的升级程序进行启动。
可选地,如上所述的无线电高度模拟方法中,所述远程服务器通过串口将升级程序传输给Zynq处理器,包括:
远程服务器通过串口将升级程序传输给Zynq处理器的过程中,通过握手协议发送升级程序的数据包。
本发明实施例提供的Zynq处理器的远程升级系统和方法中,该远程升级系统由Zynq处理器,存储器,以及远程控制器组成;远程控制器与Zynq处理器通过串口连接与通讯,Zynq处理器的PS端与PL端通过axi总线连接与通信,Zynq处理器与存储器通过qspi口连接与通信;串口通信中增加握手协议,主要传输Zynq处理器需要升级的程序文件;Zynq处理器内部PS端接收到程序文件后将其写入ddr3内存区域;PS端通过qspi驱动程序将ddr3中的程序文件写入到存储器中;串口传输加上握手协议,确保数据传输的稳定性和健壮性;数据暂存在ddr3上加上crc校验,保证写入flash之前数据的正确性;使用串口加载方式,在不用仿真器和sdk的情况下能够进行程序升级,提高了批量升级的便携性和通用性。本发明实施例提供的技术方案,基于串口通信实现了Zynq处理器的远程加载,不仅能完成远程加载,而且增加了握手协议,保证了程序数据的完整性和正确性。
附图说明
附图用来提供对本发明技术方案的进一步理解,并且构成说明书的一部分,与本申请的实施例一起用于解释本发明的技术方案,并不构成对本发明技术方案的限制。
图1为本发明实施例提供的一种Zynq处理器的远程升级系统的结构示意图;
图2为本发明实施例提供的另一种Zynq处理器的远程升级系统的结构示意图;
图3为本发明实施例提供的一种Zynq处理器的远程升级方法的流程图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,下文中将结合附图对本发明的实施例进行详细说明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。
以下通过几个具体实施例对本发明提供的技术方案进行详细说明。本发明提供以下几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例不再赘述。
图1为本发明实施例提供的一种Zynq处理器的远程升级系统的结构示意图。本实施例提供的Zynq处理器的远程升级系统可以包括:远程服务器110,Zynq处理器120和存储器130;本发明实施例中的Zynq处理器为Arm和PFGA的整合体,远程服务器可以为一PC电脑,存储器可以为一Flash芯片。
如图1所示,远程服务器110通过串口与Zynq处理器120连接,远程服务器110和Zynq处理器120,被配置为通过串口连接进行数据通信,使得Zynq处理器120接收由远程服务器发110送的升级程序;
该Zynq处理器120通过快速串行接口(简称为:Qspi)与存储器130连接,Zynq处理器120,被配置为通过快速串行接口与存储器130进行数据通信。
本发明实施例中,Zynq处理器通过快速串行接口与存储器进行数据通信的实现方式,可以包括:
Zynq处理器通过快速串行接口向存储器写入升级程序,以及Zynq处理器在启动阶段调用存储器中的升级程序。
可选地,图2为本发明实施例提供的另一种Zynq处理器的远程升级系统的结构示意图。在图1所示远程升级系统的结构基础上,本发明实施例提供的Zynq处理器的远程升级系统中,Zynq处理器120可以包括:计算处理模块(即图2中的PS端)和可编程模块(即图2中的PL端),计算处理模块内配置有内存单元(即图2中的ddr3)。
本发明实施例中的内存单元ddr3存储有快速串行接口驱动程序,本发明实施例中远程服务器和Zynq处理器通过串口连接进行数据通信的实现方法,包括:
计算处理模块,被配置为接收远程服务器发送的升级程序,并将所述升级程序存储在内存单元中;
本发明实施例中Zynq处理器通过快速串行接口与存储器进行数据通信的实现方法,可以包括:
计算处理模块,还被配置为通过快速串行接口和快速串行接口驱动程序将内存单元中的升级程序写入到存储器中,还被配置为在Zynq处理器的启动阶段调用存储器中的升级程序。
本发明实施例中的计算处理模块和可编程模块可以通过先进可扩展接口总线相连接;
计算处理模块,还被配置为在Zynq处理器的启动阶段,将从存储器中调用的升级程序通过先进可扩展接口总线传输给可编程模块。
本发明实施例中远程服务器和Zynq处理器为通过串口连接进行数据通信的实现方式,可以包括:
所述远程服务器和Zynq处理器在通过串口连接进行数据通信的过程中,采用握手协议发送升级程序的数据包。
本发明实施例提供的Zynq处理器的远程升级系统,基于串口通信实现了Zynq处理器的远程加载,不仅能完成远程加载,而且增加了握手协议,保证了程序数据的完整性和正确性。
本发明实施例提供的基于串口通信的Zynq处理器的远程加载系统中,该远程升级系统由Zynq处理器,存储器,以及远程控制器组成;远程控制器与Zynq处理器通过串口连接与通讯,Zynq处理器的PS端与PL端通过axi总线连接与通信,Zynq处理器与存储器通过qspi口连接与通信;串口通信中增加握手协议,主要传输Zynq处理器需要升级的程序文件;Zynq处理器内部PS端接收到程序文件后将其写入ddr3内存区域;PS端通过qspi驱动程序将ddr3中的程序文件写入到存储器中;串口传输加上握手协议,确保数据传输的稳定性和健壮性;数据暂存在ddr3上加上crc校验,保证写入flash之前数据的正确性;使用串口加载方式,在不用仿真器和sdk的情况下能够进行程序升级,提高了批量升级的便携性和通用性。
基于本发明上述实施例提供的Zynq处理器的远程升级系统,本发明实施例还提供一种Zynq处理器的远程升级方法,图3为本发明实施例提供的一种Zynq处理器的远程升级方法的流程图。该远程升级方法可以包括:
步骤1,远程服务器通过串口将升级程序传输给Zynq处理器;
步骤2,Zynq处理器通过快速串行接口将接收到的升级程序写入到存储器中;
步骤3,Zynq处理器在启动阶段调用存储器中的升级程序进行启动。
其中,步骤1的实现方式可以为:远程服务器通过串口将升级程序传输给Zynq处理器的过程中,通过握手协议发送升级程序的数据包。
本发明实施例提供的Zynq处理器的远程升级系统和方法,在程序加载中,远程服务器和Zynq处理器的交互采用串口通信方式替代jtag接口(即仿真器的接口)的交互方式;为了增强通信过程中数据的健壮性,在串口交互中增加握手协议;通过编写qspi接口驱动程序完成flash的读写,将程序写入到程序启动flash中。采用本发明实施例提供过的Zynq处理器的远程升级系统,可以在没有Xilinx公司的一系列软件和硬件的情况下,能够实现Zynq处理器的软件加载,在批量生产中采用串口就能完成嵌入式产品的程序升级,操作方便,流程简捷。
以下通过一个具体实施方式对本发明实施例提供的Zynq处理器的远程升级方法进行详细说明。
图3为本发明实施例提供的一种Zynq处理器的远程升级方法的流程图。图3示意出了串口通信中握手协议的具体实施方式。
(1)Zynq处理器的启动流程分三个阶段,阶段0为芯片内部bootRom的执行,即芯片上电后自己执行boot程序(即引导程序),该程序固化在芯片内部,实现设备的初始化,完成芯片启动功能,阶段1为第一级启动引导程序(fsbl),该阶段程序用户可修改定制,完成PL端(FPGA部分)逻辑程序的搬运和配置以及PS端(Arm部分)用户程序的搬运和执行,阶段2为通用用户程序,完成用户定制的嵌入式应用程序。其中,fsbl程序和用户程序都需要按规定的格式存储在程序启动flash中;由于上述阶段1和阶段2的程序需要存储在Flash中,因此,提出了本发明实施例中的技术方案;
(2)为了使得Zynq处理器能够在上电后执行用户定制程序,通过一套系统将用户程序加载到程序启动flash中,其系统组成如图2所示。该远程升级系统由Zynq处理器,存储器flash,以及远程服务器(例如一PC电脑)组成。
(3)PC电脑与Zynq处理器通过串口连接与通讯,Zynq内部的PS端与PL端通过AXI总线连接与通信,Zynq处理器与flash通过Qspi接口连接与通信;PC电脑和Zynq的串口通信主要传输Zynq处理器需要升级的程序文件;Zynq内部PS端接收到程序文件后将其写入ddr3内存区域;PS端处理器通过Qspi驱动程序将ddr3中的程序文件写入到程序存储flash中。
(4)在串口的通信中,增加了握手协议,其具体实施如图3所示。(以下A表示PC电脑端,B表示Zynq处理器)
A1:PC电脑端将需要加载的程序文件通过读文件方式将其读取到缓存中,计算数据的数量并且封包,然后等待Zynq处理器发送加载信号;
B1:Zynq处理器上电,执行bootRom并初始化串口外设,发送加载信号0xee到串口线(图中的Uart)上去通知PC电脑需要进入加载模式,并且监测串口线上的回应信号;
A2:PC电脑收到加载信号0xee,PC电脑进入加载模式,并且发送回应信号0xab给Zynq处理器;
B2:Zynq处理器接收到回应信号0xab,也进入加载模式,发送请求长度信号0xcc给pc,并且准备接收数据长度值;请求中发送总共要接收的长度值;
A3:PC电脑接收到请求长度信号0xcc,将需要发送数据的总长度发送给Zynq处理器;
B3:Zynq处理器接收到数据总长度后,将其存储在指定位置(即ddr3),并且发送总长度接收完成信号0xbb给PC电脑;
A4:PC电脑接收到总长度接收完成信号0xbb,等待Zynq处理器发送准备接收信号;
B4:发送准备接收信号0xdd给PC电脑,通知PC电脑开始发送数据包过来;
A5:开始轮询发送程序数据给Zynq处理器,直到发送完成,并且等待接收完成信号;
B5:开始轮询接收PC电脑发送过来的数据,并且把这些数据存储在ddr3的指定位置,并且通过之前接收到的总长度计算接收数据是否完成,若接收完成则发送数据传输完成信号0xaf给PC电脑;
A6:接收到Zynq处理器发送的数据传输完成信号0xaf后,完成串口加载流程,提示用户数据传输过程完成;
B6:将ddr3中的数据通过Qspi接口按顺序写入到flash中。
(5)通过编写Qspi接口的驱动程序,并且按照对应flash中的命令格式,编写flash读写程序。
虽然本发明所揭露的实施方式如上,但所述的内容仅为便于理解本发明而采用的实施方式,并非用以限定本发明。任何本发明所属领域内的技术人员,在不脱离本发明所揭露的精神和范围的前提下,可以在实施的形式及细节上进行任何的修改与变化,但本发明的专利保护范围,仍须以所附的权利要求书所界定的范围为准。
Claims (8)
1.一种Zynq处理器的远程升级系统,其特征在于,包括:远程服务器,Zynq处理器和存储器;
所述远程服务器通过串口与Zynq处理器连接,远程服务器和Zynq处理器,被配置为通过串口连接进行数据通信,使得Zynq处理器接收由远程服务器发送的升级程序;
所述Zynq处理器通过快速串行接口与存储器连接,Zynq处理器,被配置为通过所述快速串行接口与存储器进行数据通信。
2.根据权利要求1所述的Zynq处理器的远程升级系统,其特征在于,所述Zynq处理器通过所述快速串行接口与存储器进行数据通信,包括:
Zynq处理器通过快速串行接口向存储器写入升级程序,Zynq处理器在启动阶段调用存储器中的升级程序。
3.根据权利要求1所述的Zynq处理器的远程升级系统,其特征在于,所述Zynq处理器包括:计算处理模块和可编程模块,计算处理模块内配置有内存单元。
4.根据权利要求3所述的Zynq处理器的远程升级系统,其特征在于,所述内存单元存储有快速串行接口驱动程序,所述远程服务器和Zynq处理器通过串口连接进行数据通信,包括:
计算处理模块,被配置为接收远程服务器发送的升级程序,并将所述升级程序存储在内存单元中;
所述Zynq处理器通过所述快速串行接口与存储器进行数据通信,包括:
计算处理模块,还被配置为通过所述快速串行接口和快速串行接口驱动程序将内存单元中的升级程序写入到存储器中,还被配置为在Zynq处理器的启动阶段调用存储器中的升级程序。
5.根据权利要求4所述的Zynq处理器的远程升级系统,其特征在于,所述计算处理模块和可编程模块通过先进可扩展接口总线相连接;
计算处理模块,还被配置为在Zynq处理器的启动阶段,将从存储器中调用的升级程序通过先进可扩展接口总线传输给可编程模块。
6.根据权利要求1所述的Zynq处理器的远程升级系统,其特征在于,所述远程服务器和Zynq处理器为通过串口连接进行数据通信,包括:
所述远程服务器和Zynq处理器在通过串口连接进行数据通信的过程中,采用握手协议发送升级程序的数据包。
7.一种Zynq处理器的远程升级方法,其特征在于,采用如权利要求1~6中任一项所述的Zynq处理器的远程升级系统执行所述远程升级方法,包括:
远程服务器通过串口将升级程序传输给Zynq处理器;
Zynq处理器通过快速串行接口将接收到的升级程序写入到存储器中;
Zynq处理器在启动阶段调用存储器中的升级程序进行启动。
8.根据权利要求7所述的无线电高度模拟方法,其特征在于,所述远程服务器通过串口将升级程序传输给Zynq处理器,包括:
远程服务器通过串口将升级程序传输给Zynq处理器的过程中,通过握手协议发送升级程序的数据包。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911237808.0A CN111008029B (zh) | 2019-12-05 | 2019-12-05 | 一种Zynq处理器的远程升级系统和方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911237808.0A CN111008029B (zh) | 2019-12-05 | 2019-12-05 | 一种Zynq处理器的远程升级系统和方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111008029A true CN111008029A (zh) | 2020-04-14 |
CN111008029B CN111008029B (zh) | 2021-07-06 |
Family
ID=70114859
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911237808.0A Active CN111008029B (zh) | 2019-12-05 | 2019-12-05 | 一种Zynq处理器的远程升级系统和方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111008029B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104636300A (zh) * | 2015-02-09 | 2015-05-20 | 南京国电南自美卓控制系统有限公司 | 基于soc fpga的串行收发器及数据接收发送方法 |
CN106648803A (zh) * | 2016-12-30 | 2017-05-10 | 南京科远自动化集团股份有限公司 | 一种dsp芯片在线升级方法 |
CN108415717A (zh) * | 2018-03-22 | 2018-08-17 | 南京尤尼泰信息科技有限公司 | 一种zynqsoc固件升级方法及升级装置 |
CN110427206A (zh) * | 2019-07-18 | 2019-11-08 | 中国船舶重工集团公司第七0七研究所 | 一种基于zynq的算法动态更新方法 |
-
2019
- 2019-12-05 CN CN201911237808.0A patent/CN111008029B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104636300A (zh) * | 2015-02-09 | 2015-05-20 | 南京国电南自美卓控制系统有限公司 | 基于soc fpga的串行收发器及数据接收发送方法 |
CN106648803A (zh) * | 2016-12-30 | 2017-05-10 | 南京科远自动化集团股份有限公司 | 一种dsp芯片在线升级方法 |
CN108415717A (zh) * | 2018-03-22 | 2018-08-17 | 南京尤尼泰信息科技有限公司 | 一种zynqsoc固件升级方法及升级装置 |
CN110427206A (zh) * | 2019-07-18 | 2019-11-08 | 中国船舶重工集团公司第七0七研究所 | 一种基于zynq的算法动态更新方法 |
Non-Patent Citations (1)
Title |
---|
龚行梁,周强等: ""CAN总线实现的ZYNQ-7000程序在线升级方法"", 《单片机与嵌入式系统应用》 * |
Also Published As
Publication number | Publication date |
---|---|
CN111008029B (zh) | 2021-07-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8938609B2 (en) | Methods and apparatus for priority initialization of a second processor | |
US8660817B2 (en) | Hardware test and diagnosis system and method | |
US8745304B2 (en) | USB to SD bridge | |
KR100642045B1 (ko) | 호스트 프로세서로부터 멀티미디어 프로세서로 멀티미디어프로그램을 다운로드하는 시스템 및 방법 | |
US8700819B2 (en) | Host device suspending communication link to client device based on client device notification | |
US10937020B2 (en) | Wearable device with near-field communication function and near-field communication control system | |
US7908417B2 (en) | Motherboard system, storage device for booting up thereof and connector | |
US20100064036A1 (en) | Peripheral device operation method, peripheral device and host | |
CN101673202A (zh) | 一种程序烧写方法和系统以及一种待烧写装置和烧写装置 | |
CN103761129B (zh) | 一种在Bootloader层实现SDIO接口驱动的方法 | |
WO2021136200A1 (zh) | 引导程序的加载方法、存储介质及嵌入式终端 | |
US20230185554A1 (en) | Application installation method and electronic device for supporting same | |
CN111190855A (zh) | 一种fpga多重远程配置系统及方法 | |
WO2015196479A1 (zh) | 程序数据的更新方法及设备 | |
US20100049877A1 (en) | Peripheral equipment operating method, peripheral equipment and host | |
CN116431546B (zh) | 参数配置方法、电子设备、存储介质及程序产品 | |
CN111008029B (zh) | 一种Zynq处理器的远程升级系统和方法 | |
WO2024093542A1 (zh) | Usb免驱通信方法、装置、电子设备及存储介质 | |
CN101882110A (zh) | 下载数据的方法和终端设备 | |
TWI389032B (zh) | 可攜式通訊裝置及其韌體更新方法及系統 | |
CN109189705B (zh) | 一种usb扩展方法、装置、设备、存储介质及系统 | |
CN101593123A (zh) | 闪存烧录插件的固化方法以及终端设备 | |
CN104981814A (zh) | 安全协处理器引导性能 | |
CN115080091A (zh) | 一种卫星通信设备在线升级mcu固件的方法及系统 | |
CN115729633A (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 |