PECI接口详解_第1页
PECI接口详解_第2页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、PECI接口PECI是用于监测CPU及芯片组温度的一线总线(one-wirebus),全称是PlatformEnvironmentControlInterface它最主要的应用是监测CPU温度,最新版本的PECI接口还包括一些其他的功能。1IntelProcessor的温控机制在CPU中,通常每个CPU核心都有一个数字温度传感器。在PC平台下,处理器可以通过MSR(Modespecificregisters)获得处理器自身的温度、调节风扇转速度,从而实现温度控制。在服务器平台下,温度控制通常是由BMC来做的,业务CPU本身没有办法控制机框的风扇转速度。BMC直接或间接通过PECI总线获取到CP

2、U核心温度,再根据所有温度值调整风扇转速。MSR方式读取CPU温度读取到的是即时温度,PECI方式读取到的是256ms时间窗内的平均温度。MSR方式是需要CPU处理C0状态才能读取。PECI方式在C0C6均可以使用。图表1PECI接中的连接方式IntelPentiumM开始在处理器中引入DTS(数字温度传感器)。温度传感器通常是每个CPU核心一个。图表2Intel温控组件1.1 TM1为了保护CPU不会在过热时被烧坏,从Pentium4开始,处理器中又加入了一个温度监示器ThermalMonitor1,简称TM1。TM1会监示数字温度传感器的读数,当读数高于阈值.拟时,TM1会调节处理器时钟的

3、占空比,以降低功耗,降低温度。这里所谓的调节时钟占空比与传统意义上的时钟占空比不同,这里调节的是时钟信号的开闭时间比例,比如说,它会在某一段时间内,37.5%的时间打开CPU时钟,让CPU工作,另62.5%的时间关闭CPU时钟,让CPU停止工作以降低功耗和温度。37.5%62.5%Figure1TM1调整CPU时钟占空比1.2 TM2TM2是PentiumM时引入的,它提供了另一种降低CPU温度的办法。在CPU某个核心的温度超过Tjmax时,它会尝试降低时钟频率和供电电压来降低功耗和温度。TM1和TM2是两个单独的机制制,或以分别启用和禁用。InteI推荐两个机制同时使用。它们的启用和禁用是通

4、过BIOS设置IA32_MISC_ENABLE这个模式寄存器的第3、13位来实现的。BIOS打开这两个机制后,OS和用户程序不可关闭。1.3 温度阈值max是我们所知的第一个阈值,当CPU上任意一个核心的温度达到这个阈值时,CPU会产生一个PROCHOT#信号(processorhot)。该信号可触发TM1和TM2。处理器时会通过调节时钟占空比、降低时钟频率和供电电压的方式来降低功耗和温度。产生PROCHOT#信号的同时,温度监示器还会产生一个中断给CPU,其中断向量号通过LAPIC和LVT来设置。模式寄存器IA32THERMINTERRUPT有两个位用于高温中断使能(温度超过T.时产生中断)

5、jmax和低温中断使能(温度回到低于Tjmax的范围时产生中断)。PROCHOT#通过CPU的一个引脚拉出,并且可以连接在外设上,由外设来发生这个信号。比如说一个系统中有另一个设备的温度超过阈值,它可以拉低使能这个信号,从而使CPU也一起降温,从而降低机箱内的温度,制造一个更好的散热环境。如果TM1和TM2启动后温度没能降低下来,并且继续升高到可能造成CPU物理损坏的温度时,核心会触发THERMTRIP#信号,并且关闭CPU电源。CPU硬件实现的温度控制机制是用于CPU自我保存的温控机制,当这些机制不足以降温时,CPU会断电,从而造成系统突然掉电,造成数据损失。因而一般要求BMC在要以一定的周

6、期读取CPU核心温度,根据温度调整风扇转速,并且当温度超过T.-10时,让风扇jmax全速转动。2相关MSR2.1 IA32_THERM_INTERRUPTIA32_THERM_INTERRUPT寄存的地址为0x19B。BIOS通过IA32_THERM_INTERRUPT模式寄存器使能温度相关的中断,其各字段定义如下:表格1IA32THERMINTERRUPT0x19B位描述0Hightemperatureinterruptenable1Lowtemperatureinterruptenable2PROCHOT#interruptenable3FORCEPR#interruptenable4C

7、riticalTemperatureinterruptenable7:5reserved14:8Threshold1value15Threshold1intenable22:16Threshold2value23Threshold2intenable63:24reserved在一个实际系统读到的该寄存器的值为:sudomodprobemsrsudordmsr-p00x19B32.2 IA32_TEMPERATURE_TARGETIA32_TEMPERATURE_TARGET模式寄存器的地址为0x1A2。该模式寄存器是只读的。表格2IA32TEMPERATURETARGET模式寄存器位描述23:

8、16温度目标,单为是摄氏度,当达到这个温度时触发TM1和TM2,产生PROCHOT#信号。在一个实际系统读到的该寄存器的值为:sudomodprobemsrsudordmsr-p00x1A20x5B080x5B=91摄氏度嵌入汇编方式读取MSR:asmvolatile("movl$0x1A2,%ecxntrdmsrnt”)3PECI接口BMC获取CPU核心温度有两种途径:(1)通过PECI总线直接从CPU上获取温度数据,(2)通过IPMI协议从南桥上的ME上获取CPU核心温度。在途径(2)的情况下,ME需要通过PECI接口从CPU上获取温度。由于PECI的一线总线是intel的私有总

