找回密码
 注册
关于网站域名变更的通知
查看: 21322|回复: 101
打印 上一主题 下一主题

阿毛调侃(13)---【原创】史上最强悍Allegro差分线匹配工具与开发往事

  [复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2015-6-30 10:20 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
本帖最后由 amao 于 2015-6-30 11:52 编辑
4 C8 D* f2 K# b! w8 s4 s/ x) C% H- P6 E( [
【原创】史上最强悍allegro差分线匹配工具与开发往事' G  M! d4 v: `/ T. c
毛忠宇 201506
$ e1 G% V2 x* Y( V/ M! m. Z' S- y: M; L
差分对提取工具开发往事

       上篇《我与pads的那点事》文章发表后,收到不少网友索取所写小工具的免费授权文件,程序能被大家接受,不免有“那么一点点”的成就感。

       在Allegro Constraint Manager菜单没有出现前,那时把网络设置成差分线需要手工逐对添加Property属性来实现。那时我还在H公司,用刚学点皮毛的PERL编程写了个差分线的自动提取工具,这个程序在部门得到推广及广泛使用(现在H公司还有不少人在使用)。

我写的程序使用了很久一段时间后,Allegro在后来的版本才出现类似的功能,它提出了Constraint Manage的概念,差分线等各种网络的规则通过类EXCEL界面管理,如下图1。这样使规则管理起来更直观及更简单,其它EDA厂商的软件后来也跟着出现了类似的管理界面。


, \* i! y/ z7 R% S; T0 |. [9 N5 n图1  A软件的Constraint Manager界面

EDA软件A*差分对自动匹配存在的问题

当年在H公司由于原理图与PCB LAYOUT软件平台的原因,所有网表都是第三方的模式调入。因此其员工是业界上对调第三网表都很熟悉的,我那时开发的程序还需要手工对网表文件手工处理一下,但他们用起来基本没遇到什么问题,就一直没有更新了。

上段有个现同事向我讲起她所用的Allegro自动生成差分对功能时,还有些不够完美的地方:一次只能生成一种类型的差分线:要生成下面网络组成的差分线,Allegro中要在匹配字符框中分别多次输入:N0,P0  N1,P1   N2,P2   N3,P3……

'B7ABC_CLK_N0'         'B7ABC_CLK_P0'

'B7ABC_CLK_N1'         'B7ABC_CLK_P1'

'B7ABC_CLK_N2'         'B7ABC_CLK_P2'

'B7ABC_CLK_N3'         'B7ABC_CLK_P3'

……


, }/ F# n6 T1 |/ L& ^0 D3 t! @& S! P2 }图2  A软件匹配输入界面

如这类网络不多手工处理起来问题不大,如下图中的从N0,P0到N43到P43只需要手工输入44次匹配方式。而程序又不能识别P* N*,万一要网络定义到N1000,P1000,哪怎么办呢?要手工输入1000次那就有点“扯蛋”了。


8 f" X( r* N: `2 A7 d$ J3 L0 z/ Y图3  差分网络定义格式

*以上测试基于16.5版的平台,更高级的版本没有测试。

EDA软件M*差分对自动匹配存在的问题

业界另一个EDA巨头M公司,他的差分对匹配算法很强悍,但是强悍得过了头,识别后会多出很多不符合要求的差分对,这些需要手工再去删除,反而有点画蛇添足了。如下面它对网络的匹配效果,多出了太多不想要的差分线。下图4中所有粉红色都是被匹配出的错误差分对:如B8_TX_P22  B8_RX_P22 ,而真正的差分对是B8_TX_P22  B8_TX_N22


& q) B# U& T! Q& J6 t1 ]图4  M软件匹配出的多余组合

自开发差分线匹配工具的优点

基于目前两在EDA软件巨头差分对算法方面的问题,我优化算法,克服了他们现存的缺点,并实现输入窗口可以同时加入多个匹配字符,从而一次性提取出所有差分线,对抽取的结果可以在文本文件中或调入后在Constraint Manager界面上把多余的删除(删除的操作总比增加的操作用起来更令人愉快),从而一次性匹配几百乃至上千对差分线。


3 h* a) N2 o* l: z$ a, C+ N0 `图5  自开发的差分线自动匹配软件工具界面

下图6是用程序对网表处理后,不到1分钟就完成的179对差分线匹配图。

/ i7 s' Y3 D; O4 |% }) Z( ~
图6  自开发软件匹配效果

特点

1) 克服两大EDA公司的差分线匹配算法问题

2)适用任何Allegro版本

3)可一次性全部匹配


  V; H7 b$ D) t1 ?7 i+ h
*《IC封装基础与工程设计实例》书籍答疑QQ群号:433148683
* 如对相关内容感兴趣,请关注微信公共帐号:amao_eda365附
2 a7 \# G. {  Z1 K5 A
程序使用方法:
+ v  c5 h2 B5 u4 s; l  d4 y , K6 g6 p: v: |7 i/ _" i4 Z

该用户从未签到

来自 2#
 楼主| 发表于 2015-7-24 10:12 | 只看该作者
有同学问到下面的这类差分信号如何匹配0 M# l- K# @0 q+ D! b* u6 F
DP_PEXPERI_N<1>% N( y; m4 J$ Q; g; T' I$ {- G
DP_PEXPERI_P<1> 1 _' x  t7 ]6 U3 P2 [( a, y9 ~
DP_PEXPERI_N<2>' o. G* Y  n* ^0 U
DP_PEXPERI_P<2>- B, G2 g3 ^! d- l1 l
DP_PEXPERI_N<3>8 J* E# m' x1 ^! Q
DP_PEXPERI_P<3>3 [! G2 o1 S3 F, n2 N! V: M  u4 S7 x
.....6 J+ n1 _- b1 w4 v. H, o
对于这类只要使用下面的匹配方式即可:
8 G$ @! c% h6 |P<\d+>=N<\d+>  
' c7 N. ]+ d) E+ v+ G4 t3 m4 T ) e% p. f3 V2 O( q* j, Q
# H$ T! j+ ]$ j8 Y! f
如果要匹配
# g6 b3 S( |4 i  B  Y/ a% Q; pDP_PEXPERI_Nabc1abc
5 l7 ~; {; h0 P; k% Q$ L1 lDP_PEXPERI_Pabc1abc
& d$ p& w7 j, _6 ]. ~DP_PEXPERI_Nabc2abc
) i8 H, P4 a& f: o. S. w  v5 d" xDP_PEXPERI_Pabc2abc3 e9 }+ d5 J/ O0 D. p& d
你应该会怎样输入了吧
9 @6 v6 I2 i8 X6 x. o/ q' b8 H7 X) j2 p) [2 `* p* N. U, m+ b
欢迎挑战其它匹配模式! ]8 b& x( f6 e

5 D6 g9 s3 A/ j5 ~: p6 r
( w3 p, J. o3 [* l3 K8 ?/ F  G( _

! Q, q* `% Z  ?$ B* s- {& K

该用户从未签到

推荐
 楼主| 发表于 2015-6-30 10:23 | 只看该作者
软件与使用说明书

allegro_dif_net_V1.rar

4.04 MB, 下载次数: 654, 下载积分: 威望 -5

点评

感谢感谢感谢感谢感谢感谢  详情 回复 发表于 2024-12-3 10:04
如何下载  详情 回复 发表于 2020-3-24 16:19

评分

参与人数 1威望 +2 收起 理由
wanily + 2 很给力!

查看全部评分

该用户从未签到

推荐
发表于 2015-8-12 12:00 | 只看该作者
bingshuihuo 发表于 2015-8-12 10:51
. T, `( Q$ _5 r$ n$ }& Y& ?. H感谢毛老师无私奉献  
2 O4 n) \5 D: P3 K$ ?) b* P0 f4 w; f为PCB 操作提高了效率花费的心血

# A$ X  p" j  v- D+ H" o  ]! \昨天发了邮件  & l0 g& K; L7 V4 }
收到后 使用了一下
- E: f* ~/ f5 C4 C2 Z6 [真的感觉很顺 . r" m" T5 x$ ^/ q" `

6 f5 q" m5 ^& d最少效率提高了很多: |) R3 P" G' K0 M
* K7 a' z* W2 [1 F3 H
很多做SKILL的  ; h: I0 Y; g7 e0 S& K9 z
在这块没有花时间去考虑 0 z" @0 V5 e, Y

  K. A5 d+ g3 c$ t7 [$ e/ y9 h思维  是排出万难的发动机
! c9 x! t$ {) \; g) z3 g/ w. T能力  是脱颖而出的基石$ I3 o: Y$ W; w
共享  是虚怀若谷的体现
% E' _6 x  a+ _) V/ W$ q贡献  是推动行业发展的情怀6 w( v( i* \1 \5 v/ Q4 U
% g- a9 f+ u* s) T: i
四美具  人生必有腾飞
- I; |# h2 T/ L) w2 U4 D/ r
' R) o+ o% r. b
$ Q+ y+ b2 c( p: D+ d; f( b) x' R! b0 ~4 J! g9 t- J$ e
* x" P; d& t# S$ c! q; M
) r1 p6 z* y9 H) F  q

该用户从未签到

6#
发表于 2015-6-30 10:42 | 只看该作者
谢谢分享  楼主好人 大牛
  • TA的每日心情
    开心
    2023-12-4 15:58
  • 签到天数: 1 天

    [LV.1]初来乍到

    7#
    发表于 2015-6-30 10:56 | 只看该作者
    绝对好东西,32个赞!!!

    该用户从未签到

    8#
    发表于 2015-6-30 11:10 | 只看该作者
    我来顶顶顶顶顶

    该用户从未签到

    10#
    发表于 2015-6-30 11:49 来自手机 | 只看该作者
    牛xxx啊,果断下载!

    该用户从未签到

    11#
    发表于 2015-6-30 12:51 | 只看该作者
    阿毛版主太厉害了,佩服大神开发了这些实用工具

    该用户从未签到

    12#
    发表于 2015-6-30 14:21 | 只看该作者
    前人种树,后人乘凉

    该用户从未签到

    13#
    发表于 2015-6-30 15:23 | 只看该作者
    谢谢分享  楼主好人 大牛

    该用户从未签到

    14#
    发表于 2015-6-30 15:34 | 只看该作者
    很好很强大啊!
  • TA的每日心情
    开心
    2021-8-17 15:44
  • 签到天数: 1 天

    [LV.1]初来乍到

    16#
    发表于 2015-6-30 16:57 | 只看该作者
    必须给力赞啊,楼主好强大
  • TA的每日心情

    2019-11-20 15:11
  • 签到天数: 1 天

    [LV.1]初来乍到

    17#
    发表于 2015-6-30 17:31 | 只看该作者
    毛哥的干货真多,速速收藏

    该用户从未签到

    18#
    发表于 2015-6-30 18:55 | 只看该作者
    感谢大神无私奉献。
    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    关闭

    推荐内容上一条 /1 下一条

    EDA365公众号

    关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

    GMT+8, 2025-11-24 11:08 , Processed in 0.203125 second(s), 30 queries , Gzip On.

    深圳市墨知创新科技有限公司

    地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

    快速回复 返回顶部 返回列表