欢迎访问ic37.com |
会员登录 免费注册
发布采购

ADT7463 DBCool控制器是一个完整的系统监视器和多个PWM风扇控制器

日期:2019-11-2标签: (来源:互联网)

功能特色

监控多达5个电源电压;控制和监控多达4个风扇转速;1个片上和2个远程温度传感器;监控多达6个处理器视频位;动态tmin控制模式智能优化系统声学;自动风扇速度控制模式根据测量的温度控制系统冷却;增强的声学模式显著降低了用户对风扇转速变化的感知;通过热输出的热保护功能;监视英特尔奔腾4对性能的影响;通过热输入的处理器热控制电路;2线和3线风扇转速测量;所有监测值的极限比较;符合SMBus 2.0电气规范(完全符合SMBus 1.1)。

应用

低噪声pcs;网络和电信设备。

一般说明

ADT7463 DBCool控制器是一个完整的系统监视器和多个PWM风扇控制器,适用于需要主动系统冷却的噪声敏感应用。它可以监控12V、5V和2.5V的CPU电源电压,外加自己的电源电压它可以监测多达两个遥感器二极管的温度,外加自己的内部温度。它可以测量和控制多达四个风扇的速度,使它们以尽可能低的速度运行,以获得最小的噪音。自动风扇转速控制回路在给定温度下优化风扇转速。独特的动态tmin控制模式使系统的热学/声学得到智能管理。系统热解决方案的有效性可以通过热输入进行监测。ADT7463还使用双向热管脚作为输出为系统提供关键热保护,以防止系统或组件过热。

功能描述一般描述

ADT7463是一个完整的系统监视器和多风扇控制器,适用于任何需要监视和冷却的系统。设备通过串行系统管理总线与系统通信。串行总线控制器具有用于设备选择的可选地址线(引脚14)、用于读取和写入地址和数据的串行数据线(引脚1)和用于串行时钟的输入线(引脚2)。ADT7463的所有控制和编程功能都通过串行总线执行。此外,可以将其中两个管脚重新配置为SMBALERT输出,以指示超出限制条件。

测量输入

该装置有六个测量输入,四个用于电压,两个用于温度。它还可以测量自己的电源电压,并可以用它的芯片温度传感器测量环境温度。

引脚20至23是带片上衰减器的模拟输入,分别配置为监测5 V、12 V、2.5 V和处理器核心电压(2.25 V输入)。

电源通过引脚4提供给芯片,系统也通过该引脚监测VCC。在pcs中,该引脚通常连接到3.3v备用电源。但是,该引脚可以连接到5 V电源,并在不改变过大范围的情况下对其进行监控。

远程温度感测由d1和d2输入提供,二极管连接到d1和d2输入,外部温度感测晶体管(如2N3904或CPU热二极管)可以连接到d1和d2输入。

adc还接受来自监控系统环境温度的片上带隙温度传感器的输入。

顺序测量

当ADT7463监控序列启动时,它会依次循环测量模拟输入和温度传感器这些输入的测量值存储在值寄存器中这些可以通过串行总线读出,也可以与存储在极限寄存器中的编程极限进行比较。超出限制比较的结果存储在状态寄存器中,状态寄存器可以通过串行总线读取以标记超出限制条件。

处理器电压ID

五个数字输入端(VID0至VID5引脚5至8、19和21)读取处理器电压ID码并将其存储在VID寄存器中,管理系统可通过串行总线从该寄存器中读取。vid代码监控功能与vrm9.x和未来的vrm10解决方案都兼容。此外,可以生成SMBALERT来标记VID代码中的更改。

ADT7463地址选择

引脚13是双功能PWM3/地址启用引脚。如果在通电时引脚13被拉低,ADT7463读取引脚14(TACH4/地址选择/Therm引脚)的状态以确定ADT7463的从机地址。如果引脚13在通电时为高电平,则ADT7463默认为SMBus从机地址0x2e。

ADT7463的内部寄存器

下面简要介绍ADT7463的主要内部寄存器。

配置寄存器

配置寄存器提供ADT7463的控制和配置,包括备用引脚输出功能。

地址指针寄存器

此寄存器包含选择其他内部寄存器之一的地址。当写入ADT7463时,数据的第一个字节总是一个寄存器地址,它被写入地址指针寄存器。

状态暂存器

这些寄存器提供每个极限比较的状态,并用于在温度、电压或风扇转速通道上发出超出极限条件的信号。如果管脚10或管脚22被配置为smbalert,则每当设置状态位时,此管脚将断言为低。

中断屏蔽寄存器

当引脚10或引脚22被配置为SMBALERT输出时,这些寄存器允许屏蔽每个中断状态事件。

视频寄存器

处理器的vid0到vid5管脚的状态可以从这个寄存器中读取。vid代码更改还可以生成smbalert中断。

值和极限寄存器

模拟电压输入、温度和风扇转速测量的结果及其极限值存储在这些寄存器中。

偏移寄存器

这些寄存器允许每个温度通道读数被写入这些寄存器的两个补码值所偏移。

tmin寄存器

这些寄存器在自动风扇转速控制下对每个风扇的起动温度进行编程。

传输寄存器

这些寄存器在自动风扇转速控制模式下为每个PWM输出编程温度到风扇转速控制斜率。

操作点寄存器

这些寄存器定义在动态tmin控制下运行时每个热区的目标工作温度。此功能允许冷却解决方案根据测量的温度和系统性能进行动态调整。

增强声学寄存器

这些寄存器允许调整每个PWM输出控制风扇,以增强系统的声学效果。

典型性能特征——ADT7463

建议实施

如图2所示配置ADT7463允许系统设计器具有以下功能:

(1)、六个VID输入(VID0到VID5),用于VRM1支持。

(2)、两个脉宽调制输出,用于最多三个风扇的风扇控制(前后底盘风扇并联连接)。

(3)、三个转速表风扇转速测量输入。

(4)、VCC通过引脚4进行内部测量。

(5)、CPU核心电压测量(VCore)。

(6)、2.5V测量输入,用于监测CPU电流(连接至ADP316x VRM控制器的VCOMP输出)这用于确定CPU功耗。

(7)、5 V测量输入。

(8)、VRM温度使用本地温度传感器。

(9)、使用远程1温度通道测量CPU温度。

(10)、通过远程2温度通道测量的环境温度。

(11)、如果不使用VID5,此引脚可重新配置为12 V监控输入。

(12)、双向热插脚。允许英特尔奔腾4处理器监测,并可以作为过热输出。

(13)、smbalert系统中断输出。

串行总线接口

ADT7463的控制使用串行系统管理总线(SMBus)执行在主控制器的控制下,adt7463作为从设备连接到该总线。

ADT7463有一个7位串行总线地址。当设备在引脚13(PWM3/地址启用)高的情况下通电时,ADT7463的默认SMBus地址为0101110

0x2E。必须添加读/写位才能获取8位地址如果一个系统中使用了多个ADT7463,则每个ADT7463应通过在通电时将插脚13固定在低位,以进入地址选择模式。然后,管脚14的逻辑状态确定设备的smbus地址。这些管脚的逻辑在通电时采样。

