芯路恒电子技术论坛

 找回密码
 立即注册
热搜: 合集
查看: 5849|回复: 0

【Zynq】非原工程路径导致的zynq程序固化失败解决办法

[复制链接]

该用户从未签到

59

主题

81

帖子

1337

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1337
发表于 2021-9-13 15:28:18 | 显示全部楼层 |阅读模式
在使用开发板时,我们常常会遇到需要将某一段程序固化以长期使用的情况。zynq上可能的启动源有五种,而固化后自启动的方式通常只会用到两种,即通过QSPI启动核SD卡启动。这两种启动的操作方法网上有很多,流程大都如下:1、配置硬件并生成bit,将bit导出硬件,打开SDK
2、在SDK中设置好硬件平台和板级支持包
3、创建一个FSBL模板工程生成FSBL.elf文件,
4、结合工程生成的bit文件和工程的.elf文件生成BOOT.bin文件
5、将BOOT.bin文件下载至QSPI或拷贝至SD卡,设置启动模式,将开发板断电重启
但是笔者在进行验证时出现了错误结果,软件提示QSPI下载成功,但是无法正常运行,SD卡也无法正常启动。最后经过探讨猜测是由于笔者工程路径不是原路径,导致bsp下某个文件没有更新,于是对固化方法进行了优化,具体固化流程如下:
1、打开Vivado工程后先不急着配置,直接打开SDK,设置硬件平台。由于路径发生过更改,运行时软件会根据工程路径重新生成一个硬件资源描述文件,后缀为1。我们只需将旧的硬件资源描述文件删除,将新硬件资源描述文件的后缀1改为0 即可。
0.png


2、回到vivado中,配置zynq,使能QSPI和SD0

1.png



3、生成bit文件,并导出硬件,回到SDK。此时软件提示更新,点击更新。

2.png

4、点击工程中bsp文件夹,配置板级支持包,选择xiffs

3.png 4.png

5、新建一个基于已有的板级支持包的FSBL工程

5.png 6.png

6、点击生成的FSBL文件夹,右键创建bootimage

7.png 8.png

7、如果此时进行SD卡的固化,则将SD卡格式化后将生成的BOOT.bin文件拷贝至根目录即可,随后将SD卡插入开发板,配置启动方式,将开发板断电重启。

9.png

8、如果是固化到QSPI中,则在Jtag模式下点击Program Flash,将文件下载至QSPI Flash中,随后配置开发板启动模式为QSPI模式,将开发板断电重启即可。

10.png





回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|Archiver|芯路恒电子技术论坛 |鄂ICP备2021003648号

GMT+8, 2024-4-25 13:47 , Processed in 0.160095 second(s), 34 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc. Template By 【未来科技】【 www.wekei.cn 】

快速回复 返回顶部 返回列表