4. 电源管理IC(PMIC)选型:PMIC的基本功能、如何根据上电时序要求选择PMIC、PMIC的配置方法

电源管理IC,简称PMIC,说白了就是把一堆电源相关的功能打包到一个芯片里。我刚开始做设计那会儿,板子上全是LDO和DC-DC,一个电源轨一个芯片,布板子布到想哭。后来用了PMIC,才体会到什么叫「真香」。

但PMIC不是随便选一个就能用的。选错了,上电时序乱掉,芯片直接锁死,甚至烧片子。这一节,我就把PMIC选型的关键点掰开揉碎讲清楚。

4.1 PMIC的基本功能

PMIC的核心任务就四个字:供电管理。具体拆开看,它通常包含以下功能模块:

  • 多路电压转换:集成多个DC-DC降压(Buck)、升压(Boost)、LDO通道。一个芯片搞定3.3V、1.8V、1.2V、0.9V等不同电压。
  • 上电时序控制:通过内部寄存器或外部引脚,控制各路电源的开启顺序和延迟时间。
  • 电源监控与保护:包括欠压锁定(UVLO)、过流保护(OCP)、过温保护(OTP)、短路保护等。
  • 复位与看门狗:输出Power Good信号,或者集成看门狗定时器,防止系统死机。
  • 电池管理:如果用在便携设备上,还包含充电管理、电量计、电池保护等功能。

核心要点:PMIC不是简单的「多路电源合在一起」,而是把电源的时序、监控、保护都集成进去了。这才是它值钱的地方。

4.2 如何根据上电时序要求选择PMIC

上电时序,是PMIC选型里最容易翻车的地方。我见过一个项目,FPGA和DDR供电顺序反了,结果DDR初始化失败,整板跑不起来。查了三天,最后发现是PMIC的时序配置不对。

选型时,你需要关注以下几个维度:

4.2.1 明确各电源轨的时序关系

不同芯片对上电顺序的要求不一样。比如:

  • FPGA:通常要求内核电压(Vcore)先于IO电压(Vccio)上电,或者同时上电。绝对不能Vccio先上电而Vcore没起来,否则IO引脚可能处于不确定状态,导致闩锁效应。
  • DDR内存:VDD(核心电压)要先于VDDQ(IO电压)上电,VREF(参考电压)要最后稳定。
  • SoC/应用处理器:通常有严格的时序窗口,比如Vcore必须在VIO之前100μs内完成上电。

拿到芯片手册后,第一步就是画出上电时序图。我习惯用Excel或者时序分析工具,把每个电源轨的上升时间、延迟时间、顺序关系列成表格。

4.2.2 PMIC的时序控制能力

PMIC支持几种常见的时序控制方式:

控制方式 原理 适用场景 注意事项
引脚级联(Power Good链) 上一路电源的Power Good信号使能下一路 简单系统,时序要求不严格 延迟时间由电源上升时间决定,不可精确控制
内部寄存器配置 通过I2C/SPI写入寄存器,设置每路延迟时间 复杂系统,需要精确时序 需要MCU或Boot ROM提前配置,存在启动死锁风险
外部电阻/电容配置 通过外部引脚接电阻或电容设定延迟 中等复杂度,需要一定灵活性 精度受电阻电容容差影响
OTP(一次性可编程) 出厂前烧录时序配置,不可更改 量产定型产品 一旦烧错,芯片报废

我的建议:如果项目还在原型阶段,优先选内部寄存器配置的PMIC。调试时可以随时改时序,不用换电阻电容。等量产定型了,再考虑OTP版本,降低成本。

4.2.3 检查PMIC的时序精度

有些PMIC的延迟时间误差很大,比如标称1ms,实际可能0.5ms到2ms。如果芯片手册要求时序窗口只有±200μs,这种PMIC就不能用。

选型时,一定要看PMIC手册里的时序精度参数:

  • 延迟时间误差(Delay Time Accuracy)
  • 上升时间范围(Rise Time Range)
  • Power Good输出延迟(PG Delay)

