200I PRO DDR颗粒初始化失败问题定位
收藏回复举报
200I PRO DDR颗粒初始化失败问题定位
发表于2025-12-24 14:53:26
0 查看

DDR颗粒初始化失败问题定位

  • 定位思路

1.png

  • 常见错误码及命令

C12 R2 S800 M1,R11600:

开机进DDRSHELL调试口,读取寄存器:

RANK0:oem ddrtest read_addr_allchn 0x021C/oem ddrtest read_addr_allchn 0x029C

RANK1:oem ddrtest read_addr_allchn 0x061C/oem ddrtest read_addr_allchn 0x069C

C2 R2 S800 M1,R20705:

开机进DDRSHELL调试口,读取寄存器:

RANK0:oem ddrtest read_addr_allchn 0x0210/oem ddrtest read_addr_allchn 0x0290

RANK1:oem ddrtest read_addr_allchn 0x0610/oem ddrtest read_addr_allchn 0x0690

注:21C指示Rank0的DQ0-DQ7,29C指示Rank0的DQ8-15

  • 案例分析

背景:310P 双P EP卡 上电后npu-smi无法使用,板卡未正常启动,接串口发现DDR初始化异常,个别通道报错误码。

单板主从打印如下:

1.png          2.png

注:C0、C1、C2指示具体的DDR通道,R后面是rank数目,S后面是单通道容量,单位MB,正常通道打印R36666。

如所示为:双通道DDR,单通道容量为1000MB,主片通道13、21异常,从片通道10、13异常

进DDR SHELL执行0X600类型的指令读取寄存器,即:

RANK0:oem ddrtest read_addr_allchn 0x021C/oem ddrtest read_addr_allchn 0x029C

RANK1:oem ddrtest read_addr_allchn 0x061C/oem ddrtest read_addr_allchn 0x069C

检查回显21C/29C这行是否临界FF或与正常板差异很大,29C回显异常,主片异常通道回显如下:

1.png 2.png

chn:0xd,chn:0x15指示13、21通道

看前两组数据,每两位指示一个DQ,如图所示:

2.png

方法一:根据上图所示,对比异常DQ值,多数为ff则72/66异常(若多数为数字,少数为ff,则ff异常),即DQ12/DQ15异常

方法二:根据第三组数据的前四位,3cff转换成二进制为:0011 1100 1111 1111 从左往右依次为DQ15-DQ8,即DQ12/DQ15异常。

两种方法对照看,确定具体的异常DQ

同样的:

1.png

方法一:根据上图所示,对比异常DQ值,多数为ff则60/66/5a异常(若多数为数字,少数为ff,则ff异常),即DQ10/DQ12/DQ13异常

方法二:根据第三组数据的前四位,f0cf转换成二进制为:1111 0000 1100 1111 从左往右依次为DQ15-DQ8,即DQ10/DQ12/DQ13异常。

检查回显21C/29C这行是否临界FF或与正常板差异很大,29C回显异常,从片回显如下:

2.png   3.png

注:21C指示Rank0的DQ0-DQ7,29C指示Rank0的DQ8-15。chn:0xa,chn0xd指示10、13通道

看前两组数据,每两位指示一个DQ,如图所示:

1.png

029C寄存器的值全FF溢出,判断是DQS/DMI信号网络有问题

同样的:

3.png

方法一:根据上图所示,对比异常DQ值,多数为ff则72/66异常(若多数为数字,少数为ff,则ff异常),即DQ12/DQ14/DQ15异常

方法二:根据第三组数据的前四位,f0c转换成二进制为:1100 1111 1111,不足16位,前边补0。即:0000 1100 1111 1111 从左往右依次为DQ15-DQ8,即DQ12/DQ14/DQ15异常。

综上所述该板卡的主片,chn13的DQ12/DQ15、chn21的DQ10/DQ12/DQ13异常,从片chn10DQS/DMI信号网络异常,chn13DQ12/DQ14/DQ15异常。

确定具体的NPU管脚后先照CT,最后染色后冷拔确定焊接情况。

  • 异常焊点图示

X-ray图:                    

1.png  

  CT图:

2.png

确定具体的pin脚后,照对应pin脚的X-RAY和CT

  磨片图:

1.png

2.png

由于存在污染物或者温度太低导致上下锡球无法融合导致HNP开焊。

冷拔图:

1.png

2.png               3.png

  4.png   5.png

冷拔是通过物理应力强行将NPU从PCB上拔下来,焊接正常的焊点拔下来就有两种情况,一种是锡完全没有留下来,直接露出铜皮。一种是锡完全留下来,留下来的锡面积较大,可以填充整个焊盘。异常的即上边各图所示,残留一部分锡在焊盘上。

我要发帖子