一、如何走蛇形线?

蛇形线是布线过程中常用的一种走线方式,其主要目的是为了调节延时满足系统时序设计要求,但是设计者应该有这样的认识:蛇形线会破坏信号质量,改变传输延时,布线时要尽量避免使用,因此一块PCB上的蛇形线越多并不意味着越“高级”。实际设计中,为了保证信号有足够的保持时间,或减小同组信号之间的时间偏移,往往不得不故意进行绕线,例如DDR*(DDR1/DDR2/DDR3)中的DQS与DQ信号组要求要严格等长以降低PCB skew,这时就要用到蛇形线。

(1)设置蛇形线的参数。蛇形线的参数主要有线长、同组线线长的差值、平行线段距离(Gap)及平行线段长度。Router中打开项目浏览器(Project Explorer),展开Net Objects树形列表下的Net项,选择需要等长的网络(此处是DDR_DQ[15..0]以及DDR_DQS[1..0]),右击选择Copy,如下图所示。

(2)点击Nets组上的Matched Length Nets Groups,右击后选择Paste将上述网络粘贴到该项内,如下图所示。

(3)此时在Matched Length Net Groups组内出现一个默认名为MLNetGroup1的网络组,展开就可以看到,拷贝的网络在这里出现,如下图所示。

(4)点击MLNetGroup1网络组,右击后选择Properties,弹出如下图所示的对话框。

其中Tolerance即网络组内最长与最短走线的之间的差值,PADS默认不对走线长度加以限制,若需要,可勾选Restrict length进行相应的设置,此两者的值可根据经验或仿真结果进行设置。

(5)点击工具栏上图标或按热键Ctrl+Enter,选中Options对话框中的Routing页表项,其中红色框中的参数即针对蛇形线,这里我们把平行线段距离(Gap)设置为3,点击OK,即可完成蛇形线的设置。

(6)在PCB中选定一个引脚,按F3开始走线, 在需要走蛇形线的地方停顿,右击后选择Add Accordion,即可开始蛇形走线,如下图所示。控制方面的细节不再赘述。

(7)完成蛇形线后,右击选择Complete Accordion即可进入常规走线模式。

(8)最后完成的结果如下图所示。

细心的读者可能发现自己走出来的有135o角,而上图中却是弧线JJ,是的!走出来的原本不是弧线,是在Layout中通过Add Miters处理过的。

用Layout打开刚才的PCB,选择菜单栏Tool -> Options后出现如下对话框,

在Miters组合框内选择Arc,表示对走线进行圆弧修正,Ratio可按具体情况设置,此处为3,此值不宜过小(没效果)亦不可过大(有些角度修正不到位),Angle为135o,表示允许对135o角进行修正,完成后点击OK即可。

选择需要修正的网络,右击后选择Add Miters如下图,这样蛇形线就成圆弧走线了。

上述操作有点繁琐,PADS9.0及其以上版本提供了新的功能,可以直接走圆弧蛇形线。

二、如何走差分线?

差分信号在高速电路设计中应用越来越广泛,如USB、HDMI、PCI、DDR*等,承载差分信号的差分线主要优势有:抗干扰能力强,能有效抑制EMI、时序定位精确等,对于PCB工程师来说,最关注的是如何确保在实际走线中能完全发挥差分线的这些优势。

(1)定义差分对信号:在Router中,同时选定需要走差分线的网络(Net),右击后选择Make Differential Net,如下图所示。

(2)打开项目浏览器Project Explorer窗口,展开Net Objects树形列表下的Differential Pairs项,刚刚定义的差分对DM<->DP就在这里,选定该差分对后右击选择Properties,如下图所示。

(3)在弹出的对话框中,可设置相应的线宽及线距,此处分别设置为8与6(8:8:6)。

点击OK,即完成差分对的定义。

线宽及线距影响差分线的阻抗,其值可由Polar SI8000软件粗略估算一下,如下图所示,对于阻抗要求高的可与PCB厂家沟通确定。

(4)选择其中的一个引脚,按F3或单击工具栏上图标,即可开始差分对布线(与常规布线一致),如下图所示。

