哦?MPS从兜子里面掏出一颗芯片说:兄die~你看看哥们这货硬不硬!MPM54524小传

上次发了两个用MPM54524搓可调电源的帖子,绿泡泡公众号上也发了,评论区我看有不少对这个料感兴趣的,那就专门再扒一扒MPM54524这颗料,写个物料小传玩玩。上两篇传送门先放在下面:point_down:

随着 5G、AI、物联网、云计算等高性能计算需求的兴起,FPGA 供电复杂度急剧上升 。如图示例某 5G 宏基站 FPGA,竟然需要 多达 13 路不同电源轨 ,对供电模块提出了:

比如多路输出通道能力;多轨间启动/关闭顺序控制;高功率密度、低噪声、小体积等综合要求。


主从结构

13个电源轨道,这一看就是ZYNQ啊!

MPM54524 是一款高度集成四通道 5A 输出电源模块。它结合了多相降压电源、I²C 数字控制、状态监控和多种保护功能,专为 FPGA/ASIC 、通信系统、光模块 等多轨精密供电应用而设计。

项目 参数说明
通道数 4 路(A/B/C/D),每路 5A,最大总输出可达 20A(并联模式)
输入电压范围 4V ~ 16V(VIN1/VIN2 分别供给不同 Buck)
输出电压范围 0.4V ~ 5.5V(每路均可独立配置)
封装尺寸 ECLGA-51,8mm × 8mm × 2.9mm
调节频率范围 500kHz ~ 1000kHz
遥感接口 支持三路差分遥感:VSA±、VSB±、VSC±
输出调节方式 支持通过 I²C 设置 或内建 MTP (多次可编程)存储器配置
启动顺序控制 支持四通道独立 上电 / 关断顺序延迟配置
工作模式 PWM / PFM 自动切换;支持并联工作(2相交错模式)
保护机制 UVLO、UVP、OVP、OCP、OTP、软启动/关断、输出放电
遥测功能 通过 I²C 读取:VOUT、电流、电源功耗、温度等
并联模式支持 BuckA 与 BuckB 可做 2相交错工作,自动电流均衡;A~D 支持 AVP 被动均流

这个MTP就是针对不想IIC控制的用户,可以一次就写入固定的电源模式。出厂前或初次上电后永久存储配置;所有输出电压、限流值、软启动时间、故障保护等参数 均可通过 I²C 实时配置 ;出厂前或初次上电后永久存储配置,这个就先不说了。


传统一个100A的电源要设计成这样,可以看到至少要两个控制器以及复杂的外围

现在一颗就完成了
image

多相互联并联供电能力:

A+B 通道并联(共享一个电感);C+D 通道并联(同步交错),实现 10A~20A 输出电流,均流由内部控制器完成。


现在可以任意组合输出欸!

利用内部自动调节相位和导通时间,实现 主动电流均衡(Active Current Balancing)

所有通道也可开启 AVP 模式,实现 被动电流均衡(Voltage Droop Compensation)

电气特性参数(典型值)

项目 数值
输入电压范围 4V ~ 16V
每路最大输出电流 5A
最小开启时间 30 ns
最小关闭时间 120 ns
输出电压精度 ±1.5%(典型为 3.36V ±50mV)
VCC 输出(内部LDO) 3.3V ±1%
效率 >90%(1.8~3.3V 负载中高)
工作温度范围 -40°C ~ +125°C

接下来聊一下它的电源结构,就是内部是如何设计的,可以获得如此强大的性能~


