ZYNQ笔记(七):程序固化(QSPI Flash)

版本:Vivado2020.2(Vitis)

任务:将程序固化到 QSPI Flash 中。实现开发板程序上电自启动

参考文章:

ZedBoard教程PS篇(2):debug调试和qspi下载以及启动

ZYNQ-Vitis(SDK)裸机开发之(二)程序固化方法,程序烧写到SD卡启动以及通过QSPI烧写到Flash中启动方法

目录

一、介绍

二、硬件配置

[三、Vitis 烧写 QSPI Flash](#三、Vitis 烧写 QSPI Flash)


一、介绍

ZYNQ 的程序固化是指将程序代码永久存储到非易失性存储器中,使系统上电后能自动加载运行的过程。

主要固化方式:

  1. **QSPI Flash固化:**最常用方式,容量小,如启动代码、FPGA 配置

  2. **NAND Flash固化:**适合大容量程序存储,如文件系统

  3. **SD卡固化:**方便更新,适合开发阶段

二、硬件配置

(1)硬件设计沿用了AXI GPIO工程,需要再添加 lSPI Flash 的配置,如图所示:

(2)接着重新进行:设计检查、Generate Output Products、 Create HDL Wrapper、管脚约束、Gnerate Bitstream、Export Hardware(包含比特流文件)、启动Vitis

三、Vitis 烧写 QSPI Flash

(1)启动 Vitis 后 ,新建工程时要勾选 Generate boot components 选项,这样会生成启动的引导文件 fsbl ,没有 fsbl 没办法进行程序烧写。

(2)编写软件程序代码(同AXI GPIO工程,略)

(3)工具栏点击烧写Flash,弹出窗口中点击serach,导入BOOT.BIN 文件

(4)等待烧写完成。

(5)将板卡掉电,根据开发板原理图,将板卡启动模式设为 QSPI Flash 启动模式,板卡重新上电,查看 ZYNQ 的 done 指示灯是否亮起,工程是否正常,判断flash程序是否烧写成功 。

注意:确保板卡启动模式引脚配置正确(一般是通过开关或跳线帽选择启动模式)
zedboard 原理图(以zedboard板卡为例,需要将JP9跳线帽接高电平,其他接地,X表示不关心)

相关推荐
SlientICE2 小时前
TCP是什么?不需要!使用ESP32网络层直接通信!
网络·单片机·网络协议·tcp/ip
BW.SU5 小时前
单片机 + 图像处理芯片 + TFT彩屏 触摸开关控件 v1.2
单片机·人机交互·ra8889·开关控件·触摸屏设计
双叶8365 小时前
(51单片机)点阵屏LED显示图片(点阵屏LED教程)(74Hc595教程)
c语言·开发语言·单片机·嵌入式硬件·51单片机
深圳市青牛科技实业有限公司5 小时前
D3502C:一款高性能降压转换器的技术解析,可替代U3502C采用ESOP8封装
单片机·嵌入式硬件·快充·扫地机器人吸尘·筋膜枪电机·驱动轮电机
顾念`5 小时前
履带小车+六轴机械臂(2)
单片机·嵌入式硬件
努力创造奇迹5 小时前
STM32 HAL库 ADC+TIM+DMA 3路 1S采样一次电压
stm32·单片机·嵌入式硬件
leoFY1236 小时前
STM32 BOOT设置,bootloader,死锁使用方法
stm32·单片机·嵌入式硬件
czhaii7 小时前
单片机任意普通IO引脚使用定时器扩展外部中断的巧妙方法
单片机·嵌入式硬件
二块烧肉9 小时前
STM32 认识STM32
stm32·单片机·嵌入式硬件
Born_t0ward9 小时前
基于STM32 的实时FFT处理(Matlab+MDK5)
stm32·嵌入式硬件·matlab·mdk5·快速fft