电源管理基础:电压域与电源门控

各位同学好,我是老张。今天咱们聊聊芯片电源管理里最基础、也最核心的两个概念——电压域和电源门控。说实话,我刚入行那会儿,觉得电源管理不就是把电压调低点嘛,后来踩了不少坑才明白,这里面的门道深着呢。

一、电压域(Voltage Domain)是什么?

先说说电压域。说白了,就是把芯片上需要相同电压的模块划到一起,形成一个独立的供电区域。你想想看,CPU核心可能跑1.0V,I/O接口要1.8V,存储单元可能只需要0.6V——如果全芯片用一个电压,那低电压模块的功耗就白浪费了。

关键点:电压域划分的核心原则是——相同电压需求的模块放在同一个域里,不同电压的模块用隔离单元(Level Shifter)连接。

我在做一款AI加速芯片时遇到过这么个事:我们把DDR控制器和核心计算单元放在同一个电压域,结果DDR接口需要1.2V,核心只需要0.8V,最后不得不加了一堆电平转换器,面积和功耗都上去了。嗯,这就是典型的域划分没做好。

二、电源门控(Power Gating)的基本原理

电源门控,名字听着高大上,其实原理很简单——当某个模块不工作时,直接把它的电源切断。就像你离开房间时关灯一样自然。

但芯片上不能真的把电源线剪断,对吧?所以我们需要一种可控的开关,这就是电源开关单元(Power Switch Cell)的用武之地。

2.1 工作原理

电源门控的核心思想是:在逻辑电路的电源路径上串联一个开关管。开关打开时,电路正常工作;开关关闭时,电路完全断电,漏电流降到几乎为零。

我个人的经验:电源门控的开关管通常用高阈值电压(HVT)的MOS管,因为它的漏电流更小。但代价是导通电阻大一些,会带来IR drop。这个取舍要仔细权衡。

2.2 两种基本结构

电源开关单元有两种经典结构,我分别说说:

结构类型 连接位置 开关管类型 特点
Header Switch VDD与逻辑电路之间 PMOS 控制高侧电源,开关管面积大
Footer Switch 逻辑电路与VSS之间 NMOS 控制低侧地线,开关管面积小

Header Switch用PMOS管,连接在VDD和虚拟VDDV之间。控制信号为低时导通,为高时关断。Footer Switch用NMOS管,连接在虚拟VSSV和地之间。控制信号为高时导通,为低时关断。

注意:我曾经在项目中犯过一个低级错误——把Header和Footer同时用在一个模块里。结果开关切换时,虚拟电源节点浮空,逻辑状态全乱了。记住,一般只用一种,别贪心。

三、电源开关单元的设计要点

设计电源开关单元,有几个关键参数必须盯紧:

  • 导通电阻(Ron):决定了IR drop的大小。我一般控制在逻辑电路工作电压的5%以内。
  • 开关速度:从关断到导通的时间,影响唤醒延迟。
  • 漏电流:开关管本身的漏电,不能太大,否则门控就失去意义了。
  • 面积:开关管通常做得很大,因为要过很大的电流。

举个例子,一个需要1A电流的模块,如果用Header Switch,PMOS管的宽长比可能要做到几千甚至上万。你想想看,这面积得多大?

四、电源门控的完整流程

一个完整的电源门控操作,不是简单地拉一下控制信号就完事了。它需要一套严谨的序列:

  1. 准备阶段:保存关键状态,清空流水线,确保没有正在执行的事务。
  2. 隔离阶段:在模块输出端插入隔离单元(Isolation Cell),防止浮空信号传播到其他模块。
  3. 关断阶段:拉低/拉高控制信号,切断电源。
  4. 保持阶段:模块处于完全断电状态,漏电流几乎为零。
  5. 唤醒阶段:先恢复电源,等待电压稳定,再释放隔离单元。
  6. 恢复阶段:重新初始化模块状态,恢复正常工作。

避坑指南:我曾经在唤醒阶段吃过亏——电源恢复后立刻释放隔离单元,结果模块内部电压还没稳定,输出了一堆毛刺,把后面模块的逻辑状态全打乱了。后来我加了一个延迟计数器,等电压稳定后再释放隔离,问题就解决了。

五、知识体系总览

下面这张图是我自己画的,把电源管理的基础知识串起来了。你仔细看看,应该能一目了然:

电源管理基础:电压域与电源门控 电压域(Voltage Domain) 核心思想:相同电压需求的模块划在一起 关键组件:电平转换器(Level Shifter) 设计要点: • 域间接口信号需要电平转换 • 不同域之间要有物理隔离 电源门控(Power Gating) 核心思想:不工作时切断电源 关键组件:电源开关单元 两种结构: • Header Switch(PMOS,接VDD侧) • Footer Switch(NMOS,接VSS侧) 电源门控操作流程 准备阶段 隔离阶段 关断阶段 保持阶段 唤醒阶段 恢复阶段 关键:唤醒时需等待电压稳定后再释放隔离单元 常见问题:IR drop、唤醒冲击电流、状态丢失

六、实际设计中的注意事项

最后,我把自己这些年踩过的坑总结一下,你们记好了:

  • IR drop问题:电源门控开关的导通电阻会带来电压降。我一般会在开关管两侧都加去耦电容,能有效缓解这个问题。
  • 唤醒冲击电流:模块从断电到上电的瞬间,会有一个很大的充电电流。我建议用分级唤醒的方式,先开一小部分开关,再逐步打开全部。
  • 状态保持:有些模块断电后需要保留状态,这时候要用到状态保持寄存器(State Retention Register),它有自己的小电池域。
  • 测试模式:别忘了测试模式下电源门控要能旁路掉,否则ATE测试时没法控制。

一个小技巧:我在做低功耗设计时,习惯在电源门控开关的控制信号上串一个RC延迟。这样开关切换时不会太陡峭,能有效抑制EMI问题。虽然会牺牲一点点开关速度,但整体可靠性提升不少。

好了,电源管理的基础就讲到这里。电压域划分和电源门控是低功耗设计的基石,理解透了,后面的动态电压频率调整(DVFS)、多阈值设计这些高级技术才能用得顺手。你们回去可以拿一个简单的模块练练手,试试看怎么加电源门控,怎么控制唤醒时序——纸上得来终觉浅,绝知此事要躬行啊。


公众号:蓝海资料掘金营,微信deep3321