EDA365电子工程师网

标题: BIOS无法检测内存。 [打印本页]

作者: fanxingfast    时间: 2012-3-30 10:17
标题: BIOS无法检测内存。
自己做的单板计算机,处理器是AMD ALX800,共出了5片,有4片测试完全通过了,剩下一片怎样调试都无法启动BIOS。
# Y; |* M4 ]4 }' P9 sDebug卡代码显示C1,即内存自检无法通过。% h" k: x- f* t3 D3 m  u. u& h
我是这样理解的:; {8 M3 o8 W, d1 E- s
从给板子加电启动,开始Debug卡的检测从00开始,直到C1停止,是否意味着,C1代码之前的检测都通过了呢?也就是处理器工作正常。现在我将故障的原因定位在内存颗粒本身和内存旁边的阻容器件上,通过排查内存旁边的每一个阻容器件,可以确定故障和阻容器件没有关系了,那就剩下内存颗粒,我换过不同批次的内存颗粒,在其他4片完好的板子上,这两批次的内存颗粒都用了,都可以正常工作。另外,我把内存颗粒全部摘除,Debug卡的检测代码仍然是C1,我在想,是否BIOS根本就没有检测到内存呢?难道是板子本身内存的地址线,或者数据线有不通导致?5 R: I' a0 b, v# Y, i/ L; D2 a- F
0 E; p0 n1 s/ h3 {/ c% ?
请版上的朋友们帮我分析下可能的原因。
1 _5 R( B) E6 k! E7 M! ]4 L  v$ F/ Z2 Y$ J) S% ~2 l
谢谢。
作者: dzwinner    时间: 2012-3-30 13:40
你先看看其他好的4片是不是真的没问题,既然内存部分你怀疑有问题,就重点测试那4片的内存,能不能高速跑起来。还有一种最坏的情况,就是内存部分走线没有做好,出现局部蚀刻不充分==原因。我最近做的一款产品,某一块板TF卡也是无法识别。最后找到原因,是TF卡的复位信号有严重的振铃。恰巧其他几块板就通过了。所以你4片没问题,不代表你内存部分就真的没问题。
作者: qiangqssong    时间: 2012-3-30 17:32
楼上说的有道理!!!重点还得检查下那4片好的内存性能是否真正满足!!
作者: fanxingfast    时间: 2012-4-9 13:33
dzwinner 发表于 2012-3-30 13:40
4 V0 L- Q6 p) W; m+ K' h你先看看其他好的4片是不是真的没问题,既然内存部分你怀疑有问题,就重点测试那4片的内存,能不能高速跑起 ...

( J5 y: x. S: X( P3 ]' \内存的性能测试我应该还会继续在接下来的测试中去做。
. F0 d/ I/ q% v8 G/ R; w现在关键的是,第5片上电后无法启动这个问题难以解决,Debug卡显示的代码C1没有变化过,
4 `8 f1 h8 ?# b+ ?' \/ }8 ?当然我不能完全依靠Debug卡的代码来推测问题的原因。但其他4片上,Debug卡显示C1时,确实是内存部分出了焊接的问题,处理之后都能够恢复正常了。  C' n/ [1 C8 x! c
我开始怀疑是否CPU出了问题,因为内存控制器位于CPU的北桥上面。
作者: dzwinner    时间: 2012-4-9 16:36
仔细看看PCB 走线吧,等长,拓扑,组与组之间的长度误差等,还有是否同一组走线是在同一层。特别是差分线的等长。静下心,仔细核对layout guide,以及实际的PCB 走线。
作者: fanxingfast    时间: 2012-4-9 16:53
dzwinner 发表于 2012-4-9 16:36 ( F* ?( ~: R1 ^; \: f- L6 g
仔细看看PCB 走线吧,等长,拓扑,组与组之间的长度误差等,还有是否同一组走线是在同一层。特别是差分线的 ...

: e# a" b7 _2 H! Y! r& {" M谢谢你。: {" K" a: q- U0 j
不过,我想问一下,没有其他的可能了吗?0 G1 {( v7 S/ P1 W
+ o' q) N" {( Y* k, C) T0 w
如果是PCB走线的原因导致了BIOS无法启动的故障,那么其他4片能够正常工作又如何解释呢?这5片是同时生产的,Gerber文件都是一样的。




欢迎光临 EDA365电子工程师网 (https://bbs.elecnest.cn/) Powered by Discuz! X3.2