【学习笔记】 使用AD24完成相同电路的自动布线布局(相同模块布局布线ROOM布线快速克隆)

news2024/11/11 11:28:28

【学习笔记】 使用AD24完成相同电路的自动布线布局

  • 一、适用基本条件
  • 二、基于ROOM的自动布局/布线的方法
  • 三、可能出现的报错
  • 四、ROOM自动布局的一些优点和缺点

在这里插入图片描述

当面对多个相同电路模块时,使用 ROOM 可以一次性对一个模块进行精心布局,然后将该布局快速复制应用到其他相同模块。这大大节省了逐个模块进行布局的时间,尤其在复杂电路中,能显著提高整体设计效率。例如,在一个多通道数据采集系统中,可能有多个相同的信号调理电路模块。通过对一个模块进行布局后,利用 ROOM 可以迅速将相同的布局应用到其他模块,无需重复手动调整每个元件的位置。

现有资料感觉很少能有把ROOM自动布局讲细致的,于是自己使用手头项目整理了一篇。接下来,本文将阐述如何基于AD24完成相同模块布局布线,即使用ROOM进行布线快速克隆。

一、适用基本条件

不是所有的电路都是用于ROOM规则克隆,至少满足以下基本条件:

  1. 原理图设计相同(元器件封装及位置需保持一致)。
  2. 在图纸中布局规范,矩形摆放整齐,元器件命名为系统自动生成。
  3. PCB布线或元器件位置摆放完成一组,需要对其他组进行自动布局。
    在这里插入图片描述
    在这里插入图片描述
    可以看到,在原理图阶段,设计的尽可能规整,在PCB使用矩阵布局,将元器件摆放规整。

二、基于ROOM的自动布局/布线的方法

  1. 选取已完成布线的部分,
    【设计】-【ROOM】-【从选择的器件产生矩形的ROOM (T)】
    此时,会在已完成布线的元器件上生成一个ROOM。
    在这里插入图片描述

  2. 框选未完成布线的元器件,进行同样的ROOM生成操作。
    【设计】-【ROOM】-【从选择的器件产生矩形的ROOM (T)】
    在这里插入图片描述

  3. 打开PCB List,【视图】-【面板】-【PCB List】。接下来的步骤很重要,请仔细遵循。
    在这里插入图片描述

  4. 在未框选任何元器件的情况下,PCB List是空的,框选【已完成布线的部分】,可以发现PCB List已经显示了框选出的元器件及布线,现在我们点击【Designator】将这些元器件进行排序。
    在这里插入图片描述

  5. 记住这个排序(正或者反,为方便记忆,这里将芯片U放在上侧),注意看【Channel Offset】这一列,这将是接下来自动布线的核心。注意不要点击Channel Offset,防止元器件列表顺序发生改变。
    在这里插入图片描述

  6. 拉动鼠标,框选所有的Channel Offset数字,右键复制这些数字。
    在这里插入图片描述

  7. 框选【未进行自动布线的元器件】,点击【Designator】将这些元器件进行排序(正或者反,为方便记忆,这里将芯片U放在上侧)。
    在这里插入图片描述

  8. 拉动鼠标,框选所有的Channel Offset数字,右键粘贴,替换掉原有的数字。
    在这里插入图片描述

  9. 进行自动布线,【不框选任何元器件】-【设计】-【ROOM】-【拷贝ROOM格式©】-【已布线区域】-【未布线区域】
    在这里插入图片描述

  10. 弹出窗口【确认通道格式复制】,可以进行一些自定义设置,可以根据自己的需求对需要复制的格式进行复制。
    在这里插入图片描述

  11. 发现23个频道偏移错误,无视即可,点击【YES】。
    在这里插入图片描述

  12. 已完成自动布线,如果像下图这样发射区域重合,是由于前期没有留好足够的空间,可以在空旷的区域自动布线,拖动到目标位置即可。
    在这里插入图片描述

三、可能出现的报错

  1. 如果在自动布局之后有个别元器件报错,大概率是相应元器件的Channel Offset位号错误。选中对应的元器件,和正确布局的进行比对。(相同位置的Channel Offset位号应相同)修正之后重新进行ROOM布局复制。
    在这里插入图片描述
  2. 如果是某线的网络错误,可以点击单独修改其网络,点击Assign Net吸管,选取正确的网络,更改完成。
    在这里插入图片描述
  3. 至此,基于ROOM的布局克隆完成。
    在这里插入图片描述

