转帖出处:http://www.5ifpga.com/viewthread.php?tid=191
关于Nios II中Verify failed between address 0xxxx and 0xxxx错误的解决
Verifying 000xxxxx ( 0%) |
Verify failed between address 0xxxxxx and 0xxxxxx
Leaving target processor paused
论坛和网络上关于这个问题问的特别多,也是新手常见的一个问题,下面我就这个问题稍微总结一下:
1. 首先要根据address后面的两个地址判断出错的到底是什么器件。一般情况出现错误的大多是存储器。判断的方法是根据sopc中的地址,或者是system.h中的地址,查找相应出错的器件。
2. 检查硬件焊接是否正常。很多时候有些问题是硬件焊接造成的,这个主要针对的是自己焊接的板子,一旦地址数据总线有任何焊接问题,都会出现verify failed错误。(
3. 检查sopc中的componet是否正常。如果是自己加入的接口逻辑,这个部分要确认其正常与否。
4. 检查Quartus中的设计:检查引脚锁定是否正确,必须一一对应,不能有一个错误;
地址对齐问题:针对8、16、32位的外部存储器,对应地址最低位的应该是0、1、2。也就是说如果用
16位的外部存储器,那么它的最低位是ADD[1],而ADD[0]是不用的,其他同理。
数据总线必须是双向IO口,这点很容易忽略。
如果是SDRAM,需要计算并设定PLL的相移。*
5. Nios IDE中检查项目设计是否正确。
-------------------------------------------------------------------------------------------------------------------
今天运行网上代码时碰到了这个错误:“Verify failed between address 0x1000020 and 0x100857F”,百度后查核了下sopc中的地址,果然是我所疑心的SDRAM出了问题,于是加入了PLL相移模块,重编译运行,问题解决!
文章评论(0条评论)
登录后参与讨论