|
|
我所知道的EC====> ower Sequence " X/ Y% A1 D5 q6 V1 l% p
/ y9 ?7 w) x. t Z& _# a1 Y5 ?" r
1. What’s Power Sequence ?
6 L; O( {4 N8 |9 d Power Sequence 是指HW Device上电的顺序,它的大致顺序如下:1 y' O( I, m- h* q# z7 y/ C
1)ALWAYS# Z3 _, T7 L) @* x: {+ M
2)SUS_ON z! i) n* ~& }. n+ j4 N3 Z2 t4 A# n
3)DIMM_ON
9 ], O1 E6 H! q! y( R ?6 O; n4)RUN_ON
% { n0 i5 F4 S N7 K5)VR_ON
/ w( W1 I0 W" z. s& i ~: ]( ~+ y; y 这基本上是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正式接手并开始工作。/至此,上电时序完成。( b$ A+ F) m4 C! b
5 M6 [8 y' p1 P; b2. Why Power Sequence ?! q/ c7 c) d$ L) v( T: l" y, K
! R3 b7 I: ~4 g ?! s. z7 e0 l
I.Why need sequence?(个人猜测,欢迎指教J)( L$ d3 m7 L3 A) |& r# r. o' \+ V7 N
为什么需要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的速度)。- Y) i9 J$ N2 F; ]* U; g
/ E r l0 w" z2 cII.S4和S5共用一个信号?
! J# U' c5 z8 F* w5 n Y3 p5 b+ C6 w4 X7 c5 T9 c
做过EC的同志可能会发现,线路图上S4,S5的信号只会有一个。根据我们的使用经验S4和S5有很大的差异。原因其实是因为S4,S5都只有ALWAYS电,从EC的角度,根本没有必要区分S4,S5所以SB只有一个信号拉到EC。! V; Z/ `: N6 C2 U2 g7 O
5 n9 J3 e# _3 |9 ~2 I6 D
7 G7 z5 [( _6 a" ?% _1 G+ ~
Peter ' ~" c; {5 e% o
6 Y/ @+ N+ l$ w% T7 W! @& n
|
|