EC
EC(Embed Controller,嵌入式控制器)是一个 16 位单片机,它内部本身也有一定容
量的 Flash 来存储 EC 的代码。EC 在系统中的地位绝不次于南北桥,在系统开启的过程中,
EC 控制着绝大多数重要信号的时序。在笔记本中,EC 是一直开着的,无论你是在开机或
者是关机状态,除非你把电池和 Adapter 完全卸除。在关机状态下,EC 一直保持运行,并
在等待用户的开机信息。而在开机后,EC 更作为键盘控制器,充电指示灯以及风扇和其他
各种指示灯等设备的控制,它甚至控制着系统的待机、休眠等状态。
EC 是 Embedded Controller(KBC)之后的微控制器的延伸,EC 目前普遍应用在具备智能
型节电功能的笔记本电脑设计中。它肩负着键盘、鼠标、电池电源以及温控检测的任务。
主流笔记本系统中现在的 EC 有两种架构,比较传统的,即 BIOS 的 FLASH 通过 X-
BUS 接到 EC,然后 EC 通过 LPC 接到南桥,一般这种情况下 EC 的代码也是放在 FLASH
中的,也就是和 BIOS 共用一个 FLASH。右边的则是比较新的架构,EC 和 FLASH 共同接
到 LPC 总线上,一般它只使用 EC 内部的 ROM。至于 LPC 总线,它是 INTEL 当初为了取
代低速落后的 X-BUS 而推出的总线标准。 EC 上一般都含有键盘控制器,所以也称 KBC。
那 EC 和 BIOS 在系统中的工作到底有什么牵连呢?在这里我们先简单的分析一下。在系统
关机的时候,只有 RTC 部分和 EC 部分在运行。RTC 部分维持着计算机的时钟和 CMOS 设
置信息,而 EC 则在等待用户按开机键。在检测到用户按开机键后,EC 会通知整个系统把
电源打开,CPU 被 RESET 后,会去读 BIOS 内一个特定地址内的指令(其实是一个跳转指
令,这个地址是由 CPU 硬件设定的)。这里开始分两种情况,1 CPU 发出的这个地址通过
FSB 到北桥,然后通过 HUB-LINK 到南桥,通过 LPC 到 EC,再通过 X-BUS 一直到达
BIOS。在 CPU 读到所发出的地址内的指令后,执行它被 RESET 后的第一个指令。在这个
系统中,EC 起到了桥接
BIOS 和南桥(或者说整个系统)的作用,在 CPU 发出的地址到南
桥后,会直接通过 LPC 到 BIOS,不需要 EC 的桥接。
这里需要说明的是,对于台式机而言,一般是不需要 EC 的。这里原因有很多:比如
台式机本身的 ATX
接口 ,而必须接到 EC 之上;还有就
是笔记本有更多的小功能,比如充电指示灯、WIFI 指示灯、Fn 等很多特殊的功能,而且
笔记本必须支持电池的充放电等功能,而智能充放电则需要 EC 的支持;另外,笔记本
TFT 屏幕的开关时序也必须由 EC 控制。这些原因导致了笔记本使用 EC 来做内部管理的必
要性。
总体来说,EC 和 BIOS 都处于机器的最底层。EC 是一个单独的处理器,在开机前和
开机过程中对整个系统起着全局的管理。而 BIOS 是在等 EC 把内部的物理环境初始化后才