江山易改本性难移之ZYNQ SDK QSPI固化bug及其解决方法

这篇具有很好参考价值的文章主要介绍了江山易改本性难移之ZYNQ SDK QSPI固化bug及其解决方法。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

         之前在Vivado2018.3通过QSPI方式固化程序时出现问题,显示flash擦除成功,但最后总是不能写入到flash中。

        查资料发现从VIVADO 2017.3版本开始,Xilinx官方为了使Zynq-7000和Zynq UltraScale +实现流程相同,在QSPI FLASH使用上做了变化,即Zynq-7000编程flash需要“指定的fsbl”。因为在QSPI引导模式下启动,则“指定的fsbl”将尝试从flash加载分区,从而导致flash编程的错误行为。导致不能下载flash或下载flash后不能启动。

           总结一下,就是需要建两个FSBL程序,也可以生成BOOT.BIT以后,修改当前FSBL工程(本例程),一个用于生成BOOT.bin文件,一个用于加载,即Program flash。完整步骤如下:

(1)新建系统环境变量:我的电脑—属性—高级系统设置—环境变量;之后重启一下电脑。

        变量名:XIL_CSE_ZYNQ_UBOOT_QSPI_FREQ_HZ

        变量值:10000000

(2)在vivado界面PS端选中QSPI方式,其中single SS 4bit IO与Dual Quad SPI方式要根据板卡上几颗QSPI flash以及位数选择,这里选择single SS 4bit IO;

江山易改本性难移之ZYNQ SDK QSPI固化bug及其解决方法,# 应用笔记,bug,ZYNQ,QSPI固化,QSPI启动失败

(3)保存设计,编译生成bit文件;

(4)启动SDK,注意要将bit文件选中。新建fsbl程序,不用修改,此程序用于生成BOOT.bin文件。

        1)选择你的代码工程,右键选择 create boot image

                        江山易改本性难移之ZYNQ SDK QSPI固化bug及其解决方法,# 应用笔记,bug,ZYNQ,QSPI固化,QSPI启动失败

        2)弹出的窗口中可以看到生成的BIF文件路径,BIF文件是生成BOOT文件的配置文件,bif文件和bin文件放在同一个根目录下,并且再次确认是否是最新生成的文件;

之后点击Create Image,生成BOOT.bin文件。

当看到有这两文件时:说明已生成BOOT.bit文件

江山易改本性难移之ZYNQ SDK QSPI固化bug及其解决方法,# 应用笔记,bug,ZYNQ,QSPI固化,QSPI启动失败

 (4)在不变的工程新建fsbl程序,先点击 Clean project,在main.c主程序中找到“Read bootmode register”的位置,并添加代码BootModeRegister = JTAG_MODE;再点击Build  project此处是为了将QSPI编程改为以JTAG模式启动,为了解决bug,

江山易改本性难移之ZYNQ SDK QSPI固化bug及其解决方法,# 应用笔记,bug,ZYNQ,QSPI固化,QSPI启动失败

 也可以在fsbl_debug.h文件中加上#define FSBL_DEBUG_INFO语句,这是为了能够让串口打印出 Bootloader 的信息,之后保存并编译;

(5)QSPI flash固化

        1)FPGA板卡模式开关切换到QSPI启动模式;

        2)点击Xilinx—Program Flash,加载刚刚fsbl文件生成的BOOT.bin与fsbl_load文件生成的fsbl_load.elf,

江山易改本性难移之ZYNQ SDK QSPI固化bug及其解决方法,# 应用笔记,bug,ZYNQ,QSPI固化,QSPI启动失败

其中Flash Type根据(2)中QSPI选中方式而定;

        3)点击Program,即可完成QSPI方式的程序固化。

重点+干货来了:

  环境实验:硬件板卡暂未有串口调试输出。 

当固化进去以后,如果你发现PL已经启动,但是PS暂未启动,那此时就需要修改这个选项:把这两个关闭。再重新固化以后,关机、重启,发现PL和PS均能正常运行。这就是妥妥的干货。

江山易改本性难移之ZYNQ SDK QSPI固化bug及其解决方法,# 应用笔记,bug,ZYNQ,QSPI固化,QSPI启动失败文章来源地址https://www.toymoban.com/news/detail-781233.html