当串行总线地址字节与所选从机地址匹配时,在第一个有效的SMBus事务(更准确地说是在第8个SCL脉冲开始时的从低到高转换)上对设备地址进行采样和锁存使用地址启用/地址选择管脚选择所选的从机地址在此之后,地址中的任何尝试更改都将无效。

对smbus从机地址进行硬接线更改的能力允许用户避免与共享同一串行总线的其他设备发生冲突,例如,如果系统中使用了多个adt7463。

串行总线协议的操作如下:

1、主机通过建立启动条件来启动数据传输,该启动条件定义为串行数据线sda上的从高到低转换,而串行时钟线scl保持高。这表示地址/数据流将跟随。连接到串行总线的所有从机外围设备响应启动条件并在接下来的8位中移位,包括7位地址(首先是msb)加上r/w位,r/w位决定数据传输的方向,即数据将被写入还是从机设备读取。

没有连接

其地址对应于所发送地址的外围设备通过在第九时钟脉冲(称为确认位)之前的低周期中将数据线拉低来响应。总线上的所有其他设备现在都处于空闲状态,而选定的设备则等待从中读取或写入数据。如果r/w位为0,则主设备写入从设备。如果r/w位是1,则主设备从从设备读取。

2、数据通过串行总线以9个时钟脉冲、8位数据和从设备的一个确认位的顺序发送。数据线上的跃迁必须发生在时钟信号的低周期内,并且在高周期内保持稳定,因为时钟高时的低到高跃迁可以解释为停止信号。单次读写操作中可通过串行总线传输的数据字节数仅受主设备和从设备所能处理的内容的限制。

3、当读取或写入所有数据字节时,将建立停止条件。在写入模式下,主机在第十个时钟脉冲期间将数据线拉高以断言停止条件。在读取模式下,主设备通过在第九时钟脉冲之前的低周期中将数据线拉高来覆盖确认位。这就是所谓的不承认。然后,主机在第10个时钟脉冲之前的低时段将数据线取低,然后在第10个时钟脉冲期间取高,以断言停止条件。

在一次操作中,可以通过串行总线传输任意数量的数据,但不可能在一次操作中混合读取和写入,因为操作类型是在开始时确定的,并且在不启动新操作的情况下无法随后更改。

在adt7463的情况下,写操作包含一个或两个字节,读操作包含一个字节并执行以下功能。

要将数据写入其中一个设备数据寄存器或从中读取数据,必须设置地址指针寄存器,以便对正确的数据寄存器进行寻址,然后才能将数据写入或从中读取。写操作的第一个字节总是包含存储在地址指针寄存器中的地址。如果要将数据写入设备,则写入操作包含写入地址指针寄存器所选寄存器的第二个数据字节。

如图7所示。设备地址通过总线发送,然后R/W设置为0。后面跟着两个数据字节。第一个数据字节是要写入的内部数据寄存器的地址,它存储在地址指针寄存器中第二个数据字节是要写入内部数据寄存器的数据。

从寄存器读取数据时,有两种可能:

1、如果ADT7463的地址指针寄存器值未知或不是所需的值,则首先需要将其设置为正确的值,然后才能从所需的数据寄存器读取数据。这是通过像以前一样对ADT7463执行写操作来完成的,但是,只发送数据字节,并且它包含寄存器地址。如图8所示。

然后执行读取操作,包括串行总线地址,r/w位设置为1,然后从数据寄存器读取数据字节。如图9所示。

2、如果地址指针寄存器已经在所需的地址,则可以从相应的数据寄存器读取数据,而无需首先写入地址指针寄存器,因此可以省略图8。

笔记

1、如果地址指针寄存器的值已经正确,则可以在不首先写入地址指针寄存器的情况下从数据寄存器读取数据字节。然而,不向地址指针寄存器写入数据是不可能的,因为写入的第一个数据字节总是写入地址指针寄存器。

2、在图7到9中,串行总线地址显示为默认值01011(a1)(a0),其中a1和a0由先前定义的地址选择模式功能设置。

3、除了支持发送字节和接收字节协议外,ADT7463还支持读取字节协议(请参阅系统管理总线规范修订版)。2.0了解更多信息)。

4、如果需要执行多个读或写操作,主机可以发送一个重复开始条件而不是停止条件来开始新操作。

ADT7463写入操作

smbus规范为不同类型的读写操作定义了几个协议。下面讨论ADT7463中使用的那些。图表中使用了以下缩写:s–start

P–停止;R–读取;W—写入;A–确认;A–不确认;ADT7463使用以下SMBus写入协议。

发送字节

在此操作中,主设备按如下方式向从设备发送单个命令字节:

1、主设备在sda上断言启动条件。

2、主机发送7位从机地址,然后是写入位(低)。

3、寻址从设备在sda上断言ack。

4、主机发送命令代码。

5、奴隶在sda上断言ack。

6、主服务器在sda上声明一个停止条件,事务结束。

对于ADT7463,发送字节协议用于将寄存器地址写入RAM,以便从同一地址读取后续的单字节。如图10所示。

如果需要在设置地址后立即从寄存器中读取数据,主机可以在最终ack之后立即断言重复启动条件,并在不断言中间停止条件的情况下执行单字节读取。

写入字节

在该操作中,主设备向从设备发送一个命令字节和一个数据字节,如下所示:

1主设备在sda上断言启动条件。

2、主机发送7位从机地址,然后是写入位(低)。

3、寻址从设备在sda上断言ack。

4、主机发送命令代码。

5、奴隶在sda上断言ack。

6、主机发送一个数据字节。

7、奴隶在sda上断言ack。

8、主机在sda上声明停止条件以结束传输。如图11所示。

ADT7463读取操作

ADT7463使用以下SMBus读取协议。

接收字节

这在重复读取单个寄存器时很有用。注册地址需要预先设置。在该操作中,主设备从从设备接收单个字节,如下所示:

1、主设备在sda上断言启动条件。

2、主机发送7位从机地址,后跟读取位(高)。

3、寻址从设备在sda上断言ack。

4、主机接收一个数据字节。

5、船长在sda上没有确认。

6主服务器在sda上声明一个停止条件,事务结束。

在adt7463中,接收字节协议用于从寄存器中读取单个字节的数据,该寄存器的地址先前由发送字节或写入字节操作设置。

警报响应地址

报警响应地址(ARA)是SMBus设备的一个特点,它允许中断设备在多个设备存在于同一总线上时向主机识别它自己。

smbalert输出可以用作中断输出,也可以用作smbalert。一个或多个输出可以连接到连接到主服务器的公用smbalert线路。如果设备的smbalert行变低,则会发生以下过程:

1、SMBALERT被拉低。

2、主机启动读取操作并发送警报响应地址(ARA=0001 100)这是一个不能用作特定设备地址的常规呼叫地址。

3、SMBALERT输出低的设备响应警报响应地址,主机读取其设备地址设备的地址现在是已知的,可以用通常的方式进行查询。

4、如果多个设备的smbalert输出较低,则具有最低设备地址的设备将具有与正常smbus仲裁一致的优先级。