每个输出通道(BuckA 、BuckB 、BuckC 、BuckD )使用的是典型的同步降压型开关电源拓扑(Synchronous Buck Converter

同步降压拓扑(Synchronous Buck Converter)

这种架构非常的成熟了同步 Buck 工作在两相交替导通:

相位 1:High-Side 开通,Low-Side 关断

电流由 VIN → 高边 MOS → 电感 → 负载

电感储能

SW 节点为高电平(≈ VIN)

相位 2:High-Side 关断,Low-Side 开通

电感电流反向释放,流过 Low-Side MOS

保持输出电流连续

SW 节点为低电平(≈ GND)

因为MOSFET 替代肖特基,损耗显著降低

每通道的核心结构如下:

元件 功能说明
High-side MOSFET 连接到 VIN,控制导通时间以调节输出功率
Low-side MOSFET 替代传统肖特基二极管,提升效率
电感 L 滤波与能量传输,决定电流纹波
输出电容 C 滤除开关噪声,提供稳压输出

该拓扑可实现高效率、稳定控制,支持恒定频率下的 PWM 控制或轻载自动切换到 PFM 模式(省电)。
(没写完,慢慢写)

多相交错并联机制(Interleaved Phases)

对于大电流输出(如将 BuckA 与 BuckB 并联),MPM54524 支持双相交错模式。

假设需要提供很大的输出电流,比如 20A。

可以用一颗大功率单相 Buck 拓扑输出 20A,但会遇到:高频开关损耗大;热分布不均,输出电流纹波大。

用多相(如 4 相)并联的方式输出,每相提供 5A,并在时间上错开开关时序,这就是多相交错

假设 4 相

Phase 开关时间序列(一个周期)
Phase 0 开始导通于 0°
Phase 1 开始导通于 90°
Phase 2 开始导通于 180°
Phase 3 开始导通于 270°

每相之间错开 90°(360°/4),在一个开关周期内轮流导通,称为**相位交错(**phase interleaving 。各相的电流在时间上交错,相互抵消,输出纹波显著减小;电流由多个相分担,MOSFET 和电感温升更低,热分布更均匀。




以上图像展示了 1、2、3、4 相交错降压输出的合成波形,每张图都清晰地显示了:

各相的 PWM 导通时间交错分布;底部黑色曲线为多个相电流的总输出电流波形;相数越多,合成波形越平滑,纹波越小。

附加遥感 + 主从反馈路径(Remote Sense + AVP)

本质上是一种为了解决“远端负载电压精度”和“多通道电流一致性”问题而引入的控制方式。遥感(Remote Sensing)是一种利用一对差分信号线,在负载端直接采样电压的方法。正常 Buck 架构中,反馈电压是从本地 PCB 输出端采样的,无法感知线损(IR Drop);使用遥感后,反馈信号从远端负载(如 FPGA Vcore 引脚)回传,从而自动补偿压降。

MPM54524 集成了 3 组遥感差分输入 VS±

MPM54524 的内部拓扑结构

模块 拓扑类型
BuckA ~ D 同步降压型开关电源
并联(A+B) 双相交错 Buck 并联
控制方式 峰值电流模式 PWM/PFM 切换控制
电压设定 数字 I²C 设置或 MTP 编程存储
电流均流机制 主动式均流(调制占空比)或 AVP 分压
遥感控制 差分远端电压反馈(负载点调节精度)

所有性能测试条件为:

VIN = 12V,除非特别标注为 5V

Ambient 温度 = 25°C

单通道测试或多相并联测试均有涉及

测试板为官方评估板(Evaluation Board)

首先是我们喜闻乐见的效率与功耗



参数名称 描述
Efficiency vs. Load Current 不同输出电压条件下,随负载电流变化的效率曲线
Power Loss vs. Load Current 不同输出条件下,每通道的功耗随电流变化
Thermal Derating 随环境温度上升,每通道最大输出电流的降低曲线

稳压性能(电源调节能力)

参数名称 描述
Load Regulation 负载调整率(IOUT 从 0A → 5A)对输出电压的影响
Line Regulation 输入电压变化(VIN = 4V ~ 16V)下 VOUT 稳定性

多组 VOUT(0.85V、1.2V、1.8V、2.5V、3.3V)分别在不同频率下测试(750kHz 或 1000kHz)

分别对比不同负载:0A、2.5A、5A 这些都没有什么好说的,看图的话,尽量还在保证子啊负载模式下比较好。

启动行为 & 纹波测试

参数名称 描述
Start-Up through EN 从 EN 使能上电时的输出电压波形
Start-Up through VIN 上电通 VIN 时的多相并联启动响应(最大至 20A)
Steady-State Ripple 稳态下输出电压纹波(0A 与 5A 时测量)
Load Transient 负载瞬变响应(0A → 2.5A 或 0A → 20A,斜率 2.5A/μs)

包含 AC 耦合纹波波形(VOUT AC)

波形单位细节:20mV/div、50mV/div,2μs 或 100μs 时间基准

但是我看着是空载和带载的时候是一样的,没有什么变化。

多相并联行为

参数名称 描述
4-Phase Paralleled Load Regulation 4通道并联后 20A 输出时的负载调整率
Start-Up with 20A Load (Parallel) 四相并联、满载 20A 时的启动电压、电流和 PG 状态波形

输出电压与电流均衡情况评估;并联情况下负载调节能力仍优异,看手册是跑满了。

总线结构与地址配置

I²C 是 7-bit 地址制

通过芯片引脚 ADDR1 和 ADDR2 可配置 I²C 地址,共支持 9 个独立地址
image
IIC我们是熟悉的,它是一种同步协议:


我们时刻要记住,在什么地址,做什么动作,传输的数据是什么,这样就可以完成一个完整的帧结构。

I²C 设备寄存器访问基本格式

写寄存器:

[START] + [Device Addr + W] + [Reg Addr] + [Data Byte(s)] + [STOP]

读寄存器:

Step 1: [START] + [Device Addr + W] + [Reg Addr] + [STOP]
Step 2: [START] + [Device Addr + R] + [Data Byte(s)] + [STOP]

每个寄存器地址固定,长度多为 1 byte 数据(少数多字节)

所有寄存器地址、功能、默认值,在 datasheet 的 Register Map 一章列出

常用寄存器功能

寄存器地址 功能名称 描述
0x0C Buck Enable Register 每个通道使能
0x15~18 VOUTA/B/C/D 设置 输出电压设置(8-bit 数据)
0x1C~1F 上电顺序延迟 各通道的启动延迟时间
0x02~05 输出电流监测 实时读取每个通道的输出电流
0x24 芯片温度读取 温度传感器输出(单位 TBD)
0x30~33 输出功率估算 P = VOUT × IOUT(估算值)
0x3B 故障标志寄存器 各种保护故障:OVP、UVP、OCP 等状态位
0x14 并联控制寄存器(A+B) 设置 A、B 通道并联 / 主从 / 相位控制

假如你想把 VOUTA 设置为 1.2V:

  1. 查 0x15 是 VOUTA 的寄存器地址
  2. 设电压配置公式如下(文档中提供):

V_OUT=0.4V+CODE×Step (1)
Step ≈ 10mV

  1. 计算 CODE:
  2. 写入 I²C:
[START] + 0x20 (W) + 0x15 + 0x50 + [STOP]

温度 / 电流 / 故障监测

地址 名称 描述 位说明
02h~05h BUCKx_CURRENT/PWR_METER Buck A~D 输出电流或功率监测 8bit ADC 编码,每步 125mA/125mW,满量程约 7.875A
06h BUCKx_VOLTAGE 输出电压监测 VOUT 每步 15mV,满量程 3.825V(255阶)

使用 0x02~0x05 读取通道电流

使用 0x24 读取温度(需查转换公式)

使用 0x3B 读取所有故障状态位

这些可以配合 MCU 定时轮询,用于电源健康状态管理。

多次可编程 MTP 存储器

写入寄存器后,还可以将当前设置写入 MTP(非易失性存储器)

电源掉电后,仍然保留配置


使用 0x10 控制写入命令,支持最大 7 次编程

地址 名称 功能说明
30h MTP_AUTO_REG 自动写入 MTP 存储控制位(Bit7 触发)
71h ACTIVE_POS_EN_AB 启用 Buck A/B 的 AVP(主动负载均流)
73h I2C_ADDRESS 设置器件的 I²C 地址(写入 MTP 后生效)
79h ACTIVE_POS_EN_CD 启用 Buck C/D 的 AVP

我们这个片子,引脚很多,可以搭配一颗MCU来做集成:

SCL/SDA I²C 接口 接到 MCU 的 I²C(使用 10-pin 接口)这里是评估板上面给的接口,可以自己设计的时候按照自己的喜好来

EN 电源使能控制 MCU 可控制电源启动/关闭 就像负载开关一样,减少系统不必要的漏电

PG 电源输出状态反馈 接 MCU 的 GPIO 输入,判断电源是否稳定,可以在不编程的情况下获得片子的状态

ADDR1/2 地址选择 可配置不同地址,支持多个板子级联 可以使用电子开关来完成多个通道的设置

VOUTx 各通道电压输出 可测电压或接传感器/负载 如果我们想做闭环,也是可以直接测量的。
我们的MCU对片子来说,就是读写操作:

控制目标 I²C 操作类型 寄存器地址 说明
设置输出电压 0x15~0x18 0x15 = BUCKA_VOUT;值范围取决于步进(~10mV)
启用输出通道 0x0C 各位控制 A~~D ,1=启用,0=禁用
读取电压值 0x06 电压值,单位约 15mV(取决于寄存器映射)
读取电流值 0x02~0x05 每路输出电流,单位约 125mA
读取温度 0x24 芯片温度寄存器
读取故障状态 0x00~0x01 STATUS_0/1 包含 UVP/OVP/PG/OTP 等位

这个控制上面,可以选择的芯片比较多,可以使用WCH家的串口转IIC电脑控制,也可以直接MCU的IIC控制,反正就是常规的读写,没有难度。

我们多轨电源使用的时候一些通道是有时序要求的,就是什么通道先上这样,比如FPGA/SoC 上电顺序 ;某些核心(如 VDD_CORE)必须早于 IO,靠此顺序控制。也可以避免多路瞬间启动造成供电系统电流冲击


Buck A**、** B C D 通道在系统上电(或 EN 拉高)后按预设延迟依次启动的过程 ,并通过 PG (电源良好)信号 反映各通道是否成功输出

信号名称 含义
EN 芯片使能信号,拉高后启动
VOUTA~D 各路 Buck 输出电压
PG Power Good,所有通道稳定后拉高

我们可以使用6个通道来监控这个上电过程

Step 1: EN 拉高 → 启动启动时序逻辑

EN 引脚上升沿触发 MPM54524 启动逻辑;芯片内部软启动状态机开始生效

Step 2: 4 个 Buck 通道依次上电(带延迟)

每个通道都有一个独立的启动延迟,定义在寄存器 0x19~0x1C:

通道 启动延迟设置寄存器 默认状态
Buck A 0x19 0 ms
Buck B 0x1A 1 ms
Buck C 0x1B 2 ms
Buck D 0x1C 3 ms
![image 527x499](upload://l1KZLZA1MVSIHH9ywIStUP0gcR.png)

所以在图中看到 VOUTA、B、C、D 分别在 EN 拉高后延迟约 0~3ms 顺序启动。

Step 3: 各通道软启动

每个通道输出电压呈现斜坡上升;软启动时间由寄存器 0x13 控制,通常为 1~5ms。最小的颗粒度是0.5ms

作用:限制冲击电流;防止负载突变。

Step 4: 所有通道达到稳定电压 → PG 拉高

每通道都有 Power-Good 判断窗口(±7% 默认)

当全部通道输出电压进入规定范围:PG 引脚(Open-Drain)拉高 → 表示“系统电源稳定”;若某一通道出现 UV、OV、OTP、OCP → PG 会拉低。


每路 Buck 转换器依次延迟启动,输出电压按预设斜率平滑上升,最终稳定在 1.2V。
可以写一个类:

from mpm54524_controller import MPM54524Controller
ctrl = MPM54524Controller()
# 设置 Buck A~D 启动延迟(单位:0.5ms 每步)
ctrl.i2c_write_byte(0x19, 0x00)  # BuckA 延迟 0
ctrl.i2c_write_byte(0x1A, 0x01)  # BuckB 延迟 0.5ms
ctrl.i2c_write_byte(0x1B, 0x02)  # BuckC 延迟 1.0ms
ctrl.i2c_write_byte(0x1C, 0x03)  # BuckD 延迟 1.5ms
ctrl.close()

更加的方便控制
上面一直说反馈引脚,反馈引脚的,什么东西?


默认情况下,MPM54524 的每路输出电压是通过 内部数字寄存器(如 0x15~0x18 设置的;该方式适用于不需要外部调整的系统。

但是如果使用:外部 MCU 以电压模拟方式调节 VOUT,以及多芯片共用反馈路径或使用传统模拟反馈方式。 可以切换为 外部电阻分压设置方式(External Divider

VOx:某路 BUCK 输出(例如 VOUTA)

VSx+ / VSx- :反馈检测正负端(每个 BUCK 对应一组)

VFB :内部参考电压,由寄存器配置(可为 0.6V、0.7V 等)

输出电压计算公式(手册公式 3)


VOUTx :实际输出电压

VREF (即 VFB :反馈输入设定点,通常为 0.6V

R1/R2:反馈分压比


R1 不宜过大(影响响应速度);R2 不宜过小(增加功耗,降低精度),推荐选择 E96 系列精密电阻,确保 VOUT 精度。

当启用外部分压反馈后: 芯片内部 ADC 读取的是 VFB 电压,而不是 VOUT。所以此时读回的电压值不再是 VOUTx,而是 0.6V 参考点。

总结一下:MPM54524 在 高集成、多通道、并联能力、电磁兼容、封装优化 等方面的全方位优势,适合:5G 通信、AI 终端、边缘计算、无人机、AR/VR、摄像系统等小型高算力场景;尤其适合面向复杂供电系统,尤其是电压多样、时序严格、电流差异大的高端应用。

那说了半天,板子在哪里?

展示!帅!


话说回来,模块活动我锐评了,我想要那个椅子,官方大大,你听到了吗~~~


<收!>