到了这里,关于江山易改本性难移之ZYNQ SDK QSPI固化bug及其解决方法的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • uniapp 简易滑块切换,简单易改

    2024年01月20日
    浏览(27)
  • 下一代云计算架构,VMware要占“半壁江山”

    麦肯锡在2022年8月底发布了《云端中国,展望2025》的研究报告,麦肯锡易全球资深董事合伙人Anand Swaminathan表示,全球云计算的价值超越了IT,其规模预计超过1万亿美元。而中国公有云市场规模有望从2021年的320亿美元增长到2025年的900亿美元。 云计算市场已经是一个实实在在

    2024年02月02日
    浏览(44)
  • 【指点江山】ChatGPT超精细指令,会提问题的你才能得到更好的回答

    爱因斯坦说过:“提出一个问题比解决一个问题困难得多”。对于 ChatGPT 而言,能够给它输入准确、科学的问题,它就会回应更加详细、符合要求的回答。对 ChatGPT 提问题也叫作给指令。 本文将从以下几个方面进行指令集的举例和解释,能够帮助读者进一步地提出合理的问题

    2024年02月07日
    浏览(52)
  • ZYNQ连载01-ZYNQ介绍

    参考文档:《ug585-zynq-7000-trm.pdf》 ZYNQ分为PS和PL两大部分,PS即ARM,PL即FPGA,PL作为PS的外设。 ZYNQ7020为双核A9架构,多核处理器常用的运行模式为AMP(非对称多处理)和SMP(对称多处理),这里选用AMP方案,CPU0和CPU1使用OpenAMP通信,FPGA使用IP核。 CPU 系统 CPU0 Linux CPU1 FreeRTOS 参考文档

    2024年02月07日
    浏览(37)
  • 【ZYNQ】那些年我们拿下了 Zynq

    小菜鸟的 Zynq 学习经验分享~ 资料来源 :黑金 Zynq7035 开发板配套资料,完全适合于 Zynq 学习。 文末获取资料! 另外四个是关于 Altera FPGA 的学习资料。 其实很多东西都是相通的,要学会 举一反三 。 Vivado 是 Xilinx FPGA 开发的主要软件(2019年10月,赛灵思推出了Vitis)。 下载软

    2023年04月20日
    浏览(35)
  • Zynq和FPGA区别——快速认识Zynq开发

    ZYNQ包含了2个部分,双核的ARM和FPGA。根据Xilinx提供的手册,用ARM实现的模块被称为PS,而用FPGA实现的模块被称为PL。简单的说FPA更偏向于逻辑,不跑系统。 ZYNQ内部包含PS和PL两部分,ZYNQ开发有一下四种方式: ZYNQ是赛灵思公司(Xilinx)推出的新一代全可编程片上系统,它将处

    2024年02月16日
    浏览(55)
  • ZYNQ 启动过程简介 以及 ZYNQ 裸机生成BOOT.BIN

    下图是ZYNQ的启动过程   上电复位等完成后,先执行BootRom,然后再根据MIO设定的启动方式选择对应从哪里启动,无论从哪里启动,都需要一个BOOT.BIN文件,对于裸机程序来说: BOOT.BIN应对包含如下信息: 1、FSBL 代码,后缀elf; 2、用户程序,后缀elf; 3、用户PL逻辑,后缀bit;

    2024年02月08日
    浏览(37)
  • zynq7000系列芯片介绍

    ZYNQ从架构上可以划分为两大模块,一个是PS(处理器系统),另一个是PL(可编程逻辑) PS由APU、内存接口、IO外设、互连线4大模块组成。 1、APU(Application Processor Unit)应用处理单元 即PS【可编程逻辑里面最最核心的东西】,它由两个双核心的Cortex-ARM A9、一些缓存和存储组成

    2024年02月06日
    浏览(56)
  • ZYNQ入门

    目录 一、ZYNQ简介 二、vivado工程 ①创建工程  ②添加设计文件 ③生产顶层HDL模块 ④生成 Bitstream 文件并导  三、vitis工程 ①启动vitis  ②创建工程 ③编译与下载 ZYNQ 是赛灵思公司(Xilinx)推出的新一代全可编程片上系统(APSoC),它将处理器的软件可编程性与 FPGA 的硬件可编

    2024年02月09日
    浏览(32)
  • ZYNQ相关的常见概念

    ZYNQ :是赛灵思公司(Xilinx)推出的新一代全可编程片上系统(APSoC),它将处理器的软件可编程性与FPGA的硬件可编程性进行完美整合。 PS :(Processing System),ZYNQ可以大概分为ARM和FPGA两部分,PS就是ARM的SOC部分,是整块板子的处理系统。 PL :(Progarmmable Logic),意为可编程逻辑

    2024年02月04日
    浏览(34)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包