(5)在终端处需要分开布线,右击后选择弹出菜单中的Route Separately,如下图所示。

(6)按如上操作后,按常规走线完成即可,如下图所示。

至此已经完成了差分线的走线,有些读者可能会见过一些如DDR*的板子,差分线也走了蛇形线,其实将上述两个结合起来是很容易做到的,这里就不赘述了。

三、如何统一修改元件标号字体?

LAYOUT完毕后进行元件标号字体调整时,你是否试图用Select Document+Select All来选定所有标号?可结果却并不令人满意。

(1)在Layout中,选择菜单栏Edit -> Filter…,将对话框按如下图设置(即仅勾选Labels)。

(2)右击->Select All,即可选定所有的元件标号,再右击-> Properties,即可出现下图对话框,此时可进行需要的设置。(需要注意的是,Layer下拉列表不应选择任何层,否则丝印会放在错误的板层上)

当然也可以用Select Document+Select All的方式,前提是在Layout中菜单栏Setup -> Display Colors中仅选定Ref.De(纵向栏),如下图所示,这种方法较费时一点。

四、如何做到20H规则?

电源层与地层之间变化的电场在板边缘会向外辐射电磁干扰(EMI),称为边沿效应。20H规则可将70%的电场限制在接地层边沿内,100H可达到98%。

(1)在Layout中,选择菜单栏Setup -> Design Rules… -> Conditional Rules,在出现的Conditional Rule Setup对话框的Source rule object中选择需要约束的Nets(这里是DVDD),Against rule object中选择POWER层(自定义的电源层名称),确定Clearance单选框,点击Create,在左下角的Existing rule sets中即出现定义的约束项,如下图所示。

(2)选择该约束项,点击Matrix…,在下图所示对话框中的Board与Copper处填入200(此处假定电源与地层的间隔为10mil,读者可按需要进行配置)

(3)点击OK,即可完成规则设置,以上规则约束表示:当DVDD在POWER层时,Copper与Board之间间距为200mil。同样可以设置其它的规则,下图为一PCB进行20H规限后的图片。

读者也可以尝试在菜单栏Setup -> Design Rules… -> Net中进行规则约束,效果大体是一样的。

五、如何自定义快捷键?

热键(或快捷键)是每一个EDA工程师会(也应该)关注的问题,因为好用且合理的热键可以使工作效率大幅度地提高。PADS定义了很多无模命令可以实现这一目的,但菜单执行的热键却不大友好,甚至还不如Protel。当你因为PCB一点点修改而进行第N次Flood时,你是否会因为屡次陷入点击Tools –> Pour Manager… Tools -> Pour Manager…这个“圈套”而感到厌烦?当你看到下图所示的由三个键堆积起来的按键组合时,会不会有点望而生畏的感觉?! 没关系,现在我们可以定义自己的热键。

(此处删除了旧版本中关于修改menufile.dat文件自定义快捷键的方法)

在PADS9.0及其以上版本定制快捷键非常简单。选择Tools -> Customize即可弹出自定义对话框,切换到Keyboard and Mouse选项表,此时应如下图所示。

我们仍然以Display Colors为例进行快捷键的定义。如上图所示找到该项,可以看到,在Current shortcuts(当前快捷键)为空,表示尚无该功能对应的快捷键,这时我们单击上图红色方框所示的新建按钮,即可弹出如下图所示的对话框。

在这里,直接按键盘上的快捷键组合,在该对话框中即会有相应的文字,比如,我们按Ctrl+G,软件就会识别到,并以文字形式自动录入到上图的文本框中(即上图中的Ctrl+G不是一个个字母敲进去的,而是软件识别我的Ctrl+G按下的动作自动填入的),

点击OK后,即可弹出如上图所示的对话框,提示我们该组合键已经被分配给“创建联合体”命令,与之前的类似,该功能所用之处甚少,可以分配给CTRL+G,我们点击“是”,这样快捷键就定义好了,很方便吧!

六、如何做带定位孔的封装?

