本帖最后由 领航科技 于 2011-10-3 11:19 编辑 ; `7 y t; N- E
" c% t3 C1 j/ o' Y5 n
晚上的时候师傅的电脑坏了,搬来给我修了, 映泰M7NCG 400 / SOCKET462 架构的- O9 e* q3 q" h% x
: E* x G0 |5 I% t
换成别人的话,我肯定不会修的,这么垃圾的主板,开机不跑码啊。" e7 Z6 P" V/ |
, K) P" B- F( Z* ^. V$ s% ^
8 F9 u: e0 H/ L$ _! n& o& Q" B+ l: ~2 V" a5 z# K1 ` E1 ~
不跑码的故障是电脑主板维修工作中最难,牵涉面最广的问题。
) \3 c+ j4 |: F; w+ n& t) J! R8 E/ L. b# o) b+ f' u0 }
: I0 }. t, @! j, {9 J! O6 F2 J
1.要想主板跑码就必须得先测量所有供电,; t( K: v f' K6 {
1 Q1 r( y4 J, Y* \; A9 ?4 |
假如所有供电都正常了,那么就会有电源好信号出来,时钟也就会工作。然后南桥时钟正常后收到电源好信号后发出pcirst信号,再当北桥收pcirst后又发出cpurst复位cpu,然后cpu开始执行代码加载bios。
9 V9 p6 c' g6 p- h! L% u2 b3 E/ [& m" Y3 t
首先量测系统的各种clock是否正确产生,假如正常继续后面量测分析。* Y1 V- g7 m2 x* z- z# B* e* K
! g+ ~! N, @/ D% {0 Z
9 [( V& E2 e% V$ }6 f! j
! w, Q# q2 c+ Q4 j$ o' i0 ~0 e2.测时序信号
3 R/ [" H9 m0 B
x g7 e! z7 n! z4 L$ Y4 R 量测pwrgood(南桥发给cpu)和 pcirst#、cpurst#(北桥发给cpu)信号正常
/ h% T" u# R/ | P+ R" U8 Q5 F- \& l, }" o1 X* P4 a
4 V& B) S! z9 \) |8 D# o' I4 i0 f U
3. 测bios地址线. Y9 S. @: K# {4 B
% D; p) f" m! S2 u
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的地址信号动作,则需进一步量测上一级总线信号以判定是那个总线上的设备有 问题。 ( ], |* E( P* Y) H# A+ }+ ~* V
0 V$ K* t+ T6 K: A注:cpu被reset后,所有的状态被clear到一个硬件的缺省状态,并且clear l1和l2 cache。然后cpu开始从0ffff-fff0h的地址读取bios 的第一条代码执行bios程序,所以从最高位地址量测比较方便。 / ^# x3 ]- _1 O# T
v8 e; k( o9 v: G+ C
. C$ ~( b/ q* T* k ?) M1 j" Q 2 b: U6 D( I7 T. R# X: r
2 A- a q* h: U' _5 J
4.测lpc总线, ]/ @8 ? {3 r
5 F+ s/ z& l+ V! L* i% G
由于我们目前的架构bios总线是从lpc上经过ec(pc87591) bridge过去的,所以需要进一步判定lpc上是否正常解码到cpu 的发 出的解码信息。开机时用示波器测量lpc上的frame#信号看有否低电平的信号变化(为什么测frame#,由于frame#用来启动一个总线周期的 传输,更具体内容请自行阅读lpc spec)。假如有信号则说明ec有问题,没有把lpc的总线周期传到bios上。假如没有信号动作说明lpc上 也没有解码出cpu的第一条读取指令信息。( B# o2 r5 n" p# W3 g
K- o) k/ V& u @1 x# G
* x) A/ G4 x( `
7 {+ G$ p0 u: j2 T G0 p4 N( C( V
5.测pci总线3 n% {3 x3 L7 Z
- ^" j r+ j" y( l/ d# H 通常lpc总线是从南桥的pci-lpc bridge转出来的,所以当lpc上没有动作时,就要量测pci的总线上是否有解码到cpu 的第一 条指令。也是开机时用示波器抓pci的frame#信号看有否低电平的信号动作。假如有信号则说明南桥有问题,没有把pci的总线周期传到pci 上。假如没有说明pci上也没有解码出cpu的第一条读取指令信息。. e" v$ V% I) `# ~. H( T8 Z
" L _' W8 ^1 y9 j- {5 T5 t
- l5 r# m6 F8 [
8 O6 K+ R. f" `# D% n" j4 v0 P6.测vlink或hub-link x6 F" Q# E; S. f k( d
0 t# g4 J7 e& ?( Q; S3 t
由于pci是由北桥和南桥的点对点传输后在南桥内部转出的,所以 此时要进一步量测*link上的strobe#信号是否有动 作,以判定北桥是否把cpu的解码指令传下来。假如有信号则说明南桥有问题,假如也没有则要进一步测量host bus。, G# @, ?; F$ _
6 v0 m' M, n6 c: |! K+ d" g
5 U9 `7 V: Q6 _! l' @* Z7.测host bus; K0 e C; j2 x' ]: x9 p0 N
" u" L( ?3 Z- M6 F' W 开机时用示波器抓host bus的ads# 信号,假如有低电平的信号动作,则说明cpu有发出bios的执行指令,而北桥因故没有正确解码该总线周期,需要check的北桥的电路原理图和焊接质量及物料是否有装错等等因素。假如也没有则说明cpu电路有问题,不是cpu坏了就是cpu的电路原理连接有误或者工艺或者物料装错等等原因。
; d1 T& d4 C' q' R) T) o
# r0 I; {' W }! u; p- s以上内容用通俗一点的话讲出来,首先是测量供电,时钟,复位等硬件工作的主要条件,接着打到bios的a16-a18的地址总线上面,看有无波形跳变,如有,则bios损坏,需要刷写bios ,假如没有,则检查lpc总线的frame#假如有,刚ec损坏的可能性比较大,假如还没有,则检查pci总线上的frame#,假如有,刚南桥损坏,假如没,则要继续向前级检hub 总线上面的strobe#信号,假如有跳变,则南桥损坏,假如没有,则要检查host总线上面的ads#,假如有,则北桥损坏的可能性较大,假如还是没有,则要检查cpu。
7 {+ x2 O8 q/ T( y$ \ _1 p( n' S; m
总结就是: 供电. 时钟. 复位. BIOS当然也包括南北桥和IO了就这么多故障点了
; L0 `8 D+ {+ Y5 w' k
4 z- z3 r5 ?$ h- c' o' Q1 c/ A9 d# }2 o* g0 v7 H& Z( k. G
短接开机针只见熟悉的自检界面,过程就不说了. 反正是修好了. 还没换什么大件 ! {/ l- D. P, ]% E$ b+ }3 ]
0 k9 D R' K5 ?4 r* R; T
还有就是英华啊,我从版主降成普通会员了啊
" U. L2 p8 F7 q! K( \4 E0 {' b3 Y: r5 h5 f/ M1 e" x
版主要是不泛滥的话 给我个版主吧 D! g# S! S, ]5 [ _
|