在zynqMP硬件平台上,使用vitis2020.1烧录QSPI时报各种的错误和失败,之前在zynq7000上没有遇到烧录问题,着实让人烦恼,经过各种验证和追查之后总结出了一套包治各种QSPI烧录异常的方法。

烧录需要的文件:

        1)fsbl.elf,该文件是从2019.2版本开始启用,之前是不需要这个文件的。

        2)  BOOT.BIN,该文件是含有fsbl、uboot、bit、kernel、rootfs等。

方法和步骤:

        1)启动MODE修改为JTAG
            原理图最好设计为成一个跳针,默认是QSPI模式,插上跳帽是JTAG模式,方便切换烧录   和正常工作。
        2) 最小系统的QSPI时钟需要适当降低

                
            默认QSPI时钟会比较高,但是不同器件的支持速度是不一样的,具体可以看QSPI手册的前面几页。有一点可以确认的是3.3V供电的速度会比1.8V供电的速度要低20%。
            总之设置的时钟速度要比器件的最大工作时钟要低一些。
            如果有更改则需要重新生成fsbl.elf和BOOT.BIN。
        3)  最小系统的QSPI Feedback Clk 需要勾选

                
            网上查资料显示在2020.2版本有修复,我当前用的是2020.1。因此,该管脚一般不要用,只做悬空处理即可。
            需要重新生成fsbl.elf和BOOT.BIN。
        4) 选择官方手册中支持的器件
            UG908中有一个附录Configuration Memory Support,其中描述了支持的器件列表。

        5)根据实际情况设置DDR的参数

        

完成以上步骤,只要不是硬件问题,基本上可以全部解决问题。

出现的错误打印罗列如下:

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