5、一旦ADT7463对警报响应地址作出响应,主机必须读取状态寄存器,并且仅当错误条件消失时才会清除SMBAlert。

SMBus超时

ADT7463包括SMBus超时功能。如果35 ms内没有smbus活动,则adt7463假设总线已锁定并释放总线。这可防止设备锁定或保持SMBus所需的数据某些SMBus控制器无法处理SMBus超时功能,因此可以禁用它。

配置寄存器1–寄存器0x40

<6>TODIS=0;启用SMBus超时(默认)

<6>TODIS=1;SMBus超时已禁用

2–修订版C ADT7463有四个外部电压测量通道它还可以测量自己的电源电压,VCC。电压测量输入

引脚20至23专用于测量5 V、12 V和2.5 V电源以及处理器核心电压VCCP(0 V至3 V输入)VCC电源电压测量通过VCC引脚(引脚4)进行。设置配置寄存器1的位7(寄存器0x40)允许5 V电源为ADT7463供电,并且在不改变VCC测量通道的范围的情况下进行测量。2.5V输入可用于监控计算机系统中芯片组的电源电压。

模数转换器

所有模拟输入被多路复用到片上,逐次逼近,ADC。它的分辨率是10位。基本输入范围为0 V至2.25 V,但输入具有内置衰减器,允许测量2.5 V、3.3 V、5 V、12 V和处理器核心电压VCCP,无需任何外部组件。为了允许这些电源电压的公差,ADC为标称输入电压产生3/4满标度(十进制768或300十六进制)的输出,因此有足够的空间来应对过电压。

输入电路

模拟输入的内部结构如图13所示。每个输入电路由一个输入保护二极管、一个衰减器和一个电容组成,形成一阶低通滤波器,使输入抗高频噪声。

电压测量寄存器

规则:0x20 2.5 V读数=0x00默认值

规则:0x21 VCCP读取=0x00默认值

规则:0x22 VCC读取=0x00默认值

规则:0x23 5 V读数=0x00默认值

规则:0x24 12 V读数=0x00默认值

电压测量极限寄存器

与每个电压测量通道相关的是高限和低限寄存器。超过编程的上限或下限会设置相应的状态位超过任一限制也会生成smbalert中断。规则。0x44 2.5 V下限=0x00默认值

规则:0x45 2.5 V上限=0xFF默认值

规则:0x46 VCCP下限=0x00默认值

规则:0x47 VCCP上限=0xFF默认值

规则:0x48 VCC下限=0x00默认值

规则:0x49 VCC上限=0xFF默认注册表。0x4A 5 V下限=0x00默认值

规则:0x4B 5 V上限=0xFF默认值

规则:0x4C 12 V下限=0x00默认值

规则:0x4D 12 V上限=0xFF默认值

当ADC运行时,它以711微秒采样并转换电压输入,平均16次转换以降低噪声;对每个输入进行测量通常需要11.38ms。

视频编码监控

ADT7463有五个专用的电压ID(视频代码)输入。

这些是数字输入,可以通过视频寄存器(REG.0x43)以确定系统中所需/正在使用的处理器电压。五个视频代码输入支持VRM9.x解决方案。此外,pin 21(12v输入)可以重新配置为第六个vid输入,以满足未来vrm的要求。

视频编码寄存器-寄存器0x43

<0>=视频(反映引脚5的逻辑状态)

<1>=视频1(反映引脚6的逻辑状态)

<2>=视频2(反映引脚7的逻辑状态)

<3>=视频3(反映引脚8的逻辑状态)

<4>=视频4(反映引脚19的逻辑状态)

<5>=视频5(可重新配置的12 V输入)当引脚21被配置为12 V输入时,该位读取0当管脚配置为VID5时,该位反映管脚21的逻辑状态。

视频编码输入阈值电压

VID码输入的切换阈值大约为1v.为了实现未来的兼容性,可以将vid码输入阈值降低到vid寄存器(REG)的0.6v.位6(thld)。0x43)控制视频输入阈值电压。

视频编码寄存器-寄存器0x43

<6>thld=0;vid开关阈值=1v,vol<0.8v,vih>1.7v,vmax=3.3v thld=1;vid开关阈值=0.6v,容积<0.4 V,VIH>0.8 V,Vmax=3.3 V。

将引脚21(+12V/VID5)重新配置为VID5输入

针21可以被重新配置为vrm10兼容系统的第六个vid码输入(vid5)。由于引脚配置为VID5,因此无法再监视12 V电源。

视频寄存器(REG.0x43)确定引脚21的功能。系统或bios软件可以读取位7的状态,以确定系统是设计为监视12v还是监视第六个vid输入。

视频编码寄存器-寄存器0x43

<7>vidsel=0;引脚21用作12 V测量输入软件可以读取这个位来确定有五个视频输入被监控。寄存器0x43(VID5)的第5位总是读回0。状态寄存器2的位0(寄存器0x42)反映了12 V的超限测量。

VIDSEL = 1;引脚21用作第六个视频代码输入(VID5)。软件可以读取这个位来确定有六个视频输入被监控。寄存器0x43的位5反映了引脚21的逻辑状态状态寄存器2的位0(寄存器0x42)反映视频代码更改。

视频编码变化检测功能

adt7463具有vid码变化检测功能。当管脚21被配置为vid5输入时,adt7463可以检测并报告vid码的变化。状态寄存器2的位0(寄存器0x42)是12V/VC位,表示设置时的VID更改。当vid输入上的逻辑状态不同于之前的11微秒时,设置vid码改变位。VID代码的更改可用于生成SMBAlert中断。如果不需要SMBALERT中断,则中断掩码寄存器2(Reg)的位00x75),当设置时,防止在视频代码更改时发生smbalerts。

状态寄存器2——寄存器0x42<0>12V/VC=0;如果引脚21被配置为vid5,则逻辑0表示在过去11微秒内vid码没有变化。

<0>12V/Vc=1;如果引脚21被配置为VID5,则逻辑1表示在过去11微秒内VID代码输入发生了变化。如果启用此功能,则生成smbalert。

附加ADC功能

一些其他功能可供用户使用,为系统设计者提供更大的灵活性,包括:

关闭平均值

对于从值寄存器中读取的每个电压测量值,实际上已经在内部读取了16个读数,并且在将结果放入值寄存器之前将其平均可能有一个您希望加快转换速度的实例。设置配置寄存器2的位4(寄存器0x73)关闭平均值这有效地使读取速度提高了16倍(711微秒),但读取可能更嘈杂。

旁路电压输入衰减器

配置寄存器2(Reg 0x73)的设置位5从2.5 V、VCCP、VCC、5 V和12 V输入中删除衰减电路这允许用户直接连接外部传感器或为其他应用重新缩放模拟电压测量输入。不带衰减器的ADC的输入范围为0v到2.25v。

单通道adc转换

设置配置寄存器2的位6(寄存器0x73)将ADT7463置于单通道ADC转换模式在此模式下,ADT7463只能读取单个电压通道。如果使用内部ADT7463时钟,则每711微秒读取所选输入。通过写入TACH1最小高字节寄存器(0x55)的位<7:5>来选择适当的ADC通道。

