找回密码
 注册

QQ登录

只需一步,快速开始

查看: 3178|回复: 4

[原创] 笔记本硬件结构1

巴州 发表于 2007-2-22 18:18:54 | 显示全部楼层 |阅读模式 来自 中国新疆伊犁哈萨克自治州

马上注册,结交更多好友,享用更多功能。

您需要 登录 才可以下载或查看,没有帐号?注册

x
第1页:BIOS EC 电源管理之间的关系
( i, t. J& R2 ?. f  _' T, q6 B- j  C- r. @6 \3 V
  所所开篇:今天是本系列教程的下篇,到今天工程师权威揭密系列的教程就告一段落了。随后大家可以通过访问我们的专题页面来随时温故知新,下面一起来看下篇吧。
0 h! S/ v- i0 |# ]* A# ~$ j( g3 [% f
  我们常会听到某些高手说“改一下COMS设置”云云,我们现在就来谈谈BIOS(CMOS)。 - I, J& t$ E  l  k3 r& h
5 _8 P! J1 [' k; H$ j, n
  BIOS(Basic Input/Output System,基本输入输出系统)在整个系统中的地位是非常重要的,它实现了底层硬件和上层操作系统的桥梁。比如你现在从光盘拷贝一个文件到硬盘,您只需知道“复制、粘贴”的指令就行了,您不必知道它具体是如何从光盘读取,然后如何写入硬盘。对于操作系统来说也只需要向BIOS发出指令即可,而不必知道光盘是如何读,硬盘是如何写的。BIOS构建了操作系统和底层硬件的桥梁。
% ^4 Z3 {; |0 Z  K4 V- G
2 E' W+ a6 T& ]4 \$ z9 D. d% W  而我们平时说的BIOS设定仅仅是谈到了其软件的设定,比如设置启动顺序、禁用/启用一些功能等等。但这里有一个问题,在硬件上,BIOS是如何实现的呢?毕竟,软件是运行在硬件平台上的吧?这里我们不能不提的就是EC。
  o* L& ]& S6 X5 D$ g% R
7 i3 H+ i2 Y; H8 D" g; t0 d- l  A  C" }5 _/ \) h$ g1 K; w

2 M6 p; F1 V# D7 r6 f6 ~
% Y. _* x( p6 U# }- G" |1 B* ]) U6 {( L7 B% z3 x

" l; G1 h, N+ F; X% [  i! W3 p这是日立H8的DEMO板和其宣传画
$ Z! F$ a7 j1 l' [0 \6 \, L6 P9 K% T: N# g+ Y( [
* Y, C: ?9 X5 V; ]2 ~( o' z2 |
WINBOND的EC
! I- ^& l8 N6 V  A6 H2 M" x" x7 b) n4 A/ g) `
  EC(Embed Controller,嵌入式控制器)是一个16位单片机,它内部本身也有一定容量的Flash来存储EC的代码。EC在系统中的地位绝不次于南北桥,在系统开启的过程中,EC控制着绝大多数重要信号的时序。在笔记本中,EC是一直开着的,无论你是在开机或者是关机状态,除非你把电池和Adapter完全卸除。
+ Q3 J1 I" o' G7 W# Y2 h3 {2 ]9 H2 Y* @. M. E6 u
  在关机状态下,EC一直保持运行,并在等待用户的开机信息。而在开机后,EC更作为键盘控制器,充电指示灯以及风扇等设备的控制,它甚至控制着系统的待机、休眠等状态。主流笔记本系统中,EC在系统架构中的地位如下图: - r2 i, S3 T5 H0 B& a

$ `2 x4 l7 h: V: {' {% `
2 d# X2 [2 @! ^$ w  U2 A+ ~5 c现在的EC有两种架构,上图左边是比较传统的,即BIOS的FLASH通过X-BUS接到EC,然后EC通过LPC接到南桥,一般这种情况下EC的代码也是放在FLASH中的,也就是和BIOS共用一个FLASH。右边的则是比较新的架构,EC和FLASH共同接到LPC总线上,一般它只使用EC内部的ROM。至于LPC总线,它是INTEL当初为了取代低速落后的X-BUS而推出的总线标准。 " o# {: l$ H# B* Y- s9 t
" B4 ?+ B& G/ g1 ?! T4 ?$ I0 d
  EC上一般都含有键盘控制器,所以也称KBC(Keyboard Controller)。
8 N2 L) ~7 p& B2 J4 o: f* d" D. ~% b+ n2 d
  那EC和BIOS在系统中的工作到底有什么牵连呢?在这里我们先简单的分析一下,具体的过程在本文的最后会详细介绍。
