拿到一张原理图,里面有个网络标号写着 1.2V,旁边又连着一个芯片的电源脚,很多人第一反应就是问:这 1.2V 到底是输入还是输出?这个问题看着简单,其实背后是一整套电源网络阅读的方法论。我这两年反复帮人评审原理图,发现十个人里有八个会在这个问题上栽跟头,尤其是碰到蜂鸟 M 这种裸芯形式的 RISC-V 处理器时,供电网络比普通封装芯片裸露得多,标注、滤波、外围器件稍不留神就埋雷。
这篇文章不绕弯子,就讲三件事:第一,怎么从一张原理图上判断某个电压轨(比如 1.2V)究竟是电源输出还是负载输入;第二,蜂鸟 M 裸芯供电架构有哪几个电源域,CORE 供电到底该怎么设计;第三,外围器件围绕供电网络必须守住的三个规矩。内容偏实战,适合刚接触 SoC 级电源设计的工程师,也适合那些拿到 RISC-V 核心板想自己改板的同学。
1. 1.2V 到底是输入还是输出?先别急着量电压
1.1 网络标号只是编号,不是结论
很多入门工程师有个误区,看到原理图上写着 1.2V,就默认"这个网络是供电的"。实际上,1.2V 只是一个网络(Net)的名字,它既不天然是输入,也不天然是输出,关键要看挂在这个网络上的器件引脚属于什么角色。
我一般把电源网络上的器件分成三类:
- 源(Source):能主动产生能量的器件,典型就是 DC-DC 的 SW/VOUT 引脚、LDO 的 OUT 引脚、以及外部电源接口。
- 载(Load):消耗能量的器件,比如处理器、FPGA、DDR、传感器等芯片的电源引脚(VDD、VDD_CORE、AVDD 这些)。
- 观测/缓冲(Monitor/Buffer):电压检测引脚、电源监控芯片输入、分压电阻网络等,既不给能量也不怎么耗能量,但会影响你判断。
所以,同一个 1.2V 网络,在 DC-DC 输出端它就是输出,在蜂鸟 M 裸芯的 VDD_CORE 引脚它就是输入。一句话:网络不分输入输出,引脚才分;判断的依据不是电压数值,而是驱动源。
1.2 三张图连起来看:电源树、芯片手册和网络命名
实际看原理图时,我习惯按下面的顺序快速定位:
- 先找驱动源:在原理图里搜索 1.2V 这个网络,看看它最终连到哪里。如果连到一颗 LDO 的输出引脚,且引脚旁边有输入电容,那答案基本就定了——这个 LDO 输出 1.2V,对 LDO 而言是输出。
- 再看负载端:继续追这条网络,如果连到处理器的 VDD_CORE、DDR 的 VDD、或者 FPGA 的 VCCINT,那么对这些器件而言,1.2V 是输入。
- 最后翻芯片手册的 Power 章节:手册里通常有电源树框图,明确告诉你每个电源域的电压范围、最大电流和上电时序要求。这是最权威的判据,不要凭经验猜。
比如用 OrCAD 画多页原理图时,我见过有人把两页的 Page Number 都设成了 1,结果导出 PDF 后页码全乱,最后为了确认一个 1.2V 网络有没有连对,硬是挨个页面翻了一遍,白白浪费一个小时。所以多页原理图设计里,养成编译检查(DRC)和统一网络命名的习惯特别重要,这直接关系到你能不能快速判断电压轨的来龙去脉。
1.3 蜂鸟 M 裸芯原理图上的 1.2V 长什么样
蜂鸟 M 是蜂鸟系列里以裸芯形式交付的 RISC-V 处理器,裸芯的意思就是不带封装、直接把 die 交给用户集成。这种形态下,原理图上的电源引脚往往是 VDD_CORE、VDDIO、AVDD 这样的名字,而不是普通芯片的 VCC/GND 加一个编号。
如果一张蜂鸟 M 工程的原理图上写着"1.2V_CORE",并且这个网络同时连到了 LDO 输出和蜂鸟 M 的 VDD_CORE 引脚,那么:
- 对 LDO 来说,1.2V 是输出;
- 对蜂鸟 M 的 VDD_CORE 来说,1.2V 是输入;
- 整个网络的核心属性,由"唯一驱动源"决定——也就是那颗 LDO。
很多初学者会忽略一个细节:裸芯没有封装引脚,供电网络直接暴露,所有滤波电容都必须画在外部原理图里。也就是说,你在原理图上看到的 1.2V 网络旁边,那一堆电容、磁珠、电阻,不是随便摆的——它们直接影响裸芯能不能稳定跑起来。
2. 蜂鸟 M 裸芯供电架构:几个电源域各有各的脾气
2.1 裸芯与封装芯片在供电上的差别
裸芯(Bare Die)和普通封装芯片最大的区别,就是没有引线框架、没有封装基板,die 上的焊盘(Pad)直接通过键合线或倒装方式连到 PCB。这意味着两个结果:
第一,寄生电感更小。封装芯片的 QFN、BGA 里那根 bond wire 是有电感量的,裸芯如果采用倒装(Flip Chip),电源到 die 的路径更短,高频去耦效果理论上更好。
第二,没有任何缓冲。封装芯片内部通常会在基板上放几个小电容,帮你吸收一部分高频噪声,裸芯则完全没有这些"内部福利",所有滤波都必须靠外围电路。这就是为什么裸芯方案对原理图上的供电设计更敏感,1.2V 这种核心电压如果不做专门的 CORE 滤波设计,很容易出现电压跌落或高频纹波。
蜂鸟 M 裸芯在嵌入式板卡里很常见,用户买回去往往还要自己做 SIP 封装或者直接 COB 焊接到板上。这个时候,供电网络的设计质量直接决定这颗核能不能稳定工作。
2.2 蜂鸟 M 的几个电源域
这里说的不是某个具体型号的绝对参数,而是基于 RISC-V 处理器和同类 MCU 裸芯的通用设计,实际以官方 datasheet 为准。蜂鸟 M 这类核通常分这几个电源域:
| 电源域 | 典型电压 | 主要作用 | 滤波要求 |
|---|---|---|---|
| VDD_CORE | 0.8V~1.2V | 核心数字逻辑供电 | 最严格,纹波控制在±3%以内 |
| VDDIO | 1.8V / 3.3V | IO 接口电平 | 中等,按对外接口要求选择 |
| AVDD | 1.2V 左右 | PLL、模拟电路 | 必须与数字电源隔离,尽量串磁珠 |
| VDD_RTC / VBAT | 2.0V~3.6V | 低功耗备份域 | 低电流,稳定即可 |
每个电源域之间不是独立的,它们有共地关系,也有时序关系。蜂鸟 M 和大多数现代 SoC 一样,通常要求核心电源先稳定、IO 电源后建立,或者至少同时上电。如果 VDDIO 先于 VDD_CORE 上电,内部 IO buffer 可能出现未知状态,甚至引起 ESD 保护二极管导通,导致电流倒灌。
2.3 在原理图上怎么对应"输入还是输出"
把上面的电源域画到原理图里,你会看到这样几条网络:
- VDD_CORE 左边接着 1.2V,右边接着一堆去耦电容,再往右是蜂鸟 M 的电源引脚。对蜂鸟 M 而言,1.2V 是输入。
- VDDIO 左边接着一颗 LDO,LDO 输入是 5V,输出 3.3V 接到 VDDIO。对 VDDIO 来说,3.3V 是输入,对 LDO 来说 3.3V 是输出。
- AVDD 前面往往有一枚磁珠,磁珠左边接数字 1.2V,磁珠右边接 AVDD,再接一个 10uF 和一个 0.1uF 电容到地。这里数字 1.2V 是输入,AVDD 是经过磁珠后的"干净 1.2V",用于模拟域。
我评审别人原理图时,会要求他们在网络标号上直接写明方向属性,比如 VDD_1V2_IN、VDD_1V2_CORE_OUT 这种。虽然会显得啰嗦,但能避免同事之间扯皮说"这个 1.2V 不是你那边给的吗"。网络命名清晰,是硬件工程师的基本素养。
3. CORE 滤波设计:目标阻抗法才是底层逻辑
3.1 为什么 CORE 电源最难伺候
处理器核心供电(CORE)之所以难,是因为它在极短时间内的电流变化率非常大。一颗中等规模的 RISC-V 核,从 idle 状态切换到全速执行时,电流可能在几十纳秒内跳变 1A 甚至更多。如果电源回路的阻抗太大,这段瞬态过程就会产生明显的电压跌落(Voltage Droop)。
以 1.2V 核心电压、纹波要求±3% 为例,允许的电压波动是 36mV。如果瞬态电流变化是 2A,那么整个供电回路的目标阻抗就是:
Z_target = ΔV / ΔI = 36mV / 2A = 18mΩ
这 18mΩ 不是 DC 电阻,而是从芯片电源引脚往里看、在特定频率范围内的总阻抗。开关电源的输出电容、PCB 走线、过孔、引线电感,全部叠加在一起,任何一环超出 18mΩ,纹波就可能超标。这就是为什么光靠电源芯片输出端一个大电容根本不够,必须在负载端做分布式滤波。
3.2 三层滤波:大电容管低频、小电容管高频
CORE 供电滤波我习惯分成三层:
- Bulk 电容(10uF~22uF):负责吸收低频瞬态能量,通常是钽聚合物电容或大封装陶瓷电容(0805、1206)。这层电容离电源芯片输出近一点,作用是稳定整个电源轨的"基本盘"。
- 中频去耦电容(0.1uF):这是最常见、也最容易被忽视的。0.1uF 陶瓷电容的自谐振频率大约在几 MHz 到几十 MHz 之间,正好填补 bulk 电容在高频段的空白。它们要尽量靠近芯片电源引脚。
- 高频电容(0.01uF~100pF):负责 GHz 级别噪声,一般直接放在裸芯电源引脚最近处。对于裸芯这种没有内部电容的芯片,这层电容几乎必不可少。
为什么不是所有电容都用同一个容值?因为电容不是理想的——它本身有寄生电感和电阻,形成一个 LC 串联回路,在自己的谐振频率附近阻抗最低。用不同容值的电容,就是为了在不同频段都维持低阻抗。如果三个 100uF 并在一起,它们在中高频段的阻抗反而可能更高。
3.3 摆位和过孔才是拉开水平的地方
原理图阶段可能看不出差距,但到了 PCB Layout,CORE 滤波设计真正见功夫。我总结了几个实测有效的规则:
- 0.1uF 去耦电容要放在裸芯电源引脚的 1mm 范围内,超过这个距离,电容到引脚之间走线电感就开始起反作用。
- 电容的接地端必须有独立过孔,不要多个电容共用一个过孔。共用过孔的等效电感会让高频去耦效果大打折扣。
- 电源平面和地平面要尽量完整,不要在电源引脚正下方跨分割,否则回流路径绕远,环形电感急剧增大。
- 核心电源主回路不要串磁珠。磁珠的本质是一个频率相关的电阻,直流成分也有 DCR,电流一大,压降立刻出现。磁珠只适合用在 AVDD、PLL 这类小电流模拟电源上。
有一块板子我印象很深,蜂鸟 M 跑起来偶尔复位,量 VDD_CORE 发现纹波到了 60mV,超过 1.2V 的 ±3% 限制。查到最后,问题出在磁珠上——设计者为了"滤波干净"在 CORE 主电上串了一颗磁珠,结果负载电流 800mA 时磁珠压降 100 多毫伏,纹波全进来了。把这颗磁珠去掉、换成 0Ω 电阻,再补两个 0.1uF 电容,问题立即解决。
3.4 目标阻抗法的实战估算
很多工程师听到目标阻抗就头大,觉得要仿真。其实前期用简单公式估算就能避免大部分坑。以蜂鸟 M 裸芯为例,假设 VDD_CORE=1.2V,最大瞬态电流 1.5A,允许纹波 36mV,目标阻抗约 24mΩ。
再粗略估算去耦电容数量:一颗 0.1uF 陶瓷电容在 10MHz 附近的等效阻抗大约在 200mΩ 级别(取决于封装和寄生参数),10 颗并联后约 20mΩ,勉强达标。加上 bulk 电容把低频阻抗压住,这个组合就基本能用了。
当然,这只是静态估算,实际还需要根据电源芯片的环路带宽、PCB 寄生参数做仿真或实测。但记住一点:宁可多并小电容,也不要依靠一个超大的电容撑全场。
4. 外围器件的三个规矩:源唯一、按频段、配置钦定
4.1 规矩一:一个电源网络只能有一个"源"
这是判断"1.2V 是输入还是输出"的核心原则,也是外围器件排布的第一纪律。任何电源网络,只能有一个驱动源。如果原理图上同一个 1.2V 网络同时接了 LDO 输出和另一个电源模块输出,就相当于两个源在打架,轻则电压偏移,重则电流倒灌烧芯片。
怎么避免?我的做法是:
- 在原理图上用电源符号(VCC、POWER_FLAG)明确标识每一个电源轨的源节点。
- 多路电源需要合路时,用 0Ω 电阻或磁珠做分割,方便调试时单点断开来定位问题。
- 用 DRC 检查一下电源网络是否存在多源冲突。
顺便说一个 OrCAD 的老坑:多页原理图时,Page Number 重复会导致网络连接图混乱,误以为两个网络是同一个。所以我建议项目一开始就统一页面编号规则,像 1.2V 这种网络,全局只用一个名字,不要在某一页叫 1V2、另一页叫 VDD_CORE_1V2,那是给自己找麻烦。
4.2 规矩二:滤波电容按频段选型,别拿数量硬堆
"多放几个电容总没错"这句话只对了一半。电容选型如果不在正确的频段发挥作用,放得再多也是浪费面积和成本。
以 1.2V CORE 供电为例,我常用的选型组合是:
- 1 颗 22uF/0805 陶瓷电容做 bulk(如果有空间,可以再加一颗 10uF)。
- 3~5 颗 0.1uF/0402 陶瓷电容分布在电源引脚周围。
- 2~3 颗 0.01uF/0402 电容靠近 die 的电源 Pad。
还有一个被忽略的参数是直流偏压特性。很多陶瓷电容在额定电压下容量会衰减,X5R 在 1.2V 下可能只剩标称容量的 60%~70%。所以选型时不能只看容值,还要看容值随电压变化的曲线,同一颗电容在 3.3V 下和 1.2V 下的实际容量差异可能很大。
4.3 规矩三:配置引脚的电平必须"钦定",不能靠运气
裸芯芯片除了电源和地,还有一堆配置引脚——复位脚、BOOT 选择脚、调试使能脚、JTAG 模式脚等。这些引脚的默认电平如果没设置对,芯片可能启动到错误模式,或者复位不稳定。
我见过最常见的坑是复位引脚:
- 上拉电阻取值太大(比如 100kΩ),抗干扰能力差,轻微 ESD 或电源抖动就把复位拉低;
- 上拉电阻取值太小(比如 1kΩ),功耗高,而且可能和复位芯片的输出冲突;
- 复位脚并了大电容,导致复位释放延迟太长,芯片还没起来,VDDIO 已经建立,造成时序混乱。
芯片复位脚我通常用 4.7kΩ~10kΩ 上拉到 VDDIO,配合专用复位监控芯片,而不是简单的 RC 复位。RC 复位虽然便宜,但上电时间和电源建立时间很难精确匹配,尤其在 CORE 和 IO 分别供电时,很容易出问题。
JTAG/SWD 调试接口的串阻也不能忽略。调试时钟线(TCK)上的串联电阻通常在 22Ω~33Ω,用来抑制信号反射;如果省掉,调试器可能时好时坏,这问题在裸芯上尤其明显,因为引脚边沿更快。
5. 现场排障实录:与 1.2V 供电相关的典型问题
5.1 板上量到 1.2V 只剩 1.05V
现象:蜂鸟 M 能上电,但经常在访问 Flash 时死机,万用表量 VDD_CORE 只有 1.05V。
排查过程:
- 先量 LDO 输出端,1.2V 正常。问题出在 LDO 到芯片引脚的中间环节。
- 检查发现 LDO 输出和 VDD_CORE 之间串了一颗磁珠,磁珠 DCR 大约 400mΩ,核电流到 500mA 时压降就有 200mV。
- 换用 0Ω 电阻后,VDD_CORE 恢复到 1.19V,死机问题解决。
这个案例说明,原理图上 1.2V 到底是"电源芯片给出的电压"还是"芯片实际吃到的电压",中间还隔着走线和磁珠、电阻。设计时要把这些压降都算进去,尤其大电流电源域,磁珠这种东西慎用。
5.2 CORE 纹波 60mV,裸芯随机复位
现象:蜂鸟 M 空跑没问题,一跑浮点或大量中断就复位,示波器看 VDD_CORE 纹波达到 60mV。
排查过程:
- 用示波器表笔加接地弹簧,直接在 VDD_CORE 滤波电容两端测,而不是用接地夹——地线夹会引入 5cm 以上的环路,测出来的全是假纹波。
- 确认纹波真实存在后,检查摆放。发现 4 个 0.1uF 电容离电源引脚超过 3mm,而且共用了两个接地过孔。
- 调整位置到 1mm 以内,每个电容单独打孔,纹波降到 25mV 以内。
这也是我反复强调的原理图设计和 PCB Layout 要一体化考虑的原因。原理图上的 1.2V 网络画得再漂亮,电容位置不对,一样白搭。
5.3 原理图两页都叫 1.2V,其实不是一个网络
现象:同事的工程里电源页有一个 "1.2V",负载页也有一个 "1.2V",DRC 报错欠奉,但板子回来后蜂鸟 M 不工作。
排查过程:
- 一开始以为是网络重名导致短路,仔细检查后发现是 OrCAD 多页原理图 Page Number 都设成了 1,导致编译时跨页连接符匹配错乱。
- 这种问题原理图检查时很难发现,因为看起来每条网络都有连接符号。
- 解决方案:把所有页面 Page Number 改回规范编号,重新编译,DRC 立刻报出一堆未连接引脚,其中就包括 VDD_CORE 悬空。
这个案例教训很直接:画多页原理图,第一件事就是检查 Page Number、Off-Page Connector 的名字是否全局唯一。否则连 1.2V 这种看似明确的网络,也可能因为连接符错乱而"名存实亡"。
5.4 复位电路上电后高电平来得太慢
现象:蜂鸟 M 上电后不工作,用示波器量复位脚,发现 VDDIO 已经稳定 200ms,复位脚才释放到高电平。
排查过程:
- 复位释放晚,本身不是致命问题,致命的是这 200ms 内蜂鸟 M 的电源时序被打乱——CORE 先上电了,IO 也上电了,但复位还没有释放,内部状态机可能已经跑飞。
- 检查复位电路,发现设计者用了一个 100kΩ 上拉加 10uF 电容,时间常数长达 1 秒,复位释放时间完全不可控。
- 换成专用复位监控芯片(阈值可调),复位释放时间做到 20ms 以内,问题解决。
我的经验是:凡是涉及到 CORE 电压 1.2V 这种低压、大电流、高敏感度的供电系统,复位电路最好都交给专用芯片管理,别用 RC 硬扛。
6. 再往下走一步:原理图阶段可以做的三件小事
这里说的三件小事,不是改方案,而是养成习惯,能帮你少踩很多坑。
第一件,给每个电源网络加注释。
在原理图上给 1.2V 网络加一行注释,写上"此网络由 U3 LDO 输出,供给蜂鸟 M VDD_CORE,最大电流 800mA,纹波要求≤36mV"。看起来啰嗦,但一年后你回头看这张图,会感谢当时的自己。
第二件,建一个电源树检查表。
每次评审原理图,先把所有电源轨列成表格,写清楚源是谁、负载是谁、电压多少、电流预估多少、滤波方案是什么。表格做完,1.2V 是输入还是输出、CORE 滤波够不够,一目了然。这比在原理图上大海捞针快得多。
第三件,把目标阻抗计算提前到原理图阶段。
设计 CORE 供电网络时,先在计算表格里预估目标阻抗,再决定电源芯片类型、电容数量和容值组合。原理图阶段就做这个,Layout 阶段就不会手忙脚乱。很多人等板子回来才发现问题,那是用硬件成本交学费,早算早省。
蜂鸟 M 这类裸芯处理器,供电架构并不复杂,难的是把每一个电源域的需求都落实在原理图和 Layout 的细节里。1.2V 这个电压,看着不起眼,一旦处理不好,整颗芯片就是一颗定时炸弹。你只要记住:网络标号不代表方向,引脚才代表方向;CORE 滤波不是堆电容,而是按目标阻抗分层布置;外围器件守好源唯一、按频段选型、配置钦定这三个规矩,原理图评审和硬件调试都会轻松很多。