用于控制和监视MAX20743/MAX20730开关稳压器的PMBus协议

描述

MAX20743/MAX20730完全集成的开关稳压器包括串行总线(PMBus™),支持高级调压阀监测和控制功能。本应用笔记介绍了MAX20743/MAX20730芯片,通过PMBus制造修订命令报告F作为修订版。PMBus 接口支持 PMBus 1.2 和 SMBus 2.0 规范的子集。

支持以下 PMBus 功能:

静态 PMBus 地址编程,采用外部电阻器

符合大功率 SMBus 直流规范

支持 PMBus 协议

写入字节/字

读取字节/字

发送字节

块读取

数据包错误检查机制支持

短信警报# 信号

监控功能

通过MAX20743/MAX20730 PMBus接口提供以下监测功能:

各种故障状态

使用R_SEL配置电阻器编程参数

输入电压

输出电压

结温

输出电流

控制功能

过热故障阈值

输出电流故障阈值

输出电压命令

输出电压最小和最大阈值

操作:开和关配置

调节电源良好延迟时序

软启动定时

频率

过流保护模式

内部增益值

输出电压指令斜坡速率

MAX20743/MAX20730 PMBus协议

写入/读取格式

MAX20743/MAX20730 PMBus接口支持单字节、双字节(字)寄存器读/写、块读取以及发送字节协议。表 1 到表 6 显示了用于所有受支持操作的格式。请注意,数据包错误检查可用于任何事务。表7给出了MAX20743/MAX20730 PMBus命令代码。写入WRITE_PROTECT寄存器(Reg_0h)的0x10h禁用写保护功能,0x20h打开除OPERATION和VOUT_COMMAND寄存器之外的所有寄存器的写保护。

 

# 位 1 7 1 1 8 1 1 7 1 1 8 1 1
  S PMBus地址 S-ACK 命令 S-ACK S PMBus地址 R M-ACK 数据字节 M-纳克 P
# 位 1 7 1 1 8 1 8 1 1
  S PMBus地址 S-ACK 命令 S-ACK 数据字节 S-ACK P
# 位 1 7 1 1 8 1 1 7 1 1 8 1 8 1 1
  S PMBus地址 S-ACK 命令 S-ACK S PMBus地址 R S-ACK 数据字节低 M-ACK 数据字节高 M-纳克 P
# 位 1 7 1 1 8 1 8 1 8 1 1
  S PMBus地址 S-ACK 命令 S-ACK 数据字节低 S-ACK 数据字节高 S-ACK P
# 位 1 7 1 1 8 1 1
  S PMBus地址 S-ACK 命令 S-ACK P
# 位 1 7 1 1 8 1 1 7 1 1 8 1  
  S PMBus地址 S-ACK 命令 S-ACK S PMBus地址 R S-ACK 字节计数 = N M-ACK  
  8 1 8 1   8 1 1
  数据字节 1 M-ACK 数据字节 2 M-ACK ... 数据字节 N M-纳克 P
S 启动条件:时钟和数据线最初为高电平。数据转换低电平,时钟高电平。时钟转换低电平。
P 停止条件:时钟和数据线最初为低电平。时钟转换高,而数据低。数据转换率高。
R 读取位(逻辑高电平)
W 写入位(逻辑低电平)
命令 相关的MAX20743/MAX20730 PMBus寄存器
S-ACK 从属确认
M-ACK 师父致谢
M-纳克 大师不承认

 

注1.数据包错误检查 (PEC) 可与这些命令结合使用。
注2.PEC 是 CRC-8 错误检查字节,根据所有消息字节计算。
注3. OEN 信号不需要很高即可通过 PMBus 接口进行通信。

 

