pcb等长布线 allegro
在 Allegro 中进行 PCB 等长布线(也称为长度匹配或时序匹配)是高速数字设计(如 DDR 内存、高速串行总线、时钟网络等)的关键步骤。以下是详细的步骤指南:
? 核心步骤概览
- 定义 Match Group (匹配组): 指定需要等长的网络组。
- 设置长度约束 (Relative Propagation Delay): 定义组内网络的允许长度偏差范围。
- 布线 (Route): 手动或借助自动工具布线。
- 添加蛇形线 (Tune/Mecth): 增加额外长度以满足等长要求。
- 分析与优化 (Analyze/Verify): 检查约束是否满足并调整。
详细操作步骤(Allegro 经典界面)
? 1. 定义匹配组和约束(关键步骤)
* **打开约束管理器 (Constraint Manager):**
* 菜单: `Setup` -> `Constraints` -> `Constraint Manager` 或使用工具栏按钮。
* **导航到电气约束 (Electrical Constraint Set):**
* 在左侧树形菜单中找到 `Electrical` -> `Net` -> `Routing` -> `Relative Propagation Delay`。
* **创建匹配组 (Match Group):**
* 在 `Relative Propagation Delay` 工作表内右键点击空白区域。
* 选择 `Create` -> `Match Group`。
* 给匹配组起一个有意义的名字(例如 `DDR_DQ_Group0`, `PCIe_Lane0_Tx`, `CLK_NETs`)。
* **将网络加入匹配组:**
* 在左侧 `Net` 工作表(`Electrical` -> `Net` -> `All Layers`)或直接在 `Relative Propagation Delay` 工作表中,找到需要等长的网络。
* 将这些网络的 `RelProp Delay` 单元格(在对应的列下)选中。
* 右键点击选中的单元格 -> `SigXplorer` -> `Set Match Group`(或者在 `Assign` 菜单中选择 `Match Group`)。
* 在弹出的对话框中选择你之前创建的匹配组。
* **指定目标长度 (Target) 和容差 (Tolerance):**
* 在 `Relative Propagation Delay` 工作表中,找到你创建的匹配组。
* 在 `Delta: Tolerance` 列设置允许的最大长度偏差(例如 `100mil`)。
* 在 `Scope` 列通常选择 `Global`(整个网络长度匹配)。
* 在 `Targ: Nominal Value` 列,通常不需要手动设置绝对值目标。系统会自动将组内所有网络的 **相对长度差** 限制在你设定的容差范围内。目标长度通常是组内最长的那个网络的长度(有时需要指定一个参考网络)。
* **设置参考网络 (Pin Pair, Xnet 可选):** 如果需要指定一个特定网络(或网络段/Pin Pair)作为长度基准:
* 在 `Net` 工作表或 `Relative Propagation Delay` 工作表找到该网络(或 Pin Pair)。
* 右键点击其 `RelProp Delay` 单元格 -> `Set as Reference`. 该网络旁边会出现一个 `(R)` 标记。其他网络将尝试匹配该参考网络的长度。
* **设置绝对长度约束 (可选但推荐):** 在 `Wiring` -> `Min/Max Propagation Delays` 或 `Total Etch Length` 工作表为组内网络设置最小/最大绝对长度限制(如果设计有要求)。
2. 布线(初始连接)
* 使用手动布线 (`Route` -> `Connect`),自动布线 (`Route` -> `PCB Router` -> `Route Automatic`),或交互式总线布线 (`Route` -> `Create Fanout` / `Route` -> `Slide`) 等方式,先将所有网络物理连接通。
* 初步布线时优先考虑拓扑结构、阻抗控制、串扰、关键信号路径等因素,不必过分追求精确等长。
3. 添加蛇形线(进行长度匹配)
* **激活等长绕线模式:**
* 菜单: `Route` -> `Delay Tune` (17.x 及更新版本常用) 或 `Route` -> `Mecth` (16.6 及更早版本)。
* 或者使用工具栏上的 `Delay Tune` / `Mecth` 按钮。
* **选择要绕线的网络段:**
* 命令激活后,点击需要增加长度的网络段(通常是较短的走线)。Allegro 会高亮显示该网络当前的长度以及它与目标长度(通常是匹配组内最长网络或参考网络长度)的差值。
* **设置绕线参数 (Options 侧边栏):**
* 打开 `Options` 面板(通常在右侧)。
* 关键参数:
* `Active Etch Length`: 显示当前选中网络的总长度。
* `Target Etch Length`: 显示目标长度(通常自动从约束管理器读取)。
* `Gap`: 蛇形线相邻两段平行走线之间的间距(必须大于或等于最小间距规则)。
* `Amplitude`: 蛇形线波峰到波谷的宽度(高度)。
* `Style`: 蛇形线形状(直线型 `Line`、圆弧型 `Arc` `Chord`,推荐圆弧型以减少阻抗突变和 EMI)。
* `Corners`: 选择 `Full`(完整蛇形)、`Half`(半蛇形,用于空间受限)、`Accordion`(手风琴式,特殊拓扑)。
* `Miter`: 拐角倒角比例(通常保留默认)。
* `Max Consecutive`: 允许连续蛇形段的最大数量。
* `Min Amplitude`: 蛇形线振幅的最小允许值。
* `Snake Mode`: `On` 开启蛇形模式,布线时会自动产生蛇形;`Off` 关闭,用于普通布线或删除蛇形。
* **进行绕线:**
* 将光标移动到需要增加长度的走线线段上。
* 单击鼠标左键开始添加蛇形线。移动光标,Allegro 会根据参数设置实时预览蛇形线的形状和添加的长度。
* 观察 `Options` 面板上的 `+/-` 值(表示当前蛇形添加的长度或减少的长度)以及 `Current Diff` (当前长度与目标的差值)。
* 当 `Current Diff` 接近 `0` (或进入设定的 `Tolerance` 范围内)时,再次单击鼠标左键完成该段蛇形线的添加。
* 如果添加过度(长度超了),可以按 `Backspace` 撤销一步,或者移动光标反向调整。
* 对于长距离或复杂的匹配,可能需要分段添加蛇形线。
* **删除或修改蛇形线:**
* 再次激活 `Delay Tune` / `Mecth` 命令。
* 选中已添加蛇形的线段。
* 在 `Options` 面板将 `Snake Mode` 设为 `Off`。
* 单击该线段,蛇形线将被删除,走线恢复平直。
* 或者,保持 `Snake Mode` 为 `On`,选中存在蛇形的线段,然后移动光标/单击来调整其形状和长度。
? 4. 分析、验证与优化
* **实时反馈:** 在添加蛇形线和布线过程中,Allegro 会实时显示网络长度(`Options` 面板)和与目标的差值。使用 `Display` -> `Element` 然后点击网络也可以查看其属性(包括长度)。
* **约束管理器检查:**
* 随时回到 `Constraint Manager` -> `Electrical` -> `Net` -> `Routing` -> `Relative Propagation Delay`。
* 查看你定义的匹配组。满足约束的网络状态通常是绿色 ✓ 或空白。违反约束的网络会在其 `RelProp Delay` 单元格显示黄色警告图标 ⚠️ 或红色错误图标 ❌,并显示实际差值。
* **DRC 检查:**
* 运行设计规则检查 (`Tools` -> `Quick Reports` -> `DRC Report` 或 `Display` -> `Status` -> `Update DRC`)。
* 确保蛇形线的添加没有违反最小间距(`Gap` 参数)、最小线宽、差分对相位等规则。违反规则的蛇形线周围会显示 DRC 错误标记(小菱形)。
* **调整与优化:**
* 如果 DRC 报错,调整蛇形线的 `Gap`、`Amplitude`、`Style` 或位置。
* 如果长度偏差仍较大,尝试:
* 在更长的路径段上添加蛇形线(效果更明显)。
* 调整初始布线的路径(寻找更迂回但自然的路径)。
* 检查匹配组定义是否正确(是否所有相关网络都加入了?参考网络设置是否正确?容差是否合理?)。
* 检查 Pin Pair 定义(特别是对于复杂拓扑如 T 点,可能需要定义 Pin Pair 进行段匹配)。
? 重要注意事项与技巧
- 先阻抗,后等长: 确保走线的阻抗控制(线宽、参考层、间距)首先满足要求,然后再进行等长调整。蛇形线会影响阻抗,尤其是高频信号。
- 优先圆弧蛇形: 尽量使用
Arc或Chord风格的蛇形线。尖锐的直角 (Line风格) 会导致阻抗不连续和潜在的信号完整性问题(反射、EMI)。 - 最小化蛇形使用: 尽量通过优化初始布线路径来自然达到大部分长度匹配要求,只在必要时添加蛇形线。过多的蛇形线会增加板面积、复杂度及潜在 SI 风险。
- 关注
Gap参数:Gap必须大于等于设计规则规定的最小间距(通常 >= 3倍线宽)。过小的Gap会导致串扰加剧和 DRC 错误。 - 考虑差分对: 对于差分对,不仅要匹配差分对之间的长度(组间等长),更重要的是要保证差分对内部两根线(P 和 N)之间的长度差(对内等长/相位匹配)优先满足,通常要求更严格(如 5 mil)。差分对的等长通常在
Electrical Constraint Set->Differential Pair中设置Static Phase和Dynamic Phase约束。对内绕线使用Route->Phase Tune。 - 理解拓扑结构: 对于多点网络(如 DDR 地址/命令/控制总线,T 型拓扑),等长的目标通常是“从源端(CPU)到各个负载端(内存颗粒)”的长度匹配。Allegro 的 Xnet 功能和 Pin Pair 定义对于正确处理此类拓扑至关重要。可能需要创建多个 Pin Pair 并进行段匹配。
- 参考层连续性: 蛇形线下方应保持完整、连续的参考平面(通常是 GND 或 Power Plane),以保证阻抗控制和信号回流路径。
- 利用分析工具: 布线后使用 Allegro 的 Sigrity ERC 或第三方 SI 工具(如 HyperLynx, ADS)进行信号完整性仿真,验证等长调整后的时序和信号质量是否满足要求。
- 版本差异: Allegro 不同版本(16.6, 17.x, 22.x)的菜单名称和具体操作位置可能略有差异,但核心概念(匹配组、相对传播延迟约束、蛇形绕线功能)是一致的。
- 规划空间: 在布局阶段就要为可能需要绕线的区域预留足够的空间(通常在总线旁边或末端)。
? 总结: Allegro 中的等长布线主要依靠 约束管理器 定义匹配组和容差,然后使用 Delay Tune (Mecth) 命令添加蛇形线来增加较短网络的长度。关键在于合理设置约束参数(组、容差、参考网络)、选择合适的蛇形线参数(间距、幅度、样式)以及持续利用 约束管理器 和 DRC 进行验证和优化。?
PCB设计布线Cadence 20问
Cadence Allegro现在几乎成为高速板设计中实际上的工业标准,版本是2011年5月发布的Allegro 16.5。和它前端产品 Capture 的结合,可完成高速、高密度、多层的复杂
2024-01-05 15:34:21
ADC到FPGA的并行数据线在PCB布线时是绕等长好还是不绕的好?
ADC出来到FPGA的并行数据线在PCB布线的时候是绕等长好还是不绕的好?MT-201笔记里的原话是“布设连接到接收器的数字走线时,请勿采用大量
PCB设计:为什么要绕等长?资料下载
电子发烧友网为你提供PCB设计:为什么要绕等长?资料下载的电子资料下载,更有其他相关的电路图、源代码、课件教程、中文资料、英文资料、参考设计、用户指南、解决方案等资料,希望可以帮助到广大的电子工程师们。
资料下载
佚名
2021-04-05 08:47:22
PCB设计:如何绕等长?资料下载
电子发烧友网为你提供PCB设计:如何绕等长?资料下载的电子资料下载,更有其他相关的电路图、源代码、课件教程、中文资料、英文资料、参考设计、用户指南、解决方案等资料,希望可以帮助到广大的电子工程师们。
资料下载
佚名
2021-04-05 08:46:59
Cadence Allegro蛇形布线的设置
在PCB设计中做等长时,常常会用到蛇形走线,下面就介绍一下如何进行蛇形走线及相关设置: 执行菜单面临Route-Delay Tune,在Options进行相关设置,其中Style是蛇形
2023-05-23 07:45:03
Allegro布局布线技巧20问
,可完成高速、高密度、多层的复杂 PCB 设计布线工作。Allegro 有着操作方便、接口友好、功能强大(比如仿真方面,信号完整性仿真、电源完整
2020-11-04 14:20:15
PCB设计布线:关于Cadence Allegro的问答
`Cadence Allegro现在几乎已成为高速板设计中实际上的工业标准,最新版本是Allegro 17.4。与其前端产品Capture相结合,可完成高速、高密度、多层的复杂
PCB设计中绕等长线的方法和技巧
等长走线的目的就是为了尽可能的减少所有相关信号在 PCB 上的传输延迟的差异。至于 USB/SATA/PCIE 等串行信号,并没有上述并行总线的时钟概念,其时钟是隐含在串行数据中的。数据发送方将时钟
2019-04-26 15:27:25
换一换
- 如何分清usb-c和type-c的区别
- 中国芯片现状怎样?芯片发展分析
- vga接口接线图及vga接口定义
- 芯片的工作原理是什么?
- 华为harmonyos是什么意思,看懂鸿蒙OS系统!
- 什么是蓝牙?它的主要作用是什么?
- ssd是什么意思
- 汽车电子包含哪些领域?
- TWS蓝牙耳机是什么意思?你真的了解吗
- 什么是单片机?有什么用?
- 升压电路图汇总解析
- plc的工作原理是什么?
- 再次免费公开一肖一吗
- 充电桩一般是如何收费的?有哪些收费标准?
- ADC是什么?高精度ADC是什么意思?
- EDA是什么?有什么作用?
- dtmb信号覆盖城市查询
- 苹果手机哪几个支持无线充电的?
- type-c四根线接法图解
- 华为芯片为什么受制于美国?
- 怎样挑选路由器?
- 元宇宙概念股龙头一览
- 锂电池和铅酸电池哪个好?
- 什么是场效应管?它的作用是什么?
- 如何进行编码器的正确接线?接线方法介绍
- 虚短与虚断的概念介绍及区别
- 晶振的作用是什么?
- 大疆无人机的价格贵吗?大约在什么价位?
- 苹果nfc功能怎么复制门禁卡
- 单片机和嵌入式的区别是什么
- amoled屏幕和oled区别
- 复位电路的原理及作用
- BLDC电机技术分析
- dsp是什么意思?有什么作用?
- 苹果无线充电器怎么使用?
- iphone13promax电池容量是多少毫安
- 芯片的组成材料有什么
- 特斯拉充电桩充电是如何收费的?收费标准是什么?
- 直流电机驱动电路及原理图
- 传感器常见类型有哪些?
- 自举电路图
- 通讯隔离作用
- 苹果笔记本macbookpro18款与19款区别
- 新斯的指纹芯片供哪些客户
- 伺服电机是如何进行工作的?它的原理是什么?
- 无人机价钱多少?为什么说无人机烧钱?
- 以太网VPN技术概述
- 手机nfc功能打开好还是关闭好
- 十大公认音质好的无线蓝牙耳机
- 元宇宙概念龙头股一览