深入解析ADM1026:全面的系统硬件监控解决方案

电子说

1.4w人已加入

描述

深入解析ADM1026:全面的系统硬件监控解决方案

在电子工程师的日常工作中,系统硬件监控是确保设备稳定运行的关键环节。ADM1026作为一款功能强大的系统硬件监控芯片,为微处理器系统提供了全面的测量和监控功能。本文将深入探讨ADM1026的特性、功能、应用以及使用方法,希望能为电子工程师们在设计和开发过程中提供有价值的参考。

文件下载:ADM1026JST.pdf

一、ADM1026概述

ADM1026是一款专为微处理器系统设计的完整系统硬件监控芯片,它能够对系统中的各种参数进行测量和极限比较。该芯片具有多达19个模拟测量通道,包括内部测量通道,可对多种电源电压、温度等参数进行监测。同时,它还具备8个风扇速度测量通道和17个通用逻辑I/O引脚,为系统的控制和监测提供了丰富的接口。

二、主要特性

2.1 测量通道丰富

ADM1026拥有多达19个模拟测量通道,其中15个为模拟电压输入,可用于监测+3.3V、+5V、±12V电源以及处理器核心电压等。此外,还可通过测量自身的VCC和主系统电源来监测另外两个电源电压。另外,还有两个通道可用于远程温度传感二极管的测量,以及8个通用模拟输入通道,范围为0V至2.5V或0V至3V。

2.2 风扇控制与监测

芯片具备8个可配置为风扇速度测量或通用逻辑I/O的引脚,能够准确测量风扇速度,并通过PWM和模拟输出控制风扇转速,实现温度控制。

2.3 通信接口

通过2线串行系统管理总线(SMBus)进行通信,支持完整的SMBus 1.1协议,包括数据包错误检查(PEC),确保数据传输的准确性。

2.4 其他特性

芯片还具备内部温度传感器、8kB的片上EEPROM、底盘入侵检测、中断输出、复位输入和输出等功能,为系统的稳定运行提供了全面的保障。

三、功能详解

3.1 测量输入

ADM1026的模拟和数字测量输入具有高度的可编程性,其8位A/D转换器和17个模拟测量输入引脚可进行多种配置。部分引脚专门用于温度测量,部分引脚可配置为温度输入或通用模拟输入,还有部分引脚用于监测特定的电源电压。同时,ADC还可接收片上带隙温度传感器的输入,监测系统环境温度。

3.2 顺序测量

当启动监测序列时,ADM1026会按顺序对模拟输入和温度传感器进行测量,同时独立监测风扇速度输入。测量值存储在值寄存器中,可通过串行总线读取,并与存储在极限寄存器中的编程极限进行比较,比较结果存储在中断状态寄存器中。

3.3 底盘入侵检测

底盘入侵输入可检测设备的未经授权篡改事件,该事件会被锁存到电池备份寄存器位中,并在系统上电时产生中断。

3.4 复位功能

芯片具有两个上电复位输出(RESETMAIN和RESETSTBY),当3.3V MAIN或3.3V STBY低于复位阈值时,会产生180ms的复位脉冲。RESETMAIN还可作为低电平有效的复位输入。

3.5 风扇速度控制输出

ADM1026提供两个用于控制风扇速度的输出:一个是开漏脉冲宽度调制(PWM)输出,可编程占空比和75Hz的输出频率;另一个是连接到片上8位数模转换器的输出,输出范围为0V至2.5V。这两个输出可根据温度测量值实现温度控制风扇的功能。

四、内部寄存器

ADM1026的内部寄存器包括地址指针寄存器、配置寄存器、风扇除数寄存器、DAC/PWM控制寄存器、GPIO配置寄存器、值和极限寄存器、状态寄存器和掩码寄存器等。这些寄存器用于控制和配置芯片的各种操作参数,存储测量值和极限值,以及处理中断事件。

4.1 地址指针寄存器

用于选择其他内部寄存器的地址,写入ADM1026的第一个数据字节总是寄存器地址,并写入地址指针寄存器。

4.2 配置寄存器

提供各种操作参数的控制和配置,如监测循环的启动和停止、中断输出的启用和禁用、温度通道的配置等。

4.3 风扇除数寄存器

包含风扇速度测量的计数器预分频值,可根据风扇的不同速度和输出脉冲数进行调整。

4.4 DAC/PWM控制寄存器

包含PWM和DAC风扇驱动输出的速度值,用于控制风扇的转速。

4.5 GPIO配置寄存器

用于配置GPIO引脚的输入/输出和信号极性。

4.6 值和极限寄存器

存储模拟电压输入、温度和风扇速度的测量结果以及相应的极限值。

4.7 状态寄存器

存储各种中断源的事件,可用于判断系统是否出现异常。

4.8 掩码寄存器

允许对单个中断源进行掩码,屏蔽不需要的中断信号。

五、EEPROM

ADM1026拥有8kB的非易失性电可擦除可编程只读存储器(EEPROM),可用于永久存储数据,即使芯片掉电也不会丢失。EEPROM的操作需要注意一些事项,如写入前必须确保存储位置为空,写入速度较慢,且典型循环寿命为100,000次写入操作。

六、串行总线接口

ADM1026通过串行系统管理总线(SMBus)进行控制,作为从设备连接到总线上。芯片具有7位串行总线从地址,默认地址的5个最高有效位为01011,2个最低有效位由引脚15(ADD/NTESTOUT)的逻辑状态决定。SMBus协议定义了多种读写操作的协议,包括发送字节、写入字节/字、块写入、接收字节和块读取等。