Command Code Dec Command Name Type Size Default Low Byte High Byte
01h 1 OPERATION RW 1 00h OE_INT 0 0 0 0 0 0 0  
02h 2 ON_OFF_CONFIG RO 1 1Fh 0 0 0 1 1 1 1 1  
03h 3 CLEAR_FAULTS WO 0    
10h 16 WRITE_PROTECT RW 1 20h   PROT_ENABLE    
1Bh 27 SMBALERT_MASK RW 2 N/A ALERT-MASK [7:0]   ALERT-MASK[15:8]
20h 32 VOUT_MODE RO 1 17h 0 0 0 1 0 1 1 1  
21h 33 VOUT_COMMAND RW 2 C_SELA VDAC[7:0]   0 0 0 0 0 0 VDAC[9:8]
24h 36 VOUT_MAX RW 2 0280h VMAX[7:0]   0 0 0 0 0 0 VMAX[9:8]
78h 120 STATUS_BYTE RO 1 00h BUSY OFF# VOUT_OV_FAULT IOUT_OC_FAULT VIN_UV_FAULT TEMP CML N/A  
79h 121 STATUS_WORD RO 2 0000h BUSY OFF# VOUT_OV_FAULT IOUT_OC_ FAULT VIN_UV_FAULT TEMP CML N/A VOUT IOUT/POUT INPUT MFR_SPECIFIC POWER_GOOD 0 0 0
7Ah 122 STATUS_VOUT RO 1 00h OVP_FLT 0 0 UVP_FLT VOUTMAX_FLT 0 0 0  
7Bh 123 STATUS_IOUT RO 1 00h OCP_FLT 0 0 0 0 0 0 0  
7Ch 124 STATUS_INPUT RO 1 00h RSVD 0 0 FUVLO_FLT FUVLO_FLT 0 0 0  
7Dh 125 STATUS_TEMPERATURE RO 1 00h OTP_FLT 0 0 0 0 0 0 0  
7Eh 126 STATUS_CML RO 1 00h INVALID/ UNSUPPORTED CMD INVALID/ UNSUPPORTED DATA INCORRECT PEC 0 0 0 OTHER COMM FAULT 0  
80h 128 STATUS_MFR_SPECIFIC RO 1 00h VOUTMIN_ FLT SEALR_FLT RADC_ FLT AUVLO_FLT BOOST-FAULT VXSHORT _FLT VSN_ VSP_ FLT LDO_OFF  
88h 136 READ_VIN RO 2 N/A VINADC_AVE[7:0]   0 0 0 0 0 VINADC_AVE[9:8]
8Bh 139 READ_VOUT RO 2 N/A VADC_AVE[7:0]   0 0 0 0 0 VADC_AVE[9:8]
8Ch 140 READ_IOUT RO 2 N/A IADC_AVE[7:0] 0 0 0 0 0 0 IADC_AVE[9:8]
8Dh 141 READ_TEMPERATURE_1 RO 2 N/A TADC_AVE[7:0] 0 0 0 0 0 0 TADC_AVE[9:8]
99h 152 MFR_ID BLK 5 N/A ASCII "MAXIM"(HEX CODES 56h, 4Ch,n54h, 52h)  
9Bh 155 MFR_REVISION BLK 1 N/A ASCII "F" (HEX CODE 31h)
D1h 209 MFR_VOUT_MIN RW 2 0133h VMIN[7:0] 0 0 0 0 0 0 VMIN[9:8]
D2h 210 MFR_DEVSET1 RW 2 2061h 0 OCP[1:0] FSW[2:0] TSTAT[1:0] 0 RGAIN[1:0] OTP[1:0] 0 VBOOT[1:0]
D3h 211 MFR_DEVSET2 RW 2 03A6h VRATE[1:0] HICCUP_EN RSVD RSVD RSVD SFT_START[1:0] 0 0 0 0 0 IMAX[2:0]
RW = Read Write, RO = Read Only, WO = Write Only, BLK = Block Read. VBOOT[1:0] values in MFR_DEVSET1 are programmed by the external capacitor (C_SELA ) and equal to binary value 00b, here representing VBOOT = 0.65V.

 

配置MAX20743/MAX20730地址

MAX20743/MAX20730 PMBus地址通过R_SELA设置。可以有八个唯一地址,如图所示 在表 8 中。

 

PMBus 地址 (PMAD) 常量/变量
(6)(MSB) 常量 = 1
(5) 常量 = 0
(4) 常量 = 1
(3) 常量 = 0
(2) R_SELA_bit2
(1) R_SELA_bit1
(0) R_SELA_bit0

 

状态报告

MAX20743/MAX20730支持图1所示的状态寄存器。CLEAR_FAULTS命令用于清除已设置的任何故障位,并清除器件的SMALERT引脚输出。CLEAR_FAULTS命令不会导致因故障情况而锁定的设备重新启动。要在锁存故障后重新启动,必须重新通电。如果重新通电后故障仍然存在,则再次设置故障位。

STATUS_BYTE包含最重要的故障和警告。STATUS_WORD包含两个字节的信息。STATUS_WORD的低字节与STATUS_BYTE相同,高字节包含有关设备状态的其他信息。

串行总线

图1.状态寄存器摘要。

 

