代码编织梦想

近来在调试ZYNQ与上位机的PCIe通信,因为上位机机箱重启BIOS检测方式设置不同,需要先将程序固化之后一起上电,这里简单的对QSPI启动的程序固化做个说明与总结。

由于ZYNQ的大部分芯片是把FLASH与PS端相连,所以这里的固化介绍是怎样从PS端烧写。

一.PL端的设置

1.1 block design中参数设置

我们主要介绍QSPI启动,用这种方式启动,在zynq核设计中一定要注意的一项I/O选择就是QSPI Flash ,需要注意的点有以下几个:

  1. 参照原理图,Bank的电压要设置正确
  2. 这里的Feedback Clock需要勾选,不然会导致之后烧写错误
    在这里插入图片描述

1.2生成bit文件并打开SDK

生成bit文件并将其导入SDK中,具体方法:File–Export–Export Hardware,这里要注意勾选include bit,然后启动SDKFile–Launch SDK。
在这里插入图片描述

二.PS端的设置

这里主要介绍烧写过程,我们用hello word工程做讲解。

2.1 建立hello word工程

File–New–Application Project,设置如下:
在这里插入图片描述
在这里插入图片描述

2.2 建立fsbl工程

这里的FSBL文件就是通过QSPI启动需要的引导文件,需要我们在SDK中新建,具体操作与建HELLO WORD工程一致,在Templates页面选择Zynq Fsbl即可。
在这里插入图片描述

2.3 生成.bin/.mcs格式文件

将程序烧写到Flash中实际就是将.bin文件或.mcs文件写入Flash,这里生成我们需要的.bin文件或.mcs文件,.bin格式文件用于SD卡启动与QSPI Flash启动,.mcs格式只能用于QSPI Flash启动。

2.3.1 右击hello 工程,选择Creat Boot Image。

在这里插入图片描述

2.3.2 生成文件

标记1:可以选择生成文件格式。
标记2:生成.bin/.mcs主要需要3个文件,分别是fsbl.elf文件,PL端生成的.bit文件与SDK中工程的.elf文件,需要注意的是这三个文件的顺序一定要正确。由于这里用的是hello例程,系统已将3个文件导入。如果系统没有导入需要我们自己到工程文件夹下依次添加。
在这里插入图片描述
3.可以在工程文件夹下的bootimage文件夹下发现我们生成的文件,这里生成的是.bin文件。
在这里插入图片描述

三、程序固化

3.1 通过SDK软件固化

打开 Xilinx–Program Flash烧写界面
1.导入生成的.bin文件。
2.导入fsbl工程下的fsbl.elf文件。
3.在擦除和烧写完成是进行自检。

在这里插入图片描述
然后点击Program就可以完成烧写。

3.2 通过Vivado软件固化

通过JTAG连接板卡,在FPGA芯片选项右键,选择Add Configuration Memory Device,然后选择板卡上对应的Flash型号。

在这里插入图片描述
这个界面也是选择的在SDK生成的.bin文件以及FSBL文件,然后点OK就可以完成烧写。
在这里插入图片描述

以上就是全部ZYNQ系列FPGA通过QSPI启动的固化方式的介绍。

注意:一定要正确配置PS核的信息,包括DDR3型号和BANK的电压

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_44010639/article/details/88051001

zynq_qspi_flash烧写教程_bronceyang131的博客-爱代码爱编程_zynq烧写flash

注意:烧写之前先保证程序在JTAG方式在线仿真没有问题。 1.       在BLOCK上的ZYNQ system的MIO Configure添加Quad SPI Flash部分,注意一定要勾选Feedback clk; 2.      Clock configure 中的设置QSPI时钟,就把它设置为150MHz吧(米联开发板这么设的)。 3.

zynq7010基于qspi flash linux移植笔记(1)-爱代码爱编程

Zynq7010基于qspi flash的linux移植笔记(1) 一、Zynq7010平台相关二、uboot相关源码修改1、qspi flash分区表2、将W25Q256 flash驱动编入uboot3、编译ubo

zynq7010基于qspi flash linux移植笔记:利用busybox制作ramdisk(2)-爱代码爱编程

Zynq7010基于qspi flash linux移植笔记(2) 三、制作ramdisk文件系统 1、编译busybox 这里用的是busybox-1.28.3,网上很多资源。进入busybox的源码目录,输入

zynq平台下的QSPI FLASH烧写问题-爱代码爱编程

2019-10-27 使用jtag下载自己生产的boot_myir.bin成功,串口能够打印。怀疑可能用SD卡的那种方式传递boot不可靠,具体原因不详。下次的实验可以将uboot的IP地址更换,看看是否生效。Uboot更换ip生效。 2019-11-14 烧写内核后产生错误如下: SF: 4718592 bytes @ 0x500000 Read:

