1、上电时序基础概念
什么是上电时序
上电时序,说白了就是多个电源轨按照特定顺序和时间间隔依次上电的过程。你想想看,一块电路板上可能有 3.3V、1.8V、1.2V、0.9V 好几路电源,它们不是同时啪一下全起来的——那样芯片大概率会出问题。
我习惯把上电时序理解成「接力赛」:第一棒是核心电压,第二棒是 IO 电压,第三棒才是 PLL 供电。每一棒交接的时间点、上升的斜率,都有讲究。
核心定义:上电时序(Power Sequencing)是指多路电源在启动过程中,按照芯片手册规定的先后顺序、电压上升时间和稳定时间,依次达到各自目标电压的过程。
为什么需要关注上电时序
这个问题我当年刚入行时也问过。不就是给电嘛,能有多大区别?直到有一次……嗯,我来说说真实教训。
我曾经调试一块 FPGA 板卡,上电后死活配置不成功。查了三天,最后发现是 1.2V 内核电压比 3.3V IO 电压晚到了 2ms。就这 2ms,FPGA 内部的 ESD 保护二极管正向导通了,电流倒灌进内核,导致逻辑状态混乱。
所以为什么要关注?三个原因:
- 防止闩锁效应(Latch-up)——CMOS 芯片内部有寄生 PNPN 结构,上电顺序不对可能触发闩锁,轻则功能异常,重则烧芯片。我见过一块板子因为 3.3V 先于 1.2V 上电,直接把 PMIC 烧冒烟的。
- 避免 IO 竞争态——内核还没起来,IO 先有电了,这时候 IO 引脚可能处于不确定状态,往外输出乱电平,把下游器件搞死。
- 保证复位逻辑正确——很多芯片的复位信号依赖电源就绪标志(Power Good),时序乱了,复位信号可能提前释放,芯片在电压不稳时就开始工作。
注意:不是所有芯片都需要严格的上电时序。有些现代 PMIC 内部集成了时序控制,但独立电源方案(LDO + DC-DC 分立搭建)必须手动检查时序。
典型的上电时序要求
不同芯片的时序要求差异很大。我整理了几类常见场景,你对照着看:
| 芯片类型 | 典型时序要求 | 常见问题 |
|---|---|---|
| FPGA(Xilinx/Altera) | VCCINT → VCCAUX → VCCO,间隔 0~100ms | 配置失败、IO 电流倒灌 |
| DDR 内存 | VDD → VDDQ → VTT,VTT 必须晚于 VDDQ | 初始化失败、数据错误 |
| SoC 处理器 | Core → IO → PLL,PLL 供电需在 Core 稳定后 | 锁相环失锁、时钟抖动 |
| PMIC 自身 | 输入电压先于使能信号,使能信号需高于阈值 | PMIC 不启动、输出异常 |
举个例子,Xilinx 的 Kintex-7 系列要求 VCCINT(1.0V)先上电,VCCAUX(1.8V)紧随其后,最后才是 VCCO(3.3V/2.5V 等)。三个电源轨之间的最大时间差不能超过 100ms。这个 100ms 是怎么来的?我查过他们的应用笔记,说是基于内部 POR(Power-On Reset)电路的 RC 时间常数设计的。
我的经验:拿到新芯片的第一件事,不是画原理图,而是去数据手册里搜 "Power Sequencing" 或 "Power-Up Sequence"。很多芯片会把时序要求放在第 5~8 页的「绝对最大额定值」附近。找不到?那就去应用笔记里翻,再找不到……嗯,直接找 FAE 要。
上电时序的量化指标
光知道顺序还不够,还得看几个关键参数:
- 上升时间(Rise Time)——电压从 10% 升到 90% 的时间。太慢会导致芯片长时间处于欠压区,太快可能引起过冲。
- 时序间隔(Sequence Delay)——两路电源达到稳定之间的时间差。常见要求是 0~100ms,有些高速芯片要求更严,比如 0~10ms。
- 电压稳定时间(Settling Time)——电源达到目标电压后,到进入 ±1% 或 ±3% 误差带的时间。
- 单调性(Monotonicity)——上电过程中电压不能出现下降段。非单调上电可能让芯片误以为已经完成上电,提前释放复位。
我遇到过最坑的一次,是某国产 PMIC 的 datasheet 上写着「支持任意上电顺序」,结果实际测试发现,如果 1.8V 比 3.3V 早到超过 50ms,内部 LDO 就会进入过流保护。所以啊,datasheet 上的话,信一半,测一半。
上电时序知识体系
下面这张图是我自己总结的,把上电时序的核心知识点串起来了:
这张图把上电时序拆成了三个维度:基本概念告诉你「是什么」,为什么重要告诉你「为什么」,典型要求告诉你「怎么做」。量化指标是贯穿始终的检查清单,每次调试时我都会对着它逐项确认。