ZYQ-7000 SOC:QSPI启动时间考虑较大的QSPI存储器

描述

当启动一个ZYNQ器件具有大(和16MB)QSPI时,例如在ZEDB上,当快速QSPI时钟(超过40 MHz)被Program时,引导时间没有改善。

当用户将FSBL默认的QSPI时钟从25MHz(除法器8)改变为100MHz(除法器为2)时,预计启动时间(加载比特流和应用程序)将下降。

相反,启动时间保持不变。

为什么会发生这种情况?γ

解决方案

这种行为是由于QSPI驱动程序的结构。

当QSPI部分大于16MB时,驱动器从线性切换到I/O访问模式。

I/O要求以不同的方式复制存储器,这与线性模式下的直接拷贝不一样快。

这可以通过以下方式来解决:

如果所有的启动代码都符合下面的16MB,那么在QSPI.C中(位于fsbl应用程序源目录中),可以在QSPI.C中的Flash ReaDID函数中添加以下行,在“推导Flash大小”代码块的结尾,在“返回XSTY成功”之前添加以下行:

QSPIFLASHSIZE=FLASHOR SIZEY128M;

注:如果引导图像大于16MB,或者如果它穿越16MB边界,那么这将不起作用。

在引导过程完成后,系统代码将控制对QSPI的访问,并且可以恢复对全部部分的访问。

编辑 重设标签(回车键确认) 标为违禁 关闭 合并 删除

提问于 2018-07-30 17:23:30 +0800

这个帖子被标记为一个社区wiki

这个帖子是一个wiki(维基). 任何一个积分 >500的人都可以完善它