- 积分
- 190
- 下载分
- 分
- 威望
- 点
- 原创币
- 点
- 下载
- 次
- 上传
- 次
- 注册时间
- 2013-5-28
- 精华
|
2#
发表于 2013-12-28 11:53:33
|
只看该作者
来自: 山西吕梁 来自 山西吕梁
图7 小知识∶什么是 SMBus?
一个实际的监控电路
SMBus 是 System Management Bus(系统管理总线)的缩写,是 1995 年由 Intel 提出的。SMBus 只有两根信号线:双向数据线和时钟信号线。PCI 插槽上也给 SMBus 预留了两个引脚 (A40 为 SMBus 时钟线,A41 为 SMBus 数据线),以便于 PCI 接口卡与主板设备之间交换信息。 SMBus 的数据传输率为 100kbps,虽然速度较慢,却以其结构简洁造价低廉的特点,成为业界普遍欢迎的接口标准。Windows 中显示的各种设备的制造商名称和型号等信息,都是通过 SMBus 总线收集的。主板监控系统中传送各种传感器的测量结果,以及 BIOS 向监控芯片发送命令,也是利用 SMBus 实现的。
监控芯片通常是可编程的 ASIC 微控制器,应用软件经 BIOS 将控制命令和数据经接口电路发送给监控芯片,修改其控制参数,一些监控软件正是通过这种途径来显示和调整 CPU 电压 和风扇转速的。 监控芯片是温度监控系统的核心,其质量优劣对控制性能有很大的影响。但由于监控芯片种类繁多,在功能和性能上有很大差异,给使用和鉴别带来一定困难。 首先,各种监控芯片在控制功能上有很大差异(譬如某个芯片可以控制两个风扇,多数则只能控制一个风扇),通常引脚数越多,功能越强。 其次,即便功能相同的芯片,性能上也会有差别,其中一个重要的区别在数据位的不同(譬如 MAX6682 的分辨率是 10 位,TC1024 为 9 位,FMS2701 为 8 位),位数 少的芯片输出的数据精度自然也就降低了(8 位芯片温度转换误差为±3℃)。另一个性能差别在采样速率上,如果采样速率低(例如 FMS2701 的采样速率为 1s),必然增加信号延迟,无法 及时跟踪 cpu 温度的变化。 第一代 CPU 温度监控技术建立在依靠外援的基础上,当 CPU 过热而超过极限温度时,由系统向 CPU 发出 HLT 命令,让系统暂停。 因为热量可能导致系统不稳定,如果电脑死机或程序进 入死循环,就会失去监控作用,也就无法保护 CPU 了。同时,由于构成监控系统的元器件较多,战线拉得很长,导致反应速度慢,无法及时跟踪 CPU 温度变化。而现在的 CPU 不仅核心温度高, 而且升温速度快(最高可达 50℃/s),一旦灾难来临必有“远水不解近渴”之忧患。 四、第二代温度监控技术,Pentium 4 烧不死的秘密 第二代温度监控技术,Pentium 为了弥补第一代温度监控技术的缺陷,提高监控能力,Intel 开发了第 2 代温度监控技术。 第二代温度监控系统的一个突出特点是在 CPU 内部集成了温度控制电路(Thermal Control Circuit,TCC),由 CPU 自身执行温度控制功能,同时,CPU 内设置了两个相互独立的热敏 二极管,D1 是本地热敏二极管,所测信号提供给 TCC,D2 则为远端热敏二极管,其测量结果用于实现主板控制功能及显示核心温度,如图 8。
图8
第 2 代温度监控系统框图
我们先看看 TCC 是如何发挥作用的。TCC 定义了两种工作状态:激活态和非激活态。TCC 的状态与 PROCHOT#信号的电平高低相对应,PROCHOT#为低电平时,TCC 为激活态,否则处于 非激活态。 CPU 核心温度达到警戒温度 当 (Warning Temperature) 时,温度检测电路将 PROCHOT#信号置为低电平,从而激活 TCC。 激活后,采取“抑制任务周期” TCC (Throttle duty Cycle) 的方式(如图 9),使 CPU 有效频率下降,从而达到降低功耗的目的。当 CPU 的温度降低后(低于警戒温度 1℃以上),TCC 回到非激活态,CPU 恢复到“标称频率”。可见,TCC 实质上是一个 由 CPU 温度控制的频率调节器。
图9
TCC 激活时,任务周期减少
如果发生灾难性冷却失败的情况,使 CPU 温度超出极限温度(thermal Trip),TCC 将设 THERMTRIP#信号为低电平,BIOS 芯片检测到这一变化后,直接关闭 CPU 时钟信号,并通过 PWM 控制器封锁 VRM 向 CPU 供电,直到温度降到极限温度以下,RESET#信号有效,THERMTRIP#才会重新变为高电平,系统才能继续工作。否则 THERMTRIP#总为低电平, 系统就停留在暂停状态。“当 cpu 离开风扇的时候”,Pentium 4CPU 之所以能够安然无恙,答案就在这里。 小知识∶警戒温度与极限温度有什么不同? CPU 警戒温度(warning temperature)和极限温度(thermal trip)都是指核心温度,但它们所代表的意义有所不同。警戒温度是能够保证 CPU 稳定运行的温度;极限温度也叫最 高核心温度(Maximum die temperature)或关机温度(Shutdown temperature),是防止 CPU 免于烧毁的温度。 各款 CPU 的警戒温度和极限温度值是制造商根据 CPU 的制造工艺和封装形式及封装材料确定的,并在技术白皮书中给出。 为防止用户自行设定而带来危险,Intel 已将 Pentium 4CPU 的警戒温度和极限温度写入 TCC 内的 ROM 单元中,用户无法修改它们。 现在有不少主板的 BIOS 中也可以设置警戒温度和关机温度,不过可选的数值都比较保守,例如警戒温度最大值为 70℃、关机温度为 85℃,这是远低于 TCC 内设定值的。 兼顾性能和可靠性是第 2 代温度监控技术的优秀之处。由公式 P = CV2f(其中 C 是等效电容容量;V 是工作电压)可知,频率 f 与能耗 P 之间是一种线性关系,降低频率是减少发热 量的有效途径。这种通过降低有效频率实现降温的措施,比之以前那种关断时钟信号的做法显然要聪明一些,避免了因强行关闭 CPU,而导致数据丢失的情况。 Pentium 4CPU 中的 PROCHOT#引脚还有另外两个实用的功能。其中的一个功能是向主板发出报警信号——PROCHOT#引脚为低电平时,说明 CPU 核心温度超过了警戒温度,此时 CPU
工作在较低的频率上。如果超出警戒温度(电脑用户利用工具软件可以获得这个信息),应及时检查散热器安装是否妥当,风扇转速是否正常。 PROCHOT#引脚的另一个功能是可以保护主板上的其他元件。PROCHOT#引脚采用双工设计——信号既可以从这根信号线出去,也能进得来。主板设计者可利用这一特性为供电模块 提供保护,当供电模块的温度超出警戒温度时,监控电路输出一个低电平到 PROCHOT#引脚以激活 TCC,通过降低 CPU 功耗来达到保护供电模块的目的。 可见,Pentium 4CPU 不仅能自保平安,还能对供电电路提供保护,细微之处体现出设计者的良苦用心。同时,将 TCC 集成到 CPU 内不仅对自身更加安全,也简化了主板设计,降低了主 板制造成本。可以说,第 2 代温度监控技术是一个给 CPU 制造商与下游主板厂商带来双赢的技术。 小知识∶如何设置 BIOS 中的“Processor speed throttling”? Pentium 4 主板的 BIOS 中通常有“Processor speed throttling ”之类的选择项,用于选择超警戒温度后 CPU 任务周期(duty cycle)占全部周期的比例,在 CPU 频率不变的情况 下,这个比例越大说明 CPU 的工作效率越高。其中有“Automatic”和“On demand” 两种选择,“Automatic(自动)”表示任务周期的占空比为 50%,也就是说比正常频率低一半;“On demand(按要求)”下面有 12.5%、25%、…、87.5%等多种选择,选择的数值越小,则任务周期的比例越小,降频幅度也越大。 五、温度控制,仅靠降频是不够的 温度控制, 以降低频率为手段来保障 CPU 安全,是第 2 代温度监控技术的主要思想。但是这种技术也存在明显的缺陷:当温度超过警戒温度时,虽然可以勉强运行,但系统整体性能却随着 cpu 频率的下调而降低到一个很低的水平。 假如一个 3.8GHz 的 CPU 只能长期工作在 2GHz 的速度上,这等于让用户花钱买了奔驰,却只能当奥拓使用。 如果真是这样的话,第二代温度监控技术就 算不上成熟的技术,而只不过是个苟且小计。 在系统性能不受损失的前提下保证 CPU 安全稳定运行,这才是我们希望看到的结果。事实上,影响 CPU 温度的因素,除了频率外,还有 CPU 供电质量和散热效率。所以,Pentium 4 温 度监控系统采取了全面的监控措施,把频率、电压和散热三个控制参数视为保障 CPU 安全运行的三驾马车,如图点击看原图 图 10 Pentium 4CPU 温度监控方案
在供电方面,单纯采用多相供电结合大电容滤波的传统方法已难以满足 Pentium 4 (Prescott) 的要求,为此,Intel 制定了新的电压调节标准 VRD10,将 VID CPU (电压识别码) VRM9 从 的 5 位升级到 6 位,使电压调整精度更高。VRD10 还首次公开了 Dynamic VID(动态电压识别码)技术,可根据 CPU 负荷变化随时调节供电电压,见缝插针地降低功耗。此外,Dynamic VID 技 术还能限制电流突变,避免 CPU 偶然烧毁的可能。有关 Pentium 4CPU 的最新供电规范,请参阅本刊 2004 年第 13 期“全面掌握 Prescott 主板最新供电技术”一文。 在散热方面,Intel 在 Pentium 4 processor Thermal and Mechanical Design Guidelines(Pentium 4CPU 热量和构造设计指南)中要求,CPU 的散热器必须具有足够强的散热能力, 以便及时将 CPU 所产生的热量带走。同时要求风扇能够输出转速信号,以实现对风扇的监控,防止因风扇停转而导致 CPU 过热的情况发生。由于 CPU 所产生的热量因工作负荷变化而有很大 变化,因此也要求风扇转速按需要自动调节,以降低不必要的能源消耗和噪音污染。 小知识∶如何判断风扇是否具有测速功能? 有些电脑 BIOS 中显示风扇转速为 0,而实际上风扇却在正常旋转,通常是因为风扇没有测速功能。风扇是否具有测速功能,可以从风扇连线的数目来区别,具有测速功能的风扇至少 有三根线,通常红色线为+12V,黑色线为地线,黄色线或白色线就是测速信号线。如果还有第四根线——一根蓝色的信号线,那是用于变频调速的脉宽调制信号 PWM,如图 11。
图 11 CPU 风扇插头引脚定义 下面以 ADT7436 监控芯片为核心的 Pentium 4CPU 温度监控系统实例进 行解剖,如图 12。先看看风扇的情况,图中 TACH 是风扇电机速度信号,监控电路使用 PWM(Pulse Width Modulation,脉宽调制)控制风扇电机的转速,从 PWM 信号可以看出三只风扇都是可 以调速的。
图 12
温度监控系统实例
北桥芯片是 cpu 与 BIOS 芯片进行数据交换的桥梁,监控芯片与北桥芯片三个信号中,SDA 是 SMBus 双向数据线,它既可以将电源电压、CPU 核心温度、风扇转速和环境温度等全部监 控信息发送给 BIOS 实现进行显示,也可以由 BIOS 将来自系统的命令发送给监控芯片(前面已经介绍过,监控芯片是可编程的 ASIC,所以完全有能力处理这些来自系统的命令),实现控制参 数的修改或调节功能;SCL 是来自系统的时钟信号,这是监控芯片与北桥芯片以及监控芯片与 CPU 之间进行同步通信的必要条件;SMBALART#在此定义为监控芯片通过 SMBus 接口发往 BIOS 芯片的报警(ALART)信号。 监控芯片与 CPU 之间通过 4 个引脚进行联络:CPU 将电压识别码 VID 发送给监控芯片,由它可算出 CPU 理论电压值(来自电源模块的 Vcore 才是 CPU 的实际电压值);D2+和 D2-是 CPU 核心温度信号(“D”在此表示 Diode,而不是 Data),当 CPU 温度超过警戒温度时,CPU 通过 PROCHOT#信号通知监控芯片,而当电源模块电流超标时,监控芯片将 PROCHOT#信号置为低 电平,激活 CPU 内的 TCC,对 CPU 和供电模块进行降温。这些控制功能完全体现了第 2 代温度监控技术的特点。 六、现有技术并不完善 CPU 温度监控系统在电脑中虽然毫不起眼,人们很少去注意它,但它对整个系统来却起着十分重要的作用,像一位藏在后面的天使,默默地守护着我们的电脑。从 1993 年 Intel 推出 第一款奔腾 CPU 以来,十年之间主频提升了数十倍,期间 CPU 技术的发展已不再是简单的频率提升,系统设计者必须在性能、耗电量、噪音和热量四个因素之间进行综合平衡。正因为如此, 温度监控技术经历了从无到有、逐渐成熟的发展过程,从一个侧面见证了 CPU 的发展史。据说即将推出的 Pentium 4 6XX 系列 CPU 将集成 Enhanced SpeedStep 技术,CPU 自身温度监控功能 得到强化。 我们也应看到,现有的监控技术水平还远没有达到理想的状态,在温度测量精度、监控系统的及时性和降温技术的有效性等方面还有待提高,电压、频率和散热三个子系统目前处于 各自为战的状态。未来的温度监控技术必然朝着更精确、更有效、更智能的方向发展。
|
|