四、ROOM自动布局的一些优点和缺点

在 Altium Designer(AD)中使用 ROOM(空间定义)进行相同电路的快速自动布局布线具有以下优点:

  1. 快速布局:当面对多个相同电路模块时,使用 ROOM 可以一次性对一个模块进行精心布局,然后将该布局快速复制应用到其他相同模块。这大大节省了逐个模块进行布局的时间,尤其在复杂电路中,能显著提高整体设计效率。例如,在一个多通道数据采集系统中,可能有多个相同的信号调理电路模块。通过对一个模块进行布局后,利用 ROOM 可以迅速将相同的布局应用到其他模块,无需重复手动调整每个元件的位置。
  2. 自动布线一致性:ROOM 使得相同电路模块的布线具有高度一致性。软件可以根据已完成的一个模块的布线策略,自动为其他模块进行布线,减少了人为布线不一致带来的问题,同时也加快了布线速度。对于高速电路设计,布线的一致性对于信号完整性至关重要。使用 ROOM 可以确保相同模块的信号路径长度、阻抗等参数保持一致,提高电路性能。
  3. 模块化设计:ROOM 有助于实现模块化设计理念。将电路划分为不同的 ROOM 可以使设计结构更加清晰,便于设计团队成员之间的协作和分工。每个成员可以专注于特定的 ROOM 进行设计和优化,提高团队整体效率。例如,在一个大型项目中,可以将不同功能的电路模块分别放置在不同的 ROOM 中,方便进行设计管理和版本控制。
  4. 批量修改:如果需要对相同电路模块进行修改,使用 ROOM 可以方便地进行批量操作。只需修改一个模块中的元件参数、布局或布线,然后通过更新 ROOM 的方式,可以快速将这些修改应用到其他相同模块,大大减少了修改的工作量。比如,当发现某个元件的参数需要调整时,只需在一个模块中进行修改,然后更新所有包含该模块的 ROOM,即可实现批量修改,确保整个设计的一致性。
  5. 优化布局:通过精心设计一个模块的布局,可以更好地考虑元件之间的电磁兼容性(EMC)、散热等因素。利用 ROOM 将该布局应用到其他模块,可以确保整个电路在这些方面具有较高的质量。例如,对于高功率电路模块,可以合理安排元件位置以优化散热,避免局部过热问题。使用 ROOM 可以确保所有相同模块都具有相同的优化布局。
  6. 减少错误:手动布局和布线容易出现错误,尤其是在处理多个相同模块时。而使用 ROOM 进行自动布局布线可以减少人为错误的发生概率,提高设计的可靠性。软件在自动布线过程中会遵循预设的设计规则,避免出现短路、开路等常见布线错误。

在 Altium Designer 中使用 ROOM 进行相同电路的快速自动布局布线存在一些缺点:

  1. 布局调整困难:ROOM 定义了一个固定的区域和布局方式,当设计中有特殊需求或需要对某个元器件的位置进行微调以满足特定的布线要求、散热需求或电磁兼容性要求时,可能会受到 ROOM 的限制。例如,如果某个芯片需要靠近散热器放置,但由于 ROOM 的限制,无法将其移动到合适的位置,这就需要花费额外的时间和精力去调整或打破 ROOM 的限制。
  2. 布线策略单一:自动布线是基于 ROOM 内已有的布线策略进行的,对于一些复杂的电路或特殊的布线要求,可能无法满足设计需求。例如,在高频电路中,需要特殊的布线长度和间距来保证信号的完整性,但 ROOM 的自动布线可能无法按照这些特殊要求进行布线。
  3. 错误排查困难:当使用 ROOM 进行布局布线后出现问题时,排查错误可能会比较困难。因为 ROOM 涉及到多个元器件和复杂的参数设置,需要仔细检查每个元器件的属性、通道偏移值、ROOM 的范围等,才能找到问题的根源。这对于经验不足的设计师来说是一个挑战。
  4. 文件体积增大:使用 ROOM 会增加 PCB 文件的复杂性和数据量,特别是当有多个相同的 ROOM 存在时,文件体积会明显增大。这可能会影响软件的运行速度和性能,尤其是在处理大型项目时,可能会导致软件响应缓慢或出现卡顿现象。
  5. 兼容性问题:不同版本的 Altium Designer 对 ROOM 的支持和兼容性可能会有所不同。如果在一个版本中创建的 ROOM 在另一个版本中打开,可能会出现布局布线错误或不兼容的情况。这就需要在设计过程中注意软件版本的兼容性,或者在不同版本之间进行转换时进行仔细的检查和调整。
  6. 规则设置不当导致错误:ROOM 的自动布局布线是基于设计规则进行的,如果设计规则设置不当,可能会导致 ROOM 的布局布线结果不符合预期。例如,如果安全间距规则设置得过大或过小,可能会导致元器件之间的间距不合理,影响电路的性能和可靠性。
  7. 难以应对特殊情况:在一些特殊情况下,设计规则可能无法完全覆盖所有的设计需求,例如对于一些非标准的元器件或特殊的电路结构,ROOM 的自动布局布线可能无法正确处理,需要手动进行调整。

