
第一次打开Cadence PCB Editor的时候我对着满屏的黑色背景和密麻麻的菜单栏愣了很久根本不知道该点哪里。网上关于Cadence的教程并不少但多数要么只讲某个快捷键怎么用要么甩给你一句“规则设置好就可以布线了”对真正想从零开始画板的人并不友好。这篇东西我打算换个方式把“从原理图到Gerber”这条完整链路串起来讲一遍所有的前置准备、规则逻辑、操作顺序、常见报错都会落到具体步骤上而不是停留在概念层。无论你是刚接触PCB设计的学生还是从其他工具转过来的工程师按着这个流程走一遍基本能画出自己的第一块板子。另外说一句文中涉及的菜单路径和参数基于我实际使用的Cadence 16.6/17.2版本版本不同菜单名称会有细微差异但核心逻辑是一致的。整个过程我会按真实项目的推进顺序展开不会跳过那些“看似不重要、其实很要命”的环节。1. 开工前夜版本选择与安装避坑1.1 选哪个版本16.6还是17.4很多人上来就问“Cadence到底用哪个版本”这个问题没有标准答案但我可以给出一些参考。16.6是目前很多老牌硬件公司还在用的版本稳定、教程多、网上遇到问题容易搜到答案学习成本相对低。17.2及以上的版本在界面交互、高亮显示、推挤布线等体验上做了不少优化尤其是动态铜皮的处理更智能如果电脑配置允许且不依赖老版本插件直接上17.2或17.4也没问题。我的建议是如果你是零基础自学者选16.6起步反而省心因为大部分网上的视频教程和文本教程都以16.6为操作环境如果你是公司项目需要和同事协作那以公司统一版本为准不要自己另装一套否则工程文件来回导来导去光是封装库和规则文件的兼容问题就够你折腾一晚。1.2 安装过程中最容易卡住的三个问题Cadence的安装流程本身不算复杂真正让新手崩溃的一般是License问题、环境变量和VC运行库报错。我装过太多次也帮别人远程排过不少发现高频问题集中在下面三处。第一同时安装了多个版本导致License服务冲突。Cadence的License Manager只能管理一个有效的License文件如果之前装过旧版本没有卸载干净新版本装完后服务启动时报错“Unable to Start License Server”是家常便饭。处理方式大体是卸载干净、删除残留目录、清理服务列表里的Cadence相关服务项然后再重装。能不动系统重装的前提下优先用LMTOOLS重新读取License文件并强制启动服务。第二启动时提示找不到“cdslic.dll”或License环境变量失效。这是环境变量问题需要在系统变量里确认有CDS_LIC_FILE或LM_LICENSE_FILE并指向有效的License文件路径。曾经我处理过一台机器安装正常但每次启动都报同样的错折腾半天发现是变量名大小写打错了Cadence对这类变量名敏感重新填好后恢复正常。第三报错信息里出现“microsoft.vc80.mfc”之类的内容。这个很经典因为Cadence老版本依赖VC2005/2008运行库系统缺少这些组件时启动Capture CIS或PCB Editor会直接崩溃或者弹DLL缺失。解决办法不是去下载各种乱七八糟的DLL文件而是安装对应版本的Microsoft Visual C Redistributable装完重启基本就解决。安装完以后建议第一时间做一个操作用管理员身份启动一次所有组件。Cadence在非管理员权限下经常出现莫名其妙的“右键无反应”或“菜单灰化”问题这不是软件坏了是权限不够导致部分功能模块没有正确初始化。1.3 建库思路原理图符号、PCB封装和仿真模型的关系Cadence的库体系和Altium不太一样很多人从AD转过来后会有点不适应。在Cadence里原理图符号库里放的是“逻辑符号”PCB封装库里放的是“物理封装”两者通过“封装名称”字段建立关联。也就是说你在原理图中放一个电阻必须保证它的PCB Footprint属性填写的名称在PCB封装库里能找到一个对应名称的封装。工艺库和仿真模型又是另外的概念。工艺库一般是针对仿真工具用的比如Pspice模型里定义了器件在不同温度下的电气参数用于跑瞬态仿真、AC分析等如果你只做PCB设计不跑仿真这一步可以先跳过不影响画板。给新手的建议是第一块板子不要自己从头画封装先用Cadence自带的封装库或者从元件厂商官网下载官方封装库。等你有经验了再慢慢积累自己的公司库。自己画封装很容易出现焊盘尺寸偏差尤其是小间距的QFP和BGA封装差一个mil焊上去都可能虚焊。画完一个工程后养成把用到的封装统一拷到本地库目录的习惯别散落在各个临时工程里。不然等做第二个项目时你会发现原理图里所有器件都变成了“封装缺失”的可疑状态。2. 从原理图到PCB板框第一处关键跨越2.1 生成网表前必须完成的检查原理图画完不等于可以直接转PCB至少得确认三件事。第一DRC检查通过。在Capture中执行“Design Rules Check”检查是否有悬空的引脚、重复的位号、未连接的电源引脚等。这一步很多人偷懒跳过结果导入PCB Editor后报出一堆错误再回头逐个找问题反而更浪费时间。第二位号整理。组织好元器件的位号不要出现R1、R2跳着用的情况。可以用“Annotate”功能自动重排在导出网表前把位号理顺后面布局、出BOM都会省很多事。第三确认每个器件都有正确的PCB Footprint属性。这是一个非常容易忽略的点。网上找到的原理图库有时会漏填Footprint或者填了个不存在的封装名这时候导出网表虽然不会直接报错但导入PCB时会有大量器件因为没有封装而丢失。确认完这几点就可以通过“Create Netlist”生成网表了。在Netlist对话框中输出格式选择“PCB Editor”勾选“Create PCB Editor Netlist”然后指定输出目录。生成过程中要留意底部的Log窗口任何“Error”级别的提示都可能影响后端的导入必须逐个处理而“Warning”可以先记录下来不一定致命。2.2 板框Outline的两种主流画法拿到网表后第一次打开PCB Editor会觉得无从下手这时候第一步不是急着摆放器件而是先把板框画出来。板框决定了整块板的物理边界也影响后续布局、布线和铺铜的范围。第一种方式从结构图纸导入DXF。这是工程实际中最常用的方式。结构工程师通常会给一份DXF格式的外形图包括螺丝孔位、连接器开槽位置、异形边缘等。在PCB Editor中通过“Import → DXF”导入导入时需要注意单位换算DXF里一般是mm而PCB Editor默认工作单位是mil建议在导入前把设计单位先切到mm再操作不然换算错误会导致板框放大39.37倍。导入后还需要把DXF线条所在的层映射到“Board Geometry/Outline”层因为DXF文件里的线条默认都在“DXF”层或其他自定义层只有把它们移到Outline层后端处理才知道这是板框边界。第二种方式在没有结构图的情况下手工绘制。用“Add → Rectangle”或者“Add → Line”在Outline层画出矩形或异形板框。别上来就随手画先用“Setup → Design Parameters”把设计单位和格点设置好常用格点设为0.254mm10mil或0.5mm画起来更规整。画的时候鼠标点的位置不一定精确但可以用命令行输入坐标的方式定点比如在命令行输入“x 0 0”再输入“x 100 0”这样能保证边界的绝对精度。无论用哪种方式画完板框后都用“Dimension”工具标注关键尺寸对着做一次确认养成这个习惯以后拼板、出结构图都不容易出错。2.3 叠层设置单面板、双面板还是四层板叠层是很多人忽略但实际影响很大的设置。在PCB Editor里通过“Setup → Cross-section”打开叠层管理器你会看到默认的层结构。对于普通LED驱动、简单控制板双面板足够了顶层走信号、底层走地或电源。如果板子有高速信号、大电流、或者对EMC要求较高建议直接上四层板顶层信号、第二层地平面、第三层电源平面、底层信号这样信号回路面积小抗干扰能力大幅提升成本增加的其实有限。层数确定后铜厚也在叠层里一并设置。默认是1oz约35um大功率电源板如果流过几安培电流可以考虑把电源层和底层铜厚加到2oz降低走线温升和压降。叠层里的“Type”字段有“plane”和“conductor”两种设置。很多人不理解简单说“conductor”是走线层可以铺铜也可以走线“plane”是平面层默认设置为负片用于整块电源或地网络不适合走信号线。用反了会导致该层无法正常走线或铺铜这点在设置时要特别留意。3. 约束规则先于布线线宽与间距背后的逻辑3.1 约束管理器里的“最小配置”很多自学Cadence的人容易陷入一个误区把网表导进来就直接开始摆放器件、走线等走完线才发现有些地方间距不够或者电源线太细导致压降超标再回头修改很痛苦。正确的做法是在布局布线之前先花半小时把约束规则设置好。打开“Constraint Manager”里面需要优先配置的是间距规则和物理规则。间距规则Spacing指的是铜皮、走线、焊盘、过孔之间的最小间距。常规数字电路板可以设为6mil以上有BGA或者高密度器件时可以适当减小到4mil到5mil但要在自己的加工厂确认制程能力。对于初学者建议保守起见统一设为8mil宁可牺牲一点布线空间也不要做出加工困难的板子。物理规则Physical里面需要设置线宽。Cadence默认线宽往往是10mil这对信号线还行但电源和地线就远远不够。通常我会把默认线宽设为8mil最小线宽设为5mil最大线宽不设然后在网络层面给关键网络单独分配更宽的线宽规则。3.2 电源线和地线的线宽怎么定一个简单的估算经验电源线宽不能拍脑袋决定它和电流、铜厚、允许的温升都有关。工程上有一个粗略估算经验在1oz铜厚、温升10度以内的条件下走线宽度按每安培电流对应约20mil到40mil来取。比如一个USB口最大输出1AVCC网络线宽至少给20mil留些余量的话给到30mil更稳。如果是电机驱动板电流到3A以上那就不建议靠走线硬扛了直接在高电流路径上铺铜或者加跳线、开窗加锡。在Constraint Manager中可以设置“Net Class”来管理这些规则比如创建一个“POWER”类把5V、VCC、VBAT等电源网络加进去然后单独为这个类指定50mil线宽再创建一个“GND”类设为整体铺铜连接不单独走线。这样你在手动布线时按线宽规则走Cadence会自动帮你约束走出来的线不会出现“电源线细得像信号线”的尴尬。3.3 为运算放大器等模拟电路预留的规则思路如果你这块板子包含运算放大器或者传感器信号调理电路建议在约束阶段就考虑模拟信号的特殊性。模拟信号对噪声敏感走线时要避免和数字信号长距离平行最好在模拟区域下面铺完整地平面。在约束规则上模拟信号线的线宽可以设置得和普通数字线一样但间距可以适当加大减少串扰。还有一点模拟地和数字地虽然在原理图中往往用0欧电阻或磁珠连接但在PCB里是否分隔、在哪里单点连接建议在布局前就想好而不是等走完线再想着怎么切地平面那时候改动成本很高。4. 布局、布线与铺铜真正上手画板的三个环节4.1 布局用最合理的方式把器件放到板框内布局是PCB设计中“上限最高、下限最低”的环节同样的原理图不同的人布局画出来的板子性能可以差很多。这里的核心思路是先确定固定件的位置连接器、按键、LED、安装孔再围绕核心芯片布置外围电路。举个最常见的例子单片机的去耦电容。每个电源引脚旁边都应该放一个0.1uF电容且电容到电源引脚的连线越短越好最好就在引脚旁边0.5mm到1mm的范围内。这个电容的作用是给芯片提供一个低阻抗的瞬态电流源如果放远了走线电感明显变大去耦效果大打折扣芯片高速翻转时电源噪声会明显增大。我见过不少新手把去耦电容放在板子角落还觉得“反正原理图连上了就行”这就是典型的只看连接、不看物理位置。布局阶段还有几个实用技巧。一是善用“Placement Edit”模式下的对齐和分布工具选中多个器件后执行对齐板子看起来会非常整洁。二是把极性器件电解电容、二极管、LED的方向尽量统一方便后面焊接和检查。三是大功率器件要留出散热空间周围不要放温度敏感的元件如果是TO-220这类封装还要考虑它的散热片方向和周围元件的高度干涉。4.2 布线优先级信号、地、电源哪个先走布线顺序很大程度决定了板子的成败。我的经验顺序是这样的先走关键信号线再走普通信号线然后用铺铜解决地和电源的连通最后再处理那些打补丁式的杂线。为什么不先把电源线走了因为电源网络优先用大范围铺铜来承载比单根走线的载流能力强得多、压降也小。如果一开始就把电源用细线走完后面铺铜时反而碍事只能一遍遍修铜皮。当然如果电源网络之间需要跨层连接可以在关键位置放过孔把顶层和底层的铺铜连起来。对信号线尤其是时钟线、复位线这类敏感的线尽量走成直线、少打过孔。如果必须换层至少要在旁边安排一个地过孔提供回流路径。这个知识点很多新手不懂信号换层后回流电流没有跟过去回路面积变大EMI和信号质量问题随之而来。在信号线旁边打一个GND过孔就是为了把回流路径“接住”。4.3 走线时的格点、快捷键和“走线像样”的技巧Cadence的交互式布线器对新手还算友好但需要先设置好格点。格点设太大走线绕来绕去不灵活格点设太小走线歪歪扭扭不好看。一般建议布线时格点设为5mil方向切换用F2键或右键菜单切换。ShiftF2是推挤模式开启后走线会自动推开旁边已走的线好用但也容易把别人已走好的线挤到违规用的时候要注意左下角的DRC标记有没有变红。实际走线时我习惯先把大方向走完再回到“Slide”模式调整线形把线拉直、推顺。这比走一步调整一步要高效得多。走线尽量做到“横平竖直”即同一层的线尽量保持水平或垂直走向不要出现45度折线以外的角度这样既美观也好维护。过孔不要乱打打一排过孔时要对齐看着舒服是一方面另一方面加工时也不容易出现孔偏。4.4 铺铜与铜皮优先级这可能是你第一次听说的设置铺铜在Cadence里用“Shape → Add”操作选择所在层和网络后沿着板框画一个大致轮廓软件会自动填充。但初学者铺铜后经常会遇到一个问题同一层上多个铜皮重叠时后画的铜皮把先画的覆盖掉了或者彼此咬合得乱七八糟。这时候就要用到铜皮优先级。在Cadence的PCB Editor中通过“Setup → Shape Priority”可以查看和设置铜皮的优先级。数字越大优先级越高高优先级的铜皮会覆盖低优先级的铜皮。同一个网络的不同铜皮之间如果没有设置优先级重叠区域容易产生毛刺或间距错误。通常我的做法是地网络铜皮优先级设低一点电源网络铜皮设高一点这样当两个铜皮在某个区域需要重叠时电源铜皮会“压”在地铜皮上避免出现细小的铜皮残片。另一个高频问题就是“禁止铺铜区”。有时我们希望某个特定区域不要有铜皮比如板边要留出安全距离、安装孔周围不要铺铜、天线区域要挖空这时不能靠“少画一块铜皮”来规避因为动态铜皮会自动填满解决方法是添加“Route Keepout”区域。在“Setup → Areas → Route Keepout”里画一个矩形或异形区域在这个区域内就不会有走线和铜皮。操作完成后尽量跑一遍DRC因为Keepout放置不当会导致区域内的过孔或走线报错。对于异形焊盘或连接器位置还可以用“Shape → Manual Void”手动开洞。尤其是那些自带金属外壳的连接器如果铺铜后外壳焊盘附近的铜皮没有避让焊接时容易连锡或者导致接地不良。4.5 两个版本的差异静态铜皮和动态铜皮Cadence 16.6和17.2在铜皮处理上有一个关键差异。16.6默认的铜皮是动态的它会根据周边走线自动避让修改走线后铜皮会自动刷新。17.2加入了更智能的动态铜皮引擎但很多公司还在用的静态铜皮则需要手动更新。如果你不小心把铜皮设置成静态铜皮又在上面走了线界面会出现明显的DRC标记这时候选中铜皮执行“Shape → Select Shape or Void/Cavity”右键选择“Change Shape Type”把静态改为动态系统会自动避让所有相关对象不用一块块重新修铜。这个操作很多教程里不会提但实际项目里几乎每天都会用到。5. DRC检查与生产文件输出把板子安全送出厂5.1 DRC怎么跑才“干净”DRCDesign Rule Check是PCB设计交付前的关键步骤跑不干净就发出工厂轻则板子报废重则焊接不良、无法功能测试。Cadence的DRC检查通过“Display → DRC Browser”查看结果也可以通过“Tools → Design Rule Check”一键执行。常见错误类型我整理了一张表DRC错误类型大概原因处理方式Spacing violation间距小于约束规则设置值调整走线或焊盘位置或确认规则设置是否过于激进Line to shape spacing走线距离铜皮太近走线避让或调整铜皮边界Unconnected pin有引脚未连接回原理图检查连接关系Missing net connectivity走线断开了网络连接用“Show Rats”查看飞线补线Manufacturing violation过孔或走线距离板边过近移动过孔保证离板边至少0.3mm以上实际跑DRC时我建议分两遍。第一遍按“严格模式”跑即所有间距按最小规则把所有报错都列出来逐条确认哪些是真实问题哪些是调整铜皮后可以自动消除的“假错误”。第二遍按“生产模式”跑把走线宽度改为工厂要求的最小值检查有没有超细走线或过孔环宽不足的情况。如果DRC报错太多不要一个个去“忽略”先看错误集中在哪些网络或哪些区域往往是某个元件封装用错了、或者某段走线整体偏移了定位根因可以节省大量时间。5.2 输出Gerber那些容易漏掉的选项Gerber文件是交给PCB工厂的光绘文件Cadence通过“Manufacture → Artwork”来输出。在Artwork Control File对话框中需要把要输出的层面勾选上顶层走线、底层走线、顶层丝印、底层丝印、顶层阻焊、底层阻焊、板框层以及钻孔文件。这里要说几个新手特别容易漏掉的细节。第一阻焊层和助焊层要分开导出。阻焊层Soldermask是用来开窗的助焊层Pastemask是钢网层两者不要混淆。如果你发现PCB板上焊盘没有露出来大概率是阻焊层没有正确输出。第二钻孔文件用“NC Drill”导出格式一般选择Excellon格式。导出后配合光绘文件一起打包发给工厂钻孔和走线对不上是很多工厂反馈的高频问题。第三输出前要把所有层上的“Outline”都包含进去。有些工程有多个板框层比如“Board Geometry/Outline”和“Board Geometry/Design_Outline”工厂是以上面的Outline层为主多余的板框层没有清理会让人困惑。输出完成后用Cam350或Cadence自带的Viewer把光绘文件重新导入肉眼检查一遍每一层的内容是否和你的设计一致。这个习惯极其重要因为有些问题在PCB Editor里看着是正常的但Gerber导出后会出现文字重叠、铜皮缺失等渲染问题提前用专业工具复查能帮你避免板子打样回来才发现的“低级事故”。5.3 从AD转到Cadence的高频困惑现在很多公司从Altium Designer转到Cadence网上相关的讨论也很多。两款工具的差异点和“为什么转”这类话题我贴一个简短的对比帮新转过来的同事快速建立认知对比点Altium DesignerCadence Allegro学习曲线相对平缓陡峭但后期效率高规则体系直观但较松散严谨约束管理器功能强大大型板卡高性能板会明显卡顿对大板、高密度板支撑更稳定协作与库管理库管理相对混乱库结构清晰适合团队协作仿真能力需搭配其他工具和Pspice/Sigrity联动更紧密这并不代表Cadence绝对优于AD只能说在大型复杂板卡、多人在线协作、严格约束管理这些场景里Cadence更适合。个人小项目或学习阶段AD的上手速度确实有优势但如果你确定之后要走专业硬件方向早一点适应Cadence的操作逻辑长期受益会更明显。6. 实测过程中遇到的“怪问题”复盘最后分享几个我在实战中踩过、后来发现很多人也绕不过去的坑。第一个是“铜皮上有碎铜但看不到怎么回事”。出现这种问题十有八九是铜皮优先级没设置重叠的铜皮互相咬合在Cadence里看起来是正常填充但Gerber里会出现很多细小的铜尖。解决办法是在铺铜前做好铜皮规划比如同一层上只保留一个网络的大面积铜皮其余网络用走线或内层平面来解决。第二个是“封装导入PCB后器件飞了”。原理图导出网表后在PCB Editor里按“Quickplace”把器件放到板框外结果有些器件在很远的位置。这多半是原理图里的原点坐标差异问题可以通过选中器件右键“Move”并输入坐标0,0来拉回。如果每次都要这么搞检查一下原理图的页面设置把原点统一到图纸左下角。第三个和运算放大器相关。运放电路板画完后上电发现输出有振荡排除芯片问题后最后发现是反馈电阻下面的地平面被走线切断了导致回路面积变大。这类问题在原理图上完全看不出来只能在布局布线时提前做好规划把反馈网络放在芯片附近下方保持完整的地平面别在敏感电路下方走数字线。画完几块板子后回头看Cadence真正难的不是某个命令怎么用而是那一整套“先规划再动手”的流程意识。规则先设置好、板框先确认好、铜皮优先级先想好后面每一步都会顺。这里分享的这些操作细节都是我一遍遍打样、调试、返工之后攒下来的照着做不敢保证你的板子一版成功但至少可以帮你少走我当年走过的那些弯路。