2024年4月25日发(作者:蛮春华)
第1页:作者序:您真的是笔记本电脑高手吗?
所所开篇:各位早上好,都打起精神来,按惯例我们又给大家带爆料来了。经过上几
期的笔记本低价猫腻、Nvdia MXM技术、揭密笔记本散热误区等三篇“权威揭密”系列
文章后,接下来该为大家带来什么呢?
从本周开始,我们将带领大家全面认知笔记本的硬件架构设计,由于篇幅十分浩瀚,
为了不让大家感到恐惧,我们将整个文章分为上、中、下三篇分别发出,每篇均有自己的
主题,独立成章。相信当你看完所有篇幅后,你一定可以成为真正的笔记本发烧友了。
从2004年跨入2005年,笔记本的价格可谓一落千丈,笔记本电脑也不再是身份地
位的象征,它更是一个工具,帮助我们从纷繁的事务中解脱出来。
自己升级CPU?太easy了~都不好意思说出来
也正因为笔记本价格的滑落,我们身边多了很多笔记本的高手。他们对其硬件技术兴
趣近乎痴迷,他们升级所有能升级的硬件,从MMC2接口的PII升级到PIII已经不再是新
闻,而自己扩展USB口也不是什么新鲜事,至于为无网卡的机器打造内建网卡,为无蓝牙
的机器打造内建的蓝牙也一直在论坛上看到,还有为IBM ThinkPad 600X制作内建的
MINI-PCI无线网卡,用的天线居然是原来Modem的线……
笔者不否认这些强人的动手能力和他们的创意,甚至他们对硬件的了解程度超越了在
开发第一线的RD工程师。但尽管如此,我相信他们对笔记本的整体架构,内部总线的了
解还有欠缺。
比如,我们都知道如何CPU会自动降频以减低自身功耗,但你是否知道他们具体物理
动作?
又如,我们常说的BIOS,我相信高手对BIOS的设定几乎可以闭着眼睛来,但你是否
能回答这BIOS究竟是谁在运行?毕竟,软件是要靠硬件来运行的吧?!
再如,或许某些DIYER对台式机的开机过程了如指掌,听报警声就知道机器挂在哪里,
但你是否清楚笔记本电脑的开机过程?是否也能仅仅凭报警声就能明白?
还有,大家都晓得CPU过热会引起保护性关机。那你是否知道这个过热保护系统是如
何工作的呢?那AC97呢?笔记本中的MODEM都独立出来了,他们到底是怎么工作的?
如果你是IBM的Fans,你肯定知道BMDC吧?那BMDC到底是如何实现的呢?
拆拆装装,简直就是家常便饭
实际上,随着对很多简单问题的深入,我们会发现其实这些问题并不简单。虽然对于
业余的DIYER,他们不知道这些已经无关紧要,他们仍然已经是很“高手”的了。但我相
信,一个真正的DIYER对技术的渴望会超乎想像,又有什么能够阻止他们向更高的技术领
域进军呢?
或许,也有读者说,我只要用好我的电脑就好,他怎么运作关我什么事?!那么在此
我将很遗憾的对你说,您真的并不适合看本文。
偶尔还会拿个台式机P4 CPU代替迅驰CPU搞怪一下,当然是开不了机的
撰写本文,其实是希望那些DIYER 能对笔记本电脑有一个系统的了解。在本文中,您
会看到我对以上的问题做详尽的解释,相信在你读完本文之后,对笔记本的整个体系有了
完整的概念。而对于真正的那么些DIY高手来说,或许有些知识您已了然于胸,但对于一
些你知其然,而不知其所以然的问题,或许你能在读完本文后能找到答案。
另外作为比较,本文也会以最新的Sonoma平台和Centrino平台做一些比较。好吧,
闲话少说,我们正式开始吧!
第2页:从架构开始学习 让我们认识更多
当前笔记本虽然是品牌众多,且外观、功能各有千秋,但究其原理还是一样,都是基
于IBM PC/AT的老架构(当然Apple的除外)。这里值得注意的是,虽然台式机和笔记本
外形差别很大,但其基本的架构和原理都是一样的,都是兼容IBM PC/AT架构的。
那么我们先来说说笔记本电脑的主要框架。
一台很方便拆卸的华硕M5N作为客串嘉宾
系统的主要构成主要分为如下几个部分:North Bridge(北桥),South Bridge(南
桥),显示卡,EC(嵌入式控制器),这几个部分一般都是集成到主板上的,配合CPU,内
存就可以开机进入BIOS。以上的部分是必须的,因为这属于PC/AT架构的基本构成。其
他诸如硬盘,Wireless Card(无线网卡),Card Bus(PCMCIA控制器)等等都是次要的,
并不影响整机的工作,或者说,不影响机器的开机。
Intel Centrino架构
为了方便讨论并具有一定的代表性,我们取当前比较流行的Centrino架构来说明。上
图便是标准的Centrino平台,按照这个平台搭建的笔记本,可以打上Intel Centrino漂亮
的蝴蝶标志。而如果在Pentium+ 855GM/PM/GME+ ICH4+ Intel PRO Wireless的搭
配中有一项不符合,就不能用Centrino的标志,就不能使用INTEL的免费广告咯,呵呵
~~这也是Intel聪明的经商策略:)
第3页:笔记本硬件结构各部分功能简介
为了照顾一下入门级的朋友,我们首先非常简单的介绍一下系统各个功能块的作用。
CPU嘛,笔者就不多说了,我相信大家都清楚哦~(什么,你不知道CPU?!我$#!@%^&!)
北桥的功能主要是连接CPU和内存,如果是独立显卡的话,会提供与显卡的AGP接
口,并用HUB-LINK与南桥通信。北桥常被成为MCH或者GMCH,也就是Memory
Control Hub或者Graphic Memory Control Hub的意思。
用三星X30作为案例,点击上面图片可以获得更多解释
南桥的功能主要是连接一些外围设备,比如PCI界面的网卡,PC卡控制器等等,另外
诸如USB接口、IDE接口也是由南桥来提供的,南桥提供LPC总线与EC通信。南桥也常
被称为ICH,其意思是I/O Control Hub的意思。
至于INTEL为什么用Hub-Link这个词,我想是因为南北桥都是两个HUB(Memory
Control Hub和I/O Control Hub)的原因吧。
EC(Embed Controller,嵌入式控制器)虽然和我们常说的BIOS有点像,不过其实
EC是BIOS的物理控制器和载体,它通过LPC与南桥通信。
如果看不懂本页,请参考这张图,我相信很容易就明白了。文中的我们提到了各种接
口,比如FSB,AGP,LPC I/F等等,这些接口我们会在下面具体的谈。
第4页:正确认知CPU前端总线 信号抗干扰是头等大事
从这里开始是本文的重点,将详细介绍各部分的连接和规范。
系统中最高速、最复杂的连接莫过于CPU和北桥的连接,我们称之为FSB(Front Side
Bus,前端总线)或者HOSTBUS。
Dothan CPU
FSB有64位的数据线和32位的地址线。正是通过FSB,CPU和北桥才能完成通信。
虽然实际上CPU与北桥的连接都是点到点的,但由于其高速性,在实际的布线中还是
需要非常非常小心。而EMI/EMC工程师在这方面也将是不遗余力的帮助硬件工程师解决
问题(解决不好就不能通过有关方面的认证,也就是不能卖啦!)。
那么什么是EMI/EMC呢?具体的含义是EMI(Electro Magnetic Interference,电
磁干扰),EMC(Electro Magnetic Compatibility,电磁兼容性)。
所以我们可以这样认为:FSB对其他信号的干扰非常严重(EMI很严重),而且其本身
也比较容易受到干扰(EMC很弱)。很明显,如果FSB被干扰并出现误判,机器是必死无
疑的。
在考虑了EMI/EMC的影响后,在实际的布线中,通常将这部分线路放在内层(一般
笔记本电脑主板都有6~8层,6层在Centrino平台勉强可以,到了Sonoma平台就几乎
不可能了),以防止高速信号对其他信号造成的串绕。所以一般情况下,我们在主板上是看
不到FSB的。
下面的图片是INTEL的设计指南里的建议,我们看一下。
FSB总线
图中,DATA是FSB的64位数据线,ADDRESS则是32位的地址线。左上脚的L3
代表的是第三层PCB。由于在同一层中不可能把数据线和地址线全部走完,所以其实第三
层仅仅走了一部分的FSB,余下的在第六层中。
FSB总线
同样,L6代表的是第六层的PCB。
第5页:头疼的布线 让你深入芯片内部!
由于FSB是绝对的高速信号,所以在布线的时候,我们需要考虑到信号线长度的一致
性。
比如,INTEL要求每一根的FSB的长度需要一致,所以,在PCB步线的时候,就免不
了要走“Z”字型的线路来满足长度的一致性。在这里,我想大家可能没想到一点,那就是
关于芯片内部走线的长度的考虑(也就是说,为了满足长度的一致性,我们必须要考虑到
CPU内部的线路长度),然后加上外部走线(即在PCB上的走线)的长度,才是整个一个
信号线的长度哦!当然这个长度是由INTEL提供给各个OEM/ODM厂商的。
下图是DDR那边的走线示意图,其中MCH Pkg Route就代表着北桥芯片内部的走
线长度。
布线其实需要考虑的比你想像的更多
接下来,我们来放大一下前面的图,看一下所谓的“Z”字型走线。
“Z”字型的走线是为了满足信号线长度的一致性
图中方框内的线路都是“Z”字型的走线。由于这些线路都是在PCB的内层,一般来
说我们是看不到的。不过基于同样的原理,在一些其他地方的设计上,也要考虑走线的长
度,比如显卡,显存,北桥到DDR的走线等。
显卡和显存颗粒的布线
上图是某笔记本显卡和显存部分的走线,我们看到,也是大量采用了“Z”字型的走线
方法,其原因就如上文所说。下面是北桥到DDR的走线,道理是一样的。
北桥到DDR的走线
在FBS总线上有个小知识,对与FSB来说,虽然地址线应该有32根,也就是
ADD[0…31],但实际上地址线只用到了ADD[3…31],而不是ADD[0…31],为什么呢?
其实很简单,因为现在的CPU读取数据都是8位连读的,所以CPU只需要知道一个数据
的首地址,其后的7个bit就会自动被读取。所以不需要ADD[0…2]这三位。如果对这点
感到难以理解的读者,建议去看一下《微型机计算机原理与应用》,我想你很容易会找到答
案。
第6页:想了解CPU为何自动降频?不知道VID怎么行!
从移动版的PIII开始,INTEL的CPU就多了一个输出VID的功能。其作用是实现CPU
都具有自动降频的,在必要时,甚至会进入深睡眠、关闭内部时钟等情况。其具体流程是:
CPU根据自身的状态输出VID到电源IC,电源IC接到VID后解码,并输出一个跟VID对
应的CPU工作电压。而对于CPU的各种状态及其切换过程,我们会在《下篇》具体讨论
到。
INTEL CPU的VID列表
我们看到,CPU的工作电压可以一直从1.708V一直降到其最低的0.700V。在系统最
先开机的时候,也就是在电源IC未接到VID的时候,其输出是其最低电压,即0.7V。
下图是IBM配合迅驰技术使用的电源管理软件。我们看到CPU的速度有高/自适应/
慢/很慢四档可以调节。实际上,如果有必要,可以做成更多的调节,就像上面的那张VID
表一样。
迅驰CPU的各种工作状态
这里要说的是,INTEL对于其VID的一致性做的比较好,其各种CPU一般都支持相
同的VID—电压对应表;而对于AMD就不大一样,一般它的不同的CPU都会有不相同的
VID表与之对应。这在研发上也增加了一点点的小麻烦。:)
第7页:北桥:DDR内存的走线密如蛛丝
北桥是信息的中转站。根据上文所说的功能,它有4个接口,分别是FSB ,DDR,
AGP以及HUB-LINK。
北桥近照
FSB是和CPU的接口,参见上文,这里不再多说。
DDR是对内存的接口,现在的855GM/PM支持到266MHZ,这部分线路和FSB那
边的连接将影响到主板的格局,因为他们都是高速的,大量的信号线的集合。在布线的时
候最先考虑的就是它们。
如图是Intel建议的布线图,这里仅仅是DDR的信号线,并不包括地址线。
北桥到DDR的信号线
地址线则在另外一层,如下图:
北桥到DDR的地址线
我们看到,这与数据线并不在同一层。而图中我们看到的Series Dampening resistors
和Parallel Termination on both layers则是在DDR RAM那边特有的。其意思分别是串
行衰减电阻和终端并行电阻。
第8页:衰减电阻和终端电阻之惑
我们先来解释一下串行衰减电阻和终端并行电阻。前者的意思是从北桥出发的每一根
数据线,必须与一个电阻串联再到达DDR RAM部分。而后者的意思则是,在数据线到达
DIMM1和DIMM2后,必须有一个在串联一个电阻后上拉到1.25V,也就是下图中的VTT。
具体的示意图:
衰减电阻和终端电阻的示意图
其中的RS就是所谓的串行衰减电阻(Resister Serial),而RT则是终端电阻(Resister
Termination),而SO_DIMM0 PAD则是指DIMM的PIN脚。至于什么是DIMM?Dual
In line Memory Module,字面翻译就是双列内存模块。
那为什么需要终端电阻呢?在进入DDR时代,DDR内存对工作环境提出更高的要求,
如果先前发出的信号不能被电路终端完全吸收掉而在电路上形成反射现象,就会对后面信
号的影响从而造成运算出错。因此目前支持DDR主板都是通过采用终结电阻来解决这个
问题。
由于每根数据线至少需要一个终结电阻,这意味着每块DDR主板需要大量的终结电
阻,这也无形中增加了主板的生产成本,而且由于不同的内存模组对终结电阻的要求不可能
完全一样,也造成了所谓的“内存兼容性问题”。这点在DDR II上得到了比较完美的解决,
我们在下面具体谈。
衰减电阻和终端电阻的实物图
上图中,蓝色框是北桥,红色框内是衰减电阻,而黄色框内则是终端电阻(看到框框
边上一大块绿色的铜皮了吗?这是VTT 1.25V哦!)。我们看到,其走线的顺序也是跟上面
示意图一致(从北桥经过衰减电阻到DIMM的PIN脚,然后接终端电阻到VTT)。
第9页:北桥:DDR单/双通道区别到底在哪里?
而DDR SDRAM的接法有双通道和单通道之分。
相对于传统的单通道而言,双通道DDR 技术是一种新的内存控制技术,它和双通道
RDRAM 技术非常相类似,是在现有的DDR 内存技术上,通过扩展内存子系统位宽使得
内存子系统的带宽在频率不变的情况提高了一倍:即通过两个64bit 内存控制器来获得
128bit 内存总线所达到的带宽。双通道体系包含了两个独立的、具备互补性的智能内存控
制器,两个内存控制器都能够在彼此间零等待时间的情况下同时运作。当控制器B准备进
行下一次存取内存的时候,控制器A就在读/写主内存,反之亦然,这样的内存控制模式可
以让等待时间缩减50%。
双通道技术显然需要北桥的支持,INTEL的855芯片组并不支持双通道DDR I,比较
搞笑的是在CENTRIO平台的时候,VIA的一些芯片组能支持双通道内存技术而INTEL不
能,呵呵。
下图是单通道DDR-I内存的示意图,左边的信号来自北桥。如果是双通道的话要加上
另一组DDR与北桥的接口。双通道对于单通道来说能显著加快内存数据和CPU的交换速
度,但是出于PCB布线的考虑,双通道明显增加了线的数目,增大了布线的难度,并由此
产生的成本问题对企业来说更为敏感。
单通道DDR RAM的物理连接
这里也有RS和RTT,其意义和上文所说的串行衰减电阻和终端并行电阻一致。
第10页:转换思路 问题迎刃而解 DDR II的新创意
在最新的DDR II上,主板设计上已经取消了部分信号的衰减电阻和终端电阻,而将其
集成于内存上。
我们称这DDR II的新特性为ODT功能,即On Die Terminator(内建终端电阻器)。
当在DRAM模块工作时把终结电阻器关掉,而对于不工作的DRAM模块则进行终结操作,
起到减少信号反射的作用(注:ODT的开启与禁止由北桥芯片控制,ODT所终结的信号
包括DQS、RDQS、DQ等等,可参考单通道DDR-I内存的示意图)。
这样可以产生更干净的信号品质,从而产生更高的内存时钟频率速度。而将终端电阻
设计在内存芯片之上还可以简化了主板的设计,降低了主板的成本,而且终端电阻可以和
内存颗粒的"特性"相符,从而减少内存与主板的兼容问题的出现。
DDR II内存
已经砍掉部分终端电阻的DDR II的主板
如图,DDR II的插槽边上已经没有了终端电阻,这样在设计上将更为简便,布局也会
更加合理。
第1页:北桥:显示单元是区分855GM/GME和855PM的好办法
所所开篇:大家好,今天是周末了。相信大家在看本周一关于笔记本硬件结构终极教
程上篇后,已经都兴奋的不行了。所以这次在周末期间提前推出本文的中篇。让大家可以
将热情继续下去,而下篇也会在下周的时候发出。到时候三篇连着读起来,一定爽的不行
啊。闲话就不多说了,大家开始上课吧,安静哦~
各位好,很高兴又与大家见面了。在上次发表了本文的上篇后一直忙于工作,昨天晚
上终于抽空写完了这次的中篇。这次的内容有大家比较关心的PCI Express总线和传统的
PCI总线的区别,以及SATA/PATA技术的一些分析。
而对于IBM 的FANS来说,或许通过本文,您甚至可以自己升级BMDC模块(这很
令人兴奋哦!)另外USB也会再谈论一下,对DIYER有点帮助,也许使用IBM Thinkpad
600E的朋友可以扩展您第二个USB口。好吧,闲话少说,我们正式开始!
AGP是加速图形接口的简称。对于我们常说的集成显卡的855GM/GME来说,在设
计的时候是涉及不到AGP接口的,因为其北桥能直接支持VGA输出,LVDS输出(到TFT
Panel),以及S-VIDEO输出。设计者只需要把这些信号延伸到主板的各个接口即可。
855GM的系统架构
如图是采用855GM芯片的系统图,我们看到在显示部分,已经直接由北桥来负责输
出。下图是某笔记本的整体写真,我们看到除了CPU,北桥,南桥外,没有显示卡芯片。
集成显卡的主板
而对于独立显卡的设计(855PM芯片),则会相对麻烦一些。因为设计者需要通过
855PM的AGP通道连接显卡,并通过显卡输出需要的数据,如VGA,LVDS等等。
855PM的系统架构
我们看到,在采用855PM的芯片组时,北桥只负责输出AGP到显卡,然后由显卡负
责输出各种显示信号(VGA,LVDS….)
如图是台式机的AGP显卡,在笔记本中不过是把这张卡也集成到主板上了而已(当然
是选用移动版的GPU啦!)下图是含有独立显卡的IBM T42和三星X30,分别采用ATI 7500
和NVIDIA 5200的GPU。
而一些台湾公司的北桥,如VIA和SIS的北桥不直接支持Panel,它们需要一个
Transmitter来转换才能输出VGA、LVDS等信号,比如最新的PN800(PT800的移动版
本)和K8N800(K8T800的移动版本),如果有需要更多信息的话可跟笔者联系,在这里
就不做介绍了。
最新的MXM技术也已经初具雏形,笔者当前有幸接触到MXM的设计,核心是比较
新的NV43。至于什么是MXM,笔者简单说一下:MXM是相对当前的笔记本电脑无法更
换显示卡而提出的一个规范,其通过一个特定的接口能实现显示卡和主机分离,使得用户
可方便的升级笔记本电脑的显示卡,如同台式机能方便更换AGP显示卡一样。其接口的详
细规范,就不再多说,可参考《权威揭密 NV杀手锏MXM绞杀低能游戏NB》
第2页:北桥:HUB-LINK 你了解多少?
HUB-LINK,这是Intel的规范,其作用是提供南北桥的高速数据连接。其运作频率是
66MHZ,速度为266MB/s。Hub-Link有12根的数据线,以及2根差分的时钟线,以及
数根的控制线。
以往的南北桥连接都是直接套用PCI总线,速度慢不说,还有一堆的信号线要你排。
在这种情况下,INTEL提出了Hub-Link以改变这种情况。而HUB-LINK对布线的简
化确实有相当的帮助,当然对提升速度也有很多的好处(相对应的也有VIA提出的V-LINK,
ALI提出的A-LINK等)。对于最新的915平台,这部分称为DMI(Direct Media Interface)
连接,以最大2GB/s的数据传速率远远超过266MB/s的Hub Link。
下图是Hub-Link的连接示意图。
Hub-Link的布线一般要求并不是太强,可参考以下的表格。
我们可以看到其最大允许的长度为6 inch,宽度需要至少4mils,间隔8mils等等
第3页:南桥:IDE接口 说难不难说简单也不简单
南桥是外围(I/O)设备的中转站,一般来说主要的接口有HUB-LINK,IDE,PCI,
AC97,USB,PM(Power Management,电源管理)等,对于最新的ICH6,更有SATA,
DMI等。
HUB-LINK的定义见上文。
IDE是大家比较熟悉的接口,硬盘一般都通过IDE通道与南桥建立连接。在ICH4上,
有两个IDE接口,所以我们一般硬盘用IDE0,光驱用IDE1。而在在最新的915平台上只
有一个IDE,另外还有4个SATA。当然这是Intel在积极推行SATA的结果。IDE通道有
16根[0..15] 数据线,还有一些相关的控制信号。如图是硬盘和南桥通过IDE来连接HDD
的示意图:
下图是实际的IDE接口,共有44PIN,当然,有些也是空PIN,有些则是接地:
跟台式机不一样的是,笔记本中光区的接口和硬盘不一样,这也可能是一个行业标准
吧。笔记本光区的接口如下图,共有50PIN,比硬盘的PIN数多是因为CD-ROM上需要
引出音频信号以及一些控制信号:
虽然光区和硬盘的接口并不一样,但其本质上其实是相同的,都属于IDE范畴。
第4页:南桥:PATA,SATA之争
在只有一个IDE接口的时候,副硬盘只能通过主IDE设备来实现中断(IRQ),比如现
在有些厂商需要在915平台上使用IDE的硬盘,以降低成本。如此一来,势必要使硬盘和
光区使用一个IDE通道,如果从光盘拷贝大量数据到硬盘的话,速度会有明显的下降。
而有些时候,RD为了提高性能,甚至需要用转换芯片将SATA转成PATA(没听说过
吧?呵呵,用Marvell 88SA8040这颗IC就行了,参考这里
/products/?ProdID=1001002)。
下图是ICH6M的硬盘部分的功能块,有四组SATA和一组的PATA接口。
SATA和PATA(IDE)
相对PATA来说,SATA的设计就显得简单的多,只需4根/2组差分信号和一个电源
即可搞定。但由于其数据的高速性,设计者对布线,以及控制EMI/EMC来说却需要投入
更多的精力。最新的ICH6提供了4个通道的SATA,看来Intel把SATA尽快的推到笔记
本上信心实足。
下图是SATA和PATA的笔记本硬盘 接口比较。我们看到实际上SATA的PIN脚还是
有很多,但其实很大一部分都是地线,用来保证信号质量用的,当然,也有一部分是空PIN
来做保留。
在这里笔者多说两句,其实早在2002年富士通就以桥接方式推出了串行笔记本硬盘。
根据国外硬件网站TomHardware的测试报告,这款4200转的SATA硬盘,数据传输速
率和存储时间都与PATA(IDE)产品差不多。也就是说,单纯更换接口,对速度的提升尚
未显示出太大的帮助,笔记本硬盘的瓶颈并不是在接口上。它主要的好处是使用方便、接
口简单而且支持热插拔。
现在,日立和富士通都跟随Sonoma的步伐发布了新一代的SATA硬盘,有测试报告
称速度达到了30MB/s。然而在其昂贵的价格面前,SATA笔记本硬盘的优势还很微弱,甚
至没有。但我们必须得承认,笔记本全面进入串行时代,是无法扭转的历史进程。SATA
硬盘的普及,也会是必然。
第5页:南桥:从PCI到PCI-EXPRESS
PCI是外设的最主要通道,几乎所有的外围设备都能通过PCI来实现其功能。对笔记
本通常而言,主要挂有CARDBUS、MINI PCI、网卡,或者电视卡。而对于这些设备的物
理连接,我们也将在下篇中具体谈到。
由于PCI只是跑在33MHZ上,所以它的布线比较宽松,并不需要严格的控制。
而对于最新的ICH6已经开始支持PCI-Express,相对PCI原来的近60pin,
PCI-Express的引脚只有区区四根。这对于硬件的设计来说是个绝对的好消息,PIN脚越
少,越不容易出错啊!更重要的是,PCI EXPRESS并不需要像PCI那样指定PCI设备的中
断和中断响应,对于BIOS和硬件工程师来说就少了需要共同协商的部分,加快了开发的
进程。
笔记本上我们看不到PCI-E,我们来看看台式机吧,反正通道的原理是一样的。
由上到下分别是:PCI-Express 16X,PCI-E *2,PCI总线*3。可以看到PCI-E比传统
的PCI总线的PIN数要少太多了。下图是PCI和PCI-E的对照表,大家可以看到两者的区
别:
PCI和PCI-Express
ICH6提供了4组PCI-Express接口,理论上至少可接4个PCI-Express设备(我是
没碰到过,实在是因为用不了那么多,呵呵)。
第6页:AC97 Modem BMDC 您又了解多少?
AC'97是Audio Codec'97的缩写,它所定义的是一种在主流PC中实现音频特性的
方法,后来又扩展了实现Modem的功能。AC'97利用核心芯片组的功能和外围的模拟设
备共同实现音频卡/Modem的功能。下图AC97接口是示意图:
我们看到南桥输出7个信号,从上到下分别是复位、输出、同步、时钟,以及三个输
出信号。按图中的意思,AC97接口至少可以接3个设备,共用复位、输出、同步、时钟
四个信号,但输入信号各自独用。一般情况下,我们常接入的是D/A转换(SDATA_IN0,
数字信号转成模拟的音频信号)和Modem(SDATA_IN1)两个设备,保留了第三个设备
接入的能力。
下图是笔记本上AC97的接口,如今已经是通用的接口了。
笔记本上的Modem(AC97)接口
AC97单元在主板的设计上并不困难。但由于音频是模拟信号,而且由我们的耳朵直
接聆听,所以如果走线不合理的话,就有可能引发干扰声。另外,如果处理不好干扰的话,
也会影响Modem的拨号速度。所以一般在做PCB布线的时候,会在音频解码器的范围内
禁止走高速的信号,比如网卡,USB等等。并且需要严格把AC97的解码器的数字和模拟
部分分开,最后,在解码器的下方的一般都会加上一大块的铜作为模拟地以将干扰减小到
最低。
至于如IBM的高档机型上用的Modem/BlueTooth的Combo卡(炒的比较热的
BMDC卡),其实是利用在AC97的接插件上空余的pin,接上了USB的线路(2根而已),
然后通过USB总线来连接BLUETOOTH,这根我们常用的USB蓝牙其实是一样的,可见
其成本并不高。笔者参与设计的几个项目都是用AC'97来扩展蓝牙的。
IBM的Modem/蓝牙Combo卡
下图是AC97接口的PIN脚功能图,我们看到左边部分的PIN是连接到南桥的AC97
接口,而右边则是蓝牙的功能块。除此之外还有很多空余的PIN脚,BMDC正是通过这些
空余的PIN实现Modem、蓝牙二合一的。
BMDC接口的线路图
如果要利用MINI-PCI的空余PIN来做的话也是可行的,这样的话也就是
Wireless/Bluetooth Combo卡了,而且理论上来说,做成Wireless/Bluetooth Combo
更方便,不仅是因为MINI-PCI的空PIN更多,而且其空间也越大。不过由于迅驰技术的
限制,如果不使用Intel的无线网卡,就不能打上迅驰的标签。而Intel的无线网卡是不大
可能集成蓝牙功能的,所以现在Wireless/Bluetooth Combo卡并不多见。
MINI PCI的无线网卡。看看,是不是空间更大?:)
随着ICH6M的推出,最新的Azalia(Intel称之为High Definition Audio)相信大
家也听说过。以其多声道,高保真的效果正在逐步替代传统的AC97。最新的音频解码器
(AZALIA)目前量产的就我知道的也就两家,一家是Retelk的ALC880,另一家是
C-Media的CMI9880。下面是两者的图片:
Azalia音效芯片最大的特色在于能够进行自动设备检测和接口定义功能,可以自行判
断哪个端口有何种设备插入;还能为接口定义属性,利用这个功能,我们可以重新分配音
频插孔的定义,之后就可以播放不同的音频、视频文件,听不同的歌曲了!呵呵~~
第7页:南桥:USB口 没想像中那么简单
USB,Universal Serial Bus(通用串行总线)。我们知道,我们现在用的USB口上有
4个引脚。其中中间两根是从南桥引过来的信号线。另外两个边上的则是一个正5V,一个
接地。下面是USB口的接口具体定义:
其中供电的时候一般由一颗IC来控制电流的大小,当超过预定的电流时候(USB1.0
为500MA,2.0则是720MA),改IC会给出一个OC#(OVER CURRENT,过流)信号
给南桥,南桥切断USB口的信号,从而保护南桥内部的寄存器和整机的安全。INTEL推荐
使用专门的IC来切断电压,这样能更好的保证机器的稳定性。图中的5V Switch就是供电
IC:
USB的保护电路
具体的电路,参考《权威揭密 从成本分析看低价笔记本猫腻》第六页。
仔细看一下USB口,其中间两根信号线比较短,而电源线则比较长。这样的设计是使
UBS口在插入的时候先接通电源,后接通信号。个人以为这样的设计是为能保护南桥内部
的寄存器不会受到冲击电流的影响。
由于USB的高速性,特别是USB2.0的发布,更加剧了这部分布线的难度。对EMI
工程师来说,为了通过EMC验证,必定是线越短越好。而对硬件和机构工程师来说,有
时候这点并不能满足……所以冲突是难免的。
下图是为解决USB的EMI/EMC问题设计的电路,也是INTEL的建议线路。其中
USB+/-是直接从南桥引出来的,通过一个共模电感输出到USB口,提高整机线路的
EMI/EMC性能。
USB的EMI保护
所以说我们常看到一些网络上的高手直接从南桥引出USB信号线来实现USB扩展其
实是比较不规范的哦,至少EMI/EMC肯定过不了,呵呵。当然,能直接从南桥引出USB
的信号线对于业余者来说已经是非常不简单了,而且对于个人用户来说,EMI/EMC的需
求就并非那么强烈了,所以这样做是完全可行的。
上图是某些发烧友为IBM THINKPAD 600X加装第二个USB口的图,图中他们已经
标出了南桥引出的USB信号线。
第1页:BIOS EC 电源管理之间的关系
所所开篇:今天是本系列教程的下篇,到今天工程师权威揭密系列的教程就告一段落
了。随后大家可以通过访问我们的专题页面来随时温故知新,下面一起来看下篇吧。
我们常会听到某些高手说“改一下COMS设置”云云,我们现在就来谈谈BIOS
(CMOS)。
BIOS(Basic Input/Output System,基本输入输出系统)在整个系统中的地位是非
常重要的,它实现了底层硬件和上层操作系统的桥梁。比如你现在从光盘拷贝一个文件到
硬盘,您只需知道“复制、粘贴”的指令就行了,您不必知道它具体是如何从光盘读取,
然后如何写入硬盘。对于操作系统来说也只需要向BIOS发出指令即可,而不必知道光盘
是如何读,硬盘是如何写的。BIOS构建了操作系统和底层硬件的桥梁。
而我们平时说的BIOS设定仅仅是谈到了其软件的设定,比如设置启动顺序、禁用/启
用一些功能等等。但这里有一个问题,在硬件上,BIOS是如何实现的呢?毕竟,软件是运
行在硬件平台上的吧?这里我们不能不提的就是EC。
这是日立H8的DEMO板和其宣传画
WINBOND的EC
EC(Embed Controller,嵌入式控制器)是一个16位单片机,它内部本身也有一定
容量的Flash来存储EC的代码。EC在系统中的地位绝不次于南北桥,在系统开启的过程
中,EC控制着绝大多数重要信号的时序。在笔记本中,EC是一直开着的,无论你是在开
机或者是关机状态,除非你把电池和Adapter完全卸除。
在关机状态下,EC一直保持运行,并在等待用户的开机信息。而在开机后,EC更作
为键盘控制器,充电指示灯以及风扇等设备的控制,它甚至控制着系统的待机、休眠等状
态。主流笔记本系统中,EC在系统架构中的地位如下图:
现在的EC有两种架构,上图左边是比较传统的,即BIOS的FLASH通过X-BUS接
到EC,然后EC通过LPC接到南桥,一般这种情况下EC的代码也是放在FLASH中的,
也就是和BIOS共用一个FLASH。右边的则是比较新的架构,EC和FLASH共同接到LPC
总线上,一般它只使用EC内部的ROM。至于LPC总线,它是INTEL当初为了取代低速
落后的X-BUS而推出的总线标准。
EC上一般都含有键盘控制器,所以也称KBC(Keyboard Controller)。
那EC和BIOS在系统中的工作到底有什么牵连呢?在这里我们先简单的分析一下,具
体的过程在本文的最后会详细介绍。
在系统关机的时候,只有RTC部分和EC部分在运行。RTC部分维持着计算机的时钟
和CMOS设置信息,而EC则在等待用户按开机键。在检测到用户按开机键后,EC会通
知整个系统把电源打开(这部分在最后详细介绍)。CPU被RESET后,会去读BIOS内一
个特定地址内的指令(其实是一个跳转指令,这个地址是由CPU硬件设定的)。
这里开始分两种情况,对于上图左边的结构:CPU发出的这个地址通过FSB到北桥,
然后通过HUB-LINK到南桥,通过LPC到EC,再通过X-BUS一直到达BIOS。在CPU
读到所发出的地址内的指令后,执行它被RESET后的第一个指令。在这个系统中,EC起
到了桥接BIOS和南桥(或者说整个系统)的作用。
对于上图右边的结构:在这地址南桥后,会直接通过LPC到BIOS,不需要EC的桥接。
这里需要说明的是,对于台式机而言,一般是不需要EC的。这里原因有很多:比如
台式机本身的ATX电源就具有一定的智能功能,他已经能受操作系统控制来实现待机、休
眠的状态;其次由于笔记本的键盘不能直接接到PS/2接口,而必须接到EC之上;还有就
是笔记本有更多的小功能,比如充电指示灯、WIFI指示灯、Fn等很多特殊的功能,而且
笔记本必须支持电池的冲放电等功能,而智能冲放电则需要EC的支持;另外,笔记本TFT
屏幕的开关时序也必须由EC控制。这些原因导致了笔记本使用EC来做内部管理的必要性。
总体来说,EC和BIOS都处于机器的最底层。EC是一个单独的处理器,在开机前和
开机过程中对整个系统起着全局的管理。而BIOS是在等EC把内部的物理环境初始化后才
开始运行的。
看到这里,我想大家也明白EC到底是呵方神圣。如果说BIOS 是底层系统的话,那
EC 似乎更加底层。
在南桥上还有一个功能块就是电源管理单元(PM,Power Management)。
一般来说,他和EC来共同配合完成。这里包括从开机(power button)键按下后,
启动,待机,休眠,关机的全部功能。还包括对背光亮度,声音等的控制等等。
至于现在Intel的Speed Step技术,也有部分功能是透过南桥来实现的(南桥发送
SLP、STPCLK(sleep,Stop Clock)来实现睡眠、深睡眠等)。
这部分的设计比较简单,只需要点到点的连接南桥和CPU即可。
第2页:PCI设备:网卡 1394的不同接法
在台式机上,我们常听到关于集成网卡这个说法。而对于笔记本来说,网卡一般都是
集成在主板上的,进入PIII时代以后,就显有无内建网卡的机器了。对于笔记本网卡来说
(不考虑PCMCIA的网卡哦),一般有两种接法。
首先我们把网卡分成两个部分。学过网络技术的读者可能都很清楚,现在的LAN都属
于802.3的协议。而这个协议的物理实现却并非那么简单,需要分成两个部分。一部分是
MAC控制层(Media Access Controller 媒体接入控制器),作用是根据802.3协议来做
运算(采用CSMA/CD算法),另一部分是物理连接层(PHY)作用是根据MAC的算法得
出的处理结果,接收和发送数据。
首先我们谈第一种,走PCI总线的网卡。如果这样接的话跟台式机的网卡唯一的区别
就是把台式机的PCI网卡直接做到主板上。这颗走PCI的网卡芯片内部整合了MAC和PHY
功能。实际使用中,高档一些的笔记本会采用INTEL的网卡,低档一些的就会用REALTLK
或者VIA的芯片。当然,INTEL网卡的传输效率确实也比较高。
上图蓝色框内的就是PCI的网卡(REALTLK8100C)
第二种则是“真正集成”的网卡,MAC层部分被做到了南桥里面,然后需要用一个外
围电路(PHY)来配合南桥里的MAC来实现网卡的功能。
如图,南桥内部的网卡MAC输出一组信号线(称为MII总线),连接PHY(上图中的
Intel 82562ET),然后引出RX+-和TX+-两对差分线,透过Transformer来控制EMI,然
后输出到RJ45接口即刻。这里的Transformer的结构跟中篇里的USB的共模电感相似,
作用也相似。上面的REALTLK8100C的那张图中,红色框内就是Transformer。经过
Transformer的信号线必须以最短的距离接到RJ45接口上以减少干扰,所以它离和RJ45
的距离是必须被严格控制的。
INTEL的网卡PHY(82562ET)
那么MAC地址是什么呢?MAC地址是区别网络设备的唯一物理标志,理论上,世界
上任何一个网络设备的MAC应该都是不同的。那么网卡的MAC地址到底放在哪里呢?
对于走PCI总线的网卡,一般会在网卡上挂一个小小的的E2PROM来存储,里面烧
有MAC地址以及一些厂商信息。而对于用PHY来连接的网卡,会把MAC地址信息放在
挂在南桥上的E2PROM(因为网卡的MAC控制器在南桥)。
上图中黄色框内的U6就是E2PROM,用以纪录网卡的MAC地址。
而1394和网卡的构建形式差不多,也是由MAC控制器和PHY来构成。其原理和布
线准则也和网卡类似,笔者就不多费笔墨了。
第3页:PCI设备:PCMCIA, Mini PCI
1989年由200多家公司确立了PCMCIA(Personal Computer Memory Card
International Association)标准,最初只是用来扩展内存,91年后随着I/O设备扩展需求,
多种设备都被做成了PCMCIA接口,PCMCIA成为了笔记本最重要的扩展插槽。PCMCIA
的成长史几乎是整个笔记本电脑产业的成长史。那PCMCIA到底是如何实现的呢?
实际上,PCMCIA的实现方法并不复杂,把南桥的PCI总线拉到PCMCIA控制器,
然后从PCMCIA控制器就能输出Cardbus,接上标准的PCMCIA接口就可以了。
下图就是PCMCIA的框图:
实际上在设计的时候,CardBus Controller的设计厂商都已经对其开发作好了一整
套的外围电路,OEM厂商只需要简单的按标准电路做简单的修改即可(比如一些降低成
本的动作)。一般来说,CardBus Controller有TI,RICHO,ENE等几家可以选择。
如图是IBM R40采用的TI的芯片PCI 1510 控制器和NEC的某款产品,采用理光
R5C551的CardBus控制器。
对CardBus一些其他分析可参考《权威揭密 从成本分析看低价笔记本猫腻》一文,
/nb/04/12/56526/。
至于mini PCI则更加简单了,只需把南桥的PCI总线点到点的接到mini PCI的接口
上即可。顺便说一句,mini PCI和台式机上的PCI的物理定义是一致的,不同的仅仅是插
槽不一致而已。
我们见到过为了台式机上为了使用Mini PCI接口的无线网卡而出现的转接卡:
我们看到,这样的转接板也是非常的简单,除了一些用以稳压用的元器件外没有任何
用以信号转换的芯片。这也从侧面说明了Mini PCI 只是PCI的翻版。
第4页:笔记本也可以超频么?
所有的数字电路都需要依靠时钟信号来使组件的运作同步,每单位时间内电路可运作
的次数取决于时钟的频率,因此时钟运作的频率即被大家视为系统运作的性能指针。在笔
记本的内部,时钟都是有一颗Clock Generator来产生的。
上图中,大颗的是Clock Generator,小颗的是14.318Mhz的晶振
一般来说这颗IC自身采用14.318Mhz的晶振来产生个部分需要的频率。系统的各部
分频率分别是:CPU-100M,南桥/北桥- 66M, AC97-14M,LAN-25M,PCI CLK-66M,
USB-48M等等。南桥由于设备的多样性,可能同时需要66/14/48/33等频率,这主要看
各种南桥的Specification(规格)和你采用的功能来决定(比如你需要加一个Super I/O
来增加一个红外口,那么你需要加一组14.318Mhz频率来提供给Super I/O)。
如果我们仔细研究一下这颗时钟芯片的规格书,我们会发现,控制其输出频率高低的
有三个PIN,通过这三个PIN的高低电平,我们可以获得不同的频率输出。
我们举个例子,ICS954226这颗芯片是为P4-M和P-M系统设计的时钟芯片,它的
PIN图如下:
其中红色框内的就是可以用来调整系统时钟频率的跳线,具体的对应表如下图:
红色框内是P-M采用的数据
至此我想各位也都明白,只要研究一下时钟芯片的跳线,并调整跳线就可以改变CPU
的外频和主频。这实在让人兴奋!
不过在实际上并非那么简单。因为单纯的提高时钟频率必然导致整机功耗的偏大,发
热必将严重。而笔记本电脑在散热方面基本没有DIY的可能性。这样,散热在这里就成为
比较突出的问题。
在调整时钟的时候,我们也必须考虑到北桥对FSB的承受能力,超负荷的运作可能会
导致北桥不堪重负而发生问题。
在老式的主板上,我们需要多考虑一个问题。因为其各个组件都有其固定的工作频率,
而各个总线的工作频率和系统的频率大部分都维持固定的比例来工作。换句话说,传统的
时钟发生器通常是以CPU的外频作为基准频率,通过固定比例的除频,产生其余外设所使
用的时钟。所以当使用者调高CPU外频的同时,总线及外设的时钟也会等比例地被提升,
有的时候CPU尚未超出其工作极限,反而是外设承受不了过高的频率而罢工了。
而在设计时,为了使同一款频率发生器能在更多的系统上使用,新一代的时钟发生器
将AGP/PCI等总线的频率,采用与CPU外频“异步”的设计方式,使用者就可以自由设
定AGP/PCI的工作频率,以符合外设的工作需求。如上图中我们可以看到,我们改变CPU
外频的同时并未改变PCI等传统外设的工作频率,这无论对设计者来说还是超频爱好者而
言都具方便性。
除了玩跳线以外,这颗时钟发生器配备有SMBus(System Management Bus)接口,
可由BIOS直接控制,甚至不用拆机壳,只需坐在计算机面前,通过键盘及屏幕,即可随
意调整系统工作频率了。图中蓝色框内的就是SMBus的接口。
通过SMBus我们可以以极小的线性级距微调CPU的外频(以MHz为单位),不像以
往的跳线设定方式,一下子从100MHz直接跳至133MHz,CPU容易超出其极限而导致
当机。但很遗憾,笔记本电脑在设计之时就已经确定了其最稳定的工作频率,可以频率调
节的BIOS版本仅会存在于测试样机,而绝不会留给使用者在BIOS里超频的可能。
第5页:SMBus 2.0/I2C Bus
上页我们提到了SMBus,相对前面说FSB,USB,PCI等总线,SMBUS2.0的速度实
在是低的可怜(不过反正它也不需要那么高的速度)。但其作用却不可小视。简单的说,
SMBUS是一种慢速的系统总线,他为整个系统提供基本的运行信息。
我想稍有内存知识的朋友都知道,内存上有SPD来纪录内存的容量,厂商等信息。而
这些信息就是靠SMBus来读取的。另外,SMBus也可用来做CPU温度检测之用。在新
型的笔记本或者台式机的设计中,Clock Generator的频率控制也可以用SMBus来调整,
以达到线性、平滑的超频(当然,在笔记本中……这就只可能出现在工程样机中了)。
下图是具体的逻辑图,注意是SMBus哦,不是SMLink哦。
其实在笔记本电脑内部,有不止一根的系统总线。比如说侦测电池信息的SMBUS等。
笔者对这方面的信息笔者知之甚少,仅在此抛砖引玉了,有兴趣的朋友可以自己去搜索。
第6页:CPU的核心电压,如何变化?主频如何自适应?
可能大家都知道,现在的CPU有频率的自动调节功能以满足性能/电池续航的最佳平
衡。那么如何调节呢?我们看一下下面这张图,它说明了CPU在各个状态间的切换:
我们看到,CPU具有相当的智能,它会对当前的负荷量做一个检测,如果要求的处理
量不大的话就自动进入Auto Halt,Stop Grant等状态,如果发现负荷量还是偏小的话,
南桥会发出一些SLP或DEEP SLP信号(分别代表睡眠,深睡眠)来通知CPU进入睡眠、
深睡眠状态。
而在DEEP SLP情况下,如果CPU的运算量还是偏小,那么CPU就会发出VID通知
CPU Core Voltage Regulator(CPU电压产生器)降低当前的工作电压,在收到CPU发
出的VID后,电压产生器就会输出想对应的CPU CORE电压,在得到降低的电压后,CPU
的频率会下降以达到低功耗的目的。而在这时候CPU进去的模式我们称为DEEPER SLP(即
更深的睡眠)。
至于VID和CPU的关系,我相信下面的图能给你比较直观的认识:
CPU发出VID到CPU Core Voltage Regulator,后者解码VID后,改变CPU的核
心电压。以Intel的Improved Enhanced SpeedStep技术为例,在小于1/2000秒的时
间里,自动电源识别系统(CPU和南桥共同协作)和自动电压调整系统(CPU Core Voltage
Regulator系统)将使CPU的电压自动增加或者减少到最佳的值。由此不难看出,
SpeedStep技术能让CPU在最高性能模式和电池优化模式之间随意地切换或按用户的命
令进行切换,而性能切换时,SpeedStep技术可将处理器的功率降低40%,同时仍保持
80%的最高性能。
关于CPU具体的功耗和电压信息,可参考《权威揭密 重扣轰杀笔记本散热认知误区》
的第13,14,15页。
一般来说,这颗电压产生器会使用MAXIM(美信)或者ITSEL两家。而在最新的
Sonoma平台上,ADP这家老牌的IC生产商也蠢蠢欲动。
第7页:充电电路,保护锂电池就靠它了
对于如今的笔记本电脑,都具有锂电池作为电源(在03,04年HP也曾推出过过时
的镍氢电池作为电源以降低成本,但没多久就消失了)。
为了延长电池的使用寿命,除了要养成良好的电池使用习惯外,对锂电池的智能冲放
电也非常重要。目前在笔记本电脑中,几乎都采用了“电池管理”和“充放电控制”两种
芯片级管理系统。
其中“电池管理芯片”安置于笔记本电脑内部,该芯片的寄存器里存储着该台电脑所
用锂离子电池的容量、工作温度、ID系列号、充放电状态、充放电累计次数等重要信息。
这些数据信息在使用过程中,需要根据实际情况不断地刷新。如图是IBM T4X系列采用的
ADP3806充电IC,由它负责对电池状态的监控。
而电池内置的“充放电控制芯片”最主要的作用,就是监视、控制电池的整个充放电
过程并加以记录。
早期IBM ThinkPad 电池控制电路
对于离子电池的整个充电过程,一般分为“恒流快速充电”和“恒压电流递减充电”
两个阶段。所谓“恒流快速充电”是指在刚刚开始充电时,充电电流固定而充电电压跟随
电池的端电压逐渐升高,直至达到标称电压的充电方式。当电池达到了端电压标准数值后,
控制芯片会自动转入“恒压电流递减充电”阶段,此时充电电压将不会再继续升高,而充
电电流则跟随电池容量的不断上升逐步递减,并最终达到零,如此便完成了电池的全部充
电过程。
与此同时,在充电过程中所产生的充电电压、电流、时间等数据曲线,都将被记录在
电池内的“充放电控制芯片”的存储器中。“电池管理芯片”就是通过调取这些数据,并
通过抽样计算得出电池容量等数据,这便是我们在Battery Information里所读到的Wh
数值。
对这部分内容,笔者并不是很清楚。这只是参考了网上的一些资料得出。如果有错误
的地方,还请各位看官在文后提出。
第8页:重要的一环 热保护系统
对于CPU的散热,各家厂商可谓不遗余力了。我们曾在《权威揭密 重扣轰杀笔记本
散热认知误区》里详细探讨过笔记本电脑对散热的控制。有兴趣的朋友可以再看一下那篇
文章,我这里只做简单介绍,以保持本文内容的完整性。
CPU对过热保护有两组信号。一组是由一根CLOCK一根DATA构成,它们不断的和
EC进行串行通信,EC根据CPU发来的信号得到CPU当前的温度,并调节风扇的速度来
控制温度。当CPU温度升高到一定程度的时候,CPU自动降低自身频率以控制热量。而
当风扇在CPU降低频率的情况下仍不能控制住温度的时候,EC会发出指令,主机重新启
动。
而另一组名为ThermalTRIP(图上标为RESET),这个信号一旦发出,马上RESET主
机,这个信号是由CPU直接发送到EC的RESET端,其功能是在CPU温度迅速升高,而
风扇来不及发挥作用的时候,切断电源以保护CPU。
一般而言,笔记本内部的有温度检测的就只有CPU一个。其他一些南北桥,显卡一般
都没有温度检测系统。不过随着显卡的热量越来越大,在将来的系统中,我们很有可能会
看到有温度检测的移动型显示卡(其实在MXM上已经有在设计了,只是显卡做在主板上
的机器暂时还没有看到过)。
第9页:逻辑上的开机过程:预习
开机过程对于电脑设计是至关重要的。在笔记本电脑打好PCB后第一次开机时,如果
电源的时序正确了,其他的问题都比较好解(一般来说时序正确的话机器都能开起来)。最
怕的就是电源时序不对,机器开不起来,这才是最要命的。那我们现在就讲解一下笔记本
电脑在硬件上的逻辑开机过程。
首先我们做一写预习工作,以方便读者的理解。在笔记本内部的电压有好几种,我们
分别看一下。
首先是RTC电源,这部分电力是永远不关闭的,除非电池(纽扣电池)没电并且没接
任何外部电源(比如电池和电源适配器)。RTC用以保持机器内部时钟的运转和保证CMOS
配制信息在断电的情况下不丢失;其次,在你插上电池或者电源适配器,但还没按power
键的时候(S5),机器内部的开启的电称为ALWAYS电,主要用以保证EC的正常运行;
再次,你开机以后,所有的电力都开启,这时候,我们称为MAIN电(S0),以供整机的运
行;在你进待机的时候(S3),机器内部的电成为SUS电,主要是DDR的电力供应,以保
证RAM内部的资料不丢失;而休眠(S4)和关机(S5)的电是一样的,都是Always电。其中,
上文中括号内的是表示计算机的状态(S0-开机,S3-待机,S4-休眠,S5-关机)。
上图是对上面这段话的总结,我想应该很容易明白。其中最后一列指的是其电压开启
的控制信号,这点下面会讲到。至于为什么这里没有S4,即休眠状态,是因为在S4状态
和S5状态下,系统开启的电是一样的,所以就没必要增加一组控制电路。
第10页:逻辑上的开机过程:从接上电源一直到进入BIOS
OK,现在我们假设没有任何的电力设备在供电(没电池和电源),这时候,机器内部
只有RTC电路在运作,南桥上会接有一个3V的纽扣电池来供给RTC电力,以保持内部时
间的运行和CMOS信息。
下图是南桥的启动时序:
根据前面的Power Status,我们来分析一下开机的过程。在插上电池或者电源的时候,
机器内部的单片机EC就Reset并开始工作,等待用户按下Power键。在此期间的时序是:
ALWAYS电开启以后,EC Reset并开始运行,随后发给南桥一个称为‘RSMRST#’的信
号。这时候南桥的部分功能开始初始化并等待开机信号。这里要注意,这时候的南桥并没
有打开全部电源,只有很少一部分的功能可用,比如供检测开机信号的PWRBTN#信号。
在用户按下Power键的时候,EC检测到一个电平变化(一般时序是:高-低-高),然
后发送一个开机信号(PWRBTN#)给南桥,南桥收到PWRBTN#信号后依次拉高
SLP_S5#,SLP_S4#,SLP_S3#信号(他们的作用参看上页的图),开启了所有的外围电压,
主要是+3V,+5V以及DDR2.5V等,并发送PM PWROK信号,这信号表明外围电源正
常开启。
看似简单的开机在设计者眼里并不简单
PM PWROK将作为一个使能信号发送到CPU外围VCCP的电压Generator,并开启
VCCP。在此之后,VCCP Generator会发出CORE_VR_ON来开启CORE VR(即CPU的
核心电压)。至此,整机的电压已经全部开启。
在用VR_PWRGD_ICH这个信号通知南桥CORE VR成功开启后,南桥会发出PCI
RST#信号到PCI总线,于是总线上的设备都被初始化(包括北桥),并同时发出H_PWRGD
来通知CPU它的核心电压已经成功开启。然后北桥发H_CPURST#信号给CPU,CPU被
RESET,并正式开始工作。
CPU余下的动作,请看本文的第一页。
第11页:逻辑上的开机过程:从开机如何进入待机 休眠呢
下图是整个系统开机流程图,大家可根据上文所说的进行比较。由于INTEL做的开机
系统比较完善,而在实际设计中,RD会省略不少步骤,以降低系统的复杂程度,同时降低
成本。
在用户需要进入待机模式(S3)的时候,系统的ACPI和windows同时运作,拉低
SLP_S3#,并保持SLP_S4#和SLP_S5#被拉高,以关闭了MAIN电,系统则进入待机模式
。
而在需要进入休眠或者关机模式时,同时拉低SLP_S3#、SLP_S4#和SLP_S5#,关闭
除了RTC以外的电源。当然,在这一系列的过程中,需要操作系统和BIOS的共同协作,
对硬件工程师来说,只需要保证在特定的状态保证特定的电压供给即可。
当机器要要从S0进入S5,即关机的时候,也会有一定的时序进行,基本上就是前面
时序的逆运行,笔者就不多费笔墨了。有兴趣的读者可去INTEL自己下载他们的规格书。
以上就是整个硬件的开机、进入S3,S5的过程,当然不同的硬件有不同的开机过程,
这里说的不过是最普通、最为常见的一种。
第12页:总结:国产品牌自主研发是正途
时间匆匆,本文的最后一个章节也在笔者心爱的ThinkPad上敲完了。诚然,在笔记
本日新月异的今天,我们所谈的内容或许已经有点过时了——SONOMA正当其道,更新
的NAPA平台也蓄势待发。但我想,不管计算机如何的更新,只要它基本的架构不变,我
们还是可以从以前的技术中学习到基本的知识和概念。
笔者清楚,这篇文章或许对大多数人都不合适,但对于一些发烧友或者有志于进入计
算机硬件行业的人来说或许还是有些许的帮助。也真诚的希望,国产品牌能真正实现自主
的研发,而不要一味的急功近利,自始至终依赖台湾的代工
2024年4月25日发(作者:蛮春华)
第1页:作者序:您真的是笔记本电脑高手吗?
所所开篇:各位早上好,都打起精神来,按惯例我们又给大家带爆料来了。经过上几
期的笔记本低价猫腻、Nvdia MXM技术、揭密笔记本散热误区等三篇“权威揭密”系列
文章后,接下来该为大家带来什么呢?
从本周开始,我们将带领大家全面认知笔记本的硬件架构设计,由于篇幅十分浩瀚,
为了不让大家感到恐惧,我们将整个文章分为上、中、下三篇分别发出,每篇均有自己的
主题,独立成章。相信当你看完所有篇幅后,你一定可以成为真正的笔记本发烧友了。
从2004年跨入2005年,笔记本的价格可谓一落千丈,笔记本电脑也不再是身份地
位的象征,它更是一个工具,帮助我们从纷繁的事务中解脱出来。
自己升级CPU?太easy了~都不好意思说出来
也正因为笔记本价格的滑落,我们身边多了很多笔记本的高手。他们对其硬件技术兴
趣近乎痴迷,他们升级所有能升级的硬件,从MMC2接口的PII升级到PIII已经不再是新
闻,而自己扩展USB口也不是什么新鲜事,至于为无网卡的机器打造内建网卡,为无蓝牙
的机器打造内建的蓝牙也一直在论坛上看到,还有为IBM ThinkPad 600X制作内建的
MINI-PCI无线网卡,用的天线居然是原来Modem的线……
笔者不否认这些强人的动手能力和他们的创意,甚至他们对硬件的了解程度超越了在
开发第一线的RD工程师。但尽管如此,我相信他们对笔记本的整体架构,内部总线的了
解还有欠缺。
比如,我们都知道如何CPU会自动降频以减低自身功耗,但你是否知道他们具体物理
动作?
又如,我们常说的BIOS,我相信高手对BIOS的设定几乎可以闭着眼睛来,但你是否
能回答这BIOS究竟是谁在运行?毕竟,软件是要靠硬件来运行的吧?!
再如,或许某些DIYER对台式机的开机过程了如指掌,听报警声就知道机器挂在哪里,
但你是否清楚笔记本电脑的开机过程?是否也能仅仅凭报警声就能明白?
还有,大家都晓得CPU过热会引起保护性关机。那你是否知道这个过热保护系统是如
何工作的呢?那AC97呢?笔记本中的MODEM都独立出来了,他们到底是怎么工作的?
如果你是IBM的Fans,你肯定知道BMDC吧?那BMDC到底是如何实现的呢?
拆拆装装,简直就是家常便饭
实际上,随着对很多简单问题的深入,我们会发现其实这些问题并不简单。虽然对于
业余的DIYER,他们不知道这些已经无关紧要,他们仍然已经是很“高手”的了。但我相
信,一个真正的DIYER对技术的渴望会超乎想像,又有什么能够阻止他们向更高的技术领
域进军呢?
或许,也有读者说,我只要用好我的电脑就好,他怎么运作关我什么事?!那么在此
我将很遗憾的对你说,您真的并不适合看本文。
偶尔还会拿个台式机P4 CPU代替迅驰CPU搞怪一下,当然是开不了机的
撰写本文,其实是希望那些DIYER 能对笔记本电脑有一个系统的了解。在本文中,您
会看到我对以上的问题做详尽的解释,相信在你读完本文之后,对笔记本的整个体系有了
完整的概念。而对于真正的那么些DIY高手来说,或许有些知识您已了然于胸,但对于一
些你知其然,而不知其所以然的问题,或许你能在读完本文后能找到答案。
另外作为比较,本文也会以最新的Sonoma平台和Centrino平台做一些比较。好吧,
闲话少说,我们正式开始吧!
第2页:从架构开始学习 让我们认识更多
当前笔记本虽然是品牌众多,且外观、功能各有千秋,但究其原理还是一样,都是基
于IBM PC/AT的老架构(当然Apple的除外)。这里值得注意的是,虽然台式机和笔记本
外形差别很大,但其基本的架构和原理都是一样的,都是兼容IBM PC/AT架构的。
那么我们先来说说笔记本电脑的主要框架。
一台很方便拆卸的华硕M5N作为客串嘉宾
系统的主要构成主要分为如下几个部分:North Bridge(北桥),South Bridge(南
桥),显示卡,EC(嵌入式控制器),这几个部分一般都是集成到主板上的,配合CPU,内
存就可以开机进入BIOS。以上的部分是必须的,因为这属于PC/AT架构的基本构成。其
他诸如硬盘,Wireless Card(无线网卡),Card Bus(PCMCIA控制器)等等都是次要的,
并不影响整机的工作,或者说,不影响机器的开机。
Intel Centrino架构
为了方便讨论并具有一定的代表性,我们取当前比较流行的Centrino架构来说明。上
图便是标准的Centrino平台,按照这个平台搭建的笔记本,可以打上Intel Centrino漂亮
的蝴蝶标志。而如果在Pentium+ 855GM/PM/GME+ ICH4+ Intel PRO Wireless的搭
配中有一项不符合,就不能用Centrino的标志,就不能使用INTEL的免费广告咯,呵呵
~~这也是Intel聪明的经商策略:)
第3页:笔记本硬件结构各部分功能简介
为了照顾一下入门级的朋友,我们首先非常简单的介绍一下系统各个功能块的作用。
CPU嘛,笔者就不多说了,我相信大家都清楚哦~(什么,你不知道CPU?!我$#!@%^&!)
北桥的功能主要是连接CPU和内存,如果是独立显卡的话,会提供与显卡的AGP接
口,并用HUB-LINK与南桥通信。北桥常被成为MCH或者GMCH,也就是Memory
Control Hub或者Graphic Memory Control Hub的意思。
用三星X30作为案例,点击上面图片可以获得更多解释
南桥的功能主要是连接一些外围设备,比如PCI界面的网卡,PC卡控制器等等,另外
诸如USB接口、IDE接口也是由南桥来提供的,南桥提供LPC总线与EC通信。南桥也常
被称为ICH,其意思是I/O Control Hub的意思。
至于INTEL为什么用Hub-Link这个词,我想是因为南北桥都是两个HUB(Memory
Control Hub和I/O Control Hub)的原因吧。
EC(Embed Controller,嵌入式控制器)虽然和我们常说的BIOS有点像,不过其实
EC是BIOS的物理控制器和载体,它通过LPC与南桥通信。
如果看不懂本页,请参考这张图,我相信很容易就明白了。文中的我们提到了各种接
口,比如FSB,AGP,LPC I/F等等,这些接口我们会在下面具体的谈。
第4页:正确认知CPU前端总线 信号抗干扰是头等大事
从这里开始是本文的重点,将详细介绍各部分的连接和规范。
系统中最高速、最复杂的连接莫过于CPU和北桥的连接,我们称之为FSB(Front Side
Bus,前端总线)或者HOSTBUS。
Dothan CPU
FSB有64位的数据线和32位的地址线。正是通过FSB,CPU和北桥才能完成通信。
虽然实际上CPU与北桥的连接都是点到点的,但由于其高速性,在实际的布线中还是
需要非常非常小心。而EMI/EMC工程师在这方面也将是不遗余力的帮助硬件工程师解决
问题(解决不好就不能通过有关方面的认证,也就是不能卖啦!)。
那么什么是EMI/EMC呢?具体的含义是EMI(Electro Magnetic Interference,电
磁干扰),EMC(Electro Magnetic Compatibility,电磁兼容性)。
所以我们可以这样认为:FSB对其他信号的干扰非常严重(EMI很严重),而且其本身
也比较容易受到干扰(EMC很弱)。很明显,如果FSB被干扰并出现误判,机器是必死无
疑的。
在考虑了EMI/EMC的影响后,在实际的布线中,通常将这部分线路放在内层(一般
笔记本电脑主板都有6~8层,6层在Centrino平台勉强可以,到了Sonoma平台就几乎
不可能了),以防止高速信号对其他信号造成的串绕。所以一般情况下,我们在主板上是看
不到FSB的。
下面的图片是INTEL的设计指南里的建议,我们看一下。
FSB总线
图中,DATA是FSB的64位数据线,ADDRESS则是32位的地址线。左上脚的L3
代表的是第三层PCB。由于在同一层中不可能把数据线和地址线全部走完,所以其实第三
层仅仅走了一部分的FSB,余下的在第六层中。
FSB总线
同样,L6代表的是第六层的PCB。
第5页:头疼的布线 让你深入芯片内部!
由于FSB是绝对的高速信号,所以在布线的时候,我们需要考虑到信号线长度的一致
性。
比如,INTEL要求每一根的FSB的长度需要一致,所以,在PCB步线的时候,就免不
了要走“Z”字型的线路来满足长度的一致性。在这里,我想大家可能没想到一点,那就是
关于芯片内部走线的长度的考虑(也就是说,为了满足长度的一致性,我们必须要考虑到
CPU内部的线路长度),然后加上外部走线(即在PCB上的走线)的长度,才是整个一个
信号线的长度哦!当然这个长度是由INTEL提供给各个OEM/ODM厂商的。
下图是DDR那边的走线示意图,其中MCH Pkg Route就代表着北桥芯片内部的走
线长度。
布线其实需要考虑的比你想像的更多
接下来,我们来放大一下前面的图,看一下所谓的“Z”字型走线。
“Z”字型的走线是为了满足信号线长度的一致性
图中方框内的线路都是“Z”字型的走线。由于这些线路都是在PCB的内层,一般来
说我们是看不到的。不过基于同样的原理,在一些其他地方的设计上,也要考虑走线的长
度,比如显卡,显存,北桥到DDR的走线等。
显卡和显存颗粒的布线
上图是某笔记本显卡和显存部分的走线,我们看到,也是大量采用了“Z”字型的走线
方法,其原因就如上文所说。下面是北桥到DDR的走线,道理是一样的。
北桥到DDR的走线
在FBS总线上有个小知识,对与FSB来说,虽然地址线应该有32根,也就是
ADD[0…31],但实际上地址线只用到了ADD[3…31],而不是ADD[0…31],为什么呢?
其实很简单,因为现在的CPU读取数据都是8位连读的,所以CPU只需要知道一个数据
的首地址,其后的7个bit就会自动被读取。所以不需要ADD[0…2]这三位。如果对这点
感到难以理解的读者,建议去看一下《微型机计算机原理与应用》,我想你很容易会找到答
案。
第6页:想了解CPU为何自动降频?不知道VID怎么行!
从移动版的PIII开始,INTEL的CPU就多了一个输出VID的功能。其作用是实现CPU
都具有自动降频的,在必要时,甚至会进入深睡眠、关闭内部时钟等情况。其具体流程是:
CPU根据自身的状态输出VID到电源IC,电源IC接到VID后解码,并输出一个跟VID对
应的CPU工作电压。而对于CPU的各种状态及其切换过程,我们会在《下篇》具体讨论
到。
INTEL CPU的VID列表
我们看到,CPU的工作电压可以一直从1.708V一直降到其最低的0.700V。在系统最
先开机的时候,也就是在电源IC未接到VID的时候,其输出是其最低电压,即0.7V。
下图是IBM配合迅驰技术使用的电源管理软件。我们看到CPU的速度有高/自适应/
慢/很慢四档可以调节。实际上,如果有必要,可以做成更多的调节,就像上面的那张VID
表一样。
迅驰CPU的各种工作状态
这里要说的是,INTEL对于其VID的一致性做的比较好,其各种CPU一般都支持相
同的VID—电压对应表;而对于AMD就不大一样,一般它的不同的CPU都会有不相同的
VID表与之对应。这在研发上也增加了一点点的小麻烦。:)
第7页:北桥:DDR内存的走线密如蛛丝
北桥是信息的中转站。根据上文所说的功能,它有4个接口,分别是FSB ,DDR,
AGP以及HUB-LINK。
北桥近照
FSB是和CPU的接口,参见上文,这里不再多说。
DDR是对内存的接口,现在的855GM/PM支持到266MHZ,这部分线路和FSB那
边的连接将影响到主板的格局,因为他们都是高速的,大量的信号线的集合。在布线的时
候最先考虑的就是它们。
如图是Intel建议的布线图,这里仅仅是DDR的信号线,并不包括地址线。
北桥到DDR的信号线
地址线则在另外一层,如下图:
北桥到DDR的地址线
我们看到,这与数据线并不在同一层。而图中我们看到的Series Dampening resistors
和Parallel Termination on both layers则是在DDR RAM那边特有的。其意思分别是串
行衰减电阻和终端并行电阻。
第8页:衰减电阻和终端电阻之惑
我们先来解释一下串行衰减电阻和终端并行电阻。前者的意思是从北桥出发的每一根
数据线,必须与一个电阻串联再到达DDR RAM部分。而后者的意思则是,在数据线到达
DIMM1和DIMM2后,必须有一个在串联一个电阻后上拉到1.25V,也就是下图中的VTT。
具体的示意图:
衰减电阻和终端电阻的示意图
其中的RS就是所谓的串行衰减电阻(Resister Serial),而RT则是终端电阻(Resister
Termination),而SO_DIMM0 PAD则是指DIMM的PIN脚。至于什么是DIMM?Dual
In line Memory Module,字面翻译就是双列内存模块。
那为什么需要终端电阻呢?在进入DDR时代,DDR内存对工作环境提出更高的要求,
如果先前发出的信号不能被电路终端完全吸收掉而在电路上形成反射现象,就会对后面信
号的影响从而造成运算出错。因此目前支持DDR主板都是通过采用终结电阻来解决这个
问题。
由于每根数据线至少需要一个终结电阻,这意味着每块DDR主板需要大量的终结电
阻,这也无形中增加了主板的生产成本,而且由于不同的内存模组对终结电阻的要求不可能
完全一样,也造成了所谓的“内存兼容性问题”。这点在DDR II上得到了比较完美的解决,
我们在下面具体谈。
衰减电阻和终端电阻的实物图
上图中,蓝色框是北桥,红色框内是衰减电阻,而黄色框内则是终端电阻(看到框框
边上一大块绿色的铜皮了吗?这是VTT 1.25V哦!)。我们看到,其走线的顺序也是跟上面
示意图一致(从北桥经过衰减电阻到DIMM的PIN脚,然后接终端电阻到VTT)。
第9页:北桥:DDR单/双通道区别到底在哪里?
而DDR SDRAM的接法有双通道和单通道之分。
相对于传统的单通道而言,双通道DDR 技术是一种新的内存控制技术,它和双通道
RDRAM 技术非常相类似,是在现有的DDR 内存技术上,通过扩展内存子系统位宽使得
内存子系统的带宽在频率不变的情况提高了一倍:即通过两个64bit 内存控制器来获得
128bit 内存总线所达到的带宽。双通道体系包含了两个独立的、具备互补性的智能内存控
制器,两个内存控制器都能够在彼此间零等待时间的情况下同时运作。当控制器B准备进
行下一次存取内存的时候,控制器A就在读/写主内存,反之亦然,这样的内存控制模式可
以让等待时间缩减50%。
双通道技术显然需要北桥的支持,INTEL的855芯片组并不支持双通道DDR I,比较
搞笑的是在CENTRIO平台的时候,VIA的一些芯片组能支持双通道内存技术而INTEL不
能,呵呵。
下图是单通道DDR-I内存的示意图,左边的信号来自北桥。如果是双通道的话要加上
另一组DDR与北桥的接口。双通道对于单通道来说能显著加快内存数据和CPU的交换速
度,但是出于PCB布线的考虑,双通道明显增加了线的数目,增大了布线的难度,并由此
产生的成本问题对企业来说更为敏感。
单通道DDR RAM的物理连接
这里也有RS和RTT,其意义和上文所说的串行衰减电阻和终端并行电阻一致。
第10页:转换思路 问题迎刃而解 DDR II的新创意
在最新的DDR II上,主板设计上已经取消了部分信号的衰减电阻和终端电阻,而将其
集成于内存上。
我们称这DDR II的新特性为ODT功能,即On Die Terminator(内建终端电阻器)。
当在DRAM模块工作时把终结电阻器关掉,而对于不工作的DRAM模块则进行终结操作,
起到减少信号反射的作用(注:ODT的开启与禁止由北桥芯片控制,ODT所终结的信号
包括DQS、RDQS、DQ等等,可参考单通道DDR-I内存的示意图)。
这样可以产生更干净的信号品质,从而产生更高的内存时钟频率速度。而将终端电阻
设计在内存芯片之上还可以简化了主板的设计,降低了主板的成本,而且终端电阻可以和
内存颗粒的"特性"相符,从而减少内存与主板的兼容问题的出现。
DDR II内存
已经砍掉部分终端电阻的DDR II的主板
如图,DDR II的插槽边上已经没有了终端电阻,这样在设计上将更为简便,布局也会
更加合理。
第1页:北桥:显示单元是区分855GM/GME和855PM的好办法
所所开篇:大家好,今天是周末了。相信大家在看本周一关于笔记本硬件结构终极教
程上篇后,已经都兴奋的不行了。所以这次在周末期间提前推出本文的中篇。让大家可以
将热情继续下去,而下篇也会在下周的时候发出。到时候三篇连着读起来,一定爽的不行
啊。闲话就不多说了,大家开始上课吧,安静哦~
各位好,很高兴又与大家见面了。在上次发表了本文的上篇后一直忙于工作,昨天晚
上终于抽空写完了这次的中篇。这次的内容有大家比较关心的PCI Express总线和传统的
PCI总线的区别,以及SATA/PATA技术的一些分析。
而对于IBM 的FANS来说,或许通过本文,您甚至可以自己升级BMDC模块(这很
令人兴奋哦!)另外USB也会再谈论一下,对DIYER有点帮助,也许使用IBM Thinkpad
600E的朋友可以扩展您第二个USB口。好吧,闲话少说,我们正式开始!
AGP是加速图形接口的简称。对于我们常说的集成显卡的855GM/GME来说,在设
计的时候是涉及不到AGP接口的,因为其北桥能直接支持VGA输出,LVDS输出(到TFT
Panel),以及S-VIDEO输出。设计者只需要把这些信号延伸到主板的各个接口即可。
855GM的系统架构
如图是采用855GM芯片的系统图,我们看到在显示部分,已经直接由北桥来负责输
出。下图是某笔记本的整体写真,我们看到除了CPU,北桥,南桥外,没有显示卡芯片。
集成显卡的主板
而对于独立显卡的设计(855PM芯片),则会相对麻烦一些。因为设计者需要通过
855PM的AGP通道连接显卡,并通过显卡输出需要的数据,如VGA,LVDS等等。
855PM的系统架构
我们看到,在采用855PM的芯片组时,北桥只负责输出AGP到显卡,然后由显卡负
责输出各种显示信号(VGA,LVDS….)
如图是台式机的AGP显卡,在笔记本中不过是把这张卡也集成到主板上了而已(当然
是选用移动版的GPU啦!)下图是含有独立显卡的IBM T42和三星X30,分别采用ATI 7500
和NVIDIA 5200的GPU。
而一些台湾公司的北桥,如VIA和SIS的北桥不直接支持Panel,它们需要一个
Transmitter来转换才能输出VGA、LVDS等信号,比如最新的PN800(PT800的移动版
本)和K8N800(K8T800的移动版本),如果有需要更多信息的话可跟笔者联系,在这里
就不做介绍了。
最新的MXM技术也已经初具雏形,笔者当前有幸接触到MXM的设计,核心是比较
新的NV43。至于什么是MXM,笔者简单说一下:MXM是相对当前的笔记本电脑无法更
换显示卡而提出的一个规范,其通过一个特定的接口能实现显示卡和主机分离,使得用户
可方便的升级笔记本电脑的显示卡,如同台式机能方便更换AGP显示卡一样。其接口的详
细规范,就不再多说,可参考《权威揭密 NV杀手锏MXM绞杀低能游戏NB》
第2页:北桥:HUB-LINK 你了解多少?
HUB-LINK,这是Intel的规范,其作用是提供南北桥的高速数据连接。其运作频率是
66MHZ,速度为266MB/s。Hub-Link有12根的数据线,以及2根差分的时钟线,以及
数根的控制线。
以往的南北桥连接都是直接套用PCI总线,速度慢不说,还有一堆的信号线要你排。
在这种情况下,INTEL提出了Hub-Link以改变这种情况。而HUB-LINK对布线的简
化确实有相当的帮助,当然对提升速度也有很多的好处(相对应的也有VIA提出的V-LINK,
ALI提出的A-LINK等)。对于最新的915平台,这部分称为DMI(Direct Media Interface)
连接,以最大2GB/s的数据传速率远远超过266MB/s的Hub Link。
下图是Hub-Link的连接示意图。
Hub-Link的布线一般要求并不是太强,可参考以下的表格。
我们可以看到其最大允许的长度为6 inch,宽度需要至少4mils,间隔8mils等等
第3页:南桥:IDE接口 说难不难说简单也不简单
南桥是外围(I/O)设备的中转站,一般来说主要的接口有HUB-LINK,IDE,PCI,
AC97,USB,PM(Power Management,电源管理)等,对于最新的ICH6,更有SATA,
DMI等。
HUB-LINK的定义见上文。
IDE是大家比较熟悉的接口,硬盘一般都通过IDE通道与南桥建立连接。在ICH4上,
有两个IDE接口,所以我们一般硬盘用IDE0,光驱用IDE1。而在在最新的915平台上只
有一个IDE,另外还有4个SATA。当然这是Intel在积极推行SATA的结果。IDE通道有
16根[0..15] 数据线,还有一些相关的控制信号。如图是硬盘和南桥通过IDE来连接HDD
的示意图:
下图是实际的IDE接口,共有44PIN,当然,有些也是空PIN,有些则是接地:
跟台式机不一样的是,笔记本中光区的接口和硬盘不一样,这也可能是一个行业标准
吧。笔记本光区的接口如下图,共有50PIN,比硬盘的PIN数多是因为CD-ROM上需要
引出音频信号以及一些控制信号:
虽然光区和硬盘的接口并不一样,但其本质上其实是相同的,都属于IDE范畴。
第4页:南桥:PATA,SATA之争
在只有一个IDE接口的时候,副硬盘只能通过主IDE设备来实现中断(IRQ),比如现
在有些厂商需要在915平台上使用IDE的硬盘,以降低成本。如此一来,势必要使硬盘和
光区使用一个IDE通道,如果从光盘拷贝大量数据到硬盘的话,速度会有明显的下降。
而有些时候,RD为了提高性能,甚至需要用转换芯片将SATA转成PATA(没听说过
吧?呵呵,用Marvell 88SA8040这颗IC就行了,参考这里
/products/?ProdID=1001002)。
下图是ICH6M的硬盘部分的功能块,有四组SATA和一组的PATA接口。
SATA和PATA(IDE)
相对PATA来说,SATA的设计就显得简单的多,只需4根/2组差分信号和一个电源
即可搞定。但由于其数据的高速性,设计者对布线,以及控制EMI/EMC来说却需要投入
更多的精力。最新的ICH6提供了4个通道的SATA,看来Intel把SATA尽快的推到笔记
本上信心实足。
下图是SATA和PATA的笔记本硬盘 接口比较。我们看到实际上SATA的PIN脚还是
有很多,但其实很大一部分都是地线,用来保证信号质量用的,当然,也有一部分是空PIN
来做保留。
在这里笔者多说两句,其实早在2002年富士通就以桥接方式推出了串行笔记本硬盘。
根据国外硬件网站TomHardware的测试报告,这款4200转的SATA硬盘,数据传输速
率和存储时间都与PATA(IDE)产品差不多。也就是说,单纯更换接口,对速度的提升尚
未显示出太大的帮助,笔记本硬盘的瓶颈并不是在接口上。它主要的好处是使用方便、接
口简单而且支持热插拔。
现在,日立和富士通都跟随Sonoma的步伐发布了新一代的SATA硬盘,有测试报告
称速度达到了30MB/s。然而在其昂贵的价格面前,SATA笔记本硬盘的优势还很微弱,甚
至没有。但我们必须得承认,笔记本全面进入串行时代,是无法扭转的历史进程。SATA
硬盘的普及,也会是必然。
第5页:南桥:从PCI到PCI-EXPRESS
PCI是外设的最主要通道,几乎所有的外围设备都能通过PCI来实现其功能。对笔记
本通常而言,主要挂有CARDBUS、MINI PCI、网卡,或者电视卡。而对于这些设备的物
理连接,我们也将在下篇中具体谈到。
由于PCI只是跑在33MHZ上,所以它的布线比较宽松,并不需要严格的控制。
而对于最新的ICH6已经开始支持PCI-Express,相对PCI原来的近60pin,
PCI-Express的引脚只有区区四根。这对于硬件的设计来说是个绝对的好消息,PIN脚越
少,越不容易出错啊!更重要的是,PCI EXPRESS并不需要像PCI那样指定PCI设备的中
断和中断响应,对于BIOS和硬件工程师来说就少了需要共同协商的部分,加快了开发的
进程。
笔记本上我们看不到PCI-E,我们来看看台式机吧,反正通道的原理是一样的。
由上到下分别是:PCI-Express 16X,PCI-E *2,PCI总线*3。可以看到PCI-E比传统
的PCI总线的PIN数要少太多了。下图是PCI和PCI-E的对照表,大家可以看到两者的区
别:
PCI和PCI-Express
ICH6提供了4组PCI-Express接口,理论上至少可接4个PCI-Express设备(我是
没碰到过,实在是因为用不了那么多,呵呵)。
第6页:AC97 Modem BMDC 您又了解多少?
AC'97是Audio Codec'97的缩写,它所定义的是一种在主流PC中实现音频特性的
方法,后来又扩展了实现Modem的功能。AC'97利用核心芯片组的功能和外围的模拟设
备共同实现音频卡/Modem的功能。下图AC97接口是示意图:
我们看到南桥输出7个信号,从上到下分别是复位、输出、同步、时钟,以及三个输
出信号。按图中的意思,AC97接口至少可以接3个设备,共用复位、输出、同步、时钟
四个信号,但输入信号各自独用。一般情况下,我们常接入的是D/A转换(SDATA_IN0,
数字信号转成模拟的音频信号)和Modem(SDATA_IN1)两个设备,保留了第三个设备
接入的能力。
下图是笔记本上AC97的接口,如今已经是通用的接口了。
笔记本上的Modem(AC97)接口
AC97单元在主板的设计上并不困难。但由于音频是模拟信号,而且由我们的耳朵直
接聆听,所以如果走线不合理的话,就有可能引发干扰声。另外,如果处理不好干扰的话,
也会影响Modem的拨号速度。所以一般在做PCB布线的时候,会在音频解码器的范围内
禁止走高速的信号,比如网卡,USB等等。并且需要严格把AC97的解码器的数字和模拟
部分分开,最后,在解码器的下方的一般都会加上一大块的铜作为模拟地以将干扰减小到
最低。
至于如IBM的高档机型上用的Modem/BlueTooth的Combo卡(炒的比较热的
BMDC卡),其实是利用在AC97的接插件上空余的pin,接上了USB的线路(2根而已),
然后通过USB总线来连接BLUETOOTH,这根我们常用的USB蓝牙其实是一样的,可见
其成本并不高。笔者参与设计的几个项目都是用AC'97来扩展蓝牙的。
IBM的Modem/蓝牙Combo卡
下图是AC97接口的PIN脚功能图,我们看到左边部分的PIN是连接到南桥的AC97
接口,而右边则是蓝牙的功能块。除此之外还有很多空余的PIN脚,BMDC正是通过这些
空余的PIN实现Modem、蓝牙二合一的。
BMDC接口的线路图
如果要利用MINI-PCI的空余PIN来做的话也是可行的,这样的话也就是
Wireless/Bluetooth Combo卡了,而且理论上来说,做成Wireless/Bluetooth Combo
更方便,不仅是因为MINI-PCI的空PIN更多,而且其空间也越大。不过由于迅驰技术的
限制,如果不使用Intel的无线网卡,就不能打上迅驰的标签。而Intel的无线网卡是不大
可能集成蓝牙功能的,所以现在Wireless/Bluetooth Combo卡并不多见。
MINI PCI的无线网卡。看看,是不是空间更大?:)
随着ICH6M的推出,最新的Azalia(Intel称之为High Definition Audio)相信大
家也听说过。以其多声道,高保真的效果正在逐步替代传统的AC97。最新的音频解码器
(AZALIA)目前量产的就我知道的也就两家,一家是Retelk的ALC880,另一家是
C-Media的CMI9880。下面是两者的图片:
Azalia音效芯片最大的特色在于能够进行自动设备检测和接口定义功能,可以自行判
断哪个端口有何种设备插入;还能为接口定义属性,利用这个功能,我们可以重新分配音
频插孔的定义,之后就可以播放不同的音频、视频文件,听不同的歌曲了!呵呵~~
第7页:南桥:USB口 没想像中那么简单
USB,Universal Serial Bus(通用串行总线)。我们知道,我们现在用的USB口上有
4个引脚。其中中间两根是从南桥引过来的信号线。另外两个边上的则是一个正5V,一个
接地。下面是USB口的接口具体定义:
其中供电的时候一般由一颗IC来控制电流的大小,当超过预定的电流时候(USB1.0
为500MA,2.0则是720MA),改IC会给出一个OC#(OVER CURRENT,过流)信号
给南桥,南桥切断USB口的信号,从而保护南桥内部的寄存器和整机的安全。INTEL推荐
使用专门的IC来切断电压,这样能更好的保证机器的稳定性。图中的5V Switch就是供电
IC:
USB的保护电路
具体的电路,参考《权威揭密 从成本分析看低价笔记本猫腻》第六页。
仔细看一下USB口,其中间两根信号线比较短,而电源线则比较长。这样的设计是使
UBS口在插入的时候先接通电源,后接通信号。个人以为这样的设计是为能保护南桥内部
的寄存器不会受到冲击电流的影响。
由于USB的高速性,特别是USB2.0的发布,更加剧了这部分布线的难度。对EMI
工程师来说,为了通过EMC验证,必定是线越短越好。而对硬件和机构工程师来说,有
时候这点并不能满足……所以冲突是难免的。
下图是为解决USB的EMI/EMC问题设计的电路,也是INTEL的建议线路。其中
USB+/-是直接从南桥引出来的,通过一个共模电感输出到USB口,提高整机线路的
EMI/EMC性能。
USB的EMI保护
所以说我们常看到一些网络上的高手直接从南桥引出USB信号线来实现USB扩展其
实是比较不规范的哦,至少EMI/EMC肯定过不了,呵呵。当然,能直接从南桥引出USB
的信号线对于业余者来说已经是非常不简单了,而且对于个人用户来说,EMI/EMC的需
求就并非那么强烈了,所以这样做是完全可行的。
上图是某些发烧友为IBM THINKPAD 600X加装第二个USB口的图,图中他们已经
标出了南桥引出的USB信号线。
第1页:BIOS EC 电源管理之间的关系
所所开篇:今天是本系列教程的下篇,到今天工程师权威揭密系列的教程就告一段落
了。随后大家可以通过访问我们的专题页面来随时温故知新,下面一起来看下篇吧。
我们常会听到某些高手说“改一下COMS设置”云云,我们现在就来谈谈BIOS
(CMOS)。
BIOS(Basic Input/Output System,基本输入输出系统)在整个系统中的地位是非
常重要的,它实现了底层硬件和上层操作系统的桥梁。比如你现在从光盘拷贝一个文件到
硬盘,您只需知道“复制、粘贴”的指令就行了,您不必知道它具体是如何从光盘读取,
然后如何写入硬盘。对于操作系统来说也只需要向BIOS发出指令即可,而不必知道光盘
是如何读,硬盘是如何写的。BIOS构建了操作系统和底层硬件的桥梁。
而我们平时说的BIOS设定仅仅是谈到了其软件的设定,比如设置启动顺序、禁用/启
用一些功能等等。但这里有一个问题,在硬件上,BIOS是如何实现的呢?毕竟,软件是运
行在硬件平台上的吧?这里我们不能不提的就是EC。
这是日立H8的DEMO板和其宣传画
WINBOND的EC
EC(Embed Controller,嵌入式控制器)是一个16位单片机,它内部本身也有一定
容量的Flash来存储EC的代码。EC在系统中的地位绝不次于南北桥,在系统开启的过程
中,EC控制着绝大多数重要信号的时序。在笔记本中,EC是一直开着的,无论你是在开
机或者是关机状态,除非你把电池和Adapter完全卸除。
在关机状态下,EC一直保持运行,并在等待用户的开机信息。而在开机后,EC更作
为键盘控制器,充电指示灯以及风扇等设备的控制,它甚至控制着系统的待机、休眠等状
态。主流笔记本系统中,EC在系统架构中的地位如下图:
现在的EC有两种架构,上图左边是比较传统的,即BIOS的FLASH通过X-BUS接
到EC,然后EC通过LPC接到南桥,一般这种情况下EC的代码也是放在FLASH中的,
也就是和BIOS共用一个FLASH。右边的则是比较新的架构,EC和FLASH共同接到LPC
总线上,一般它只使用EC内部的ROM。至于LPC总线,它是INTEL当初为了取代低速
落后的X-BUS而推出的总线标准。
EC上一般都含有键盘控制器,所以也称KBC(Keyboard Controller)。
那EC和BIOS在系统中的工作到底有什么牵连呢?在这里我们先简单的分析一下,具
体的过程在本文的最后会详细介绍。
在系统关机的时候,只有RTC部分和EC部分在运行。RTC部分维持着计算机的时钟
和CMOS设置信息,而EC则在等待用户按开机键。在检测到用户按开机键后,EC会通
知整个系统把电源打开(这部分在最后详细介绍)。CPU被RESET后,会去读BIOS内一
个特定地址内的指令(其实是一个跳转指令,这个地址是由CPU硬件设定的)。
这里开始分两种情况,对于上图左边的结构:CPU发出的这个地址通过FSB到北桥,
然后通过HUB-LINK到南桥,通过LPC到EC,再通过X-BUS一直到达BIOS。在CPU
读到所发出的地址内的指令后,执行它被RESET后的第一个指令。在这个系统中,EC起
到了桥接BIOS和南桥(或者说整个系统)的作用。
对于上图右边的结构:在这地址南桥后,会直接通过LPC到BIOS,不需要EC的桥接。
这里需要说明的是,对于台式机而言,一般是不需要EC的。这里原因有很多:比如
台式机本身的ATX电源就具有一定的智能功能,他已经能受操作系统控制来实现待机、休
眠的状态;其次由于笔记本的键盘不能直接接到PS/2接口,而必须接到EC之上;还有就
是笔记本有更多的小功能,比如充电指示灯、WIFI指示灯、Fn等很多特殊的功能,而且
笔记本必须支持电池的冲放电等功能,而智能冲放电则需要EC的支持;另外,笔记本TFT
屏幕的开关时序也必须由EC控制。这些原因导致了笔记本使用EC来做内部管理的必要性。
总体来说,EC和BIOS都处于机器的最底层。EC是一个单独的处理器,在开机前和
开机过程中对整个系统起着全局的管理。而BIOS是在等EC把内部的物理环境初始化后才
开始运行的。
看到这里,我想大家也明白EC到底是呵方神圣。如果说BIOS 是底层系统的话,那
EC 似乎更加底层。
在南桥上还有一个功能块就是电源管理单元(PM,Power Management)。
一般来说,他和EC来共同配合完成。这里包括从开机(power button)键按下后,
启动,待机,休眠,关机的全部功能。还包括对背光亮度,声音等的控制等等。
至于现在Intel的Speed Step技术,也有部分功能是透过南桥来实现的(南桥发送
SLP、STPCLK(sleep,Stop Clock)来实现睡眠、深睡眠等)。
这部分的设计比较简单,只需要点到点的连接南桥和CPU即可。
第2页:PCI设备:网卡 1394的不同接法
在台式机上,我们常听到关于集成网卡这个说法。而对于笔记本来说,网卡一般都是
集成在主板上的,进入PIII时代以后,就显有无内建网卡的机器了。对于笔记本网卡来说
(不考虑PCMCIA的网卡哦),一般有两种接法。
首先我们把网卡分成两个部分。学过网络技术的读者可能都很清楚,现在的LAN都属
于802.3的协议。而这个协议的物理实现却并非那么简单,需要分成两个部分。一部分是
MAC控制层(Media Access Controller 媒体接入控制器),作用是根据802.3协议来做
运算(采用CSMA/CD算法),另一部分是物理连接层(PHY)作用是根据MAC的算法得
出的处理结果,接收和发送数据。
首先我们谈第一种,走PCI总线的网卡。如果这样接的话跟台式机的网卡唯一的区别
就是把台式机的PCI网卡直接做到主板上。这颗走PCI的网卡芯片内部整合了MAC和PHY
功能。实际使用中,高档一些的笔记本会采用INTEL的网卡,低档一些的就会用REALTLK
或者VIA的芯片。当然,INTEL网卡的传输效率确实也比较高。
上图蓝色框内的就是PCI的网卡(REALTLK8100C)
第二种则是“真正集成”的网卡,MAC层部分被做到了南桥里面,然后需要用一个外
围电路(PHY)来配合南桥里的MAC来实现网卡的功能。
如图,南桥内部的网卡MAC输出一组信号线(称为MII总线),连接PHY(上图中的
Intel 82562ET),然后引出RX+-和TX+-两对差分线,透过Transformer来控制EMI,然
后输出到RJ45接口即刻。这里的Transformer的结构跟中篇里的USB的共模电感相似,
作用也相似。上面的REALTLK8100C的那张图中,红色框内就是Transformer。经过
Transformer的信号线必须以最短的距离接到RJ45接口上以减少干扰,所以它离和RJ45
的距离是必须被严格控制的。
INTEL的网卡PHY(82562ET)
那么MAC地址是什么呢?MAC地址是区别网络设备的唯一物理标志,理论上,世界
上任何一个网络设备的MAC应该都是不同的。那么网卡的MAC地址到底放在哪里呢?
对于走PCI总线的网卡,一般会在网卡上挂一个小小的的E2PROM来存储,里面烧
有MAC地址以及一些厂商信息。而对于用PHY来连接的网卡,会把MAC地址信息放在
挂在南桥上的E2PROM(因为网卡的MAC控制器在南桥)。
上图中黄色框内的U6就是E2PROM,用以纪录网卡的MAC地址。
而1394和网卡的构建形式差不多,也是由MAC控制器和PHY来构成。其原理和布
线准则也和网卡类似,笔者就不多费笔墨了。
第3页:PCI设备:PCMCIA, Mini PCI
1989年由200多家公司确立了PCMCIA(Personal Computer Memory Card
International Association)标准,最初只是用来扩展内存,91年后随着I/O设备扩展需求,
多种设备都被做成了PCMCIA接口,PCMCIA成为了笔记本最重要的扩展插槽。PCMCIA
的成长史几乎是整个笔记本电脑产业的成长史。那PCMCIA到底是如何实现的呢?
实际上,PCMCIA的实现方法并不复杂,把南桥的PCI总线拉到PCMCIA控制器,
然后从PCMCIA控制器就能输出Cardbus,接上标准的PCMCIA接口就可以了。
下图就是PCMCIA的框图:
实际上在设计的时候,CardBus Controller的设计厂商都已经对其开发作好了一整
套的外围电路,OEM厂商只需要简单的按标准电路做简单的修改即可(比如一些降低成
本的动作)。一般来说,CardBus Controller有TI,RICHO,ENE等几家可以选择。
如图是IBM R40采用的TI的芯片PCI 1510 控制器和NEC的某款产品,采用理光
R5C551的CardBus控制器。
对CardBus一些其他分析可参考《权威揭密 从成本分析看低价笔记本猫腻》一文,
/nb/04/12/56526/。
至于mini PCI则更加简单了,只需把南桥的PCI总线点到点的接到mini PCI的接口
上即可。顺便说一句,mini PCI和台式机上的PCI的物理定义是一致的,不同的仅仅是插
槽不一致而已。
我们见到过为了台式机上为了使用Mini PCI接口的无线网卡而出现的转接卡:
我们看到,这样的转接板也是非常的简单,除了一些用以稳压用的元器件外没有任何
用以信号转换的芯片。这也从侧面说明了Mini PCI 只是PCI的翻版。
第4页:笔记本也可以超频么?
所有的数字电路都需要依靠时钟信号来使组件的运作同步,每单位时间内电路可运作
的次数取决于时钟的频率,因此时钟运作的频率即被大家视为系统运作的性能指针。在笔
记本的内部,时钟都是有一颗Clock Generator来产生的。
上图中,大颗的是Clock Generator,小颗的是14.318Mhz的晶振
一般来说这颗IC自身采用14.318Mhz的晶振来产生个部分需要的频率。系统的各部
分频率分别是:CPU-100M,南桥/北桥- 66M, AC97-14M,LAN-25M,PCI CLK-66M,
USB-48M等等。南桥由于设备的多样性,可能同时需要66/14/48/33等频率,这主要看
各种南桥的Specification(规格)和你采用的功能来决定(比如你需要加一个Super I/O
来增加一个红外口,那么你需要加一组14.318Mhz频率来提供给Super I/O)。
如果我们仔细研究一下这颗时钟芯片的规格书,我们会发现,控制其输出频率高低的
有三个PIN,通过这三个PIN的高低电平,我们可以获得不同的频率输出。
我们举个例子,ICS954226这颗芯片是为P4-M和P-M系统设计的时钟芯片,它的
PIN图如下:
其中红色框内的就是可以用来调整系统时钟频率的跳线,具体的对应表如下图:
红色框内是P-M采用的数据
至此我想各位也都明白,只要研究一下时钟芯片的跳线,并调整跳线就可以改变CPU
的外频和主频。这实在让人兴奋!
不过在实际上并非那么简单。因为单纯的提高时钟频率必然导致整机功耗的偏大,发
热必将严重。而笔记本电脑在散热方面基本没有DIY的可能性。这样,散热在这里就成为
比较突出的问题。
在调整时钟的时候,我们也必须考虑到北桥对FSB的承受能力,超负荷的运作可能会
导致北桥不堪重负而发生问题。
在老式的主板上,我们需要多考虑一个问题。因为其各个组件都有其固定的工作频率,
而各个总线的工作频率和系统的频率大部分都维持固定的比例来工作。换句话说,传统的
时钟发生器通常是以CPU的外频作为基准频率,通过固定比例的除频,产生其余外设所使
用的时钟。所以当使用者调高CPU外频的同时,总线及外设的时钟也会等比例地被提升,
有的时候CPU尚未超出其工作极限,反而是外设承受不了过高的频率而罢工了。
而在设计时,为了使同一款频率发生器能在更多的系统上使用,新一代的时钟发生器
将AGP/PCI等总线的频率,采用与CPU外频“异步”的设计方式,使用者就可以自由设
定AGP/PCI的工作频率,以符合外设的工作需求。如上图中我们可以看到,我们改变CPU
外频的同时并未改变PCI等传统外设的工作频率,这无论对设计者来说还是超频爱好者而
言都具方便性。
除了玩跳线以外,这颗时钟发生器配备有SMBus(System Management Bus)接口,
可由BIOS直接控制,甚至不用拆机壳,只需坐在计算机面前,通过键盘及屏幕,即可随
意调整系统工作频率了。图中蓝色框内的就是SMBus的接口。
通过SMBus我们可以以极小的线性级距微调CPU的外频(以MHz为单位),不像以
往的跳线设定方式,一下子从100MHz直接跳至133MHz,CPU容易超出其极限而导致
当机。但很遗憾,笔记本电脑在设计之时就已经确定了其最稳定的工作频率,可以频率调
节的BIOS版本仅会存在于测试样机,而绝不会留给使用者在BIOS里超频的可能。
第5页:SMBus 2.0/I2C Bus
上页我们提到了SMBus,相对前面说FSB,USB,PCI等总线,SMBUS2.0的速度实
在是低的可怜(不过反正它也不需要那么高的速度)。但其作用却不可小视。简单的说,
SMBUS是一种慢速的系统总线,他为整个系统提供基本的运行信息。
我想稍有内存知识的朋友都知道,内存上有SPD来纪录内存的容量,厂商等信息。而
这些信息就是靠SMBus来读取的。另外,SMBus也可用来做CPU温度检测之用。在新
型的笔记本或者台式机的设计中,Clock Generator的频率控制也可以用SMBus来调整,
以达到线性、平滑的超频(当然,在笔记本中……这就只可能出现在工程样机中了)。
下图是具体的逻辑图,注意是SMBus哦,不是SMLink哦。
其实在笔记本电脑内部,有不止一根的系统总线。比如说侦测电池信息的SMBUS等。
笔者对这方面的信息笔者知之甚少,仅在此抛砖引玉了,有兴趣的朋友可以自己去搜索。
第6页:CPU的核心电压,如何变化?主频如何自适应?
可能大家都知道,现在的CPU有频率的自动调节功能以满足性能/电池续航的最佳平
衡。那么如何调节呢?我们看一下下面这张图,它说明了CPU在各个状态间的切换:
我们看到,CPU具有相当的智能,它会对当前的负荷量做一个检测,如果要求的处理
量不大的话就自动进入Auto Halt,Stop Grant等状态,如果发现负荷量还是偏小的话,
南桥会发出一些SLP或DEEP SLP信号(分别代表睡眠,深睡眠)来通知CPU进入睡眠、
深睡眠状态。
而在DEEP SLP情况下,如果CPU的运算量还是偏小,那么CPU就会发出VID通知
CPU Core Voltage Regulator(CPU电压产生器)降低当前的工作电压,在收到CPU发
出的VID后,电压产生器就会输出想对应的CPU CORE电压,在得到降低的电压后,CPU
的频率会下降以达到低功耗的目的。而在这时候CPU进去的模式我们称为DEEPER SLP(即
更深的睡眠)。
至于VID和CPU的关系,我相信下面的图能给你比较直观的认识:
CPU发出VID到CPU Core Voltage Regulator,后者解码VID后,改变CPU的核
心电压。以Intel的Improved Enhanced SpeedStep技术为例,在小于1/2000秒的时
间里,自动电源识别系统(CPU和南桥共同协作)和自动电压调整系统(CPU Core Voltage
Regulator系统)将使CPU的电压自动增加或者减少到最佳的值。由此不难看出,
SpeedStep技术能让CPU在最高性能模式和电池优化模式之间随意地切换或按用户的命
令进行切换,而性能切换时,SpeedStep技术可将处理器的功率降低40%,同时仍保持
80%的最高性能。
关于CPU具体的功耗和电压信息,可参考《权威揭密 重扣轰杀笔记本散热认知误区》
的第13,14,15页。
一般来说,这颗电压产生器会使用MAXIM(美信)或者ITSEL两家。而在最新的
Sonoma平台上,ADP这家老牌的IC生产商也蠢蠢欲动。
第7页:充电电路,保护锂电池就靠它了
对于如今的笔记本电脑,都具有锂电池作为电源(在03,04年HP也曾推出过过时
的镍氢电池作为电源以降低成本,但没多久就消失了)。
为了延长电池的使用寿命,除了要养成良好的电池使用习惯外,对锂电池的智能冲放
电也非常重要。目前在笔记本电脑中,几乎都采用了“电池管理”和“充放电控制”两种
芯片级管理系统。
其中“电池管理芯片”安置于笔记本电脑内部,该芯片的寄存器里存储着该台电脑所
用锂离子电池的容量、工作温度、ID系列号、充放电状态、充放电累计次数等重要信息。
这些数据信息在使用过程中,需要根据实际情况不断地刷新。如图是IBM T4X系列采用的
ADP3806充电IC,由它负责对电池状态的监控。
而电池内置的“充放电控制芯片”最主要的作用,就是监视、控制电池的整个充放电
过程并加以记录。
早期IBM ThinkPad 电池控制电路
对于离子电池的整个充电过程,一般分为“恒流快速充电”和“恒压电流递减充电”
两个阶段。所谓“恒流快速充电”是指在刚刚开始充电时,充电电流固定而充电电压跟随
电池的端电压逐渐升高,直至达到标称电压的充电方式。当电池达到了端电压标准数值后,
控制芯片会自动转入“恒压电流递减充电”阶段,此时充电电压将不会再继续升高,而充
电电流则跟随电池容量的不断上升逐步递减,并最终达到零,如此便完成了电池的全部充
电过程。
与此同时,在充电过程中所产生的充电电压、电流、时间等数据曲线,都将被记录在
电池内的“充放电控制芯片”的存储器中。“电池管理芯片”就是通过调取这些数据,并
通过抽样计算得出电池容量等数据,这便是我们在Battery Information里所读到的Wh
数值。
对这部分内容,笔者并不是很清楚。这只是参考了网上的一些资料得出。如果有错误
的地方,还请各位看官在文后提出。
第8页:重要的一环 热保护系统
对于CPU的散热,各家厂商可谓不遗余力了。我们曾在《权威揭密 重扣轰杀笔记本
散热认知误区》里详细探讨过笔记本电脑对散热的控制。有兴趣的朋友可以再看一下那篇
文章,我这里只做简单介绍,以保持本文内容的完整性。
CPU对过热保护有两组信号。一组是由一根CLOCK一根DATA构成,它们不断的和
EC进行串行通信,EC根据CPU发来的信号得到CPU当前的温度,并调节风扇的速度来
控制温度。当CPU温度升高到一定程度的时候,CPU自动降低自身频率以控制热量。而
当风扇在CPU降低频率的情况下仍不能控制住温度的时候,EC会发出指令,主机重新启
动。
而另一组名为ThermalTRIP(图上标为RESET),这个信号一旦发出,马上RESET主
机,这个信号是由CPU直接发送到EC的RESET端,其功能是在CPU温度迅速升高,而
风扇来不及发挥作用的时候,切断电源以保护CPU。
一般而言,笔记本内部的有温度检测的就只有CPU一个。其他一些南北桥,显卡一般
都没有温度检测系统。不过随着显卡的热量越来越大,在将来的系统中,我们很有可能会
看到有温度检测的移动型显示卡(其实在MXM上已经有在设计了,只是显卡做在主板上
的机器暂时还没有看到过)。
第9页:逻辑上的开机过程:预习
开机过程对于电脑设计是至关重要的。在笔记本电脑打好PCB后第一次开机时,如果
电源的时序正确了,其他的问题都比较好解(一般来说时序正确的话机器都能开起来)。最
怕的就是电源时序不对,机器开不起来,这才是最要命的。那我们现在就讲解一下笔记本
电脑在硬件上的逻辑开机过程。
首先我们做一写预习工作,以方便读者的理解。在笔记本内部的电压有好几种,我们
分别看一下。
首先是RTC电源,这部分电力是永远不关闭的,除非电池(纽扣电池)没电并且没接
任何外部电源(比如电池和电源适配器)。RTC用以保持机器内部时钟的运转和保证CMOS
配制信息在断电的情况下不丢失;其次,在你插上电池或者电源适配器,但还没按power
键的时候(S5),机器内部的开启的电称为ALWAYS电,主要用以保证EC的正常运行;
再次,你开机以后,所有的电力都开启,这时候,我们称为MAIN电(S0),以供整机的运
行;在你进待机的时候(S3),机器内部的电成为SUS电,主要是DDR的电力供应,以保
证RAM内部的资料不丢失;而休眠(S4)和关机(S5)的电是一样的,都是Always电。其中,
上文中括号内的是表示计算机的状态(S0-开机,S3-待机,S4-休眠,S5-关机)。
上图是对上面这段话的总结,我想应该很容易明白。其中最后一列指的是其电压开启
的控制信号,这点下面会讲到。至于为什么这里没有S4,即休眠状态,是因为在S4状态
和S5状态下,系统开启的电是一样的,所以就没必要增加一组控制电路。
第10页:逻辑上的开机过程:从接上电源一直到进入BIOS
OK,现在我们假设没有任何的电力设备在供电(没电池和电源),这时候,机器内部
只有RTC电路在运作,南桥上会接有一个3V的纽扣电池来供给RTC电力,以保持内部时
间的运行和CMOS信息。
下图是南桥的启动时序:
根据前面的Power Status,我们来分析一下开机的过程。在插上电池或者电源的时候,
机器内部的单片机EC就Reset并开始工作,等待用户按下Power键。在此期间的时序是:
ALWAYS电开启以后,EC Reset并开始运行,随后发给南桥一个称为‘RSMRST#’的信
号。这时候南桥的部分功能开始初始化并等待开机信号。这里要注意,这时候的南桥并没
有打开全部电源,只有很少一部分的功能可用,比如供检测开机信号的PWRBTN#信号。
在用户按下Power键的时候,EC检测到一个电平变化(一般时序是:高-低-高),然
后发送一个开机信号(PWRBTN#)给南桥,南桥收到PWRBTN#信号后依次拉高
SLP_S5#,SLP_S4#,SLP_S3#信号(他们的作用参看上页的图),开启了所有的外围电压,
主要是+3V,+5V以及DDR2.5V等,并发送PM PWROK信号,这信号表明外围电源正
常开启。
看似简单的开机在设计者眼里并不简单
PM PWROK将作为一个使能信号发送到CPU外围VCCP的电压Generator,并开启
VCCP。在此之后,VCCP Generator会发出CORE_VR_ON来开启CORE VR(即CPU的
核心电压)。至此,整机的电压已经全部开启。
在用VR_PWRGD_ICH这个信号通知南桥CORE VR成功开启后,南桥会发出PCI
RST#信号到PCI总线,于是总线上的设备都被初始化(包括北桥),并同时发出H_PWRGD
来通知CPU它的核心电压已经成功开启。然后北桥发H_CPURST#信号给CPU,CPU被
RESET,并正式开始工作。
CPU余下的动作,请看本文的第一页。
第11页:逻辑上的开机过程:从开机如何进入待机 休眠呢
下图是整个系统开机流程图,大家可根据上文所说的进行比较。由于INTEL做的开机
系统比较完善,而在实际设计中,RD会省略不少步骤,以降低系统的复杂程度,同时降低
成本。
在用户需要进入待机模式(S3)的时候,系统的ACPI和windows同时运作,拉低
SLP_S3#,并保持SLP_S4#和SLP_S5#被拉高,以关闭了MAIN电,系统则进入待机模式
。
而在需要进入休眠或者关机模式时,同时拉低SLP_S3#、SLP_S4#和SLP_S5#,关闭
除了RTC以外的电源。当然,在这一系列的过程中,需要操作系统和BIOS的共同协作,
对硬件工程师来说,只需要保证在特定的状态保证特定的电压供给即可。
当机器要要从S0进入S5,即关机的时候,也会有一定的时序进行,基本上就是前面
时序的逆运行,笔者就不多费笔墨了。有兴趣的读者可去INTEL自己下载他们的规格书。
以上就是整个硬件的开机、进入S3,S5的过程,当然不同的硬件有不同的开机过程,
这里说的不过是最普通、最为常见的一种。
第12页:总结:国产品牌自主研发是正途
时间匆匆,本文的最后一个章节也在笔者心爱的ThinkPad上敲完了。诚然,在笔记
本日新月异的今天,我们所谈的内容或许已经有点过时了——SONOMA正当其道,更新
的NAPA平台也蓄势待发。但我想,不管计算机如何的更新,只要它基本的架构不变,我
们还是可以从以前的技术中学习到基本的知识和概念。
笔者清楚,这篇文章或许对大多数人都不合适,但对于一些发烧友或者有志于进入计
算机硬件行业的人来说或许还是有些许的帮助。也真诚的希望,国产品牌能真正实现自主
的研发,而不要一味的急功近利,自始至终依赖台湾的代工