首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Zynq Qspi引导

Zynq Qspi引导
EN

Stack Overflow用户
提问于 2015-01-27 07:15:11
回答 2查看 1.2K关注 0票数 1

我使用Arm DS-5和Xilinx在Zynq板上开发程序.我试图从Qspi Flash启动Zynq 702板。到目前为止,我所做的是从Xilinx中生成FSBL项目,并使用SDK中的Bootgen工具将它与我的应用程序结合起来,然后将其编程到flash中。我脑子里有几个问题。

  • DS5生成一个.axf文件,Bootgen需要一个.elf文件.我是否可以通过将.axf文件的扩展名更改为.elf来使用它,或者是否需要更多的步骤?
  • 是否有显示.axf文件内部结构的工具?展示什么是哪里?
  • 如果我设法从QSPI启动,我如何调试。例如,我想从FSBL一开始调试我的应用程序,有可能吗?因为在Qspi Boot中,当我启动板时,我的应用程序将开始运行,当我与JTAG连接时,它将在我的应用程序中的某个位置。
EN

回答 2

Stack Overflow用户

发布于 2015-01-27 14:19:08

AXF可能有一些额外的手臂-工具链魔术(我不确定是从手),但在本质上它是一个ELF文件- ARM工具链提供了fromelf,以戳他们的内部,但其他工具,如readelfobjdump也工作。

我不熟悉Zynq平台,所以我不知道任何具体的调试器技巧,但一般的调试器只是在代码开始时放置一个无限循环(如果需要的话,可以使用易失性或内联asm技巧来防止优化)--一旦调试器连接并侵入它,您只需将PC移过循环并继续。

票数 1
EN

Stack Overflow用户

发布于 2020-04-29 09:01:01

您可以通过JTAG完全停止QSPI引导的Zynq,并使用它做任何您想做的事情。然而,也有一些怪癖。有时Zynq会进入某种类型的锁定,而JTAG根本不起作用,在重新尝试之前,您需要启动循环。一些写得不太好的外围设备在通过JTAG启动软件后可能会死掉,所以您可能需要首先重新加载位流。还有一些与Vivado相关的but (比如,除非降级到2017.2,或者改变MIO2-6拉动或修补FSBL),否则就不能重新闪现板),但我不确定它们是否适用于您的情况。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28165115

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档