PCB
文章平均质量分 56
介绍PCB相关的内容
努力不期待
做我的粉丝儿,我肯定会对你负责的~
来撒,互关~
展开
-
Allegro利用Skill语言实现根据NET获取同网络下所有过孔的坐标信息
代码如下:defun(GetViaCoordinate (NetName)axlClearSelSet()axlSetFindFilter( ?enabled (list "nets" ) ?onButtons (list "nets"));p = axlSelectByName("NET" "DDR_B4420_MDQ0" t)p = axlSelectByName("NET" N...原创 2019-07-27 18:45:42 · 1838 阅读 · 3 评论 -
Allegro使用Skill语言实现根据两点p1,p2确定的线段判断是否与bbox构成的矩形相交的函数
/*****************判断两点p1,p2确定的线段是否与bbox构成的矩形相交的算法*******************/defun(isLineIntersectRectangle (p1 p2 bbox) x1=car(p1) y1=nth(1 p1) x2=car(p2) y2=nth(1 p2) lineHeight=y1-y2 lineWidth=x2-x...原创 2019-07-31 20:47:10 · 737 阅读 · 2 评论 -
Allegro利用Skill语言实现判断1个坐标是否在bBox构成的矩形框内的函数
/*****************获取叉乘*******************/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) res=(p2x-p1x)*(py-p1y)-(px-p1x)*(p2y-p...原创 2019-07-31 14:03:41 · 1178 阅读 · 0 评论 -
Allegro利用Skill语言实现获取匹配组(MatchGroup)下的所有网络名功能
/******************获取匹配组下的所有网络名******************/defun(GetMatchGroupNetNames (MGName)MG=axlDBGetDesign()->matchgroupMG_len=length(MG)let((groupMembersTable)groupMembersTable=makeTable("tabl...原创 2019-07-28 17:55:12 · 1553 阅读 · 0 评论 -
Allegro利用Skill实现BGA封装的自动扇出功能
此代码并非原创,是根据Cadence Skill论坛的一份代码修改而来,主要功能是:用户自己指定位号(需要BGA封装)和过孔,实现该位号的自动扇出功能(自动打孔+自动将过孔和焊盘连接),代码如下:procedure(bga_fanout(RefDes) logFile = "./bga_fanout_debug.log" ;LogFile Used f...原创 2019-07-27 17:36:55 · 2047 阅读 · 0 评论 -
Allegro利用Skill语言实现通过焊盘获取对应的网络名的功能
/******************获取焊盘的网络名******************/defun(GetPinsNetName (PinName)axlClearSelSet()axlSetFindFilter( ?enabled (list "noall" "pins" ) ?onButtons (list "pins"))dbid = axlSelectByName("PIN"...原创 2019-07-28 17:49:15 · 1274 阅读 · 0 评论 -
Cadence 16.6 Allegro的Primary Gap、Air Gap、Neck Gap和Min Line Spacing都是指内间距
简单地说,Primary Gap、Air Gap、Neck Gap和Min Line Spacing都是内间距的概念。比如在项目上有个差分信号BSCU_UTC_IN_P和BSCU_UTC_IN_N,约束管理器中对此差分信号的Top层的设置为:Min Line Width=5.1mil,Min Line Spacing=4mil,Primary Gap=8.5mil,Min Neck Wid...原创 2018-10-19 21:31:07 · 14740 阅读 · 0 评论 -
Cadence 16.6 Allegro中Phase Tune和Delay Tune的区别
简单地说,Phase Tune只针对差分信号进行操作,Delay Tune一般对单端信号进行操作。执行Phase Tune和Delay Tune命令都是在Allegro中执行的,分别为:Route -> Phase TuneRoute -> Delay Tune当对一单端信号执行Phase Tune时,提示为“Cline segment must belong to a...原创 2018-10-27 21:16:00 · 4801 阅读 · 0 评论 -
对Regular Pad(正规焊盘)、Thermal Relief(热风焊盘)和Anti Pad(隔离焊盘)的理解
一直对这三个概念很模糊,今日研究了一下,做个记录,若理解有误,请指正,谢谢!图1 某过孔的Regular Pad、Thermal Relief和Anti Pad界面1)每一层(比如TOP层)都有Regular Pad、Thermal Relief和Anti Pad的概念。但是Regular Pad与Thermal Relief和Anti Pad是2选1的关系,假如TOP层设置为正片,则...原创 2019-05-14 23:47:20 · 12676 阅读 · 2 评论 -
Allegro给无网络的地孔添加GND网络的方法
简单地说,在动态铜皮上随便Move一下无网络的地孔就可以让过孔淹没在动态铜皮的汪洋大海里...上图右下的2个过孔未在GND网络上,只需要选中这两个过孔,执行Move命令,放在动态铜皮上,就可以了,见下图。...原创 2018-11-11 09:38:14 · 10378 阅读 · 1 评论 -
Cadence 16.6 Allegro能打开cross-section(层叠)但无法显示界面的解决办法
解决方法如下:Allegro中点击Setup -> Cross-section,使用ALT+空格键+X可将隐藏的叠层界面最大化,经过测试发现这个问题是概率性地出现的,这可能是Allegro的bug......原创 2018-10-18 20:16:43 · 6079 阅读 · 0 评论 -
Cadence 16.6 Allegro差分线的蛇形走线
目录1. 差分线的单条线执行蛇形走线的方法2. 差分线的两条线同时执行蛇形走线的方法3. 总结1. 差分线的单条线执行蛇形走线的方法Route -> Delay Tune,鼠标单击差分线的单条线Tx-_GP9(较短的那一条),此时Options的界面如下:这个时候晃动鼠标可以看到屎黄色的框,右键鼠标选择Single trace mode,见到下图。当上图的...原创 2018-11-04 21:43:49 · 16497 阅读 · 0 评论 -
Cadence 16.6 Allegro中如何设置多层板的每一层的单端信号的线宽以保证50Ω阻抗?
简单地说,先从PCB板厂拿到想要的参数后,输入不同的线宽,试出50Ω阻抗,此时的线宽就是我们需要的。以下是一个八层板的例子。在Allegro中点击Setup -> Cross-section,可以看到下图的界面。上图中勾选了Shield和右下角的Show Single Impedance,可以显示每一层的单线阻抗。先以Top层为例:Top层:Material选COPP...原创 2018-10-18 23:45:35 · 5216 阅读 · 0 评论 -
Cadence 16.6 Capture多个器件同步到Allegro的方法
如果每次capture只点击一个元器件,再在Allegro中摆放会花费很多时间,如果能够按照功能模块的思路,一次选中一个功能模块的全部元器件,再同步到Allegro,并可以在Allegro中同时操作这些元器件,这样会大大提高PCB布局效率。本文介绍了如何在capture选中多个元器件,并同步到Allegro,以下是操作步骤:1)Capture中选择Options -> Prefere...原创 2018-10-14 11:39:35 · 3201 阅读 · 0 评论 -
Cadence 16.6 Allegro如何同时对齐多个封装?
1)Allegro中选择Setup -> Application Mode -> Placement Edit2)选中多个Symbol,右键选择Align component,在Options中界面如下:Alignment Direction用于选择水平对齐和垂直对齐;Alignment Edge用于选择顶端对齐、中心对齐和底部对齐。Spacing用于设置元件间距。...原创 2018-10-14 11:51:53 · 4364 阅读 · 0 评论 -
PHY和网络变压器的PCB布局(Layout)规则
1. PHY距离网络变压器的距离要≥25mm,以便于将PHY和网络变压器有效隔离,减少EMI干扰,见下图。2. PHY和PHY的差分对到PCB边沿的距离至少25mm。3. PHY的差分对若有49.9Ω上拉电阻需靠近PHY摆放。图1 布线时PHY和变压器、变压器和RJ45的距离考虑(来自于SMSC的AN18.6)4. 差分线上的共模电容用于高频衰减,共模电容靠近网络变压器摆放,见...原创 2018-11-02 22:10:04 · 20186 阅读 · 0 评论 -
要设计的PCB焊盘总要比IC焊盘大一些,怎么精确摆放PCB焊盘?
本文利用Allegro,以制作LMK00338 的贴片PCB封装(WQFN)为例进行说明。本文主要用来解决两个问题:1)怎么根据贴片IC的焊盘确定PCB焊盘大小?2)因为PCB焊盘与IC焊盘长宽均略不同,怎么放置PCB焊盘?1. 计算WQFN的PCB焊盘大小图1-1 LMK00338的外框尺寸图(单位:mm)图1-2 LMK00338的引脚尺寸图(单位:mm)...原创 2018-09-16 22:47:48 · 4390 阅读 · 0 评论 -
Cadence 16.6 Allegro中Static Phase和Relative Propagation Delay的区别
目录1. 使用Relative Propagation Delay约束差分线TX+_GP0和TX-_GP02. 使用Static Phase约束差分线TX+_GP0和TX-_GP03. 几点结论简单地说:使用Static Phase的设置和操作步骤很简单,得到的结果很粗暴;使用Relative Propagation Delay的设置和操作步骤相对麻烦,但得到的结果相对全面...原创 2018-10-29 22:48:37 · 7686 阅读 · 0 评论 -
使用正片和负片为何会得到效果相同的PCB?
一直对正片和负片的概念比较模糊,今天研究了一下, 记录在此做个总结。图1正片和负片的区别(左正片,右负片)当你使用Allegro画了1个PCB,有的层设置成了正片,有的层设置成了负片,Gerber交给PCB板厂后,因为有正片有负片,所以板厂会使用两个不同的制作工艺。以上图为例进行说明。对于正片,如上左图,用户想要保留黑色的部分,丢弃白色的部分,板厂使用pattern制程(细节...原创 2019-05-14 23:32:36 · 2429 阅读 · 0 评论 -
Cadence 16.6 Allegro焊盘与铜皮的连接方式(Orthogonal、Diagonal、FULL_CONTACT、8_WAY)
目录1. Orthogonal连接方式2. Diagonal连接方式3. FULL_CONTACT连接方式4. 8_WAY连接方式1. Orthogonal连接方式Orthogonal:特点是焊盘到铜皮的Cline最多4条,且互相垂直。执行Shape -> Global Dynamic Params -> Smd pins,见下图。Smd pins设...原创 2018-11-10 15:24:14 · 10892 阅读 · 0 评论 -
修改Cadence 16.6 Allegro中一块铜皮下的所有焊盘与铜皮的连接方式
本文的主要目的是将下图所示的铜皮与焊盘的连接方式由Orthogonal改为FULL_CONTACT。Allegro中执行:Shape -> Select Shape or Void/Cavity -> 选中铜皮,右键选择Parameters,见到下图。在Thermal relief connects中设置Smd pins为Full contact,最终的效果如下图所示。...原创 2018-11-17 18:54:53 · 4467 阅读 · 0 评论 -
Cadence 16.6 Allegro中Static Phase的Actual和Margin都是黄色的原因
简单地说,可能的原因是:在你布差分线的时候,你太心急,你只布了Signal_P和Signal_N的主线路,而没有布与之相关的比如匹配电阻或耦合电容的线,就去Analyze Actual和Margin。 ...原创 2018-10-27 22:47:00 · 6212 阅读 · 0 评论 -
Cadence 16.6 Allegro中如何设置多层板的每一层的差分信号的线宽和线间距以保证100Ω阻抗?
简单地说,从PCB板厂拿到各层的Thickness参数(或许介电常数也可以提供)后,利用Si9000设定好差分阻抗100Ω,计算出合适的差分线宽和线间距。项目上使用的层叠设置如下图所示,下图中各层的Thickness由PCB板厂提供。上图勾选了右下角的Show Diff Impedance。首先以Top层为例:Top层厚度Thickness=2.1mil,介电常数Dielect...原创 2018-10-19 23:27:21 · 9538 阅读 · 0 评论 -
如何设置Cadence 16.6 Capture CIS Explorer默认的Visible属性?
最近在建设公司Cadence库的过程中,发现在原理图中放置某些元器件时,总会附带一些不需要的属性,比如放置电容时,除了容值和额定电压还有Value值,因此对这一问题进行了探索。在CIS Explorer中可以看到许多属性,下图是一个例子。上图中,当元件的某一属性勾选Visible,那么在原理图中放置该元件时这一属性就会出现在原理图中,上图中默认勾选了所有属性的Visible,它的设置方...原创 2018-10-25 21:00:15 · 4472 阅读 · 0 评论 -
关于Cadence 16.6 Allegro对铜皮Void之后剩下的轮廓删除的问题
本文是想在动态铜皮模式下,把下图选中的Shape删除掉(该Shape与下图最上方的Shape都是GND网络)。经过多次测试发现无法删掉,将GND网络切换成静态铜皮后,上图选中的Shape就消失了,见下图。这说明,动态铜皮下,无需删除Void之后的铜皮轮廓,因为终究是要切换成静态铜皮,切换后该轮廓就消失了。...原创 2018-11-17 19:50:44 · 5748 阅读 · 0 评论 -
Cadence 16.6 Allegro铺铜后去掉贴片元件焊盘之间铜皮的方法
简单地说,先测量得到要处理的元件的焊盘中心间距,然后打开Shape -> Global Dynamic Params -> Void Controls选项卡,Create pin voids选择In-line,Distance between pins设置的比焊盘中心间距稍微大一些,另外在Thermal relief connects选项卡中设置引脚与铜皮的连接方式(不要选FULL_C...原创 2018-11-10 15:35:31 · 6866 阅读 · 0 评论 -
Cadence Allegro贴片和插件元器件封装制作流程总结
目录1. 0805电阻封装的制作1.1 计算焊盘尺寸1.2 制作焊盘(用于生成*.pad)1.2 封装制作(生成*.dra)1.3 设置参数、栅格grid和原点1.4 放置焊盘1.5 放置元件实体区域(Place_Bound)1.6 放置丝印层(Silkscreen)1.7 放置装配层(Assembly)1.8 放置元件标示符(Labels)1.9 放置...原创 2018-09-16 08:11:15 · 27038 阅读 · 7 评论 -
Allegro 误删了封装怎么办?
假如说误删了R3,并且也保存了,无法回撤,可以打开Place -> Manually,见到下图。勾选R3后先将R3放在Allegro中,再点OK,我们的R3就回来了。原创 2018-10-27 11:36:21 · 1477 阅读 · 0 评论