温度测量系统局部温度测量

ADT7463包含一个片上带隙温度传感器,其输出由片上10位ADC数字化。8位MSB温度数据存储在本地温度寄存器(地址26h)中由于可以测量正负温度,温度数据以两种补码格式存储,如表三所示。理论上,温度传感器和ADC可以测量-128C到+127C的温度,分辨率为0.25C。但是,这超出了设备的工作温度范围,所以不可能在这个范围之外进行局部温度测量。

远程温度测量

ADT7463可以测量连接到引脚15和16、或17和18的两个远程二极管传感器或二极管连接晶体管的温度。

在恒定电流下工作的二极管或二极管连接晶体管的正向电压显示出大约-2 mV/C的负温度系数。不幸的是,VBE的绝对值因设备而异,需要单独校准才能将其消除,因此该技术不适合大规模生产ADT7463中使用的技术是测量在两种不同电流下操作设备时VBE的变化这是由:

哪里:K是玻尔兹曼常数。Q是载体上的电荷。T型是绝对温度,单位为Kelvins。n个是两个电流的比率。

图14显示了用于测量远程温度传感器输出的输入信号调节。此图显示了作为衬底晶体管的外部传感器,用于在某些微处理器上监测温度。它同样可以是一个分立晶体管,如2N3904。

如果使用分立晶体管,集电极将不接地,并应连接到基座如果使用PNP晶体管,基极连接到D-输入,发射极连接到D+输入。如果使用NPN晶体管,发射器连接到D-输入,底座连接到D+输入图15a和15b显示了如何将adt7463连接到npn或pnp晶体管以进行温度测量。为防止接地噪声干扰测量,传感器的更负端子不参考接地,而是通过D-输入处的内部二极管偏置在地上。

为了测量∏vbe,传感器在I和N I的工作电流之间切换。产生的波形通过65 kHz的低通滤波器去除噪声,并传输到斩波器稳定放大器,该放大器执行波形放大和校正功能,以产生与∏vbe成比例的直流电压。该电压由ADC测量,以10位2秒补码格式输出温度。为了进一步降低噪声的影响,通过平均16个测量周期的结果来执行数字滤波。远程温度测量通常需要25.5毫秒。远程温度测量的结果以10位、2秒补码格式存储。温度测量的额外分辨率保存在扩展分辨率寄存器2(REG)中。0x77)。这给出了分辨率为0.25摄氏度的温度读数。

消除温度误差

随着CPU的运行速度越来越快,当在系统板上路由D+,D-跟踪时,避免高频时钟变得越来越困难。即使遵循了推荐的布局指南,也可能存在由于噪声耦合到D+/D-线上而导致的温度误差高频噪声通常会产生温度测量值过高的影响。ADT7463在地址0x70、0x72处具有用于远程1和远程2温度通道的温度偏移寄存器。通过对系统进行一次性校准,可以确定由系统板噪声引起的偏移量,并使用偏移寄存器将其调零。偏移寄存器自动向每个温度测量值添加两个8位读数。LSB在温度读数上增加0.25°C的偏移量,因此8位寄存器有效地允许高达32C的温度偏移,分辨率为0.25C。这确保了温度测量寄存器中的读数尽可能精确。

温度偏移寄存器

规则:0x70远程1温度偏移=0x00(默认为0°C)

规则:0x71本地温度偏移=0x00(默认为0°C)

规则:0x72远程2温度偏移=0x00(默认为0°C)

温度测量寄存器

规则:0x25远程1温度=0x80默认注册表0x26本地温度=0x80默认值

规则:0x27远程2温度=0x80默认值

规则:0x77扩展分辨率2=0x00默认值

<7:6>TDM2=远程2温度LSB<5:4>LTMP=本地温度LSB

<3:2>TDM1=远程1温度LSB

温度测量极限寄存器与每个温度测量通道相关的是高限和低限寄存器超过编程的上限或下限会设置相应的状态位超过任一限制也会生成smbalert中断。

规则:0x4E远程1温度下限=0x81默认值

规则:0x4F远程1温度上限=0x7F默认值

规则:0x50本地温度下限=0x81默认值

规则:0x51本地温度上限=0x7F默认值

规则:0x52远程2温度下限=0x81默认值

规则:0x53远程2温度上限=0x7F默认值

从ADT7463读取温度

需要注意的是,温度可以从ADT7463读取为8位值(分辨率为1°C)或10位值(分辨率为0.25°C)如果只需要1°C的分辨率,温度读数可以在任何时间以任何特定顺序读取。

如果需要10位测量,则每次测量需要读取一个2寄存器。扩展分辨率寄存器(REG.0x77)应先读取。这将导致所有温度读数寄存器冻结,直到从中读取所有温度读数寄存器为止。这将防止在读取msb的2个lsb时更新msb读取,反之亦然。

附加ADC功能

在ADT763上有许多其他功能可供系统设计者增加灵活性。

关闭平均值

对于从值寄存器中读取的每个温度测量值,实际上已经在内部读取了16个读数,并且在将结果放入值寄存器之前将其平均。有时可能需要快速测量,例如CPU温度设置配置寄存器2的位4(寄存器0x73)关闭平均值。每13毫秒读取一次读数。测量本身需要4毫秒。

单通道adc转换

设置配置寄存器2的位6(寄存器0x73)将ADT7463置于单通道ADC转换模式。在此模式下,ADT7463只能读取单个温度通道如果使用内部ADT7463时钟,则每1.4毫秒读取一次所选输入。通过写入TACH1最小高字节寄存器(0x55)的位<7:5>来选择适当的ADC通道。

超温事件

任何温度通道上的超温事件都可以在自动风扇转速控制模式下自动检测和处理。寄存器0x6a到0x6c是热限制。当温度超过其热极限时,所有风扇都以100%的占空比运行。风扇保持100%运行,直到温度降到热滞后(这可以通过在配置寄存器3,位2,寄存器0x78中设置boost位来禁用)。该热限值的滞后值是编程到寄存器0x6d、0x6e(滞后寄存器)中的值。默认滞后值为4°C。

极限、状态寄存器和中断极限值

与ADT7463上的每个测量通道相关的是高限和低限。这些可以构成系统状态监视的基础:可以为任何超出限制的情况设置状态位,并通过轮询设备进行检测。或者,可以生成smbalert中断来将处理器或微控制器标记为超出限制条件。

8位限制

以下是ADT7463上8位限制的列表。

电压限制寄存器

规则:0x44 2.5 V下限=0x00默认值

规则:0x45 2.5 V上限=0xFF默认值

规则:0x46 VCCP下限=0x00默认值

规则:0x47 VCCP上限=0xFF默认值

规则:0x48 VCC下限=0x00默认值

规则:0x49 VCC上限=0xFF默认注册表。0x4A 5 V下限=0x00默认寄存器0x4B 5 V上限=0xFF默认值

规则:0x4C 12 V下限=0x00默认值

规则:0x4D 12 V上限=0xFF默认值

温度限制寄存器

