小弟新入手6678开发板,仿真的时候发现 load完程序之后,程序不运行的情况下,通过 Memory Brower 观察 0x80000000开始的这段地址,并点击持续刷新功能,发现ddr中的数据总是不断的更新数值,这是什么原因造成的?
给位高手帮忙解释一下
bb qiuhua:
我之前遇到过类似的问题,DDR3有问题。
最终的解决方法是恢复出厂设置(主要是重新烧写flash的内容)。
不确定问题是否相同,仅供参考。
noaming:
在你的程序中添加初始化DDR部分的程序后,试试看。
lei zhang1:
回复 noaming:
谢谢 楼上两位的解答 应该是ddr没有初始化的问题
我如果直接运行 nandwriter 或者 norwriter之类的工程,我的ddr是得不到初始化的,后来我随便运行了一下另外一个例程(srioboot_ddrinit_evm6678l,或者是论坛里面的 SRIO例程)之后ddr的数据就稳定了
奇怪的是 我发现 srioboot_ddrinit_evm6678l 和 nandwriter norwriter 在main函数里面都有 相同的ddr初始化代码,可为什么这两个writer中的初始化就是起不到作用呢?