|
|
我所知道的EC====> ower Sequence
9 g# s$ l1 P/ H+ L; H! g0 j) t3 ~- u$ M 3 @% Q0 G; x1 Q3 I" H3 H
1. What’s Power Sequence ?$ ^) a$ M) S& g2 G& e3 m5 x; s4 m
Power Sequence 是指HW Device上电的顺序,它的大致顺序如下:
$ U) I0 j$ |/ U: N1)ALWAYS
# I0 m* }: d) F, [3 L9 S, |2)SUS_ON: c3 Q$ F* D3 K- ^2 r
3)DIMM_ON, W2 B( _. ^7 F+ ^7 N8 D
4)RUN_ON( \ K; d' O9 m" u) ~( M' c3 [
5)VR_ON+ e/ p9 r9 k' {: g$ @
这基本上是NB工作需要的所有POWER。插入AC或者DC后,机器内部的开启的电为ALWAYS电,主要用以保证EC的正常运行;系统正常工作进入SO以后,所有的Power都开启。完整的过程其实是这样的:AC或者DC插入以后,EC Reset开始跑code,用户按下Power Switch时,EC拉SUS_ON送给一颗POWER IC,+3VSUS,+5VSUS起来后,POWER IC回EC SUS_OK。接下来EC发给南桥一个称为‘RSMRST#’的信号。这时候南桥的部分功能开始初始化并等待开机信号。这时候的南桥并没有打开全部电源,只有很少一部分的功能可用,比如供检测开机信号的PWRBTN#信号。,在用户按下Power键的时候,EC检测到一个中断,然后duplicate一个开机信号(PWRBTN#)给南桥,南桥收到PWRBTN#信号后依次拉高SLP_S5#,SLP_S4#,SLP_S3#信号,开启了所有的POWER,在V_CORE电起来后,IC会发送ALLSYSPWOK信号给EC这信号表明外围电源正常开启。南桥会发出PCI RST#信号到PCI总线,于是总线上的设备都被初始化(包括北桥),然后CPU RST#信号送出,HOST正式接手并开始工作。/至此,上电时序完成。
1 w# E/ ?* V. W- R) ~4 P: A
8 N- e5 q1 `# ?- E% [: ?# o/ m2. Why Power Sequence ?$ {3 m2 d2 A5 b) K3 \; w
, ^: k4 p2 V' y0 C+ ^I.Why need sequence?(个人猜测,欢迎指教J)" g3 E& S; s6 p/ r! V& b
为什么需要Power Sequence呢?没有Power Sequence直接把所有的电压都供上可以开机吗?答案是YES。直接上电开机是没有问题的,可是没有办法达成省电的功能;另外S3/S4,Long Run也会有问题。系统计入待机的时候(S3),机器内部的电只有SUS&DIMM电,主要是提供DDR的电压,以保证RAM内部的资料不丢失(S3 是将数据Store to Ram,在Resume之后OS从RAM中获得数据,所以DDR的电一定要留着),而S4和关机(S5)的电是一样的,都是Always电(当AC在的时候其实SUS电要留着,目的是加速Resume或者Power On的速度)。
: l+ R. |$ W+ w. H! p+ L
& n4 t" A3 I a, Q; ?II.S4和S5共用一个信号?( ~! y& J2 \, n9 S1 |& X8 R
/ a1 I/ ], l* i) R0 D3 O& H3 O* J
做过EC的同志可能会发现,线路图上S4,S5的信号只会有一个。根据我们的使用经验S4和S5有很大的差异。原因其实是因为S4,S5都只有ALWAYS电,从EC的角度,根本没有必要区分S4,S5所以SB只有一个信号拉到EC。9 @- B1 E* ?6 F8 k; r3 g% |
. p7 ?4 w- O1 w' Q' ~. t R! ]
1 k0 R m6 S b) c' q% n1 j5 l! `" yPeter - b' Q( R* y! |* @% b/ N0 g
. `8 |9 I$ C4 S, Y1 n9 d |
|