9、线协议,很多BMC厂商并没有办法集成支持PECI接口协议的硬件,因而途径(2)是获取CPU核心温度的主流途径。3.1PECI规范PECI采用的是主从结构,系统中最多支持4个从节点+1个主节点共五个节点。五个节点看似有点少,然而普通的服务器中4路系统已然是性能比较强的系统了。华为的RH5885服务器支持8路共160逻辑核心,但是以两个机框各有一个BMC的方式提供的。PECI的四个从机地址从0x30开始编址,最大地址为0x33。PECI”PEcrWoodcrestFutireMuitKore阿叫穀“mFigure2PECI架构PECI规范到现在有三个主要版本:1.1、2.0和3.0。PECI1.1

10、支持最简单的温度监示,PECI2.0则支持更多的如读取MSR等特性,PECI3.0进一步支持PCIe总线配置空间的读取。表格3PECI1.1和2.0比较版本1.12.0特性温度监示Ping()GetTemp()GetDib()温度监示Ping()GetTemp()GetDib()访问CPU内存BISTMemorythrottling相关下图是PECI3.0支持的命令列表:表格4PECI3.0支持的命令列表PECI3.0CommandNameSupportedPing-Legac/YesCheckforpresenceolPECI-enabledclientinsockel軒盯ipfjiLe勺s

11、tGyYbshighCPUdi?lempdi*'旦!urpGetD1fLegacyYesGetintoonPECIrevision&.numbero1domainsRd1|YesReadaccess2certain(hd1曰IICore在UncoreM-SRsWrlAMSR()NONotsupportedanSandyBridge-ERprocessorsRdPCIConfigLocal()¥*£ReadCSRsinCPUpackageWrPClCongLbcalOYesWrit*GSRsinGPUpackageRdPCiConfig)YesReadCSRs

12、iindownstrejamPCIdeviceeWrPGICftnligOYetWriteCSRsindownilrearnPCIdevicesFtdFkgCanfigt|ra.ReadCPUpackagepower/IhermalmanagemenildalaWrPkgConfig()YesWriteCPUpackagep-owlherrnalmana-gementda:la这些命令中Ping(),GetTemp(和GetDIB()是最基本的命令。在系统启动时,PECI主控器通过Ping()命令对0x300x33四个地址进行试探,如果有响应返回则表明相应地址的从节点在位。这四个地址是通CPU

13、的管脚绑定由电路设计人员设置的。知道哪些从节点在位以后,还需要知道各个从节点都支持哪些命令集,这时需要GetDIB()命令,DIB是DeviceInformationBytes的简写。该命令的响应是几个字节的数据,主要包括DeviceInfo和RevisionNumber两个字段:u123-qClientftddr-essMritcLanihQE1RflddL£ng4iOxUftCmdCodaFCS5479ByteDcfinihjaHDeviceInfoiJevlsnNumtKfReservedRflMrvedReservedIQn1ZRasarvcdH««arw

14、*£民口"r¥«dresFigure3GetDIB命令DeviceInfo字段的含义如下:Figure4DeviceInfo字段RevisionNumber字段包含MajorNumber和MinorNumber,MinorNumber不同,其支持的命令集也不同。具体如下:MinorRevis-ionFieldDescriptiarisRevIdkmField,MinorRevlviieriBht3=&SupiportedFeature0QPin射h口皿戾1GceeeidpODxlPlnioKJ,GEdDI:B<lrGeltcmpf),RdA

15、kgCnrUllaO.WrR<gCartflafPin®:bZDIBaFMPkgS刚口口网小RdA«5R)Dx3PlngHLGcdl:B<|rGcltcmpf),RdPkgOirtflgtWrFfcgCanTlg(jrRdPCIcanliqLDCilO,WrFCEEnnllgLDMi.:)"臥Pin酬:bGMDIBO.GeueniX),RdPhflCoMHK).曲肿£啦人ndCkotMiLIO.沖r血:I!|:屮网3二即,TCI価g灯Dk5PlniLGc£l:B|rGcltcmpf),RdPkgCartf1gQrWri=fcg匚口血

16、也RjdracOffflBLwdiQ,WrPCIn>nngL«cal(),FUFCJCOnflyC,WrPClCcnf|gjPi巾啊hGMDIBa侥血册HhRdPkaCoMHjC),叫5网小RdCAMSRf),PjdPCIcnrrfqLncalO,WrF匚EDntiLDCI*:),FkPCIQirtfigg,WrPaCcnTIgf|,WrtAMSBgDeviceRevisionNumberByte?irEMajorRevision#MinorRevision#Figure5RevisionNumber字段其他命令在文档PlatformEnvironmentControlInterface(PECI)3.0forIvyBridgeProcessOr中有详细讲解。PlHtformiEnvironiimentControlInterface(PECI)3.0forIvyBridgePr&ceMor厲诃PlJTmlmVCmridMinli-iBl3.2 PECIProxy现代服务器系统中,BMC通常不直接使用PECI接口,而是通过南桥上的ManagementEn

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论