字节 位号 状态位名称 意义
7 断言故障是因为设备繁忙且无法响应。
6 关闭# 如果单元未向输出供电,则断位,无论原因如何,包括未启用。
5 VOUT_OV_FAULT 发生输出过压故障。
4 IOUT_OC_FAULT 发生输出过流故障。
3 VIN_UV_FAULT 发生输入欠压故障。
2 温度 发生了温度故障。
1 三氯联 发生通信、内存或逻辑故障。
0 不适用 不适用
7 VOUT 发生输出电压故障。
6 嘴/噘嘴 发生输出电流故障。
5 输入 发生输入电压、输入电流或输入电源故障。
4 MFR_SPECIFIC 发生了制造商特定的故障或警告。
3 POWER_GOOD# 如果设置了此位,则电源不好。
2 不适用 不适用
1 不适用 不适用
0 不适用 不适用

 

控制

操作/开和关配置

OPERATION 命令用于在 OE 引脚为低电平的情况下打开 (0x80h) 和关闭 (0x0h),由固定为 0x1Fh 的ON_OFF_CONFIG确定。

输出电压控制

以下寄存器用于与输出电压相关的配置设置。所有格式都处于线性模式,N = -9,在 V 中表示外模式寄存器 (Reg_20h) 值为 0x17h。输出电压命令 (Reg_21h) 和其他与输出电压相关的命令是一个 2 位无符号变量。输出电压公式如下:

串行总线

 

串行总线

 

串行总线

配置寄存器

PGMA 和 PGMB 配置电阻器和电容器用于配置 PMBus 地址、软启动时序、启动电压过流保护限值、内部增益设置和频率。有两个 PMBus 寄存器(MFR_DEVSET1 和 MFR_DEVSET2)可用于检查和覆盖这些设置。这两个配置寄存器可以更改的其他系统参数包括电源良好延迟时序调节、过热保护限值、输出电压命令斜坡速率和过流保护模式。通电后,覆盖参数将恢复为默认值。

MFR_DEVSET2 (Reg_D3h) 用于对软启动时序进行编程,如表 11 所示。

 

不。 电阻 (千分电阻) SS 时间(毫秒) 私有地址 (1010_XXXX)
1 1.78 3 PMBus 从地址 1010 000b
3 4.02 3 PMBus 从地址 1010 010b
4 6.04 3 PMBus 从地址 1010 011b
5 9.09 3 PMBus 从地址 1010 100b
6 13.3 3 PMBus 从地址 1010 101b
7 20 3 PMBus 从地址 1010 110b
8 30.9 3 PMBus 从地址 1010 111b
9 46.4 1.5 PMBus 从地址 1010 000b
10 71.5 1.5 PMBus 从地址 1010 001b
11 107 1.5 PMBus 从地址 1010 010b
12 162 1.5 PMBus 从地址 1010 011b
SFT-开始[1:0] 软启动时间(毫秒)
00摄氏度 0.75
01摄氏度 1.5
10摄氏度 3
11摄氏度 6

 

MFR_DEVSET1(Reg_D2h(位9:8))用于读取引导电压,如表12所示。

 

在靴子[1:0] 在靴子电压 (V)
00摄氏度 0.6484
01摄氏度 0.8984
10摄氏度 1.0
11摄氏度 不适用

 

其他系统参数

过流保护

过流保护MFR_DEVSET1(Reg_D2h(位6:5))用于设置正负过流起始和箝位电平,如表13所示。

 

OCP[1:0] OCP 设置
00摄氏度 设置 0
01摄氏度 设置 1
10摄氏度 设置 2
11摄氏度 设置 3

 

温度控制

MFR_DEVSET1(Reg_D2h(位12:11))用于对过热触发电平进行编程,如表14所示。

 

一次性密码[1:0] 过温(°C)
00摄氏度 150
01摄氏度 130
10摄氏度 不适用
11摄氏度 不适用

 

内部增益设置

MFR_DEVSET1 (Reg_D2h) 用于对内部增益设置进行编程,如表 15 所示。

 

R获得[1:0] R获得(毫欧姆)MAX20743 R获得(毫欧姆)MAX20730
00摄氏度 0.45 0.9
01摄氏度 1.80 3.6
10摄氏度 0.90 1.8
11摄氏度 3.60 7.2

 

启动电压至输出电压命令斜坡速率

MFR_DEVSET2(Reg_D3h(位7:6))用于将引导电压设置为输出电压命令斜坡速率,如表16所示。

 

