PECI简介(一)
前言
- PECI是用于监测CPU及芯片组温度的主从架构的1-wire bus双向总线, 全称是Platform Enviornment Control Interface. 最主要的应用是监测CPU温度, 最新版本的PECI接口还包括一些其他的功能。
Intel Processor的温控机制
- 在CPU中, 通常每个CPU核心都有一个数字温度传感器。DTS (Digital Thermal Sensor)
-
- TM1: Thermal Monitor 1. 为了保护CPU不会在过热时被烧坏, 从Pentium4开始, 处理器中又加入了一个温度监视器TM1. TM1会监视DTS的读数, 当读数高于阈值Tjmax时, TM1会调节处理器时钟的占空比(时钟信号的开闭时间比例), 以降低功耗,减低温度。
- TM2: Thermal Monitor 2. TM2是Pentium M时引入的, 它提供了另一种降低CPU温度的方法。 通过减低时钟频率和供电电压来降低功耗和温度。
- TM1和TM2是两个单独的机制, 可以分别启用和禁用。 可以通过BIOS设置IA21_MISC_ENABLE这个模式寄存器的第3, 13位来实现。
- Tjmax: 当CPU任意一个核温度达到Tjmax, CPU会产生一个PROCHOT#信号 (processor hot). 该信号可以触发TM1和TM2. 产生PROCHOT#信号的同时, 温度监控器还会产生一个中断给CPU, 其中断向量号通过LAPIC和LVT来设置。 模式寄存器IA32_THERM_INTERRUPT有两个位用于高温中断使能 (温度超过Tjmax时产生中断)和低温中断使能 (温度回到低于Tjmax的范围时产生中断)
- TM1: Thermal Monitor 1. 为了保护CPU不会在过热时被烧坏, 从Pentium4开始, 处理器中又加入了一个温度监视器TM1. TM1会监视DTS的读数, 当读数高于阈值Tjmax时, TM1会调节处理器时钟的占空比(时钟信号的开闭时间比例), 以降低功耗,减低温度。
如果TM1, TM2启动后温度还没减低下来,而且继续升高到可能造成CPU物理损坏的温度时, 核心会触发THERMTRIP#信号, 并且关闭CPU电源。
相关MSR
- IA32_THERM_INTERRUPT
IA32_THERM_INTERRUPT寄存的地址为0x19B。BIOS通过IA32_THERM_INTERRUPT模式寄存器使能温度相关的中断,其各字段定义如下:
-
IA32_TEMPERATURE_TARGET
IA32_TEMPERATURE_TARGET模式寄存器的地址为0x1A2。该模式寄存器是只读的