我曾经在一个项目里,选了某款PMIC,手册上写延迟精度±10%,结果实测±30%。后来换了另一家,精度±5%,问题才解决。所以,不要只看标称值,要留余量。

4.3 PMIC的配置方法

PMIC选好了,怎么配置?这里分三种情况讲:

4.3.1 硬件引脚配置

最简单的PMIC,通过外部引脚的高低电平选择输出电压和时序。比如:

  • VSEL0、VSEL1引脚接VCC或GND,组合选择输出电压
  • SEQ0、SEQ1引脚选择上电顺序模式

这种配置方式不需要软件参与,上电即用。但灵活性差,一旦焊好,就不能改了。

4.3.2 I2C/SPI寄存器配置

这是目前最常用的方式。PMIC内部有多个寄存器,控制输出电压、延迟时间、使能、保护阈值等。

举个例子,某款PMIC的配置流程:

// 伪代码:PMIC初始化配置
pmic_write_reg(0x10, 0x3C);  // 设置Buck1输出电压为1.2V
pmic_write_reg(0x11, 0x28);  // 设置Buck2输出电压为1.8V
pmic_write_reg(0x20, 0x01);  // 设置Buck1延迟时间为1ms
pmic_write_reg(0x21, 0x03);  // 设置Buck2延迟时间为3ms
pmic_write_reg(0x30, 0x07);  // 使能所有通道
pmic_write_reg(0x31, 0x01);  // 启动上电序列

注意:I2C/SPI配置有一个经典坑——启动死锁。如果PMIC的配置寄存器需要外部MCU写入,而MCU本身又依赖PMIC供电,那就成了「先有鸡还是先有蛋」的问题。解决办法:要么选带OTP默认配置的PMIC,要么让PMIC先输出一个默认电压给MCU,MCU启动后再重新配置PMIC。

4.3.3 OTP(一次性可编程)配置

量产阶段,为了省掉MCU和I2C通信的成本,很多PMIC支持OTP。在出厂前,通过烧录器把配置写入PMIC内部的一次性存储器。之后每次上电,PMIC自动按烧录好的配置运行。

OTP配置的流程一般是:

  1. 在开发板上用I2C调试好所有参数
  2. 把参数导出为烧录文件(通常是.hex或.bin格式)
  3. 发给PMIC厂商或自己用烧录器写入
  4. 烧录后做功能验证,确认无误再批量生产

避坑指南:我曾经在OTP烧录时犯过一个低级错误——把Buck1和Buck2的电压写反了。结果500片板子,FPGA核心电压只有1.2V(应该1.8V),全部报废。所以,OTP烧录前,一定要做三次确认:自己看一遍,同事复核一遍,再用示波器实测一遍。

4.4 PMIC选型检查清单

最后,我整理了一个选型检查清单,每次选PMIC时我都会过一遍:

  • ☐ 各路输出电压是否满足负载需求?
  • ☐ 各路输出电流是否留有余量(至少20%)?
  • ☐ 上电时序是否可配置?精度是否满足芯片要求?
  • ☐ 是否有Power Good输出?是否支持级联?
  • ☐ 保护功能是否齐全(UVLO、OCP、OTP)?
  • ☐ 封装和散热是否适合你的板子?
  • ☐ 是否有I2C/SPI接口用于调试?
  • ☐ 是否有OTP选项用于量产?
  • ☐ 芯片手册里的时序图是否清晰?参数是否有余量?

嗯,这一节的内容就这些。PMIC选型,说白了就是搞清楚你要什么,再去看PMIC能不能给。时序、精度、配置方式,这三个点抓住了,基本不会出大问题。

PMIC选型核心逻辑 PMIC选型 基本功能 • 多路电压转换 • 上电时序控制 • 电源监控与保护 • 复位与看门狗 上电时序要求 • 明确各轨时序关系 • 选择控制方式 • 检查时序精度 • 留足余量 配置方法 • 硬件引脚配置 • I2C/SPI寄存器 • OTP一次性编程 • 注意启动死锁 输出:可靠的电源方案