感谢邀请. 该主题实际上不够深入,无法观察. 如果仔细观察,我们会发现一些有趣的风扇开启现象:
1. 如果它是一台带有BIOS选项的计算机,则在插入电源后即可开机. 一旦插入电源,风扇将全力旋转一段时间,这非常吵闹. 大约1秒钟,风扇速度将恢复到正常运行速度,并一直保持在该速度,直到风扇关闭或过热.
2. 如果计算机已插入电源并且无法打开. 插入电源后,风扇将全力旋转一段时间,这很吵. 在大约1秒钟内,风扇将停止旋转. 直到按下电源按钮.
3. 如果计算机已插入但已关闭. 按下电源按钮,风扇将立即以正常转速开始工作,直到关闭或过热.
笔记本和服务器也有类似现象. 通过仔细观察风扇速度的性能,您甚至可以预测某些计算机启动故障. 要了解这些现象背后的运行机制并解决为什么CPU在室温下开始旋转风扇的问题,我们必须从原理入手,不想知道的学生可以跳过下一节.
谁在控制CPU风扇?
BIOS不会控制风扇速度(尽管就容量而言是可能的),因为BIOS的主要生命周期是在启动之前,所以只剩下一些运行时和SMM程序,并且风扇速度控制为从打开它的那一刻到关闭它. 一些学生可能已经注意到,当插入某些主板并且未按下电源按钮时,CPU风扇旋转了几次,并且BIOS尚未开始运行. 那么控制风扇速度的幽灵是谁呢?笔记本系统中的是EC(小型16位芯片,类似于服务器中的BMC,它控制笔记本计算机的各个方面)和服务器中的BMC(将有机会专门讨论未来,现在我知道它是专门用于管理主板上部功能的芯片. (也具有自己的固件),台式机可能是EC,ME等.
我已经阅读了有关粉丝的文章:
老狼: CPU风扇如何工作?

我知道风扇的控制曾经非常简单,只有两个状态: 是否打开,该策略也非常简单,即在打开电源时打开,在关闭时停止,因此无需单独控制. 这样简单而粗鲁的策略显然将被卷入历史的垃圾场. 更好的策略是在温度较高时加快需要冷却的零件的速度,以使空气更快地带走热量. 如果温度较低,请降低速度以降低噪音. 要做到这两点,必须满足两个先决条件,即具有可控制速度和温度(例如CPU)读数的风扇.
四线智能风扇可实现精确的风扇控制:

通过四个连接,我们可以控制希望它旋转多少速度,我们还可以了解其当前速度: TACH(转速计)线用于报告风扇速度,而PWM线用于控制转速. 速度.
那么您如何知道温度?主板的温度可以有自己的传感器,但是您如何知道CPU的温度呢?对硬件和BIOS有一定了解的学生可能会立即回答: “通过MSR注册!”是的,CPU内的DTS(数字热传感器)会将CPU核心温度反映到MSR,并通过访问它来了解CPU内部温度,但这是一种带内访问方法,即程序在CPU可以了解此信息. 带外设备(OOB,带外)如何处理?您可以使用PECI(平台环境控制界面). 是的,您没看错,也没有写错,不是PCIE(尽管字母相同,但顺序不同). 它是单线总线,可用于读取CPU内部的信息. 以后我们将谈论它的故事. 现在,只要您知道,通过PECI,带外设备就可以检测到CPU内部DTS的温度信息.
好的,一切都准备好了,只欠东风. 现在需要一个中央控制机构,通过读取DTS信息,通过Smart Fan界面精确控制风扇速度. 在服务器字段中,该组织为BMC. 服务器机箱中有很多风扇,而CPU风扇只是其中一部分. 可能还有内存风扇,扩展槽风扇,磁盘阵列风扇和机箱风扇. 特别地,磁盘阵列风扇可以是一组风扇. 我调试过的8插槽服务器,启动后,风扇的噪音就像飞机起飞一样,您不能停留. 服务器机箱还具有独立的风道设计. 良好的风道可以准确地控制各个位置的风扇,以形成良好的风道,从而节省了一些风扇(例如记忆风扇),并让通过的风帮助加热巨大的内存. 散发热量. 这些区域可以形成多个热区:

根据ACPI Spec 5.0
协调这些温度感应区域非常复杂,并且BMC的FSC(风扇速度控制)子系统用于完成相应的任务.
对于笔记本电脑和某些台式计算机,EC控制风扇(有关EC的信息,请参阅本文: 老狼: 关上笔记本计算机的盖子会发生什么情况?其背后的机制是什么?). 笔记本相对简单,通常只有一个温度感应区域:

根据ACPI规范5.0
某些台式机没有EC,ME控制读取DTS来控制风扇速度.
好的,让我们现在总结一下. BMC,EC或ME等带外设备使用PECI读取CPU内核DTS的温度来控制CPU风扇;他们还通过其他方法读取其他温度传感器(例如磁盘). SMART信息,DIMM温度传感器信息等)来控制那里的风扇. 该策略是在温度较低时变慢,而在温度较高时变快,简单而有效. 由于它们是带外设备,因此不受CPU崩溃的影响,并且可以不受干扰地高效完成任务,这是可靠的散热保证.
为什么风扇在开机时会以全功率旋转?
主板对加电有严格的要求. 上电的必要条件必须按顺序进行. 只有满足一个条件后,您才能进入下一步. 如果其中一个链接失败,则整个开机过程将无法继续. 谁来控制和协调整个计时过程?不同的主板,芯片组和产品代有不同的解决方案. 过去,EC解决方案通常用在笔记本电脑中,SIO或自定义芯片用在许多台式计算机中,CPLD用在服务器中. 现在,许多电源序列控制已集成到PMC中.
PMC或CPLD的上电时间很短,但是ME固件需要一定的启动时间,BMC固件基于Linux,启动时间更长. 在ME和BMC风扇控制模块生效之前,为了简便和安全起见,PMC和CPLD将直接将PMW风扇设置为最大速度. 此时,风扇将非常嘈杂,服务器将像飞机起飞一样. 台式计算机的噪音也相对较大. 我不知道您是否玩游戏,CPU太热以及在降低频率之前已经听到风扇的声音. 这就是感觉.
为什么后风扇减速?
ME和BMC生效后,根据其风扇管理策略:
1. 如果已打开,风扇管理模块会将风扇速度调整为正常运行速度,并保持在此速度. 此时,风扇速度和噪音更合适.
2. 如果关闭,请关闭风扇.
为什么风扇不加速?
那么,正如受试者所问,为什么室温下的CPU使用正常速度而不是像连续可变速度那样缓慢地加速?实际上,除了启动电压的基本阈值外,以后的速度缓慢增加并没有技术问题,但是由于风扇控制模块的设计,这太麻烦了. 要了解这一点,您需要从ME和BMC的原理开始. 它们的固件本身是一个操作系统,而BMC基于Linux. 风扇管理模块只是众多模块之一. 模块设计采用中断模式,简单来说就是设置几个阈值,如下所示:

