随笔分类 -  PCB

摘要:/*****************判断两点p1,p2确定的线段是否与bbox构成的矩形相交的算法*******************/ defun(isLineIntersectRectangle (p1 p2 bbox) x1=car(p1) y1=nth(1 p1) x2=car(p2) y 阅读全文
posted @ 2019-07-31 20:47 黑马Amos 阅读(32) 评论(0) 推荐(0)
摘要:/*****************获取叉乘*******************/ defun(GetCross (p1 p2 p) p1x=car(p1) p1y=nth(1 p1) p2x=car(p2) p2y=nth(1 p2) px=car(p) py=nth(1 p) let((res 阅读全文
posted @ 2019-07-31 14:03 黑马Amos 阅读(49) 评论(0) 推荐(0)
摘要:/******************获取匹配组下的所有网络名******************/ defun(GetMatchGroupNetNames (MGName) MG=axlDBGetDesign()->matchgroup MG_len=length(MG) let((groupMe 阅读全文
posted @ 2019-07-28 17:55 黑马Amos 阅读(40) 评论(0) 推荐(0)
摘要:/******************获取焊盘的网络名******************/ defun(GetPinsNetName (PinName) axlClearSelSet() axlSetFindFilter( ?enabled (list "noall" "pins" ) ?onBu 阅读全文
posted @ 2019-07-28 17:49 黑马Amos 阅读(55) 评论(0) 推荐(0)
摘要:代码如下: defun(GetViaCoordinate (NetName) axlClearSelSet() axlSetFindFilter( ?enabled (list "nets" ) ?onButtons (list "nets")) ;p = axlSelectByName("NET" 阅读全文
posted @ 2019-07-27 18:45 黑马Amos 阅读(156) 评论(0) 推荐(0)
摘要:此代码并非原创,是根据Cadence Skill论坛的一份代码修改而来,主要功能是: 用户自己指定位号(需要BGA封装)和过孔,实现该位号的自动扇出功能(自动打孔+自动将过孔和焊盘连接),代码如下: procedure(bga_fanout(RefDes) logFile = "./bga_fano 阅读全文
posted @ 2019-07-27 17:36 黑马Amos 阅读(149) 评论(0) 推荐(0)
摘要:一直对这三个概念很模糊,今日研究了一下,做个记录,若理解有误,请指正,谢谢! 图1 某过孔的Regular Pad、Thermal Relief和Anti Pad界面 1)每一层(比如TOP层)都有Regular Pad、Thermal Relief和Anti Pad的概念。但是Regular Pa 阅读全文
posted @ 2019-05-14 23:47 黑马Amos 阅读(200) 评论(0) 推荐(0)
摘要:一直对正片和负片的概念比较模糊,今天研究了一下, 记录在此做个总结。 图1 正片和负片的区别(左正片,右负片) 当你使用Allegro画了1个PCB,有的层设置成了正片,有的层设置成了负片,Gerber交给PCB板厂后,因为有正片有负片,所以板厂会使用两个不同的制作工艺。 以上图为例进行说明。 对于 阅读全文
posted @ 2019-05-14 23:32 黑马Amos 阅读(50) 评论(0) 推荐(0)
摘要:本文是想在动态铜皮模式下,把下图选中的Shape删除掉(该Shape与下图最上方的Shape都是GND网络)。 经过多次测试发现无法删掉,将GND网络切换成静态铜皮后,上图选中的Shape就消失了,见下图。 这说明,动态铜皮下,无需删除Void之后的铜皮轮廓,因为终究是要切换成静态铜皮,切换后该轮廓 阅读全文
posted @ 2018-11-17 19:50 黑马Amos 阅读(484) 评论(0) 推荐(0)
摘要:本文的主要目的是将下图所示的铜皮与焊盘的连接方式由Orthogonal改为FULL_CONTACT。 Allegro中执行:Shape -> Select Shape or Void/Cavity -> 选中铜皮,右键选择Parameters,见到下图。 在Thermal relief connec 阅读全文
posted @ 2018-11-17 18:54 黑马Amos 阅读(349) 评论(0) 推荐(0)
摘要:简单地说,在动态铜皮上随便Move一下无网络的地孔就可以让过孔淹没在动态铜皮的汪洋大海里... 上图右下的2个过孔未在GND网络上,只需要选中这两个过孔,执行Move命令,放在动态铜皮上,就可以了,见下图。 阅读全文
posted @ 2018-11-11 09:38 黑马Amos 阅读(124) 评论(0) 推荐(0)
摘要:简单地说,先测量得到要处理的元件的焊盘中心间距,然后打开Shape -> Global Dynamic Params -> Void Controls选项卡,Create pin voids选择In-line,Distance between pins设置的比焊盘中心间距稍微大一些,另外在Therm 阅读全文
posted @ 2018-11-10 15:35 黑马Amos 阅读(367) 评论(0) 推荐(0)
摘要:目录 1. Orthogonal连接方式 2. Diagonal连接方式 3. FULL_CONTACT连接方式 4. 8_WAY连接方式 1. Orthogonal连接方式 Orthogonal:特点是焊盘到铜皮的Cline最多4条,且互相垂直。 执行Shape -> Global Dynamic 阅读全文
posted @ 2018-11-10 15:24 黑马Amos 阅读(214) 评论(0) 推荐(0)
摘要:目录 1. 差分线的单条线执行蛇形走线的方法 2. 差分线的两条线同时执行蛇形走线的方法 3. 总结 1. 差分线的单条线执行蛇形走线的方法 Route -> Delay Tune,鼠标单击差分线的单条线Tx-_GP9(较短的那一条),此时Options的界面如下: 这个时候晃动鼠标可以看到屎黄色的 阅读全文
posted @ 2018-11-04 21:43 黑马Amos 阅读(540) 评论(0) 推荐(0)
摘要:1. PHY距离网络变压器的距离要≥25mm,以便于将PHY和网络变压器有效隔离,减少EMI干扰,见下图。 2. PHY和PHY的差分对到PCB边沿的距离至少25mm。 3. PHY的差分对若有49.9Ω上拉电阻需靠近PHY摆放。 图1 布线时PHY和变压器、变压器和RJ45的距离考虑(来自于SMS 阅读全文
posted @ 2018-11-02 22:10 黑马Amos 阅读(383) 评论(0) 推荐(0)
摘要:目录 1. 使用Relative Propagation Delay约束差分线TX+_GP0和TX-_GP0 2. 使用Static Phase约束差分线TX+_GP0和TX-_GP0 3. 几点结论 简单地说: 使用Static Phase的设置和操作步骤很简单,得到的结果很粗暴; 使用Relat 阅读全文
posted @ 2018-10-29 22:48 黑马Amos 阅读(157) 评论(0) 推荐(0)
摘要:简单地说,可能的原因是: 在你布差分线的时候,你太心急,你只布了Signal_P和Signal_N的主线路,而没有布与之相关的比如匹配电阻或耦合电容的线,就去Analyze Actual和Margin。 阅读全文
posted @ 2018-10-27 22:47 黑马Amos 阅读(330) 评论(0) 推荐(0)
摘要:简单地说,Phase Tune只针对差分信号进行操作,Delay Tune一般对单端信号进行操作。 执行Phase Tune和Delay Tune命令都是在Allegro中执行的,分别为: Route -> Phase Tune Route -> Delay Tune 当对一单端信号执行Phase 阅读全文
posted @ 2018-10-27 21:16 黑马Amos 阅读(206) 评论(0) 推荐(0)
摘要:假如说误删了R3,并且也保存了,无法回撤,可以打开Place -> Manually,见到下图。 勾选R3后先将R3放在Allegro中,再点OK,我们的R3就回来了。 阅读全文
posted @ 2018-10-27 11:36 黑马Amos 阅读(41) 评论(0) 推荐(0)
摘要:最近在建设公司Cadence库的过程中,发现在原理图中放置某些元器件时,总会附带一些不需要的属性,比如放置电容时,除了容值和额定电压还有Value值,因此对这一问题进行了探索。 在CIS Explorer中可以看到许多属性,下图是一个例子。 上图中,当元件的某一属性勾选Visible,那么在原理图中 阅读全文
posted @ 2018-10-25 21:00 黑马Amos 阅读(159) 评论(0) 推荐(0)