本帖最后由 领航科技 于 2011-10-3 11:19 编辑
2 G! W. |0 x0 ]0 `9 Q$ `% J1 C [' T* ]0 @( V+ t+ O( k
晚上的时候师傅的电脑坏了,搬来给我修了, 映泰M7NCG 400 / SOCKET462 架构的
" F9 n& F5 W) W; m/ G3 I* N6 x6 w1 Z6 a. r/ @2 ]
换成别人的话,我肯定不会修的,这么垃圾的主板,开机不跑码啊。* j' ?& e K# j- l7 p; R
: B+ P+ V" k7 ^- R) X1 Z( L# b ) z2 h; @. s4 |4 D- ~
. I0 y( T* ~1 K6 u! e$ r. F' P* J8 A不跑码的故障是电脑主板维修工作中最难,牵涉面最广的问题。
# b1 p) V' V& ~: w' M- Z& h
4 m, _0 u% l- a7 u& u' A% S% [8 { ) p/ x# m' v" K$ J* c
, J. O9 h. Q2 V7 z+ Q% j& d1.要想主板跑码就必须得先测量所有供电, _/ D1 K& T/ Y" ^7 B: U% E
2 }: L1 z1 h& |' f假如所有供电都正常了,那么就会有电源好信号出来,时钟也就会工作。然后南桥时钟正常后收到电源好信号后发出pcirst信号,再当北桥收pcirst后又发出cpurst复位cpu,然后cpu开始执行代码加载bios。3 D; v9 W4 q& P/ T* ?. i9 q+ a6 Q
" O, g& w0 ` d+ m
首先量测系统的各种clock是否正确产生,假如正常继续后面量测分析。9 Y' j( U8 J' G! N6 I
' ]0 {4 P0 ^: W+ n" j: ?* g $ ]3 G! B+ p6 n
* H+ ?7 Z2 s6 S8 Q5 a# [2.测时序信号; z2 x5 f2 e8 d0 z6 K2 L" W. J8 h
- o& T# ]/ Q* F# G2 q3 N 量测pwrgood(南桥发给cpu)和 pcirst#、cpurst#(北桥发给cpu)信号正常
4 v, E" V& ~$ p( d8 ^6 l' U; S. F: T
{% g/ E: v& a% A$ K! p% T2 Z3 w+ c8 Y. D, b6 @; E [8 |
3. 测bios地址线1 h& j4 D; ^* R$ z) L
" q* y; _) z$ M. Q: p" a0 t; o bios rom开始测量看cpu是否能正常解码到bios读取代码。由于ec code和system共用一个bios flash rom,但是目前 ec的code(64kb)放在低位的地址空间,只用到了a0-a15 address线,可以在插入adapter关机状态下测量a16-a18应该没有地址信号,而a0 -a15则有地址信号的变化是由于ec在运行。用示波器探头点到a18,开机时抓取地址信号,假如有一段地址信号变化则基本表明cpu已经读 取到bios的code,可能是code 有问题才导致不能继续run下去。请bios 协助在code的最早的位置设定断点和诊断代码分析以逐步分析问题 。假如开机后bios rom a16-a18上都没有解到cpu读取bios的地址信号动作,则需进一步量测上一级总线信号以判定是那个总线上的设备有 问题。
% e8 ?" {: D R* k6 o; o6 O
; \0 \# ?, u) E4 I! w( n注:cpu被reset后,所有的状态被clear到一个硬件的缺省状态,并且clear l1和l2 cache。然后cpu开始从0ffff-fff0h的地址读取bios 的第一条代码执行bios程序,所以从最高位地址量测比较方便。 . _; y- ?5 H0 T% R
4 ` B8 K' ~6 G7 i2 k6 h
+ c/ ~+ i. ?0 I7 U7 {
$ u2 F1 R- f$ ?* {0 g0 P7 x% i$ k, I5 T
4.测lpc总线2 s- a( Y0 B7 r- `. U
% Y; N; f. a$ j' E: v u, X2 w& R 由于我们目前的架构bios总线是从lpc上经过ec(pc87591) bridge过去的,所以需要进一步判定lpc上是否正常解码到cpu 的发 出的解码信息。开机时用示波器测量lpc上的frame#信号看有否低电平的信号变化(为什么测frame#,由于frame#用来启动一个总线周期的 传输,更具体内容请自行阅读lpc spec)。假如有信号则说明ec有问题,没有把lpc的总线周期传到bios上。假如没有信号动作说明lpc上 也没有解码出cpu的第一条读取指令信息。
0 _" n0 h7 q3 ~7 g% }" |5 @9 ]: T, v& w: x$ b
; y9 G& S$ [! p: C
r1 w: o) n3 k- L7 C6 m5.测pci总线
6 E" p+ S: O( @+ `# A
2 Q. G# X0 E' Y( @ 通常lpc总线是从南桥的pci-lpc bridge转出来的,所以当lpc上没有动作时,就要量测pci的总线上是否有解码到cpu 的第一 条指令。也是开机时用示波器抓pci的frame#信号看有否低电平的信号动作。假如有信号则说明南桥有问题,没有把pci的总线周期传到pci 上。假如没有说明pci上也没有解码出cpu的第一条读取指令信息。' A% q% y: ?4 K/ ?! C* s
; d9 l1 U1 `! m
4 J1 Z _; c. o8 r+ {, b9 q
( x& W- R3 J1 h# c8 e( i1 G2 ?6.测vlink或hub-link
$ E5 y0 J3 a V9 J! f( f1 G4 @9 N: X7 X0 x
由于pci是由北桥和南桥的点对点传输后在南桥内部转出的,所以 此时要进一步量测*link上的strobe#信号是否有动 作,以判定北桥是否把cpu的解码指令传下来。假如有信号则说明南桥有问题,假如也没有则要进一步测量host bus。
# p& T% y: W+ W/ [7 T, M
6 m) m; u/ A& w1 `* v: D* ?3 G2 |1 f) Q8 l0 d# g t% x
7.测host bus O8 _, m1 |' R1 s6 v
9 o5 I! M- R. O1 _7 }/ V5 D
开机时用示波器抓host bus的ads# 信号,假如有低电平的信号动作,则说明cpu有发出bios的执行指令,而北桥因故没有正确解码该总线周期,需要check的北桥的电路原理图和焊接质量及物料是否有装错等等因素。假如也没有则说明cpu电路有问题,不是cpu坏了就是cpu的电路原理连接有误或者工艺或者物料装错等等原因。 ) z$ c2 u L) s
5 {' g7 T1 T; f/ \; c& U
以上内容用通俗一点的话讲出来,首先是测量供电,时钟,复位等硬件工作的主要条件,接着打到bios的a16-a18的地址总线上面,看有无波形跳变,如有,则bios损坏,需要刷写bios ,假如没有,则检查lpc总线的frame#假如有,刚ec损坏的可能性比较大,假如还没有,则检查pci总线上的frame#,假如有,刚南桥损坏,假如没,则要继续向前级检hub 总线上面的strobe#信号,假如有跳变,则南桥损坏,假如没有,则要检查host总线上面的ads#,假如有,则北桥损坏的可能性较大,假如还是没有,则要检查cpu。" s1 E' [1 O$ \ e9 x
8 h+ ?9 \) e: B5 O% X1 z总结就是: 供电. 时钟. 复位. BIOS当然也包括南北桥和IO了就这么多故障点了
) J8 F2 s6 Z) t. e: ~# g7 d! ?2 @8 G% o7 O9 h, p( ?
) R* F: {* n0 ^! T短接开机针只见熟悉的自检界面,过程就不说了. 反正是修好了. 还没换什么大件 # T9 I0 z, @5 }) _
. Z. s x( ^: e9 Y- f) z还有就是英华啊,我从版主降成普通会员了啊 % [6 u, s* h9 m0 X
9 X! f4 H4 N! M* M. X8 f
版主要是不泛滥的话 给我个版主吧
4 N4 S6 h/ {+ f. d+ g |