我们常见的很多元器件都会带几个定位孔,特别是接口器件,如HDMI、USB、LAN等,很多工程师实现这些定位孔的方法就是:增加焊盘,把焊盘内径=外径,如下图所示网络接口封装的两个定位孔。这样做的确能够实现,且制作起来很快捷,但在PowerLogic与PowerPCB同步导入封装时,你有时会发现导入不成功,而且这种做法从封装管理与标准化来看也是不规范的。没有办法了吗?答案是否定的,以下我们将该接口的定位孔用另外一种方法来做。

(1)进入封装编辑窗口后,切换到Drill
Drawing层,如下图所示:

(2)点击工具栏上Drafing
Tool工具集,在展开的子工具条下,选择2D Line;

(3)右击空白区,在弹出的快捷菜单中,选择Circle,如下图所示:

以上步骤表明:我们将在Drill Drawing层用2D Line实施画圆操作,因为Drill Drawing就是PowePCB中的钻孔层,在该层添加圆即可实现添加钻孔的目的。

(4)在定位孔坐标处(此处为[0,0])添加半径为64mil(直径128mil)的圆,完成后应如下图所示:

(5)同理,将坐标点为[-500,0]处添加一个相同属性的圆,如下图所示:

(6)这样基本完成了定位孔在封装里的建造,但这样会引起一个问题,就是LAYOUT时走线也可以穿过,如下图所示,按原意,定位孔里是不应该存在走线与其它事物的,怎么样解决这一问题呢?有些读者可能想到用Keepout覆盖PCB中的两个定位孔,对!更好的,我们可以在封装中直接做好“一劳永逸”!

(7)同样在第一步展开的子工具栏下选择Keepout,在空白区域右击,选择弹出快捷菜单中的circle项,画两个任意大小的圆(之所以在此处不设定半径的值,是因为该步中不容易精确指定,因此留在后面执行),在弹出的对话框中按如下图所示配置:

以上选项表示:在该Keepout内,不允许走线、灌铜、过孔、跳线、测试点等等。

同理,再画另一个相同属性的圆。

(8)右击选择Anything,再双击Keepout边框,将两个圆的半径设置为64mil,再将两个Keepout分别定位到坐标为[0,0]、[-500,0]位置覆盖前述在Drill Drawing中完成的定位孔,完成后应如下图所示:

(9)如下图所示,现在走线不能穿过该区域了,同样其他事物都不可以,这就相当于一个板槽一样,这样做封装的过程,看似很麻烦,读者可根据自己的需求选择一种(比较常见的还是增加焊盘,把焊盘内径=外径,因为简单)。

原文链接点击这里

第11章 PADS功能使用技巧(1)-最全面的更多相关文章

  1. 第11章 PADS功能使用技巧(2)-最全面

    原文链接点击这里 七.Flood与Hatch有什么区别? 我们先看看PADS Layout Help 文档是怎么说的,如下图所示: 从检索到的帮助信息,我们可以得到Hatch与Pour的区别,原文如下 ...

  2. [置顶]PADS PCB功能使用技巧系列之NO.002- 如何走差分线?

    差分信号在高速电路设计中应用越来越广泛,如USB.HDMI.PCI.DDR*等,承载差分信号的差分线主要优势有:抗干扰能力强,能有效抑制EMI.时序定位精确等,对于PCB工程师来说,最关注的是如何确保 ...

  3. Rspec: everyday-rspec实操: 第10章测试其他功能,第11章TDD 第12章总结。

    10.测试文件上传 作者推荐的Paperclip,官方维护组已经不推荐使用deprecated. 推荐使用rails自带的 ActiveStorage. Active Storage: 推进文件上传到 ...

  4. Linux就这个范儿 第11章 独霸网络的蜘蛛神功

    Linux就这个范儿 第11章  独霸网络的蜘蛛神功  第11章 应用层 (Application):网络服务与最终用户的一个接口.协议有:HTTP FTP TFTP SMTP SNMP DNS表示层 ...

  5. 锋利的jQuery第2版学习笔记8~11章

    第8章,用jQuery打造个性网站 网站结构 文件结构 images文件夹用于存放将要用到的图片 styles文件夹用于存放CSS样式表,个人更倾向于使用CSS文件夹 scripts文件夹用于存放jQ ...

  6. 翻译连载 | 第 11 章:融会贯通 -《JavaScript轻量级函数式编程》 |《你不知道的JS》姊妹篇

    原文地址:Functional-Light-JS 原文作者:Kyle Simpson-<You-Dont-Know-JS>作者 关于译者:这是一个流淌着沪江血液的纯粹工程:认真,是 HTM ...

  7. Java核心技术卷一基础知识-第11章-异常、断言、日志和调试-读书笔记

    第11章 异常.断言.日志和调试 本章内容: * 处理错误 * 捕获异常 * 使用异常机制的技巧 * 使用断言 * 日志 * 调试技巧 * GUI程序排错技巧 * 使用调试器 11.1 处理错误 如果 ...

  8. MySQL性能调优与架构设计——第11章 常用存储引擎优化

    第11章 常用存储引擎优化 前言: MySQL 提供的非常丰富的存储引擎种类供大家选择,有多种选择固然是好事,但是需要我们理解掌握的知识也会增加很多.每一种存储引擎都有各自的特长,也都存在一定的短处. ...

  9. 读《编写可维护的JavaScript》第11章总结

    这周也是拿到了同程的offer,从此走上了前端之路!感谢我的贵人们.再次纪念一下~! 第11章 不是你的对象不要动 11.1 什么是你的 你的对象:当你的代码创建了这些对象或者你有职责维护其他人的代码 ...