# ~# E  u% ~/ ]% y# P. r+ d: w7 M+ z, S  h% p% y* v7 U
  在系统关机的时候,只有RTC部分和EC部分在运行。RTC部分维持着计算机的时钟和CMOS设置信息,而EC则在等待用户按开机键。在检测到用户按开机键后,EC会通知整个系统把电源打开(这部分在最后详细介绍)。CPU被RESET后,会去读BIOS内一个特定地址内的指令(其实是一个跳转指令,这个地址是由CPU硬件设定的)。
5 r6 t0 L' Y* }4 s3 e4 [
# n' q' l8 j" b  这里开始分两种情况,对于上图左边的结构:CPU发出的这个地址通过FSB到北桥,然后通过HUB-LINK到南桥,通过LPC到EC,再通过X-BUS一直到达BIOS。在CPU读到所发出的地址内的指令后,执行它被RESET后的第一个指令。在这个系统中,EC起到了桥接BIOS和南桥(或者说整个系统)的作用。 . M3 i9 |# }! P3 n; U$ T7 H
9 T7 y7 [& X1 J
  对于上图右边的结构:在这地址南桥后,会直接通过LPC到BIOS,不需要EC的桥接。
. w4 }6 Z6 W/ M3 H" {% q+ q* [% {; [' R, s7 P, S2 c: |  Z
  这里需要说明的是,对于台式机而言,一般是不需要EC的。这里原因有很多:比如台式机本身的ATX电源就具有一定的智能功能,他已经能受操作系统控制来实现待机、休眠的状态;其次由于笔记本的键盘不能直接接到PS/2接口,而必须接到EC之上;还有就是笔记本有更多的小功能,比如充电指示灯、WIFI指示灯、Fn等很多特殊的功能,而且笔记本必须支持电池的充放电等功能,而智能充放电则需要EC的支持;另外,笔记本TFT屏幕的开关时序也必须由EC控制。这些原因导致了笔记本使用EC来做内部管理的必要性。
; ^# j6 e1 I4 U% B
( w% `5 z5 k: r% F5 @8 H+ {& B  总体来说,EC和BIOS都处于机器的最底层。EC是一个单独的处理器,在开机前和开机过程中对整个系统起着全局的管理。而BIOS是在等EC把内部的物理环境初始化后才开始运行的。
! }  z$ c+ Y7 n( y4 f$ U! C7 @8 |1 G% o
  看到这里,我想大家也明白EC到底是呵方神圣。如果说BIOS 是底层系统的话,那EC 似乎更加底层。 + n( T4 Y4 J9 |* H
( Y# }* A, B7 t! k: w7 Y
  在南桥上还有一个功能块就是电源管理单元(PM,Power Management)。
' r0 T5 x1 D2 g5 L
* M" L& W5 D+ |6 a, z3 g  一般来说,他和EC来共同配合完成。这里包括从开机(power button)键按下后,启动,待机,休眠,关机的全部功能。还包括对背光亮度,声音等的控制等等。 + t' `: l8 {6 m. ?, u( t' Q5 O
% U7 }* u- e' P+ s, z
  至于现在Intel的Speed Step技术,也有部分功能是透过南桥来实现的(南桥发送SLP、STPCLK(sleep,Stop Clock)来实现睡眠、深睡眠等)。 ' H3 {, I$ [' Z" N+ B. c0 Q" l

: F7 C: Y- x0 Q+ Q. N7 r6 f/ S  这部分的设计比较简单,只需要点到点的连接南桥和CPU即可。
, Z' U9 L, I. k/ H. T! p( k1 N% }, ~7 x. F; A( T  i
[ 本帖最后由 巴州 于 2007-2-22 18:29 编辑 ]
未来精英 发表于 2007-2-23 11:07:17 | 显示全部楼层 来自 中国广东梅州
好.呀.呀.呀顶.....
大山风 发表于 2007-2-26 09:51:26 | 显示全部楼层 来自 中国河南安阳
多谢楼主分享
鸿芳科技 发表于 2007-2-26 14:05:06 | 显示全部楼层 来自 中国福建厦门
不错,好贴子,多多分享
shglong 发表于 2007-4-24 10:04:59 | 显示全部楼层 来自 中国山西临汾
好啊,值得学习班!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表