ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

Allegro飞线颜色修改与显示配置详解:从配色到恢复默认

Allegro飞线颜色修改与显示配置详解:从配色到恢复默认 做PCB设计的人估计都有过这种时刻板子叠到十几层器件密密麻麻布局阶段盯着满屏的飞线眼睛都快看瞎了。Cadence Allegro里那一根根网络飞线默认状态下全是同一种颜色想在几百条连线里快速找到“电源正”“地”“差分对的P和N”全靠脑内硬记和鼠标悬停效率低得让人抓狂。这其实是很多新手刚接触Allegro时会卡住的一个点软件功能太强选项太多反而连最基本的“把某一类网络换个颜色”都不知道从哪里下手。我最早也被这个问题困扰了很久后来用熟了才明白Allegro的飞线颜色管理并不是单一功能而是由显示颜色配置、网络高亮、颜色文件保存这三条线共同支撑的。把这个底层逻辑理清楚之后无论是临时改个颜色看网络走向还是做出适合自己眼睛的长期配色方案甚至把配色文件带到别的电脑上统一环境都很轻松。这篇就把我的实际操作方法、踩过的坑全写出来特别是“恢复默认设置”这块网上的资料大多含糊我会把几种靠谱的做法都拆开讲。1. 动手改颜色之前先理解飞线到底在替你表达什么很多教程上来就教怎么点菜单但不说清楚背后的设计意图导致读者换一个版本、换一个场景就不会用了。我这里反过来先聊聊Allegro里飞线颜色的底层逻辑搞清楚这层菜单再怎么变你都能自己找到地方。1.1 飞线不是装饰是布局阶段唯一的“连接地图”飞线ratsnest在PCB设计里的作用相当于一张不占用实际铜皮的连接关系图。布局还没定、铜皮还没铺的时候芯片的哪些引脚要连在一起全靠飞线表达。Allegro里每一条飞线都代表一个逻辑连接网络名、所属网络类、差分对关系这些信息背后都绑在飞线上。但问题是一张复杂的板卡上电源网络可能有几十个地网络有一堆高速信号按组区分普通控制信号又是另一堆。全部用默认的浅蓝色或灰白色显示你的眼睛只能靠线的密集程度和方向去猜。改颜色的本质不是为了让界面好看而是为了让“视觉优先级”和“设计优先级”匹配。哪些网络是你在意的、需要频繁追踪的就用高亮颜色标出来哪些是背景网络、不用频繁看的就让它保持低调。我自己惯用的策略就三条电源网络用暖色红、橙地网络用绿色差分对或关键高速信号用冷色区分蓝、紫其他普通信号保持默认。这套方案在Allegro里操作起来非常顺手而且后期检查信号完整性、排查短路风险时眼睛扫一眼飞线颜色立刻能判断这块区域里哪类网络占主导。1.2 颜色分组的真正价值给眼睛减负你可能会觉得改颜色只是让图面更好看不影响布线结果。这话对了一半。改颜色确实不影响电气属性但它直接影响你的判断速度和准确率。布局阶段你要反复做几件事看芯片之间的连接是否交叉、判断能不能把外围器件挪近一点以减少飞线长度、评估绕线空间。如果所有飞线都是一个颜色你必须要用鼠标点住一条网络才能知道它的名字一条条看非常耗神。而给关键网络上了颜色之后放器件、拉约束、调丝印整个过程里眼睛会自动追踪对应颜色的飞线基本不用停下手来确认网络名。实测下来一块中等复杂度板子合理的飞线配色能让布局前期的效率提升两三成这还不包括眼睛疲劳度下降带来的隐性收益。1.3 评审和自检场景下的“颜色即标注”我在项目评审的时候经常靠飞线颜色来讲图。把电源网络统一成红色之后再拉出显示设置大家一眼就能看出板子上电源网络的分布密度和走向不用对着密密麻麻的白线猜。自检的时候也一样比如你要核查某个BGA区域里地网络的飞线分布是否均匀给地网络一个特定颜色整块板子上地网络的“势力范围”就清清楚楚。所以说飞线颜色管理不是Allegro里的边角料功能它是贯穿布局、评审、检查的一套辅助手段。下面我讲的这些操作都是围绕这个思路来的。2. 快速给网络飞线换颜色的几种正经路子确定了要改颜色接下来就是具体操作。Allegro版本从16.6到17.4菜单位置和名称略有差别但思路一致。我以17.2和17.4为主同时标注16.6的差异。2.1 第一招走 Display Color/Visibility 界面精确分配颜色这是最常用、也最不容易出错的方法。打开Allegro执行菜单命令Display - Color/Visibility这一步之后会弹出“Color/Visibility”对话框部分汉化版里叫“颜色/可见性”。注意这个对话框默认显示的是“Layers”页签管的是各类图层的颜色和可见性网飞线颜色并不在这一页。你要点击对话框顶部的那个页签通常叫“Net”或“Net List”。切到Net页签后界面上会列出当前设计里的所有网络名称。你可以直接在列表里选中一个网络然后在下方的颜色块里点选你要的颜色。操作顺序非常简单在Net列表里找到目标网络比如“3V3_MAIN”。单击这个网络名选中它。点击右侧或下方的颜色调色板选一个颜色。点击“Apply”或“OK”飞线颜色立即更新。这里有个需要注意的地方Net页签里选网络时你可以用鼠标配合Ctrl或Shift做多选一次给多个网络换上同一种颜色效率会高很多。我自己常用的是“在列表中先手输关键词过滤”——对话框上方一般都有过滤栏直接输入“GND”或“3V3”就能把相关网络筛出来省得一个个翻几百行网络名。提示Color/Visibility对话框里的Net列表显示的可能会同时包含物理网络和“No Net”等特殊项。你改“No Net”的颜色也能改但那种网络没有实际连接意义一般不建议分散注意力去调。2.2 第二招用命令行的 assign color 快速改单条网络适合那种“我就想立刻把这一条网络的飞线变个颜色”的场景。直接在Allegro命令行输入assign color回车之后光标会变成一个笔状或十字形状。这时你只需要点击画面上任意一条飞线或任意一个引脚就会弹出颜色选择框选好颜色这条网络就换色了。想连续改多条网络就在命令行里多敲几次或者用向上键重复命令。这个命令的优势是快不需要打开对话框、不需要在列表里搜索眼睛看到哪条线就直接点哪条。缺点是只能一条一条来批量改的时候不如第一种方法高效。16.6版本里这个命令同样可用位置不变。2.3 第三种思路利用高亮效果实现“临时着色”很多人不知道Allegro里的“高亮”和“飞线颜色”是两个不同的机制。高亮是通过临时覆盖颜色来提醒视觉注意力和你专门给网络设置的飞线颜色互不干扰。操作上用菜单Display - Highlight或命令行highlight然后再去点网络、点引脚这个对象就会被系统的高亮色盖住。默认情况下高亮显示会同时作用于走线、焊盘、飞线这几类对象效果非常醒目。那为什么我要把高亮也放进这篇讲飞线颜色修改的文章里呢因为实际设计中很多临时要看的东西根本没必要永久改颜色。比如我要查某个时钟信号从源头到终点的飞线走向用高亮点一下看完再取消高亮完全不影响原来的配色方案。如果你直接用assign color改了飞线颜色后面还要惦记着改回来多了很多工作量。2.4 版本差异16.6、17.2、17.4在菜单上的小变化老版本的Allegro 16.6里Color/Visibility对话框比较“传统”Net页签是独立的切换进去就行。17.2之后界面开始现代化部分按钮位置有调整但整体逻辑没变。17.4默认界面更扁平化Color/Visibility对话框可能默认是“Color”或“Layer”视角你需要手动切到“Net”视角。如果遇到找不到Net页签的情况可以在对话框底部或顶部找一个下拉列表里面通常有“Layer”“Net”“Package”等切换选项。注意17.4还提供了一套新的显示系统叫“Interactive”或“Modern”视图老用户如果不适应可以在启动时选择“Classic View”回到传统界面。飞线颜色修改的方法在两种视图下都能用只是新视图里对话框布局更紧凑功能搜索框更强一些。3. 批量处理和多人协作时的效率技巧前面说的方法处理十条二十条网络完全够用。但碰到上百条网络都要做颜色分组时就得换一种更系统的玩法了。这一节写的是我压箱底的经验。3.1 借用网络类Net Class来按组着色Allegro里非常核心的概念是“网络类”。你可以在约束管理器Constraint Manager里把各种网络归类比如所有复位信号归成一个Class所有DDR信号归成另一个Class。这些网络类不只是给约束规则用的它们也能同步作用到飞线颜色的管理上。具体做法是在Color/Visibility对话框的Net页签里有些版本提供了按类过滤的功能你可以从网络类下拉列表里选一类网络然后统一上色。如果你的版本没有直接支持按类上色那就先在网络列表里按类名排序手动把同一类网络的项全选再分配颜色效果完全一样。这种方法适合规范的团队项目。设计一开始就定好网络划分标准后续所有成员用同一套命名和归类配合颜色文件大家打开板子看到的是同样配色沟通起来非常顺畅。3.2 “保存配色文件”应该是每块板子的标配动作Allegro允许你把当前显示颜色配置保存成一个文件后缀一般是.color。保存方法在File - Export - Color或者直接在Color/Visibility对话框里找“Save”按钮具体名称不同版本有差异。保存之后你会得到一份记录了所有图层颜色、飞线颜色设置的文本文件。这个文件很小几十上百KB的样子。为什么我说是“标配动作”因为PCB设计周期很长中途可能要换电脑、装新版软件、或者给同事分图。没有这份配色文件所有的颜色设置都要重新折腾运气不好还得靠记忆恢复痛不欲生。我一般会在布局初期就把配色调整到位然后立刻导出存一份放到项目文件夹下的setup目录里随工程一起走绝对不嫌弃多这一步。3.3 加载配色文件的参数细节有导出就有导入。加载配色文件的方法File - Import - Color选择之前保存的.color文件确认之后所有颜色设置就恢复到你当时保存的状态。加载过程中Allegro不会自动重启也不会影响当前打开的板子之外的设置非常安全。这里要特别提醒一个问题加载配色文件时软件只恢复颜色配置本身不会恢复可见性设置吗实际上Allegro的颜色文件会包含颜色的开关状态和可见性状态所以你在保存时如果发现某些图层被关掉了加载后也会是关闭的。为了避免加载后板子上一片空白的情况保存配色文件之前最好先确认所有该显示的图层都是打开状态或者你明确知道当前要保存的视图状态就是想要的。3.4 写一条简单Skill脚本一键切换配色如果你已经用Allegro进入“老油条”阶段可能会开始嫌弃鼠标点来点去太啰嗦。这时候大名鼎鼎的Skill脚本可以上场。Allegro自带Skill环境你可以用一句简单的代码加载颜色文件。打开命令行输入skill axlColorSave(D:/project/board_ddr.color)这个函数会把当前颜色配置保存到你指定的路径。加载时用skill axlColorLoad(D:/project/board_ddr.color)就这么简单。你可以把这两句话做成两个快捷键或者放到菜单里以后改颜色、恢复颜色一键完成。Skill的好处是支持更复杂的逻辑比如先判断当前板子类型再加载对应的配色方案或者设置一个“布局模式颜色”和“布线模式颜色”在不同设计阶段切换不同的飞线显示方案。这个高级玩法有兴趣的可以慢慢研究但对多数人来说能把axlColorSave和axlColorLoad用溜已经能节省大量时间了。4. 恢复默认设置的那些姿势千万别再瞎点按钮了“我乱改了一通颜色现在想恢复默认怎么办”这个问题几乎每隔一段时间就会有人问我。网上很多回答说“直接把颜色文件改成默认”但没说清楚默认文件在哪里、怎么找、加载之前要注意什么。我把我试过可行的几种方式都列出来按可靠性从高到低排个序。4.1 最靠谱先存一份当前配色再回来也不怕说实话所谓“恢复默认”在Allegro里并没有一个叫“Restore Default Colors”的按钮。系统默认有它的初始配色但只要你加载过别的颜色文件或者手工改过个别网络颜色界面显示就已经不是出厂状态了。所以最靠谱的恢复方法是你提前留了一份“默认状态”的存档。怎么得到这份存档两种途径第一种新开一块空板时打开Color/Visibility把它当前的颜色配置保存成.color文件。第二次再新建板子看到的其实就是这个默认配色。第二种直接用Allegro安装目录下自带的基础配色文件。不同版本自带的文件名可能不一样搜索时在Allegro的安装路径下找带“color”后缀的文件常见目录在share/pcb/text/color_views或类似位置。找到后用File - Import - Color加载进去大概率能恢复到接近出厂的状态。我的个人习惯是每装一个新版本Allegro第一件事就是新开一块空板保存一份“初始配色.color”文件放到我自己的配置目录下。这相当于给软件留了个“后悔药”后面怎么改都不怕。4.2 恢复到某个历史视图状态State 功能的巧妙用法Allegro里还有一套视图状态管理功能位置在Color/Visibility对话框里的“View”或“State”相关区域。这套功能允许你把指定的配色方案命名保存为一个视图状态然后在多个视图状态之间切换比如“布局查看模式”“布线模式”“检查GND网络”等等。具体操作流程是在Color/Visibility对话框里把颜色调整到某个状态。找到一个保存或添加状态的按钮给它命名比如“default_check”。之后任何时候只要从这个状态列表里选中“default_check”界面立刻恢复成你保存时的样子。这个功能比加载文件更轻量不用弹文件选择框像切换预设一样。尤其在多人协同、临时演示、快速对比“改了颜色之后和之前有什么区别”时状态管理的体验非常顺滑。4.3 只想恢复某个网络的颜色别全局乱动有些场景下你不是想把所有颜色都恢复默认而是只想把刚才动手测过的某条网络变回原样。这时候不要整个加载默认配色那会连其他精心设置的网络颜色一起冲掉。用下面这个命令命令行输入deassign color回车后点击那条被你改过颜色的飞线这条网络的颜色就会被清除回到上一级的默认显示状态。这个命令在Allegro里和assign color是对应的我最初也是翻菜单才找到它。平时用的频率不高但一旦用到真是救命级别的功能。4.4 改坏颜色之后的应急恢复流程假设你现在完全不知道自己改乱了什么板子上颜色一团糟手头又没有存过配色文件怎么紧急恢复第一步打开Color/Visibility对话框切到Layer页签检查最主要的图层比如Etch、Pin、Via是否都显示正常。如果你之前把某些基本图层关掉了优先把它们全部勾选打开。第二步加载系统自带的基础配色文件。找不到默认文件目录的话可以直接在Allegro的安装目录里搜索“*.color”通常会找到几个示例方案选一个加载。我见过有些版本自带的默认配色文件名带版本号比如default_mfg.color加载之后整体色调会回到接近初始的状态。第三步把网络颜色的问题单独处理。因为刚才加载的文件可能不会完全覆盖你在Net页签里手工设置的网络颜色。这时使用deassign color命令逐个点击那些颜色不对的飞线把它们清掉让它们回到图层默认色。如果你改的网络太多也可以重新打开Net页签把所有网络选中在颜色面板里选“默认色”或“清除颜色”选项一次性重置。注意如果连“清除颜色”按钮都找不到最简单的办法是关闭当前板子重新打开一次。前提是你没有保存过这个配色状态进板子文件。颜色配置一般会跟随工程文件保存所以重开后大概率还是乱的所以说关键时刻还得靠前面保存的.color文件。5. 实际项目里反复踩过的坑写出来给你们避雷颜色修改看着很简单但实际操作中我发现很多工程师容易在一些边缘情况上卡住甚至怀疑自己的软件坏了。这里整理几个高频问题都是我或者我身边的同事真实遇到过的情况。5.1 网络名为什么在Net列表里找不到有时候你明明记得板子上有个网络叫“USB_DP”但在Color/Visibility的Net列表里搜不到。原因一般是过滤器没设置对。Net列表上方常有一个过滤框可能是net name文本框也可能是“Show”类型的选项。你把过滤条件设置成了只显示“bus”或者只显示“component pin”自然就看不到目标网络了。把过滤范围改成全部网络就行。另一种情况是网络被“优化”掉了。Allegro在布局布线过程中某些网络可能因为删除了器件或改了原理图变成了只有一个引脚甚至没有引脚的孤立网络。这类“幽灵网络”有时不会出现在常规网络列表里。处理方式是在命令行输入tool - delete - nets之类操作之前先回原理图确认网络是否还存在避免在残缺数据上纠结。5.2 改完颜色之后飞线看不见了这个问题看着吓人其实大概率是你把飞线隐藏了而不是颜色改没了。Allegro里有一组命令专门控制飞线的显示和隐藏rats on显示所有飞线。rats off隐藏所有飞线。unrats all清空所有飞线显示状态。rats all重新显示所有飞线。如果你在做颜色调整时不小心点了某个视图或者碰到了鼠标右键菜单里的“Hide Rats”飞线就会消失。解决办法很简单命令行敲rats on再回车所有飞线就会重新出现。5.3 差分对的飞线颜色单独改不生效差分对网络在Allegro里往往是两个网络成对出现的比如“HRD_TX_P”和“HRD_TX_N”。如果你只选中其中一条网络去改颜色有时会发现另一条的颜色没跟上显示效果很别扭。解决方法是在Net列表里把差分对的两条网络都选中再分配同一种颜色。如果嫌手动选太麻烦可以直接使用高亮命令highlight然后点击差分对中的任一条飞线差分对的另一条通常也会一起高亮。这是因为软件默认开启了差分对的关联显示。要是高亮也没有一起动作去检查Display设置里的差分对模式选项确保“Diff Pair Highlight”关联是开启的。5.4 保存颜色文件之后同事那边加载效果不一致不同版本的Allegro对颜色文件字段的解析会有细微差别。你用17.4保存的颜色文件拿到16.6上加载可能会出现某些图层颜色对不上甚至报错说文件格式不支持。解决这种跨版本问题最简单的方式是只把.color文件当作基础参考真正需要统一配置时让团队成员都使用同一版本的软件并且从同一个基础配色文件开始修改。如果你实在需要跨版本共享可以在目标版本的软件里手动调整后重新导出不要指望一个文件吃遍所有版本。5.5 改完颜色出光绘文件时有没有影响这是个老声长谈的误区。飞线颜色只是显示层面的东西跟铜皮、走线、钻孔这些真实设计数据完全无关。所以不管你把飞线改成彩虹色还是全部隐藏对输出Gerber光绘文件、生产加工都没有任何影响。反而你要担心的是另一件事有时候为了看图方便你把某些图层关了或用颜色调暗了结果在出光绘前忘了打开导致光绘文件里缺失图层。这才是真正会出大事的地方。所以每次出光绘前我都习惯先跑一遍“Artwork”的预览检查每个Film里是否有内容而不是只看屏幕上的显示。6. 把我的个人习惯和一个小技巧分享给你写到最后说几句实在话。飞线颜色这个东西在Allegro庞大的功能体系里算是个“小把戏”但它对工作效率的影响远大于它操作步骤看起来的“简单程度”。我见过不少工程师布线经验很丰富但一直用默认颜色画图每次找网络都靠鼠标一个个点非常可惜。我自己的固定操作流程是这样的第一时间先把电源和地这两类网络分别设成红色和绿色。每次接一个新板子十分钟内必做这件事。然后按照项目里信号的重要性把高速和差分信号再用蓝色系和紫色系标出来。等这一套配色做完布局工具的很多基础操作都变得顺畅了。之后我会把配色保存出来一份放到工程目录一份留在本地配置目录。最后再分享一个小技巧适合喜欢走捷径的朋友。Allegro的命令行不只是给你看报错信息的很多操作可以不用鼠标点菜单直接敲命令。比如改飞线颜色传统菜单路径是Display - Color/Visibility但你可以在命令行输入color -net 3V3_MAIN回车后同样会进入这个网络的颜色设置。更极致一点配合快捷键比如在env文件里加一行funckey c assign color那以后在板子上按一下键盘“c”键光标就会变成取色笔的样式点哪条飞线就直接给哪条换颜色。这种把高频操作用快捷键固化的思路适用于Allegro里非常多的工作场景。像这种小优化每次省个几秒钟日积月累省下的时间量相当可观。折腾软件设置最怕的就是“改的时候爽回不去的时候慌”。只要你养成了为配色方案存文件、做视图状态的习惯无论怎么折腾都能快速回到自己熟悉的界面。希望这篇文章能帮你在Allegro的飞线颜色管理上少走些弯路把更多精力放到真正影响板子质量的事情上。
返回列表