规则:0x4E远程1温度下限=0x81默认值

规则:0x4F远程1温度上限=0x7F默认值

规则:0x6A远程1热限制=0x64默认值

规则:0x50本地温度下限=0x81默认值

规则:0x51本地温度上限=0x7F默认值

规则:0x6B本地热限制=0x64默认值

规则:0x52远程2温度下限=0x81默认值

规则:0x53远程2温度上限=0x7F默认值

规则:0x6C远程2热限制=0x64默认值

热限寄存器

规则:0x7A热限制=0x00默认值

16位限制

风扇转速测量值为16位结果风扇转速限制也是16位,由高字节和低字节组成。由于在速度或失速状态下运行的风扇通常是唯一感兴趣的条件,风扇转速仅存在高的限制。由于实际测量的是风扇转速周期,超过此限值表示风扇转速缓慢或失速。

风扇限制寄存器

规则:0x54 TACH1最小低字节=0xFF默认值

规则:0x55 TACH1最小高字节=0xFF默认值

规则:0x56 TACH2最小低字节=0xFF默认值

规则:0x57 TACH2最小高字节=0xFF默认值

规则:0x58 TACH3最小低字节=0xFF默认值

规则:0x59 TACH3最小高字节=0xFF默认值

规则:0x5A TACH4最小低字节=0xFF默认值

规则:0x5B TACH4最小高字节=0xFF默认值

超出限制的比较

一旦对所有限值进行编程,ADT7463就可以启用进行监控ADT7463以循环方式测量所有参数,并为超出限制条件设置适当的状态位。根据测量值是否与上限或下限进行比较,进行比较的方式有所不同。

模拟监控周期时间

当1写入配置寄存器1(REG)的起始位(位0)时,模拟监视周期开始。0x40)。ADC依次测量每个模拟输入,每次测量完成后,结果自动存储在相应的值寄存器中。除非通过将配置寄存器1的0写入位0而禁用,否则此循环监视循环将继续。

由于adc通常以这种方式自由运行,因此监视所有模拟输入所用的时间通常不重要,因为任何输入的最新测量值可以随时读出。

对于监视周期时间很重要的应用程序,它很容易计算。

测量的通道总数为:

•四个专用电源电压输入

•3.3 VSTBY或5 V电源(VCC引脚)

•局部温度

•两个远程温度

如前所述,adc执行循环转换,每次电压测量需要11.38 ms,本地温度读数需要12 ms,远程温度读数需要25.5 ms。

因此,平均电压和温度监测的总监测周期时间名义上是:

风扇转速测量是并行进行的,与模拟测量不同步。

状态暂存器

极限比较的结果存储在状态寄存器1和2中。每个通道的状态寄存器位反映该通道上最后一次测量和限制比较的状态。如果测量值在限制范围内,则相应的状态寄存器位清除为0。如果测量超出限制,则相应的状态寄存器位设置为1。

可以通过串行总线读取状态寄存器来轮询各种测量通道的状态。在状态寄存器1(REG.0x41),1表示在状态寄存器2中标记了超出限制的事件。这意味着当设置了该位时,用户只需要读取状态寄存器2。或者,可以将引脚10或引脚22配置为SMBALERT输出这将自动通知系统主管超出限制的情况。只要引起中断的错误条件被清除,读取状态寄存器就会清除相应的状态位。状态寄存器位是“粘滞的”。每当设置一个状态位时,指示超出限制条件,即使导致它的事件消失(直到读取),它仍保持设置。清除状态位的唯一方法是在事件消失后读取状态寄存器。中断状态屏蔽寄存器(REG.0x74、0x75)允许屏蔽单个中断源,使其不会导致smbalert。但是,如果其中一个屏蔽中断源超出限制,其相关状态位将在中断状态寄存器中设置。

mbalert中断行为

可以轮询ADT7463的状态,也可以为超出限制的条件生成SMBAlert中断。在编写中断处理程序软件时,必须注意smbalert输出和状态位的行为。

图23显示smbalert输出和“粘性”状态位的行为。一旦超过限制,相应的状态位就被设置为1状态位保持设置,直到错误条件消失并读取状态寄存器。状态位称为粘滞位,因为它们在被软件读取之前一直保持设置状态。这可确保如果软件定期轮询设备,则不会错过超出限制的事件。请注意,smbalert输出在读取超出限制的整个持续时间内保持低水平,直到读取状态寄存器为止。这对软件如何处理中断有影响。

处理smbalert中断

为了防止系统被中断服务所束缚,建议按如下方式处理SMBALERT中断:

1、检测smbalert断言。

2、输入中断处理程序。

3、读取状态寄存器以识别中断源。

4、通过在中断屏蔽寄存器(REG)中设置适当的掩码来屏蔽中断源。0x74、0x75)。

5、对给定的中断源采取适当的操作。

6、退出中断汉德勒。

7、定期轮询状态寄存器。如果中断状态位已清除,则将相应的中断掩码位重置为0。这将导致smbalert输出和状态位的行为如图24所示。

热量作为输入

当配置为输入时,用户可以在therm pin上计时断言。这对于连接到cpu的prochot输出以测量系统性能非常有用。

用户也可以设置ADT7463,这样当热管脚外部驱动低时,风扇以100%的速度运行。风扇在热销被拉低期间以100%的速度运转。

这是通过将配置寄存器3(地址=0x78)中的boost位(位2)设置为1来完成的。仅当风扇已在运行(例如,当当前占空比高于0x00时处于手动模式)或当温度高于tmin时处于自动模式时,此功能才起作用。如果温度低于TMIN或手动模式下的占空比设置为0x00,则外部拉低热量没有影响有关更多信息,请参见图25。

热定时器

ADT7463有一个内部计时器来测量热断言时间例如,THERM输入可以连接到奔腾4 CPU的PROCHOT输出,并测量系统性能热输入也可以连接到触发点温度传感器的输出。

计时器在断言ADT7463的热输入时启动,在否定管脚时停止定时器累计计数therm次,即定时器继续计数下一个therm断言。Therm定时器继续累积Therm断言时间,直到定时器被读取(读取时清除)或达到满刻度。如果计数器达到满刻度,则在该读数处停止,直至清除。

8位热定时器寄存器(REG.0x79)的设计使第一个therm断言的位0设置为1。一旦累计热量断言时间超过45.52 ms,设置热量计时器的位1,位0现在成为计时器的lsb,分辨率为22.76 ms。

图26演示了THERM定时器如何作为热输入被断言和否定。在检测到的第一个therm断言上设置位0。该位保持设置,直到累计热断言超过45.52ms。此时,热定时器的位1被设置,位0被清除。

位0现在以22.76ms的分辨率反映计时器读数。

使用热量计时器时,请注意以下事项:

热定时器读取后(REG.0x79):

a)、计时器的内容在读取时被清除。

b)、需要清除状态寄存器2的F4P位(位5)(假设已超过热限制)。

如果在therm断言期间读取therm计时器,则将发生以下情况:

a)、计时器的内容被清除。

b)、热定时器的位0设置为1(因为正在发生热断言)。

