本帖最后由 领航科技 于 2011-10-3 11:19 编辑 3 S- o- @3 s1 |2 l( J
0 d. o* x9 g. e4 O) x晚上的时候师傅的电脑坏了,搬来给我修了, 映泰M7NCG 400 / SOCKET462 架构的/ c# L2 ~: Q' C4 z' v
5 R0 y* U# y- @' Z换成别人的话,我肯定不会修的,这么垃圾的主板,开机不跑码啊。
, M5 ^' I; c: t# a* x7 A0 h
- E1 u- e! X) e
) t# P- M6 \* h! {, ~% K% B, ^- Q9 G; I, C) w# |' [% V
不跑码的故障是电脑主板维修工作中最难,牵涉面最广的问题。+ l% i( p: v/ c2 W
9 t5 z) h5 W. y4 p, C2 { ( p/ L3 V+ U# u$ K
* `! m# d7 a4 A7 @) s: W1.要想主板跑码就必须得先测量所有供电,
: Y* z$ k6 l1 x; ` l7 ~% r6 q: _. `# `
假如所有供电都正常了,那么就会有电源好信号出来,时钟也就会工作。然后南桥时钟正常后收到电源好信号后发出pcirst信号,再当北桥收pcirst后又发出cpurst复位cpu,然后cpu开始执行代码加载bios。
F) r' H* i6 N7 d: W5 U% S
3 d5 @* z" l/ j首先量测系统的各种clock是否正确产生,假如正常继续后面量测分析。; V0 m; ~1 {& k. _8 F9 n: e/ H
8 I! K. z: Q6 F
, L1 o2 e, `3 b N( K6 T
! _" M0 O; c2 Z) ]2.测时序信号 y. N+ R& F! J# ?2 J# F" e Z
! _/ W6 A. U' J) ~+ r; F 量测pwrgood(南桥发给cpu)和 pcirst#、cpurst#(北桥发给cpu)信号正常5 L1 T# P" \- i! D
/ ?2 u+ ]8 f6 N x
/ o0 a% f4 A$ C2 o( G5 _6 }
! S7 c* e. a; m6 m. p' @3. 测bios地址线
" Q+ F( K" L7 Q# [. w$ F1 z, q, C8 G
* D9 D2 D1 E+ k7 C+ v$ j 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的地址信号动作,则需进一步量测上一级总线信号以判定是那个总线上的设备有 问题。 * {, m3 m% E- ~! p7 u1 E
& Z. k" }& B: o% ?5 B$ R+ Z注:cpu被reset后,所有的状态被clear到一个硬件的缺省状态,并且clear l1和l2 cache。然后cpu开始从0ffff-fff0h的地址读取bios 的第一条代码执行bios程序,所以从最高位地址量测比较方便。
; g& V* [' X/ ^3 x1 r
5 e2 f; G Q m- V; W# |3 h; l5 T) S1 v7 G
4 O$ g$ a% g( e: J& x
3 a4 P# X% D6 I" Q1 S( K" k4.测lpc总线) k% W& m) k: m" W
# V, F# ~2 l( s 由于我们目前的架构bios总线是从lpc上经过ec(pc87591) bridge过去的,所以需要进一步判定lpc上是否正常解码到cpu 的发 出的解码信息。开机时用示波器测量lpc上的frame#信号看有否低电平的信号变化(为什么测frame#,由于frame#用来启动一个总线周期的 传输,更具体内容请自行阅读lpc spec)。假如有信号则说明ec有问题,没有把lpc的总线周期传到bios上。假如没有信号动作说明lpc上 也没有解码出cpu的第一条读取指令信息。! S' \7 Z, G$ n* z2 S
' b4 v0 K/ e1 m* ^6 Q9 g( Z
# Y+ a! ^! k1 @. j2 I) P
3 K6 X( l$ a7 I( U* H8 M' e6 O0 ~
5.测pci总线3 [! g3 d+ E) t) `* ~
2 P' E, a2 o9 J* o: Z ~+ W 通常lpc总线是从南桥的pci-lpc bridge转出来的,所以当lpc上没有动作时,就要量测pci的总线上是否有解码到cpu 的第一 条指令。也是开机时用示波器抓pci的frame#信号看有否低电平的信号动作。假如有信号则说明南桥有问题,没有把pci的总线周期传到pci 上。假如没有说明pci上也没有解码出cpu的第一条读取指令信息。
/ g) K1 M! S* T* o
6 ]% A' Q: k" J" ^+ J4 {
2 w" v+ w" [* p5 ]3 c
" u q/ V' M! j6.测vlink或hub-link
" F6 J/ S E- [$ Y' }# [, @4 G6 U: M& Z
由于pci是由北桥和南桥的点对点传输后在南桥内部转出的,所以 此时要进一步量测*link上的strobe#信号是否有动 作,以判定北桥是否把cpu的解码指令传下来。假如有信号则说明南桥有问题,假如也没有则要进一步测量host bus。6 c8 ?; j# |- f4 W2 w: [
4 w9 c3 G# _3 a& j" |
% t3 i5 X6 j: ^8 ^# A& f* n$ ^/ `7.测host bus7 v9 P; c: b# N& r
- z& I2 c/ D; i" w: Y( w
开机时用示波器抓host bus的ads# 信号,假如有低电平的信号动作,则说明cpu有发出bios的执行指令,而北桥因故没有正确解码该总线周期,需要check的北桥的电路原理图和焊接质量及物料是否有装错等等因素。假如也没有则说明cpu电路有问题,不是cpu坏了就是cpu的电路原理连接有误或者工艺或者物料装错等等原因。 3 n! L& N5 i0 h+ \' \
! S* s, G! x: q$ a5 e% u
以上内容用通俗一点的话讲出来,首先是测量供电,时钟,复位等硬件工作的主要条件,接着打到bios的a16-a18的地址总线上面,看有无波形跳变,如有,则bios损坏,需要刷写bios ,假如没有,则检查lpc总线的frame#假如有,刚ec损坏的可能性比较大,假如还没有,则检查pci总线上的frame#,假如有,刚南桥损坏,假如没,则要继续向前级检hub 总线上面的strobe#信号,假如有跳变,则南桥损坏,假如没有,则要检查host总线上面的ads#,假如有,则北桥损坏的可能性较大,假如还是没有,则要检查cpu。
0 D- g" L& c; O3 {# ]% c3 D% c1 Q% ?$ f3 v
总结就是: 供电. 时钟. 复位. BIOS当然也包括南北桥和IO了就这么多故障点了
$ L- m7 U8 V, p/ J
% k# W( `5 n6 Q( m1 j7 {/ i6 K4 a5 m V) b |# ?6 l
短接开机针只见熟悉的自检界面,过程就不说了. 反正是修好了. 还没换什么大件 0 L% V% P! z, g4 F0 h- S9 Z2 L
# q& B# t! C) R3 D( D0 }; K! J
还有就是英华啊,我从版主降成普通会员了啊 / [. g8 i- Q' D8 b" x; M
' M' T4 v7 ?! l1 G
版主要是不泛滥的话 给我个版主吧
+ p/ p7 t# e2 T8 e/ I9 j. t |