6.1 发送字节

主设备向从设备发送单个命令字节,用于设置RAM地址,以便后续进行单字节读取、块读取或块写入操作。

6.2 写入字节/字

主设备向从设备发送命令字节和一个或两个数据字节,可用于写入RAM数据、设置EEPROM地址、擦除EEPROM页面或写入EEPROM数据。

6.3 块写入

主设备向从设备写入一块数据,写入EEPROM时需要设置EEPROM寄存器3的相应位。

6.4 接收字节

主设备从从设备接收单个字节数据,读取EEPROM时需要设置EEPROM寄存器3的相应位。

6.5 块读取

主设备从从设备读取一块数据,读取EEPROM时同样需要设置EEPROM寄存器3的相应位。

七、温度测量系统

7.1 本地温度测量

ADM1026内部包含一个带隙温度传感器,其输出由片上ADC进行数字化处理,温度数据以二进制补码格式存储在本地温度值寄存器中。理论上,温度传感器和ADC可测量-128°C至+127°C的温度,分辨率为1°C。

7.2 远程温度测量

芯片可测量连接到引脚25和26或27和28的两个远程二极管传感器的温度。通过测量二极管在不同电流下的电压变化来计算温度,测量结果以8位二进制补码格式存储。

7.3 布局考虑

在进行远程温度测量时,为了保护模拟输入免受噪声干扰,需要注意布局。应将ADM1026尽可能靠近远程传感二极管,将D+和D-走线紧密并行排列,并在两侧设置接地保护走线,使用宽走线以减少电感和噪声拾取,尽量减少铜/焊料接头的数量等。

八、模拟输出

ADM1026具有一个8位无符号DAC的模拟输出,输出范围为0V至2.5V。DAC控制寄存器中的数据可用于控制风扇速度,在自动风扇速度控制模式下,该寄存器的4个最高有效位设置风扇的最低速度。模拟输出可通过外部电路进行放大和缓冲,以实现风扇速度控制。

九、风扇速度测量

风扇速度测量通过测量风扇转速的周期来实现,芯片使用片上22.5kHz振荡器对风扇转速进行计数。为了适应不同速度和输出脉冲数的风扇,可在计数器前添加预分频器。风扇速度测量的监测周期时间取决于风扇速度、每转输出脉冲数和监测的风扇数量。

十、中断结构

ADM1026的中断可来自多个源,包括模拟/温度输入、风扇输入、GPIO和CI引脚等。中断状态寄存器存储中断事件,掩码寄存器可用于屏蔽不需要的中断。当测量值超出极限时,中断输出(INT)会被拉低。

10.1 模拟/温度输入中断

模拟测量值与极限值进行比较,超出极限时会设置相应的状态位,状态位可通过读取状态寄存器1、接收警报响应地址(ARA)或设置配置寄存器1的相应位来清除。

10.2 风扇输入中断

风扇速度测量结果与极限值比较,风扇欠速时会设置相应的状态位,中断清除后需等到下一个监测周期结束才会重新断言。

10.3 GPIO和CI引脚中断

GPIO和CI引脚的中断不会被锁存,只能通过屏蔽状态位或移除中断源来清除。

10.4 双向THERM引脚

THERM引脚仅对关键热事件做出响应,当温度超过THERM极限时,该引脚会拉低,可用于CPU节流或系统关机。

十一、使用方法

11.1 上电初始化

上电时,ADM1026会对所有寄存器(不包括EEPROM)进行上电复位,将其设置为默认条件。可通过写入配置寄存器1的第7位来初始化某些寄存器。

11.2 配置步骤

上电后,需要根据用户的具体需求对ADM1026进行配置,包括写入极限寄存器的值、配置引脚为风扇输入或GPIO、设置风扇除数、配置GPIO引脚的输入/输出极性、设置掩码寄存器的掩码位以及设置配置寄存器1和3等。

11.3 启动转换

通过写入配置寄存器1并设置Start(第0位)为高来启动监测功能,同时设置INT_Enable以启用中断,设置THERM启用位以启用温度中断。

11.4 低功耗模式

将配置寄存器的第0位设置为0可将ADM1026置于低功耗模式,禁用内部ADC。

11.5 软件复位功能

通过设置配置寄存器1的第7位为1可进行软件复位,部分寄存器会被重新初始化为上电默认值,但极限寄存器不会被复位。

十二、应用示例

图62展示了ADM1026在PC或服务器系统管理中的应用示例。在该应用中,多个GPIOs用于读取CPU的VID代码,可读取多达两个CPU的温度测量值,监测系统中的所有电源电压,测量多达八个风扇的速度,VREF输出包含推荐的滤波电路。

十三、总结

ADM1026作为一款功能强大的系统硬件监控芯片,为微处理器系统提供了全面的测量、监测和控制功能。其丰富的测量通道、灵活的配置选项、可靠的通信接口以及完善的中断处理机制,使其成为电子工程师在设计和开发过程中的理想选择。通过深入了解ADM1026的特性和功能,工程师们可以更好地利用该芯片实现系统的稳定运行和高效管理。

大家在使用ADM1026的过程中,是否遇到过一些特殊的问题或者有独特的应用经验呢?欢迎在评论区分享交流。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 相关推荐
  • 热点推荐

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分