c)、热定时器从零开始递增。

d)、如果热极限(Reg.0x7a)=0x00,然后设置f4p位。

从therm事件生成smbalert中断

ADT7463可以在超过可编程温度限制时生成SMB警报。这允许系统设计器在捕获较长的therm事件时忽略简短、不频繁的therm断言。寄存器0x7A是THERM限制寄存器。这个8位寄存器允许从0秒开始的限制(第一个therm断言)设置为5.825秒,然后生成smbalert。将热定时器值与热限制寄存器的内容进行比较如果热定时器值超过热限制值,则设置状态寄存器2的F4P位(位5),并生成SMBALERT注意,掩码寄存器2(REG)的F4P位(位5)。0x75)如果该位设置为1,则屏蔽SMBALERTs,尽管如果超过热限制,中断状态寄存器2的F4P位仍会被设置。

图27是热量定时器、限值和相关电路的功能框图。将0x00值写入热限制寄存器(Reg0x7A)导致在第一个THERM断言上生成SMBALERT一旦累计热断言超过45.52 ms,热限制值0x01将生成smbalert。

配置所需的热行为

1、将所需的管脚配置为热输入。配置寄存器3(REG.0x78)启用热监测功能。默认情况下,这在引脚14上启用。

配置寄存器4的设置位1(TH5V)

(注册号0x7d)启用引脚20上的热监测(还必须设置配置寄存器3的位1)。销14可用作转速计4。

2、为热事件选择所需的风扇行为。

配置寄存器3(Reg0x78)使所有风扇在THERM被断言时以100%工作循环运行这允许故障安全系统冷却。如果该位为0,风扇以其当前设置运行,不受热事件的影响。

3、选择therm事件是否应生成smbalert中断。

掩码寄存器2(寄存器0x75),设置时,在超过热限制值时屏蔽SMBALERTs如果需要基于therm事件的smbalerts,则应清除此位。

4、选择合适的热极限值。此值确定是在第一个therm断言上生成smbalert,还是仅在超过累积therm断言时间限制时生成smbalert。值0x00会导致在第一个therm断言上生成smbalert。

5个选择热监测时间。

这是操作系统或bios级软件检查therm定时器的频率。例如,bios可以每小时读取一次therm计时器,以确定累积的therm断言时间。例如,如果总热量断言时间在第1小时小于22.76 ms,在第2小时大于182.08 ms,在第3小时大于5.825 s,则这可能表明系统性能显著降低,因为热量断言更频繁地以每小时为基础。

或者,操作系统或bios级软件可以在系统开机时设置时间戳。如果由于超过热限制而生成smbalert,则可以采取另一个时间戳。时间差可以计算为一个固定的热极限时间。例如,如果超过2.914 s的热限值需要一周时间,而下一次只需要1小时,则表明系统性能严重下降。

将ADT7463热插脚配置为输出除了adt7463能够监视作为输入的therm之外,adt7463还可以选择驱动therm low作为输出。用户可以预先编程系统临界热极限。如果温度超过热限值0.25°C,则热断言为低。如果下一个监测周期的温度仍高于热限值,则therm保持低。在温度等于或低于热极限之前,热量保持在低位。由于该通道的温度仅在每个监测周期测量,一旦THERM断言,保证在至少一个监测周期内保持低温度。

如果远程1、本地或远程2温度热限值超过0.25°C,则热管脚可配置为断言低。热限值寄存器分别位于位置0x6a、0x6b和0x6c。寄存器0x5f、0x60和0x61的设置位3分别启用远程1、本地和远程2温度通道的热输出功能。图28显示了在临界超温情况下,THERM管脚如何作为输出低。

采用pwm控制的风扇驱动

ADT7463使用脉冲宽度调制(PWM)来控制风扇转速。这依赖于改变施加在风扇上的方波的占空比(或开/关比)来改变风扇转速。使用pwm控制驱动风扇所需的外部电路非常简单。只需要一个nmosfet驱动器设备。MOSFET的规格取决于被驱动的风扇所需的最大电流。典型的笔记本电脑风扇的额定电流为170毫安,因此SOT设备可用于需要考虑电路板空间的地方在台式机中,风扇通常可以吸引250毫安到300毫安。如果从一个PWM输出并行驱动多个风扇或驱动更大的服务器风扇,MOSFET需要处理更高的电流要求唯一的另一个规定是MOSFET应具有栅极电压驱动,VGS<3.3v,用于直接连接到PWM输出引脚只要栅极上的上拉与5v相连接,VGS可以大于3.3v。MOSFET还应具有低导通电阻,以确保在FET上没有明显的电压降这降低了施加在风扇上的电压,从而降低了风扇的最大运行速度。图29显示了如何使用脉宽调制控制驱动3线风扇。

图29使用10 kΩ上拉电阻器作为转速信号。这假设转速信号是来自风扇的开路集电极。在所有情况下,来自风扇的TACH信号必须保持在5 V以下,以防止损坏ADT763。如果对所用风扇是否具有开路集电极或图腾磁极转速表输出有疑问,请使用数据表风扇转速测量部分中所示的输入信号调节电路之一。

图30显示了使用npn晶体管(如通用mmbt2222)的风扇驱动电路。虽然这些器件价格低廉,但它们往往比mosfet具有更低的电流处理能力和更高的导通电阻。选择晶体管时,应注意确保它满足风扇的电流要求。

确保选择的基极电阻使晶体管在风扇通电时饱和。

从PWM3驱动两个风扇

注意,ADT7463有四个转速计输入可用于风扇转速测量,但只有三个PWM驱动输出。如果系统中使用第四个风扇,则应与第三个风扇并联,从PWM3输出驱动。图31显示了如何使用低成本NPN晶体管并行驱动两个风扇。

图32是使用ndt3055l mosfet的等效电路。注意,由于mosfet可以处理高达3.5a的电流,这只是一个将另一个风扇直接与第一个风扇并联的问题。

应当小心设计晶体管和FET的驱动电路,以确保PWM引脚不需要电流源,并且它们比数据表上指定的8毫安最大电流下沉。

从PWM2驱动最多三个风扇

风扇的转速测量与特定的脉宽调制通道同步,例如,转速1与PWM1同步。转速计3和转速计4都与PWM3同步,因此PWM3可以驱动2个风扇。或者,可以对PWM2进行编程,使转速计2、转速计3和转速计4与PWM2输出同步这允许PWM2驱动两个或三个风扇在这种情况下,驱动电路如图31和32所示寄存器0x62中的同步位启用此功能。

<4>(同步)增强声学REG 1(0x62)sync=1将TACH2、TACH3和TACH4同步到PWM2。

驱动2线风机

图33显示了2线风扇如何连接到ADT7463。此电路允许测量2线风扇的转速,即使风扇没有专用转速信号风扇电路中的串联电阻rsense将风扇换向脉冲转换为电压。这是通过0.01μf电容器交流耦合到ADT7463的。片上信号调节允许对风扇转速进行精确监控选择的RSENSE值取决于编程的输入阈值和风扇的电流对于风扇约200毫安,一个2磅的值是合适的,当阈值被编程为40毫伏。对于吸引更多电流的风扇,例如更大的桌面或服务器风扇,rsense可能会降低相同的编程阈值。编程设定的阈值越小越好,因为风扇上产生的电压越多,风扇旋转越快图34显示了转速计/AIN引脚的典型感应波形图。最重要的是电压尖峰(负向或正向)的振幅超过40毫伏。这样可以可靠地确定风扇转速。

