首页 / 资讯中心 / 文章详情

VCC、VDD、VSS电源符号详解:从原理图到PCB设计的电源网络规划

VCC、VDD、VSS电源符号详解:从原理图到PCB设计的电源网络规划 ★ FEATURED ARTICLE
搞电子的人几乎每天都要跟VCC、VDD、VSS这几个符号打交道。原理图上有它们的身影芯片手册的电源引脚上全是它们PCB封装库里面也离不开它们。可你要是真问一句“VCC和VDD到底有什么区别”哪怕是有几年画板经验的人很多也答不上来。更常见的情况是大家默认VCC和VDD都是正电源VSS就是地画图的时候随手一标结果到了PCB阶段才发现网络关系混乱电源网络被拆得七零八落或者仿真时电源节点对不上白白浪费半天时间。这篇文章我想把这三个符号的来龙去脉理清楚再结合PCB设计里真正会遇到的电源网络、去耦电容、地平面、线宽过孔这些问题讲一讲从原理图到版图该怎么处理。内容不挑工具不管你是用免费EDA还是商业套件思路都一样。适合刚入门电子设计、正在学画板子的同学也适合画过几块板子但始终没认真琢磨过电源命名的朋友。1. 先搞清楚名字VCC、VDD、VSS到底代表什么1.1 三个符号的“出身”和原始含义VCC里的C是集电极Collector的缩写。早期双极性晶体管电路里NPN管的集电极要接正电源发射极接负端或地所以电路图上那个正电源轨就命名为VCC。由这个命名习惯延伸开来用双极性工艺做的运放芯片很多都标着VCC、VCC-或者VCC、VEEVEE里的E就是发射极Emitter对应负电源轨。VDD里的D是漏极Drain的缩写VSS里的S是源极Source的缩写。场效应管电路里MOS管的漏极接正电源源极通常接公共地于是CMOS时代习惯把正电源轨叫VDD公共参考端叫VSS。这是完全不同于双极性晶体管的一套命名逻辑。这就不难理解为什么很多老式TTL逻辑芯片上清一色写着VCC而大量CMOS数字芯片上则是VDD和VSS成对出现。它们本来就是两个不同工艺时代的产物只是后来都被用来表示“芯片的正电源”和“芯片的参考地”。我最初在这一块也犯过迷糊以为VCC和VDD必有严格的电压差别其实不是——它们在不同芯片里往往指同一个电压值只是命名习惯不同。1.2 为什么两个正电源符号并存习惯、工艺与标准缺失现在的问题在于集成电路工艺早就不是单纯的BJT或者单纯的CMOS了混合信号芯片内部既有双极型电路又有MOS管。芯片设计团队在写数据手册的时候命名风格也没有统一标准。有的团队习惯把所有电源引脚都写成VDD有的团队坚持沿用VCC还有的会把数字电源标成DVDD、模拟电源标成AVDD甚至按电压域拆分成VDD_IO和VDD_CORE。这就造成了一个很现实的场景在同一块PCB上一颗单片机用VDD表示3.3V主电源旁边一颗运放用VCC表示同一路3.3V而且这两颗芯片的电源脚还接在同一个网络上。原理图里VCC和VDD同时出现其实连的是同一个网络只是人为标了不同名字。对于新手来说这种混用非常容易引起困惑甚至怀疑自己是不是把电源接错了。我个人的建议是芯片手册里怎么标原理图里就怎么标这样别人读你的图时能对照手册检查但如果同一个网络本身是同一路电压最好统一网络名不要VCC、VDD、3.3V混着标否则后面整理电源树的时候会极其痛苦。1.3 VSS和GND是一回事吗模拟地、数字地与电源地很多初学者直接把VSS等同于GND这在单电源系统里基本没问题。比如一颗5V供电的单片机VDD接5VVSS接地VSS确实就是系统地。但VSS这个叫法本身只表示“源极电压”并不天然等于0V参考点。在双电源模拟电路里常见接法是正电源接VCC负电源接VEE而VSS可能并不会出现反过来有些芯片把负电源轨称为VSS比如某些音频运放或数据转换器数据手册写的是VDD接正电源、VSS接负电源中间的0V参考点叫AGND。这种情况下如果你还想当然地认为VSS就是系统地把VSS全部铺到地铜皮上负电源轨就和系统地对地短路了板子一上电就冒烟。所以千万不要把符号名当成电气属性一切以数据手册为准。至于GND本身其实还能拆成模拟地AGND、数字地DGND、功率地PGND。它们虽然都叫“地”但回流路径不同噪声特性也完全不同。模拟地承载的是小信号返回电流数字地承载的是逻辑开关产生的快速脉冲电流功率地承载的是大电流或者感性负载的换流回路。如果这三类地不做规划一股脑接在一起模拟小信号的地平面上会叠满数字开关噪声轻则波形变脏重则ADC采样值跳得没法看。这属于电源符号背后的“隐性知识”PCB设计阶段必须重点对待。2. 电源符号背后是电源网络原理图阶段就该想的事2.1 从符号到网络原理图里的VCC/VDD不是“电压标签”那么简单原理图里的VCC、VDD、VSS本质上是网络标签而不是电压值标签。网络标签相同的引脚在电气上就连在了一起。EDA软件在生成网表时会把这些同名网络合并成同一个电源网络。这带来一个容易忽略的问题如果你在原理图里既放了VCC符号又放了3.3V标签坐在同一颗芯片的电源脚上软件可能根据内部规则判断这是两个独立网络。多引脚器件在连接关系检查时一般会报错但有些绘制手法不规范时错误并不显眼等到PCB里抓网络才发现电源脚悬空了。更危险的是如果VDD和VCC被分成了两个网络而PCB上又正好有铜皮无意中把它们搭在一起DRC又不检查跨网络连接板子做回来就是隐性短路。画原理图时每个电源符号要明确归属一个网络名同一张图里同一个网络尽量不要出现多个不同写法。不少项目里出现过3.3V、VCC_3V3、3V3三种标签并存的情况不但读图费劲团队协作时还经常闹矛盾。2.2 电源树规划一张图理清每条电源支路把VCC、VDD、VSS这些细枝末节放一放整个电源系统能不能稳住关键在电源树。所谓电源树就是从一个总输入源开始捋出每一级转换、每一个分支电源网络最终的负载是谁、电流需求是多少。举个例子一块简单控制板外部输入5V板上有一颗3.3V的LDO给单片机供电还有一颗运放需要正负双电源。电源树的第一行是5V输入第二行是LDO输出3.3V网络和负压生成电路输出的-5V网络第三行就是各个负载单片机VDD脚、运放VCC脚、运放VEE脚、参考电压芯片的输入脚。每一行都要标注电流估算值。这块工作在原理图阶段做完PCB阶段就能明确知道3.3V网络要走多大电流、该铺多宽铜-5V网络对噪声敏感该不该加滤波5V入口该放多大储能电容。很多时候PCB布局乱、电源走线细、去耦电容容量不知道怎么选根源都是电源树没有先想清楚。我每次画板子第一件事就是把电源树画出来哪怕只用一张草稿纸也比直接开画强得多。2.3 电源符号在仿真环境里的存在方式在SPICE这类仿真软件里VCC、VDD往往不只是普通网络而是子电路模型的对内端口。许多厂家的芯片仿真模型已经把内部电路和电源引脚绑定好了原理图里如果只画了一个VDD标签却没有正确连接仿真模型的电源端口仿真结果就会完全离谱——要么报错说找不到节点要么偏置点错误导致电流全是零。我见过有人把一颗运放的仿真模型电源脚接到一个名为V的网络上而原理图里真正的正电源网络叫VCC结果仿真波形输出恒为低电平排查了半天才发现是网络名没对上。所以用仿真验证电路时最该先检查的就是电源网络名与模型端口名是否一一对应。这一条看似低级实际翻车率极高。3. PCB实战地平面、去耦与走线的真实玩法3.1 一块混合信号小板的电源地规划模拟地与数字地怎么分PCB设计里电源符号具体化以后最核心的工作是地平面设计。我以一块典型的混合信号采集演示板为例前端是传感器调理电路中间有一颗24位ADC后端是单片机整板同时存在模拟区和数字区。这类板子的地平面策略通常不是把AGND和DGND完全割裂而是让它们在一个关键点汇合。汇合点常选在ADC芯片的地焊盘正下方因为ADC芯片内部已经把模拟地和数字地连到了一起板级再分反而违背了芯片的物理结构。如果硬要在PCB上把AGND和DGND分开最终还是要用一根细线把它们重新连起来那就只是换了个地方单点接地而已还要冒着跨分割的风险反而不如直接在ADC下方汇合来得干净。模拟区里全部铺AGND数字区里全部铺DGND两者之间的分割带可以留一个0.5毫米左右的空隙然后在ADC地焊盘底下打过孔或者短接铜皮让两部分地最终在这一点相遇。这样数字开关噪声的回流电流主要限制在数字区不会大面积灌进模拟地。对于功率地如果是板上有继电器或者电机驱动功率地回路也要单独走线最后在电源入口的滤波电容负极处与其他地汇合避免大电流地弹冲击模拟小信号。3.2 去耦电容的摆放逻辑与计算公式去耦电容的容值选择很多人直接照抄参考设计0.1uF每个电源脚来一颗板上再撒几颗10uF。这种做法不能说错但搞清楚原理以后就不会乱放了。数字芯片在信号翻转瞬间内部等效为充放电回路会从电源引脚抽取一个很窄的电流尖峰。这个尖峰频率很高普通电源走线的寄生电感根本来不及供电流必须在距离引脚足够近的地方放一个小电容就近提供瞬态电荷。去耦电容本身也有等效串联电阻ESR和等效串联电感ESL所以不同容值的电容谐振频率不同。以贴片陶瓷电容为例0.1uF的0402封装典型谐振频率在几十MHz量级适合滤除高频噪声10uF或者更大容值的电容谐振频率更低适合稳定低频和提供较大电荷储备。这就是为什么电源系统里要大小电容搭配而不是只堆同一种容值。选好容值之后摆放比选值更重要。去耦电容必须靠近芯片电源引脚放置从电容焊盘到电源引脚的走线越短越好同时电容的接地端要就近打过孔到地平面。如果电容放得离引脚5毫米以上中间那截走线电感就已经破坏了高频去耦效果等于该滤波的地方没滤到。举个实际的例子某开发板上单片机的VDD脚放了一颗0.1uF电容但位置偏到了芯片侧面2厘米开外实测电源纹波在芯片引脚上接近150mV把电容挪到VDD脚紧邻位置后纹波直接降到30mV以内而且没有改任何容值。这个经验非常典型。3.3 线宽、过孔、电流估算一套可以抄的参考值电源走线到底要画多宽最简单的经验是在35um铜厚、1盎司的前提下外层走线1毫米宽大约可以承载1A电流内层走线由于散热差同样的1毫米可能只能承载0.6A左右。这是相对保守的估算温度升高允许放宽一些也可以加大载流能力但设计阶段建议按这个数字打底宁宽勿窄。如果需要更精确可以参考行业内普遍使用的电流-线宽计算公式I K × ΔT^0.44 × A^0.725A是铜截面积单位是平方密耳ΔT是允许温升K是系数外层约0.048内层约0.024。我一般不在项目里逐个手算而是直接用一个经验表格来配载流需求 | 1盎司铜外层最小线宽 | 推荐过孔数量 I≤0.5A | 0.5mm | 1个0.3mm过孔 0.5A~1A | 1mm | 2个0.3mm过孔或1个0.5mm过孔 1A~2A | 1.5mm~2mm | 3~4个0.3mm过孔 2A~4A | 2mm以上最好铺铜 | 视铜皮宽度加密过孔阵列过孔载流主要取决于孔壁镀铜厚度常规工艺条件下一个0.3毫米过孔大概能走0.5A到1A。所以大电流走线换层时不要只打一个过孔打三四个过孔并列是基本操作。你还可以给过孔阵列再铺一段短铜皮连接而不是让电流从单个过孔硬挤过去。另一个容易被忽略的是电源入口的滤波电容负极和负载的GND引脚之间地线回路的走线宽度要和正电源走线对应。电源走线拉了2毫米宽地走线却只走了0.5毫米细线回路阻抗不对称一样会导致压降和噪声。正负极永远是一对宽度和路径长度都要匹配。3.4 继续挖细节机械孔、螺丝孔与特殊封装板上固定用的M2螺丝孔很多人画PCB时候选封装都是随便放一个Keep-Out圆环结果打样回来要么螺丝头卡不住铜皮要么固定螺柱一拧就把焊盘弄掉了。M2螺丝的螺纹直径是2毫米PCB上安装孔的孔径一般取2.1到2.2毫米预留一点装配余量。如果你希望螺丝孔兼作接地连接比如把螺丝孔打到地铜皮上通过螺柱和金属机箱接地那么焊盘环宽就不要太小。普通固定用途的安装孔孔边到铜皮边缘留0.5毫米以上就够了但如果这个孔要过较大电流铜环至少比孔直径大2到3毫米最好再在边上打几个过孔把上下层地连接起来形成过孔阵列而不是靠焊环那一点点铜皮导电。要是用沉头螺丝孔径和角度都要根据螺丝头重新匹配一般建议直接调用封装库里的沉头孔封装不要去手工改圆改完往往不是大了就是小了。这一类细节网上搜索词热度很高也说明确实很多人在这一块拿不准。我的习惯是结构孔归结构孔电气连接归电气连接能不共用就尽量不共用实在要共用优先保证机械强度再用多孔阵列补齐电气通路。4. 布线纪律与DRC防止电源网络在版图上“变异”4.1 网络名一致性VCC和VDD别乱标PCB设计环节里原理图阶段的电源名称问题会直接延续到版图上。如果整个项目里VCC、VDD、3.3V混着用PCB网络表里会出现多个实际电压相同的网络铺铜分割时一不小心就把同一路电压铺成两块互不相连的铜皮然后某个器件或过孔接在其中一块上另一块完全悬空。这个问题DRC有时候能抓出来有时候提示只是孤岛铜很多新手根本看不懂提示是什么意思。解决办法很笨但很有效投板前用EDA软件的搜索工具把VCC、VDD、VSS这三个关键词全部搜一遍逐一确认它们各自属于哪个网络再对照电源树确认有没有多余的网络名。另外可以在规则管理器里专门把电源网络设置成高亮颜色这样铺铜后一眼就能看出同一网络的铜皮是否连成一片。4.2 布线约束设置与电源加粗规则现在主流的PCB设计工具基本都支持网络约束规则。在拉线之前我建议先把电源网络单独建立一个规则类在这个类里设置线宽下限、线距下限。举个例子普通信号线宽设为0.2毫米而3.3V、5V等电源网络的线宽下限直接拉高到0.5毫米以上地网络设置成0.5毫米以上。走线时EDA会自动把电源走线加粗不用等整板拉完之后再逐条去改效率高得多也稳妥得多。如果是4层板电源平面和地平面直接在层叠管理器里指定并给平面网络选择正确的电源网络名比如VDD_3V3和GND铺铜的时候就自动归属了。热门前沿词里经常能看到问“能不能在PCB里把叠层线宽线距设置进约束管理器里”的这里明确回答能而且一定要设。层叠信息写清楚规则管理器里指定对应层DRC就能自动验证线宽间距不用投板前拿尺子在屏幕上量。电源完整性在很大程度上就是靠这些早期约束撑起来的。4.3 回流路径与天线接地的工程经验PCB上每一路信号电流从源到负载之后都必须沿着某个路径回流到源。对电源网络来说这个回路就是地平面。如果地平面被切断回流电流只能绕开走环路面积变大对外辐射增加受干扰概率也增加。很多高频应用都会碰到“天线为什么要接地”的问题。以2.4G蓝牙PCB天线为例天线本身需要有净空区净空区正下方通常要保留完整的地平面作为天线的参考地。天线馈线周围的GND区域要打过孔缝合让上下层地连接充分避免地电位漂移。有人说天线接地是为了“把信号泄放掉”这个理解不完全对天线地提供的是一个稳定的参考电位和回流路径让天线的辐射特性可控。天线下面不接地等效于回流路径被挖掉天线的阻抗和谐振频率都会偏移驻波比变差信号传输距离缩水。我之前调试过一个2.4G模块板子尺寸很小为了省地方把天线下面的地铜皮挖掉了一大块结果实测通信距离不到10米怎么调匹配电容都没用。后来恢复天线正下方完整地平面并在天线周围加了一圈过孔缝合同样的电路通信距离恢复到35米以上。电源符号看似和射频没关系但它背后指向的网络和地平面设计到了高频阶段全是连锁反应。5. 调试阶段的电源排查经验5.1 通电前的检查顺序新板子拿回来不要急着接电源。第一步用万用表二极管挡或者电阻挡测一下板上主要电源网络对地的阻抗比如VDD对GND、VCC对GND。正常的数字电路电源对地阻抗至少要有几百欧甚至千欧以上。如果测出来只有几欧说明有短路常见原因是电解电容反插、芯片引脚焊接连锡、或者去耦电容贴反了。阻抗检查结束后第二步可以先用限流电源供电把电流限制在估算值的1.2倍左右上电。如果一上电就触发限流说明硬件还有硬故障优先检查电源网络。很多初学者一上来就接稳压电源满电流输出结果焊错的板子瞬间烧一大片限流上电可以大幅降低这种风险。5.2 常见的电源症状与定位方法芯片频繁复位第一反应查电源。用示波器探头直接点在芯片VDD引脚和GND引脚之间看有没有出现低于复位阈值的跌落。造成这类跌落的原因往往是瞬态电流过大而电源走线太细、去耦电容距离太远或者是几个芯片共用了同一段窄走线。ADC采出来的数值末尾几位乱跳除了检查模拟信号本身还要确认模拟电源和参考电压的纹波。测量时示波器要开启带宽限制到20MHz探头用接地弹簧而不是长地线夹否则测出来的全是你自己探头线圈上感应的噪声根本代表不了芯片真实工作状况。这类“测不准”的经验比选电容更值钱。5.3 仿真与实测的差距IR Drop与纹波EDA工具里做的电源完整性仿真可以算出整板铜皮上的IR Drop分布软件会显示哪些区域压降大。但仿真结果是基于理想模型和均匀铜厚实际板材、蚀刻偏差、过孔镀铜厚度都会影响结果。经常会遇到仿真显示压降只有30mV实测却有80mV的板子主要就是过孔镀铜偏薄或者走线宽度因为制造误差缩了水。所以我在投板前会在电源网络上重点位置加测试点比如主芯片的VDD引脚附近、LDO输出端、ADC参考输入附近各留一个过孔测试点。板子回来后用万用表直接量这些点的电压就能快速定位到到底是哪一段压降异常。加测试点这步操作只要十几秒调试时却能省出大半天。6. 写在最后的经验我个人画板子有个习惯原理图阶段的电源网络永远使用同一套命名体系凡是芯片手册上标VDD的原理图里网络名写成VDD_xxx凡是芯片手册上标VCC的写VCC_xxx但会把同一电压域的电源网络命名为同一个根比如VDD_3V3和VCC_3V3都连到3.3V网络。这样既不违背芯片手册的原始叫法又能保证网表里电压域清楚。VCC、VDD、VSS看起来只是三个不起眼的符号但从工艺历史一路走到PCB设计它们牵扯到网络规划、地平面、去耦策略、布线约束和整板调试。下次准备投板前把这三个符号对应的网络重新梳理一遍并把每个电源网络的载流能力、去耦电容布局、测试点位置都确认好你的板子一定能少出很多问题。
阅读完成 · 觉得有帮助?
咨询建站