最后,欢迎交流学习。
文章为作者原创,转载请标明出处。

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2153122.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

2024 研究生数学建模竞赛(C题)建模秘籍|数据驱动下磁性元件的磁芯损耗建模|文章代码思路大全

铛铛!小秘籍来咯! 小秘籍团队独辟蹊径,运用数据拟合,方差分析(ANOVA),特征提取,多目标优化等强大工具,构建了这一题的详细解答哦! 为大家量身打造创新解决方案…

vs2022快捷键异常不起作用解决办法

安装了新版本的vs2022,安装成功后,发现快捷键发生异常,之前常用的快捷键要么发生改变,要么无法使用,比如原来注释代码的快捷键是ctrlec,最新安装版本变成了ctrlkc,以前编译代码的快捷键是F6或者…

go webapi上传文件 部属到linux

go厉害的地方,linux服务器上无需安装任务依赖就可以运行,大赞! 一、编译 #在Goland中cmd中执行 go env -w GOARCHamd64 go env -w GOOSlinux go build main.go # 切换回来 否则无法运行 go env -w GOOSwindows go run main.go 拷贝到linux服…

ubuntu如何进行自动mount硬盘(简易法)

1. 找到你ubuntu的disk工具 2. 选中你要mount的盘 3. 点击那个设置按钮 4. 选择edit mount options 5. disable user session defaults 6, 填写Mount Point就可以了, 最后输入一次密码,重启设备就搞定了

DOG:知识图谱大模型问答的迭代交互式推理,克服长路径和假阳性关系挑战

DOG:知识图谱大模型问答的迭代交互式推理,克服长路径和假阳性关系挑战 秒懂大纲提出背景解法拆解全流程优化和医学关系 创意 秒懂大纲 ├── DoG框架【主题】 │ ├── 背景【研究背景】 │ │ ├── LLMs的局限性【问题描述】 │ │ │ …

pgvector docker版安装;稀疏向量使用;psycopg2 python连接使用

参看: https://cloud.tencent.com/developer/article/2359831 https://hub.docker.com/r/pgvector/pgvector/tags https://github.com/pgvector/pgvector 一、安装 拉取0.7版本 docker pull pgvector/pgvector:0.7.4-pg16运行: docker run --name pgvector -v $(pwd)/dat…

OpenLayers 开源的Web GIS引擎 - 地图初始化

在线引用&#xff1a; 地址&#xff1a;OpenLayers - Get the Code 离线引用&#xff1a; 下载地址&#xff1a;Releases openlayers/openlayers GitHub v10.0.0版本 地图初始化代码&#xff1a; <!DOCTYPE html> <html lang"en"> <head><…

Spring Boot 入门:解锁 Spring 全家桶

前言 Spring 全家桶是现代 Java 开发者不可或缺的工具集&#xff0c;它提供了从轻量级的框架到微服务架构的完整支持。本文将带你快速了解 Spring 框架、核心概念如 IoC&#xff08;控制反转&#xff09;和 AOP&#xff08;面向切面编程&#xff09;&#xff0c;并深入介绍 Sp…

Java项目实战II基于Java+Spring Boot+MySQL的网上租贸系统设计与实现(开发文档+源码+数据库)

目录 一、前言 二、技术介绍 三、系统实现 四、论文参考 五、核心代码 六、源码获取 全栈码农以及毕业设计实战开发&#xff0c;CSDN平台Java领域新星创作者&#xff0c;专注于大学生项目实战开发、讲解和毕业答疑辅导。获取源码联系方式请查看文末 一、前言 "随着…

hpux B.11.31 安装 JDK(详细步骤、多图预警)

