本帖最后由 领航科技 于 2011-10-3 11:19 编辑 ' A! |$ ]% \* e2 q" f5 T
( h& U2 H; S+ K$ r晚上的时候师傅的电脑坏了,搬来给我修了, 映泰M7NCG 400 / SOCKET462 架构的0 b+ X" \/ U, n S4 J
2 i/ k: Q( r3 c0 ?: E- C( }
换成别人的话,我肯定不会修的,这么垃圾的主板,开机不跑码啊。2 t2 f4 C3 V L# m u
' c9 P! e, G2 W, D0 {" M2 G
8 w F5 Z* X* O! @1 }" `% B# k& T; E
不跑码的故障是电脑主板维修工作中最难,牵涉面最广的问题。
$ ?0 u6 `9 c' p O! A5 u5 d' X
9 E6 F& z- \7 d- T$ I; ^
8 i& k8 M' e0 G) W' F8 Z0 ?) A! e; U6 X
1.要想主板跑码就必须得先测量所有供电,
# [; M7 d4 g! [; {8 o+ ]( E7 b
4 {2 f$ K$ G; a" i假如所有供电都正常了,那么就会有电源好信号出来,时钟也就会工作。然后南桥时钟正常后收到电源好信号后发出pcirst信号,再当北桥收pcirst后又发出cpurst复位cpu,然后cpu开始执行代码加载bios。
4 p( Y# q6 i+ Y! s
8 M2 u. ~ C/ S* j7 S首先量测系统的各种clock是否正确产生,假如正常继续后面量测分析。
, u! T# u3 [0 Q9 R3 {2 ^+ e: A3 P+ E4 g
/ Z! K2 } ?1 K" g
1 V; J! Y/ K# g( u, S: @( L
2.测时序信号
9 t# q, P& R, U5 C6 b: s p/ R2 V m2 A4 y
量测pwrgood(南桥发给cpu)和 pcirst#、cpurst#(北桥发给cpu)信号正常: T' {( @- t$ ^9 d% g% Q
0 L5 ^3 {# f: `3 J) D; Y
6 E* Z1 U2 N' |( f( X% c# H+ T: Q7 R
3. 测bios地址线
; q5 o; I* T$ d8 ^$ e2 _. u7 x1 e: B$ R' u( Q4 r
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的地址信号动作,则需进一步量测上一级总线信号以判定是那个总线上的设备有 问题。
; U8 W0 V$ }4 ?/ T0 N: T
6 v( B; b5 X6 e/ o/ E; h4 I注:cpu被reset后,所有的状态被clear到一个硬件的缺省状态,并且clear l1和l2 cache。然后cpu开始从0ffff-fff0h的地址读取bios 的第一条代码执行bios程序,所以从最高位地址量测比较方便。 # v3 ~0 I$ Z4 o/ b0 d7 m5 E! ]5 E
5 F( E9 u+ @" W1 j' r6 E
, L4 r4 u2 b+ b% b* c! {. @2 W1 c
5 z! e6 f3 l3 ?) r: L$ i
" U, F- V# X3 p
4.测lpc总线1 B" }2 ?; j. A6 K: Z( X
" q, P& w, l ~ 由于我们目前的架构bios总线是从lpc上经过ec(pc87591) bridge过去的,所以需要进一步判定lpc上是否正常解码到cpu 的发 出的解码信息。开机时用示波器测量lpc上的frame#信号看有否低电平的信号变化(为什么测frame#,由于frame#用来启动一个总线周期的 传输,更具体内容请自行阅读lpc spec)。假如有信号则说明ec有问题,没有把lpc的总线周期传到bios上。假如没有信号动作说明lpc上 也没有解码出cpu的第一条读取指令信息。
: B6 U1 Z$ O# F; j% W" O' f8 x9 H, Z& @, B9 G
: ]3 P- x6 _+ J
+ v1 x+ @; K/ h$ y2 _/ o6 v
5.测pci总线
( L8 I J3 L" C+ h7 I0 I' q |( V
) X/ s, `4 W) F1 X/ E 通常lpc总线是从南桥的pci-lpc bridge转出来的,所以当lpc上没有动作时,就要量测pci的总线上是否有解码到cpu 的第一 条指令。也是开机时用示波器抓pci的frame#信号看有否低电平的信号动作。假如有信号则说明南桥有问题,没有把pci的总线周期传到pci 上。假如没有说明pci上也没有解码出cpu的第一条读取指令信息。
4 S8 ~: Z9 X8 k# |7 P' M! K: h- m0 R6 [. @& u
' t; z+ L" P9 d7 s! g
5 g$ [( g& J& c" V7 Q6.测vlink或hub-link
! Y9 ^0 X6 t: d4 X% \) l
% t' O. ]* g8 U ` 由于pci是由北桥和南桥的点对点传输后在南桥内部转出的,所以 此时要进一步量测*link上的strobe#信号是否有动 作,以判定北桥是否把cpu的解码指令传下来。假如有信号则说明南桥有问题,假如也没有则要进一步测量host bus。
9 `# r6 z0 m2 n _! U( }& w: m/ ~& R6 U* @! ^! {
9 n/ @/ T1 Y0 g5 F/ S2 k- S
7.测host bus+ f! D' M% t. U- B# G' q* _
! W; {( v4 s" I* L/ q+ ^) x$ u
开机时用示波器抓host bus的ads# 信号,假如有低电平的信号动作,则说明cpu有发出bios的执行指令,而北桥因故没有正确解码该总线周期,需要check的北桥的电路原理图和焊接质量及物料是否有装错等等因素。假如也没有则说明cpu电路有问题,不是cpu坏了就是cpu的电路原理连接有误或者工艺或者物料装错等等原因。
' M6 Z3 u' X2 y: k+ a1 w) j- |0 M/ A# b) Z' H& f
以上内容用通俗一点的话讲出来,首先是测量供电,时钟,复位等硬件工作的主要条件,接着打到bios的a16-a18的地址总线上面,看有无波形跳变,如有,则bios损坏,需要刷写bios ,假如没有,则检查lpc总线的frame#假如有,刚ec损坏的可能性比较大,假如还没有,则检查pci总线上的frame#,假如有,刚南桥损坏,假如没,则要继续向前级检hub 总线上面的strobe#信号,假如有跳变,则南桥损坏,假如没有,则要检查host总线上面的ads#,假如有,则北桥损坏的可能性较大,假如还是没有,则要检查cpu。
9 }$ v- D7 K- N l7 o% y; P2 s" T' l: n) j& x7 K6 b m
总结就是: 供电. 时钟. 复位. BIOS当然也包括南北桥和IO了就这么多故障点了$ w8 A, D9 }% I2 x/ ]+ j3 [1 s) h3 ^
1 r% r# O' b! t" A" B& X- G& S {
! y8 Z P9 F; K' g& K. X, @
短接开机针只见熟悉的自检界面,过程就不说了. 反正是修好了. 还没换什么大件
' Q* r0 K2 e3 s0 I2 v4 a [/ ]% A0 G8 z+ @, ^/ E
还有就是英华啊,我从版主降成普通会员了啊
: I" P* H6 B* a/ x) g- `6 B# S- }. r) w. G9 V/ @
版主要是不泛滥的话 给我个版主吧% f& Y/ M3 g" n1 g
|