DDR硬件调试篇
前言:大家自己设计的产品出来后都有遇到一些什么样的DDR问题呢?这些问题是否为致命问题,一定要解吗?如果机器已经生产出来,却发现DDR硬件问题导致系统不稳定,机器是否作废了,有没有软件方法可以弥补?机器死机如何定位是否为DDR问题,怎么排查?
在实践过程中,设计者会遇到各种形形色色,五花八门的问题,个人遇到的只是沧海一粟,如果抛砖引玉之后,有经验的汇聚,那么DDR调试将变得不在困难。
案例一:时钟抖动问题
根据jedec规范,DDR时钟中需要测试周期抖动。在需要测试的时钟抖动中,单独把周期抖动提出来,是因为周期抖动比较容易测试fail。
在遇到周期抖动fail时,首先需要关注电源的noise问题,如果给DDR供电电源的noise过大的话,就会导致CLK的抖动过大。
其次查看DDR走线包地是否完好,参考平面是否OK,当然这些如果是参考方案供应商设计一般不会有此问题。
最后因时钟是主芯片发出,测试主芯片的晶体时钟频偏是否OK,晶体时主芯片内部时钟的基础。还存在一种可能就是DDR可能开了展频,那样时钟的抖动肯定是fail的。
如果排查了上述问题之后,测试结果还是fail,那么时钟抖动一定要测试pass吗?从个人经验看,如果把调试手段做到位之后,依然存在此问题,在保证煲老化等测试可以pass的情况下,可以不用卡住该指标不放。
案例二:电源问题。DDR供电电源如果出现噪声过大,甚至掉电drop时,系统容易出现