目录 零、测试环境 一、获取 JDK 安装包 二、安装 JDK 1、操作指南 2、安装流程 &#xff08;1&#xff09;选中 Java JDK &#xff08;2&#xff09;&#xff08;可选&#xff09;选择安装目录 &#xff08;3&#xff09;点击安装 &#xff08;4&#xff09;&#xf…

CefSharp_Vue交互(Element UI)_WinFormWeb应用(4)--- 最小化最大化关闭窗体交互(含示例代码)

一、效果预览 实现功能,通过vue页面模仿窗体的三个功能按钮实现最小化最大化关闭功能 1.1 预览 1.2 代码 页面代码

【Linux】简易日志系统

目录 一、概念 二、可变参数 三、日志系统 一、概念 一个正在运行的程序或系统就像一个哑巴&#xff0c;一旦开始运行我们很难知晓其内部的运行状态。 但有时在程序运行过程中&#xff0c;我们想知道其内部不同时刻的运行结果如何&#xff0c;这时一个日志系统可以有效的帮…

【算法】2022年第十三届蓝桥杯大赛软件类省赛Java大学C组真题

个人主页&#xff1a;NiKo 算法专栏&#xff1a;算法设计与分析 目录 题目 2680:纸张尺寸 题目 2664:求和 题目 2681: 矩形拼接 题目 2665: 选数异或 题目 2682: GCD 题目 2667: 青蛙过河 题目 2683: 因数平方和 题目 2668: 最长不下降子序列 题目 2680:纸张尺寸 题目…

2024普通高校大学生竞赛

2024年A类竞赛(全国普通高校大学生竞赛)目录 结合A类竞赛目录选择一些大学高质量竞赛 大学生竞赛 大学生竞赛中国国际大学生创新大赛ACM-ICPC国际大学生程序设计竞赛中国大学生计算机设计大赛中国高校计算机大赛蓝桥杯全国软件和信息技术专业人才大赛百度之星程序设计大赛全国…

2016年国赛高教杯数学建模A题系泊系统的设计解题全过程文档及程序

2016年国赛高教杯数学建模 A题 系泊系统的设计 近浅海观测网的传输节点由浮标系统、系泊系统和水声通讯系统组成&#xff08;如图1所示&#xff09;。某型传输节点的浮标系统可简化为底面直径2m、高2m的圆柱体&#xff0c;浮标的质量为1000kg。系泊系统由钢管、钢桶、重物球、…

KDD 2024论文分享┆STAMP:一种基于时空图神经网络的微服务工作负载预测方法

论文分享简介 本推文详细介绍了一篇最新论文成果《Integrating System State into Spatio Temporal Graph Neural Network for Microservice Workload Prediction》&#xff0c;论文的作者包括&#xff1a;上海交通大学先进网络实验室: 罗旸、高墨涵、余哲梦&#xff0c;高晓沨…

gh-ost

优质博文&#xff1a;IT-BLOG-CN 一、gh-ost的作用 gh-ost是由Github提供的Online DDL工具&#xff0c;使用binlog代替之前的触发器做异步增量数据同步&#xff0c;从而降低主库负载。 基于触发器的Online DDL工具原理&#xff1a; 【1】根据原表结构执行alter语句&#xff…

抖音矩阵系统源码搭建,矩阵系统贴牌,矩阵工具开源

1. 抖音短视频矩阵系统 抖音短视频矩阵系统&#xff0c;是指通过抖音平台&#xff0c;以矩阵的形式进行短视频创作、发布和传播的一种模式。它以多样化的内容、丰富的表现形式、高度的专业化和协同性&#xff0c;吸引了大量用户和创作者的关注。 2. 短视频矩阵系统的优势 2.1 …

从技术打磨到产品验证:读《程序员修炼之道》的务实之道

在编程世界里&#xff0c;技术的打磨往往像是工匠雕琢作品&#xff0c;但若无法转化为产品的成功&#xff0c;所有的精致都不过是空中楼阁。读《程序员修炼之道》时&#xff0c;我深刻意识到&#xff0c;务实不仅仅是技术的选择&#xff0c;更是产品迭代和商业模式成功的关键。…

C# .net6 开发数据采集软件(一)

功能&#xff1a; 数据采集&#xff1a;采集任务 数据分析&#xff1a;数据可视化 其他功能&#xff1a;数据上传、数据下拉、软件更新 软件设置&#xff1a;PLC配置、任务配置、软件配置、可视化配置 更多功能&#xff1a;其他软件的入口&#xff0c;或者小工具的使用。比…