在率[1:0] 在率(毫伏/微秒)
00摄氏度 4
01摄氏度 2
10摄氏度 1
11摄氏度 不适用

 

频率

MFR_DEVSET1(Reg_D2h(位4:2))用于对开关频率进行编程,如表17所示。

 

FSW[2:0 ] 频率(千赫)
000摄氏度 400
001摄氏度 500
010B/011B 600
100摄氏度 700
101摄氏度 800
110B/111B 900

 

调节电源良好延迟时序

MFR_DEVSET1(Reg_D2h)用于对tSTAT时间进行编程,如表18所示。

 

统计 [1:0] 统计时间 (μs)
00摄氏度 2000
01摄氏度 125
10摄氏度 62.5
11摄氏度 32

 

输出电流过流模式

MFR_DEVSET2 (Reg_D3h)用于设置输出电流过流模式,如表19所示。

 

代码(二进制) OCP 模式
0摄氏度 恒流
1摄氏度 呃逆

 

读取遥测数据

MAX20743/MAX20730提供检测引脚的结温、输出电流、输入电压和电压报告。使用直接反馈时,检测引脚上的电压等于V外. 当反馈中有一个分压器时,检测引脚上的电压按分压比成比例。

读取输出电流

读取 IOUT 返回以安培为单位的输出电流。数据采用 PMBus DIRECT 格式,R = -1,m 和 b 定义如下。

串行总线

其中(MAX20743):
m = 94.8 - 1.82 x D
b = 5014 - 97.6 x D
D = 输出电压/ VIN
a = 0.018
TJ = 结温读数,单位为 °C

其中(MAX20730):
m = 153 + 5.61 x D
b = 4976 - 131 x D
D = 输出电压/输入电压
a = 0.013
TJ = 结温读数,单位为 °C

读取温度

读取温度返回结温(以°C为单位)。 数据采用 PMBus 直接格式,带有 m = 21,b = 5887,R = -1。

串行总线

读取输出电压

读取 VOUT返回以伏特为单位的输出电压。数据采用 PMBus 线性格式,N = -9。

READ VOUT = REG_8Bh (BITS 9:0) × 2N (VOLTS)

读取输入电压

读取 Vin返回以伏特为单位的输入电压。数据采用PMBus DIRECT格式,m = 3597、b = 0和R = -2 (MAX20743),m = 3609, b = 0, R = -2 (MAX20730)。

串行总线

ARA READ/PMBus Alert

MAX20743/MAX20730支持SMBus 2.0规范中描述的报警响应地址(ARA)协议。有关更多详细信息,请参阅 SMBus 2.0 规范附录 A。

PMBus 警报引脚

MAX20743/MAX20730 SMALERT引脚支持SMBus 2.0规范中描述的SMBALERT#信号。断言警报线为低的故障条件如下:

任何不同于 0 且未被命令屏蔽SMBALERT_MASK位在 STATUS_CML 中拉出低 SMALERT 引脚。

任何不同于 0 且未被命令屏蔽SMBALERT_MASK STATUS_VOUT中拉低 SMALERT 引脚的位。

任何不同于 0 且未被命令屏蔽SMBALERT_MASK位在STATUS_IOUT中拉低 SMALERT 引脚。

任何不同于 0 且未被命令屏蔽SMBALERT_MASK位都会在 STATUS_TEMPERATURE 中拉出低 SMALERT 引脚。

任何不同于 0 且未被命令屏蔽SMBALERT_MASK位在 STATUS_MFR_SPECIFIC 中拉低 SMALERT 引脚。

任何不同于 0 且未被命令屏蔽SMBALERT_MASK的位都会在 STATUS_INPUT 中拉出低 SMALERT 引脚。

PMBus 消息的持续时间比预期的要长。

SMBALERT_MASK用于防止警告或故障情况触发SMALERT引脚。用于阻止一个或多个状态位导致SMALERT引脚置位的命令格式(写字)如表20所示。掩码字节中的位与相应状态寄存器中的位对齐。

 

# 位 1 7 1 1 8 1 8 1 8 1 1
  S PMBus地址 阿克 SMBALERT_MASK命令代码 阿克 Status_x命令代码 阿克 掩码字节 阿克 P

 

释放SMALERT引脚的两种方法如下:

CLEAR_FAULTS命令

ARA (参考 SMBus 规范 2.0)

审核编辑:郭婷

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

全部0条评论

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

×
20
完善资料,
赚取积分