请注意,这是BIOS的,而ME / BMC并非如此,它仅显示阈值的概念
只需设置这些温度阈值,阈值突破将产生中断. 如果没有中断,则什么也不做. 如果发生中断,则将风扇向上或向下旋转至下一档. 程序设计非常简单.
如果没有打开电源,请等待温度达到危险值,然后再次打开. 此危险值通常需要风扇全力旋转. 噪音很大,但是用户体验很差. 相反,最好设置一个正常速度并继续. 某些BIOS可以设置静音选项,并且还有更多可调整的阈值. 这需要EC / ME的支持.
结论
知道加电和开机时有两件事:
老狼: 电源如何为主板供电,如何切断电源?

根据插件状态,风扇控制器在不同阶段有所不同:
1. ME / BMC / EC的风扇管理模块刚刚上电. 此时,PMC或CPLD只需设置最大速度即可.
2. 风扇管理模块正常运行后,将采用中断方式来管理风扇. 并在启动期间管理风扇.
理解这些,我们可以理解风扇速度的各种表达方式. 根据风扇的性能,如果机器无法启动,则可以大致区分问题是电源逻辑PMC / CPLD,ME还是BIOS.
欢迎关注本专栏,并使用微信扫描以下QR码,以加入微信官方帐户“ UEFIBlog”,其中包含最新文章.

使用微信扫描QR码以加入UEFIBlog官方帐户
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/ruanjian/article-311790-1.html