随机推荐

  1. MySQL中使用Show Profile

    Show profile 默认是禁用的,用处是记录在服务器中运行的查询耗费的时间和其他一些查询执行状态变更相关的数据. 当前系统是win10,Mysql版本是8.0.15 1.查看当前profilin ...

  2. Django(21)migrate报错的解决方案

    前言 在讲解如何解决migrate报错原因前,我们先要了解migrate做了什么事情,migrate:将新生成的迁移脚本.映射到数据库中.创建新的表或者修改表的结构. 问题1:migrate怎么判断哪 ...

  3. LTP--linux稳定性测试 linux性能测试 ltp压力测试 ltp-pan

    LTP--linux稳定性测试 linux性能测试 ltp压力测试 zhangzj1030关注14人评论33710人阅读2011-12-09 12:07:45   说明:在写这篇文章之前,本人也不曾了 ...

  4. JQuery Ajax 发送请求成功后却接收不到任何响应数据问题

    问题描述 使用 JQuery Ajax 向后端服务器发送请求,服务器也收到请求返回了响应数据,但是 Ajax 却收不到任何响应数据. 举例如下: $.ajax({ type: "post&q ...

  5. S7 Linux用户管理及用户信息查询命令

    7.1 useradd:创建用户 7.2-5 usermod 7.6 passwd:修改用户密码 7.7-9 chage.chpasswd.su 7.10-11 visudo.sudo 7.12-7. ...

  6. 6.6 rsync:文件同步工具

    rsync 是一款开源的.快速的.多功能的.可实现全量及增量的本地或远程数据镜像同步备份的优秀工具.rsync适用于Unix/Linux/Windows等多种操作系统平台.   rsync命令有三种常 ...

  7. jq slideDown后里面的A链接失效(已解决)

    jq slideDown后里面的A链接失效(解决) 用jq 的 slideDown写了一个二级下拉菜单,但是里面的a标签全部失效了,挂的链接右键菜单可以正常打开,但是左键正常点击不行 查阅了很多资料, ...

  8. unity editor模式下读取文件夹资源

    string path = EditorUtility.OpenFolderPanel("Load png Textures", "", "" ...

  9. Step By Step(Lua表达式和语句)

    Step By Step(Lua表达式和语句) 一.表达式:    1. 算术操作符:    Lua支持常规算术操作符有:二元的"+"."-"."*& ...

  10. MySQL 基础、安装、配置

    1. MySQL 基础 1.1 什么是数据库? 1.2 数据库的类型 1.3 关系型数据库的优点 1.4 MySQL 简介 1.5 MySQL 数据类型 1.6 Mysql 存储引擎 1.7 MySQ ...