布置2线和3线风机

图35显示了如何为2线和3线风扇布置公共电路。根据使用的是2线或3线风扇,某些组件不会填充。

转速计输入

插脚9、11、12和14是用于风扇转速测量的开漏转速表输入。

ADT7463中的信号调节可调节风扇转速表典型输出的缓慢上升和下降时间最大输入信号范围为0 V至5 V,即使VCC小于5 V。如果这些输入是从超过0 V到5 V的风扇输出提供的,则必须包括风扇信号或二极管箝位的电阻衰减,以将输入保持在可接受的范围内。

图36a至36d显示了最常见风扇转速计输出的电路。如果风扇转速表输出有到VCC的电阻上拉,它可以直接连接到风扇输入,如图36A所示。

如果风扇输出的电阻上拉至12V(或其他电压大于5V),则风扇输出可以用齐纳二极管夹紧,如图36b所示。应选择齐纳二极管电压,使其大于转速表输入的VIH但小于5V,允许电压公差齐纳的。3 V和5 V之间的值是合适的。

如果风扇有一个很强的上拉(小于1KΩ)到12V或一个复合输出,则可以添加一个串联电阻器来限制齐纳电流,如图36C所示。或者,可以使用电阻衰减器,如图36D所示。

右1和r2的选择应确保:

风扇输入对地的输入电阻名义上为160 kΩ,因此在计算电阻值时应考虑这一点。当上拉电压为12 V且上拉电阻小于1 kΩ时,R1和R2的合适值为100 kΩ和47 kΩ。这就产生了3.83伏的高输入电压。

风扇转速测量

风扇计数器不直接计算风扇转速表输出脉冲,因为风扇转速可能小于1000转/分,并且需要几秒钟来累积一个相当大且准确的计数。相反,风扇转速的周期是通过将一个90 kHz的片上振荡器选通到风扇转速输出的N个周期的16位计数器的输入来测量的(图37),因此累积的计数实际上与风扇转速周期成正比,与风扇转速成反比。

n,计数的脉冲数由寄存器0x7b(每转一个风扇脉冲寄存器)的设置确定。该寄存器包含每个风扇的两位,允许计算一个、两个(默认)、三个或四个转速脉冲。

风扇转速测量寄存器

风扇转速表读数为16位值,由从ADT7463读取的2字节组成。

规则:0x28 TACH1低字节=0x00默认值

规则:0x29 TACH1高字节=0x00默认值

规则:0x2A TACH2低字节=0x00默认值

规则:0x2B TACH2高字节=0x00默认寄存器0x2C TACH3低字节=0x00默认值

规则:0x2D TACH3高字节=0x00默认值

规则:。0x2E TACH4低字节=0x00默认值

规则:0x2F TACH4高字节=0x00默认值

从ADT7463读取风扇转速

如果正在测量风扇转速,则每次测量需要读取2个寄存器。应该先读取低字节这会导致高字节被冻结,直到高字节寄存器和低字节寄存器都被读取为止。这可防止转速计读数错误。

风扇转速表读数寄存器报告从第一个风扇转速表脉冲上升沿到第三个风扇转速表脉冲上升沿(假设每转两个脉冲正在计数)选通到风扇转速计数器的11.11微秒周期时钟(90 kHz振荡器)的数量。由于该设备基本上是测量风扇转速周期,因此计数值越高,风扇实际运行的速度越慢。16位风扇转速表读数0xFFFF表示风扇已失速或运行非常缓慢(<100转/分)。

由于正在测量实际风扇转速周期,超过风扇转速限制1将设置适当的状态位,并可用于生成smbalert。

风扇转速限制寄存器

风扇转速限制寄存器是由两个字节组成的16位值。

规则:0x54 TACH1最小低字节=0xFF默认值

规则:0x55 TACH1最小高字节=0xFF默认值

规则:0x56 TACH2最小低字节=0xFF默认值

规则:0x57 TACH2最小高字节=0xFF默认值

规则:0x58 TACH3最小低字节=0xFF默认值

规则:0x59 TACH3最小高字节=0xFF默认值

规则:0x5A TACH4最小低字节=0xFF默认值

规则:0x5B TACH4最小高字节=0xFF默认值

风扇转速测量率

风扇转速计读数通常每秒更新一次。配置寄存器3(REG.0x78),设置时,每250毫秒更新一次风扇转速计读数。

如果任何风扇不是由pwm信道驱动,而是由5v或12v直接供电,则应在配置寄存器3中设置其相关的dc位。这使得直接连接到直流电源的风扇可以连续读取转速计读数。

计算风扇转速

假设风扇有两个脉冲/旋转(测量两个脉冲/旋转),风扇速度通过风扇转速(转/分)=(90000 60)/风扇转速读数,其中风扇转速读数=16位风扇转速计读数。

例子:TACH1高字节(REG 0x29)=0x17 TACH1低字节(REG 0x28)=0xFF风扇1转速是多少转/分?

风扇1转速读数=0x17FF=6143十进制转速=(F 60)/风扇1转速读数转速=(90000 60)/6143风扇转速=879转/分

每转风扇脉冲数

不同型号的风扇每转可输出1、2、3或4个转速脉冲。一旦确定风扇转速脉冲的数量,它就被编程到风扇每转脉冲寄存器(Reg)中0x7b)对于每个风扇。或者,该寄存器可用于确定给定风扇输出的数量或脉冲/转速。通过绘制具有不同脉冲/转速设置的100%转速下的风扇转速测量值,波纹最小的最平滑图形确定正确的脉冲/转速值。

每转风扇脉冲寄存器

<1:0>风扇1默认值=每转2个脉冲。

<3:2>风扇2默认值=每转2个脉冲。

<5:4>风扇3默认值=每转2个脉冲。

<7:6>风扇4默认值=每转2个脉冲。

00 =每转1个脉冲。

01 =每转2个脉冲。

10 =每转3个脉冲。

11 =每转4个脉冲。

2线风扇转速测量

ADT7463能够测量2线风扇的速度,即没有转速计输出的风扇。为此,必须按照数据表的风扇驱动电路部分所示连接风扇。在这种情况下,转速计输入需要重新编程为模拟输入,AIN。

配置寄存器2(寄存器0x73号)

位3(AIN4)=1,引脚14被重新配置为使用外部感测电阻器和耦合电容器测量2线风扇的速度。

位2(AIN3)=1,针脚9重新配置为使用外部感测电阻器和耦合电容器测量2线风扇的速度。

位1(AIN2)=1,引脚12被重新配置为使用外部感测电阻器和耦合电容器测量2线风扇的速度。

位0(ain1)=1,引脚11被重新配置为使用外部感测电阻器和耦合电容器测量2线风扇的速度。

