EDA365欢迎您!
您需要 登录 才可以下载或查看,没有帐号?注册
x
本帖最后由 amao 于 2015-5-7 16:19 编辑 3 h& j5 H. ~) z6 G* p
1 k5 i0 |8 u) \* W; a) B0 k( f+ \ _
【原创】阿毛调侃(7)---我与pads的那点事
: L" H- L) F6 C+ N- x0 e-----阿毛20150429 $ m! s7 n1 I0 B9 V
从接触PADS到现在已有十多个年头了,从DOS版本到WINDOWS版本,期间也见证了市场上各类EDA软件激烈竞争、并购,但PADS最令我值得我尊敬的地方就是它公开原码的ASC文件...... $ i" S& u' K" z9 ^ V
' |$ E; {1 K) R4 E7 D$ q' Q4 I
1.1 PADS印象 第一次接触PADS的时候在1995年,那时刚毕业在珠海一家台资公司上班,工程部有个同事的工作是给我们设计的IC做COB验证板,他使用的就是PADS LAYOUT软件。当初大型业界PCB LAYOUT的软件都基于UNIX平台,由于工作站奇贵无比,一般企业都使用中小型的PCB LAYOUT软件。PADS那时在沿海的港、台企业比较流行,当时的PADS版本普遍基于DOS操作平台,中国互连网还很不发达,网速一网就是几个Kbps/S,很难从网上找到帮助。市面上这类软件的使用工具书比较少,即使偶尔见到一两本也都是台湾或香港出版的,软件获取也比较难。 那年头电脑的价格相对当时的收入很贵,对于一般刚毕业的工程一师来说属于奢侈品,这无形中导致了自学门槛的提高,在那个条件下学会使用PADS LAYOUT已算是一门不错的工作技能了。小公司里同事一般比较保守,我是利用公司当时的资源自学了一些,由于是做的是消费类简单IC,其对应的COB不复杂,也就是把每个IC的焊盘通过WIREBOND引到PCB上,IC一般就2、3十个管脚,因此只需用COPPER把这些节点分别连起来就行了,个别简单的项目甚至连CONNECTON飞线也不用画。这种水平还不能说是半桶水,只能说是一瓢,那时我的工作是IC设计及IC测试,这类COB LAYOUT完全是个人兴趣的自学! 后来到华为应聘,原本是应聘ASIC部门的结果由于简历上写有会一点点PADS而阴差阳错地进了CAD部门。进部门后开头几个PCB就是使用PADS完成的,在师傅的帮助下经过这几个项目的锻炼才算真正撑握了PADS软件的使用。 掌握了PADS软件的使用后又开始钻研了PCB自动布线的方法,当时使用的自动布线器叫SPECCTRA,POWERPCB与SPECCTRA的接口做得很好,可惜后来SPECCTRA被Cadence收购了,在使用授权受到限制后PADS开始开发自家的自动布线器。后期由于大型PCB板较多我们转到了Cadence平台,并且与Cadence进行了一个自动布线的合作项目(详情可以在百度上查找“前华为互连部技术老屌丝回忆之(2)----PCB规则驱动设计”)使用软件组合是Allegro+SPECCTRA,才真正对SPECCTRA的使用有较深入的了解,但POWER PCB由于铜皮方面处理得比较有优势射频组还在使用。 我对PADS生产好感最大的原因是:它是我接触的第一个PCB LAYOUT设计软件,有先入为大的感觉外,另一个是它对用户的负责任的态度。这个责任的态度表现在:到目前为止我所接触到的PCB LAYOUT软件中,只有PADS的文件是可以输出为非加密的ASC文本文件,并且可以在任一版本之间进行转化,这些特点是PADS软件最吸引我的地方,它的ASC中间文件甚至可以说成是各类不同公司LAYOUT设计软件间相互转换时的中间文件了。 十多年前(~1998)我在使用A软件进行PCB设计时,软件还没有根据输入的标识符自动抽取差分线的功能,A软件设置差分对需要手工逐对进行设置并通过PROPERITY属性加入,那时高速数字信号矛盾还不突出,差分对数量一般也较少。后来随着PCB单板的信号速率越来高及设计越来越复杂,单单就差分对设置的工作都变得比较耗时且易漏设置,终于我利用某个国庆的假期,在家中使用还未算很入门的PERL语言硬是把差分线自动提取的工具开发了出来,并在原公司的部门推广使用起来,这个方法使用了一段时间后,Cadence公司后来才在新版本中加入了这个功能,其界面如下图1所示。由于我开发的小工具只针对网表操作,不受LAYOUT软件版本的限制,原来的公司原理图与PCB设计不是同一家公司的平台,因此使用起来很方便,现在还有同事在使用我当时写的那个程序差分提取程序。
图1 Cadence软件中的差分信号自动匹配界面
1 ~" C. {/ e! W 1.2 PADS实现差分线自动匹配生成功能 很久没有进行PCB LAYOUT的设计工作了,前段时间与同事聊天谈起PADS现在的状况时发现有新需求:现在使用的PADS软件版本,居然还没有差分线自动匹配识别的功能。设置差分线还是手工逐对进行设置,当然他们可以使用其它不方便的方法:在MENTORS EXPEDITION中调入PADS文件,然后利用MENTORS EXPEDITION具有的差分线自动匹配识别的功能实现,再输出到PADS中,但这个转来转去的方法还是有点费周折,不是很不方便及直观。由于PERL很适合处理PADS的ASC文件,根据以前在Cadence写过的差分线自动提取经验,我写个小程序帮助LAYOUT工程师们摆脱这类既重复又耗时的工作劳动。 写这个软件并免费共享给有需要工程师当成小小的礼物,同时也作为我当初入行时能使用到PADS软件平台的一个感恩吧。 自开发的软件主界面如下图2所。
, H c5 E, A& {; j$ ?
图2 自开发免费软件界面 这个程序可以给使用者带来很多好处: ◆ 扩展现有PADS的软件功能 ◆ 自动根据标识符一次性生成全部差分对,提高工作效率及减少手工设置的出错率 ◆ 方便PCB设计文件初期的难度评估及工作安排 软件的使用方法、注意事项及下载地址请参考请如下面的地址下载。 程序下载链接: https://www.eda365.com/thread-107747-1-1.html 使用视频及程序下载链接: https://www.eda365.com:5280/course/140 PADS使用手工设置差分对与使用程序设置300对差分线的效果比较图,左图为设置前的情况,右图是使用程序后的设置情况。
( f n5 m: P- g. S% ~5 w! Q( I$ [4 ^7 `
图3 差分对设置前后效果比较图 1.3 PADS后期功能开发计划 这个工具共享只是第一步,根据读者的响应情况及反馈会不定时增加其它需要的功能。由于现行的IC封装设计软件费用较高,PADS虽有IC封装设计的功能模块,但是还不够完善,后面的功能将会集中在IC设计方面。如:使用PADS进行IC PACKAGE与PCB的联合设计,同样实现其它巨型软件的相应功能,这些功能也将作为《IC封装基础与工程设计实例》书本中提到的程序的一个重要补充。 1.4 作者信息补充 1)作者个人微信的公共帐号“Amao_eda365”,内容有作者多年从事PCB行业相关的技术与经验总结,欢迎大家关注! 2)另专为《IC封装基础与工程设计实例》书籍开辟了读者答疑QQ群,欢迎加入! QQ群号:433148683 $ S. {; t# F: w5 L7 c
1 G1 q \# N$ M, ^# a& q图4 《IC封装基础与工程设计实例》QQ群 ; h5 p8 {4 S" s4 {+ p2 ^9 d, R
程序下载:
pads_auto_diffnet_V1.rar
(4.29 MB, 下载次数: 894)
|