静之云 发表于 2015-9-25 17:04:00

解决QSPI烧写(Verify)文件失败的问题(附:使用DS5启动Uboot)

本帖最后由 静之云 于 2015-9-25 17:20 编辑

硬件平台Borax 开发板软件平台SOC-EDS 14.0版本1.0
作者: Jack Chen(Cytech)
如下图所示:Altera 推出的SOCFPGA可以从QSPI,Nand,SD/MMC器件中启动HPS。

当伙伴们选择从QSPI启动HPS时,有的伙伴在使用quartus_hps工具往QSPI烧写Preload uboot文件时,会出校验失败的问题。如下图所示:

此时不要马上怀疑是硬件的问题,很有可能是我们曾经烧写QSPI时烧错了地址或者没有全擦除成功的原因,导致HPS未能正常启动,然后HPS的BOOT过程中干扰或占据了QPSI从而导致QSPI烧写验证失败。




知道了原因后,我们就可以想办法让HPS端先停下来。下面给大伙推荐一种办法,使用DS-5工具让SOCFPGA成功启动UBOOT并暂停。再使用Altera 提供的Quartus_hps烧写工具就可以正常烧写Preload Uboot了。烧写成功后,我们以后可以直接使用Quartus_hps工具对QSPI进行下载了。

使用DS-5启动uboot。
准备条件: (1)对应板子生成的BSP文件。         (2)SOC-EDS 14.0         (3)串口调试工具

1 配置DS-5工程。(1) 在DS5 中新建一个C工程。
    (2)右健工程名,选择Debug配置选项
   

(3) 在DS-5 Debugger 下新建一个配置,如下图所示 Debugger 控制方式选择Connect only.

2 添加脚本文件
    在配置好Debug选项后,点击Debug进入Debug界面。把我们已经生成好的Bsp文件下的uboot.ds文件托入Scripts脚本窗口中。(注:uboot.ds文件在software/spl_bsp 目录下)
   

3 Debug并运行UBoot(1)      打开串口调试工具(2)      双击运行uboot.ds 如果我们看到文件的加载条,就代表Preload和Uboot已下载进AlteraSOC的片上Ram中。
(3)      执行全运行按钮,我们会在串口中看到Uboot打印的信息,在串口中暂停Uboot并在DS-5中暂停程序,并断开与开发板的连接。
   
三、 烧写QSPI到这一步后,我们就可以使用Altera提供的quartus_hps烧写QSPI了。




页: [1]
查看完整版本: 解决QSPI烧写(Verify)文件失败的问题(附:使用DS5启动Uboot)