A method of remote upgrade of FPGA program based on ZYNQ chip is proposed. The main devices involved are zynq, FPGA, QSPI memory chip, EMMC memory chip and DDR3 memory chip. When the program needs to be upgraded, PC and ZYNQ connect through ethernet, transfer the program from PC to the EMMC memory chip outside ZYNQ for storage. Every time the device is powered on, the application program of ZYNQ's PS moves the FPGA program in EMMC memory chip to the PL part of ZYNQ. The transmission logic of SelectMap is written in PL, and the program can be transferred from the PL part to the FPGA through the SelectMap method. For startup. Data migration from EMMC memory chip to PL is implemented in DDR3 with ZYNQ after mapping physical address to virtual address. This method can realize remote upgrade of equipment.
【技术实现步骤摘要】
基于ZYNQ芯片实现FPGA程序远程升级的方法
本专利技术涉及一种基于ZYNQ芯片实现FPGA程序远程升级的方法,适用于FPGA进行高速数据处理,ZYNQ作为主控情况下,对FPGA进行远程程序更新及正常启动配置。
技术介绍
随着技术的发展,需要对设备的原有程序进行更新升级来增加新的功能或者修复bug。FPGA器件通常有3种程序下载方式:JTAG方式,主动配置方式,被动配置方式。JTAG通常用于调试。主动配置方式为FPGA每次上电时作为控制器,由FPGA器件引导配置操作过程,它控制着外部存储器和初始化过程,向存储器件主动读取数据。这种配置方式需要占用FPGA内部资源实现配置逻辑,就会挤占实现数据处理的资源;并且需要单独的外置存储器,就会占用更多的PCB空间。更新程序需要专用的烧写器与器件直连,不利于设备的高效维护。被动配置方式则是通过控制器控制,把FPGA当做存储器,把数据写入FPGA中。控制器件可以是通常的ARM架构的处理器,如stm32,也可以使用异构处理器,如ZYNQ。使用纯ARM处理器,如果不想占用FPGA资源,则需要把传输配置逻辑全部在处理器的应用层程序中完成,该方法虽然也可实现远程升级,但是完全的应用层传输效率较低。
技术实现思路
鉴于现有技术的状况及存在的不足,本专利技术提供了一种被动配置方式,即基于ZYNQ芯片实现FPGA程序远程升级的方法,用C++语言描述的基于异构ZYNQ芯片的SelectMap方法实现FPGA程序的远程升级。本专利技术为实现上述目的,所采用的技术手段是:一种基于ZYNQ芯片实现FPGA程序远程升级的方法,其特征在于,本方法利 ...
【技术保护点】
1. 一种基于ZYNQ芯片实现FPGA程序远程升级的方法,其特征在于,本方法利用Xilinx ZYNQ主控芯片作为运行平台,外围芯片包括Xilinx FPGA、QSPI存储芯片、EMMC存储芯片,DDR3内存芯片;QSPI存储芯片中存储启动文件,包括uboot、设备树和uImage,EMMC存储芯片中设有linux操作系统,ZYNQ与FPGA通过SelectMap连接,ZYNQ与上位机通过以太网连接;当需要更新FPGA程序时,上位机把程序文件通过网络通信的方式传给ZYNQ并替换掉原来存储在EMMC存储芯片中的旧版本FPGA程序,在每次设备上电时,ZYNQ芯片PS中的应用程序把EMMC存储芯片中的FPGA程序搬移到ZYNQ的PL部分,PL中编写了SelectMap的传输逻辑,可以把程序从PL部分的数据通过SelectMap方法传输给FPGA供其启动,这样便实现了FPGA的远程升级;SelectMap的控制线和数据线都与ZYNQ的GPIO相连,在ZYNQ的PL部分定义多个标志寄存器及控制寄存器,并通过编程实现SelectMap的传输过程;定义的寄存器有数据长度寄存器,PS与PL的握手状态寄 ...
【技术特征摘要】
1.一种基于ZYNQ芯片实现FPGA程序远程升级的方法,其特征在于,本方法利用XilinxZYNQ主控芯片作为运行平台,外围芯片包括XilinxFPGA、QSPI存储芯片、EMMC存储芯片,DDR3内存芯片;QSPI存储芯片中存储启动文件,包括uboot、设备树和uImage,EMMC存储芯片中设有linux操作系统,ZYNQ与FPGA通过SelectMap连接,ZYNQ与上位机通过以太网连接;当需要更新FPGA程序时,上位机把程序文件通过网络通信的方式传给ZYNQ并替换掉原来存储在EMMC存储芯片中的旧版本FPGA程序,在每次设备上电时,ZYNQ芯片PS中的应用程序把EMMC存储芯片中的FPGA程序搬移到ZYNQ的PL部分,PL中编写了SelectMap的传输逻辑,可以把程序从PL部分的数据通过SelectMap方法传输给FPGA供其启动,这样便实现了FPGA的远程升级;SelectMap的控制线和数据线都与ZYNQ的GPIO相连,在ZYNQ的PL部分定义多个标志寄存器及控制寄...
【专利技术属性】
技术研发人员:张海洋,王尧,陈伟峰,
申请(专利权)人:天津光电通信技术有限公司,
类型:发明
国别省市:天津,12
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。