ZYNQ 开发板(zedboard)QSPI flash烧写-爱代码爱编程

以ZYNQ 用PL按键通过中断控制PS端LED亮灭实验为例 vivado设计 使能QSPI控制器 在 Vivado 界面左侧选择 Open Block Design, 然后在右侧的 Diagram 界面中双击 ZYNQ Processing System 模块修改其配置。 使能 QSPI , 如下图所示: 设置完成后点击“OK” 。 然后在 Diagr

zynq烧写QSPI FLASH经验-爱代码爱编程

最近工程需要远程进行代码的更新,查阅了一些资料,找到了multiBoot来实现。 zynq启动顺序依次是BootROM、fsbl、应用层。 根据boot的帧头查找过程, 正常的flash下载过程如下图: 需要下载的程序,每包分成了0x20000(128k)byte,下载到flash中。从地址0开始擦除,4325376 bytes擦除完成。 修改偏移量如

ZYNQ(PS) 动态加载APP之一-爱代码爱编程

这里主要涉及ZYNQ加载流程及裸机下的动态加载 平台 : zedboard vivado : vivado 2018.3 1. IAP简介 IAP,全称In Application Programing, 在应用编程。简单理解,即在程序运行过程中进行编程(升级程序,更新固件) 由ZYNQ的启动特性可知,上电后会执行BootROM,然后跳转到FSBL

ZYNQ裸板:程序固化篇-爱代码爱编程

前言   一般的调试中我们都是通过 JTAG 接口将 FPGA 配置文件和应用程序下载到 ZYNQ 器件中。同样的,我们也可以将尝试把程序存储在非易失性存储器中,在上电或者复位时让程序自动运行,这个过程需要启动引导程序( Boot Loader) 的参与。 Boot Loader 会加载 FPGA 配置文件,以及运行在 ARM 中的软件应用。好吧下面又要

ZYNQ系列(三) QSPI自启动工程-爱代码爱编程

ZYNQ系列(三) QSPI自启动工程 第一章 Petalinux创建工程第二章 Petalinux-config配置说明第三章 QSPI自启动工程 文章目录 ZYNQ系列(三) QSPI自启动工程前言一、创建Petalinux工程二、Petalinux-config配置说明1. 进入配置界面2.配置FLASH SETING3. 配置spi启动

ZYNQ烧写程序到flash-爱代码爱编程

1.打开SDK创建FBSl项目 点击finish 2.创建BootImage 导入fsbl.elf、.bin、.elf三个文件,Create Image 生成BOOT.bin文件 3.将BOOT文件烧录到FLASH image File选择2中生成的BOOT.bin文件,FSBL File选择fsbl.elf文件,连接好ZYNQ的Jtag,

zynq7000序列Linux系统中烧写QspiFlash中启动程序的一种方法-爱代码爱编程

黑金zynq7100模块采用2片QspiFLash并联 + eMMC的存储方案;qspiflash储存boot.bin,eMMC存储linux系统; 在应用升级系统的关键步骤是要实现: 在Linux系统中升级qspiFlash中的boot.bin; 本文简介工作中使用的方法。 开发环境: VMware15  +  ubuntu16.04.5  + 

ZYNQ7020 FPGA如何从Flash启动的详细步骤-爱代码爱编程

ZYNQ FPGA程序固化FLASH 一、 创建BOOT.bin 工具vivado 2017.4 1创建工程。包括创建工程,编写程序,添加约束。 2创建一个BD文件。单击 Create Block Design,命名为 system 之后单击 OK。 3添加IP。单击图中+号 4搜索单词ZYNQ选择ZYNQ7 Processing System

ZYNQ 程序固化到QSPI FLASH实验-爱代码爱编程

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 1. 前言2. Vivado工程的编写3. SDK工程的编写4. QSPI FLASH烧写A. 工程源码下载参考文献: 1. 前言 本实验教程主要指导大家如何将程序固化到QSPI FLASH中,并让ZYNQ芯片上电启动自动加载QSPI中的程序。 2. Vivado

zynq读写SD卡-爱代码爱编程

zynq读写SD卡实验 SD卡有三种类型:     SD:使用SD1.0协议,容量等级小于2GB,支持文件系统为FAT12,FAT16;     SDHC(高容量安全数字卡):使用SD2.0协议,容量等级为2G到32GB,支持文件系统FAT32;     SDXC(容量扩大化的安全存储卡):使用SD3.0协议,容量等级为32GB到2TB,支持文件系统为ex

zynq芯片使用国产flash烧写boot.bin_charles遇见的博客-爱代码爱编程

zynq芯片国产Flash烧写BOOT.BIN 简述:很多公司在zynq芯片研制过程中,为了能够控制成本,达到降本增效的要求,往往会选择国产的部件,例如flash等。 所以这篇内容主要以ZYNQ7045使用国产FLASH作