AIN开关阈值

在将转速表输入配置为用于2线测量的ain输入之后,用户可以选择ain信号的感测阈值。

配置寄存器4(寄存器0x7天)<3:2>空气这两位定义了2线风扇转速测量的输入阈值。

00=20毫伏

01=40毫伏

10=80毫伏

11=130毫伏

风扇旋转

ADT7463具有独特的风扇旋转功能。它以100%的脉宽调制占空比旋转风扇,直到在转速表输入端检测到两个转速表脉冲。一旦检测到两个脉冲,则脉宽调制占空比将达到预期的运行值,例如33%。其优点是风扇具有不同的旋转特性,需要不同的时间来克服惯性。ADT7463只是运行风扇足够快,以克服惯性和更安静的旋转起来比风扇编程旋转为给定的旋转时间。

风扇启动超时

为了防止风扇启动时产生假中断(因为它低于运行速度),ADT7463包括风扇启动超时功能。这是允许在自旋上升时检测到两个转速表脉冲的时间限制例如,如果选择了2秒风扇启动超时,并且在启动旋转后的2秒内没有出现转速表脉冲,则会检测到风扇故障并在中断状态寄存器中标记。

PWM1配置(注册0x5c)的<2:0>旋转这些位控制pwm1的启动超时。

000=无启动超时

001=100毫秒

010=250毫秒(默认)

011=400毫秒

100=667毫秒

101=1秒

110=2秒

111=4秒

PWM2配置(注册0x5d)的<2:0>旋转这些位控制pwm2的启动超时。

000=无启动超时

001=100毫秒

010=250毫秒(默认)

011=400毫秒

100=667毫秒

101=1秒

110=2秒

111=4秒

PWM3配置(注册0x5e)中<2:0>旋转这些位控制PWM3的启动超时。

000=无启动超时

001=100毫秒

010=250毫秒(默认)

011=400毫秒

100=667毫秒

101=1秒

110=2秒

111=4秒

禁用风扇启动超时

虽然风扇启动使风扇旋转比静态时间旋转更安静,但存在使用固定自旋上升时间的选项。位5(FSPDIS)=配置寄存器1(Reg0x40)禁用两个转速表脉冲的加速。相反,风扇在寄存器0x5C到0x5E中选择的固定时间内旋转。

脉宽调制逻辑状态

可将脉宽调制输出编程为高100%占空比(无反转)或低100%占空比(反转)。

PWM1配置(注册0x5C)的<4>投资0=100%脉冲宽度调制占空比逻辑高1=100%脉宽调制占空比逻辑低

PWM2配置(注册0x5D)的<4>投资0=100%脉冲宽度调制占空比逻辑高1=100%脉冲宽度调制占空比逻辑低

PWM3配置(注册0x5e)中<4>投资0=100%脉冲宽度调制占空比逻辑高1=100%脉宽调制占空比逻辑低

脉宽调制驱动频率

可根据应用情况调整脉宽调制驱动频率寄存器0x5f到0x61分别为pwm1到pwm3配置pwm频率。

PWM1频率寄存器(寄存器0x5f至0x61)<2:0>频率000=11.0赫兹

001=14.7赫兹

010=22.1赫兹

011=29.4赫兹

100 =35.3赫兹(默认)

101 =44.1赫兹

110 =58.8赫兹

111 =88.2赫兹

风扇转速控制

ADT7463可以使用两种不同的模式控制风扇转速。第一种是自动风扇转速控制模式。在这种模式下,一旦设置了初始参数,风扇转速将随温度自动变化,无需CPU干预。这样做的好处是在系统挂起的情况下,用户可以保证系统不会过热。自动风扇速度控制包含一个称为动态TMIN校准的功能此功能减少了编程自动风扇转速控制回路所需的设计工作量有关更多信息以及如何编程自动风扇转速控制回路和动态tmin校。

手动风扇速度控制

ADT7463允许手动调整任何PWM输出的占空比。如果用户希望在软件中更改风扇转速或为了测试目的调整脉宽调制占空比输出,则此功能非常有用。寄存器0x5c到0x5e的位<7:5>控制每个pwm输出的行为。

脉宽调制配置(注册0x5c至0x5e)<7:5>bhvr111=手动模式

一旦在手动控制下,可以通过写入寄存器0x30到0x32(PWMX当前占空比寄存器)来手动更新每个PWM输出。

对脉宽调制电流占空比寄存器进行编程pwm电流占空比寄存器是8位寄存器,允许以0.39%的步进将每个输出的pwm占空比设置为0%到100%。

编程到pwmmin寄存器的值由:十进制值()=普明0.39

例1:对于50%的脉宽调制占空比,值(十进制)=50/0.39=128十进制值=128十进制或0x80。例2:对于33%的脉宽调制占空比,数值(十进制)=33/0.39=85十进制值=85十进制或0x54。

脉宽调制占空比寄存器

规则:0x30 PWM1占空比=0xFF(100%默认)

规则:0x31 PWM2占空比=0xFF(100%默认值)

规则:0x32 PWM3占空比=0xFF(100%默认)

通过读取PWMx电流占空比寄存器,用户可以跟踪每个PWM输出上的电流占空比,即使风扇在自动风扇转速控制模式或声音增强模式下运行。

从3.3V备用电源运行

ADT7463是专门设计用于3.3V备用电源在支持S3和S5的计算机中在这些状态下,处理器的核心电压会降低。如果采用动态tmin模式,降低处理器的核心电压将改变cpu的温度,并在动态tmin控制下改变系统的动态特性。同样,当监视therm时,应该在这些状态下禁用therm定时器。

动态tmin控制寄存器1(寄存器0x36号)<1>VCCPlo=1,当电源由3.3 V STBY供电且VCCP电压降至VCCP下限以下时,会发生以下情况:

•设置状态寄存器1中的状态位1(VCCP)。

•如果启用,则生成SMBALERT。

•禁用热监测。热量计时器应在S3或S5状态之前保持其值。

•禁用动态tmin控制。这可以防止由于s3或s5状态而调整tmin。

•防止ADT7463进入关机状态。

一旦核心电压VCCP超过VCCP的下限,一切都将重新启用,系统将恢复正常运行。

注意,由于其他电压在低功率状态下可能下降或关闭,这些电压通道设置状态位或生成smbalerts。在使用中断屏蔽寄存器进入低功耗状态之前,仍有必要屏蔽这些通道。当退出低功耗状态时,可以清除掩码位。这可防止设备在低功耗状态下生成不需要的SMB警报。

异或树测试模式

ADT7463包括一个异或树测试模式。此模式对于板级测试的电路内测试设备非常有用。通过对XOR树中包含的管脚施加刺激,可以检测系统板上的开路或短路图39显示了在异或树测试模式下执行的信号。

开机默认

默认情况下,ADT7463在通电时不监视温度和风扇转速。通过将配置寄存器1中的起始位(位0,地址0×40)设置为1,可以监控温度和风扇转速。风扇通电后全速运转。这是因为pwmx配置寄存器中的bhvr位(位7:5)默认设置为100(风扇全速运行)。