
拿到一张原理图里面有个网络标号写着 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_CORE0.8V~1.2V核心数字逻辑供电最严格纹波控制在±3%以内VDDIO1.8V / 3.3VIO 接口电平中等按对外接口要求选择AVDD1.2V 左右PLL、模拟电路必须与数字电源隔离尽量串磁珠VDD_RTC / VBAT2.0V~3.6V低功耗备份域低电流稳定即可每个电源域之间不是独立的它们有共地关系也有时序关系。蜂鸟 M 和大多数现代 SoC 一样通常要求核心电源先稳定、IO 电源后建立或者至少同时上电。如果 VDDIO 先于 VDD_CORE 上电内部 IO buffer 可能出现未知状态甚至引起 ESD 保护二极管导通导致电流倒灌。2.3 在原理图上怎么对应输入还是输出把上面的电源域画到原理图里你会看到这样几条网络VDD_CORE 左边接着 1.2V右边接着一堆去耦电容再往右是蜂鸟 M 的电源引脚。对蜂鸟 M 而言1.2V 是输入。VDDIO 左边接着一颗 LDOLDO 输入是 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 LayoutCORE 滤波设计真正见功夫。我总结了几个实测有效的规则0.1uF 去耦电容要放在裸芯电源引脚的 1mm 范围内超过这个距离电容到引脚之间走线电感就开始起反作用。电容的接地端必须有独立过孔不要多个电容共用一个过孔。共用过孔的等效电感会让高频去耦效果大打折扣。电源平面和地平面要尽量完整不要在电源引脚正下方跨分割否则回流路径绕远环形电感急剧增大。核心电源主回路不要串磁珠。磁珠的本质是一个频率相关的电阻直流成分也有 DCR电流一大压降立刻出现。磁珠只适合用在 AVDD、PLL 这类小电流模拟电源上。有一块板子我印象很深蜂鸟 M 跑起来偶尔复位量 VDD_CORE 发现纹波到了 60mV超过 1.2V 的 ±3% 限制。查到最后问题出在磁珠上——设计者为了滤波干净在 CORE 主电上串了一颗磁珠结果负载电流 800mA 时磁珠压降 100 多毫伏纹波全进来了。把这颗磁珠去掉、换成 0Ω 电阻再补两个 0.1uF 电容问题立即解决。3.4 目标阻抗法的实战估算很多工程师听到目标阻抗就头大觉得要仿真。其实前期用简单公式估算就能避免大部分坑。以蜂鸟 M 裸芯为例假设 VDD_CORE1.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.2VDRC 报错欠奉但板子回来后蜂鸟 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 滤波不是堆电容而是按目标阻抗分层布置外围器件守好源唯一、按频段选型、配置钦定这三个规矩原理图评审和硬件调试都会轻松很多。