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

请教大神们Allegro如何统计整板的所有器件面积?

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2023-5-24 16:57 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

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

x
如题,需要统计整板器件的面积计算利用率,allegro软件需要如何操作获取整板所有器件的总面积?请知道方法的大神们分享下,谢谢!
/ l6 X% E8 [5 Z% s6 G

点评

是密度. 而且要看你們零件SOP怎建, 大多是建錯, 所以也不準.  发表于 2023-5-26 02:06
  • TA的每日心情
    开心
    2024-2-21 15:59
  • 签到天数: 313 天

    [LV.8]以坛为家I

    推荐
    发表于 2023-5-25 14:00 | 只看该作者
    写个skill插件来统计place_bound面积之和

    “来自电巢APP”

    点评

    有想过写skill但是全新skill不会写,如果有类似的可以用来参考的skill请提供下,谢谢!  详情 回复 发表于 2023-5-25 16:38
  • TA的每日心情
    开心
    2023-5-17 15:19
  • 签到天数: 1 天

    [LV.1]初来乍到

    2#
    发表于 2023-5-24 18:29 | 只看该作者
    这个还是第一次遇到,一般都是PCB的尺寸

    点评

    是啊,找了好久没找到这种功能用查看功能只能看到单独的器件面积,没有把整板所有器件面积汇总  详情 回复 发表于 2023-5-24 18:36

    该用户从未签到

    3#
     楼主| 发表于 2023-5-24 18:36 | 只看该作者
    bc9jvvs1id 发表于 2023-5-24 18:29
    " c: l0 O  b; i0 a% {这个还是第一次遇到,一般都是PCB的尺寸
    + G. i7 h% Q- d+ X* p/ x4 r
    是啊,找了好久没找到这种功能用查看功能只能看到单独的器件面积,没有把整板所有器件面积汇总% J2 A+ R! E! M* Y! i+ o; o

    该用户从未签到

    5#
     楼主| 发表于 2023-5-25 16:38 | 只看该作者
    dzkcool 发表于 2023-5-25 14:00  d9 N/ ]7 B1 y: [  P  z
    写个skill插件来统计place_bound面积之和
    0 |$ a6 n3 @3 u$ E0 C% D8 i8 Z6 x
    有想过写skill但是全新skill不会写,如果有类似的可以用来参考的skill请提供下,谢谢!
  • TA的每日心情
    奋斗
    2025-7-7 15:38
  • 签到天数: 83 天

    [LV.6]常住居民II

    6#
    发表于 2023-5-26 18:26 | 只看该作者
    仅供参考
    1. axlCmdRegister("csa" 'dbCheckSymbolArea)
      - T* N9 p+ t# U) }% v/ \5 g

    2. * j% q/ R( x2 a( d! {
    3. ;; How to use- u  D# \4 ^! f2 M0 @5 N0 l' |( t
    4. ;; skill load "test_calc.il"
      2 f3 Y; A1 \: t. ?: C
    5. ;; csa; y) c# Z- ]% ^" w

    6. ' W9 S0 }/ F& O* i8 L
    7. procedure( dbCheckSymbolArea()$ o3 }# G! W- _; o( r2 I  n
    8. let( (plcbnd area (sumPlc 0) shapeOutline sumOutline)& W4 P9 c1 z2 P: G
    9.     0 b- k; H0 o7 N, o/ s$ `
    10.     ;;calc area of placebound of top symbols( G  j0 B9 ?3 o) w0 ?5 P: l
    11.     foreach(i axlDBGetDesign()->components
        q8 c2 T2 j! \( n
    12.         when(i->symbol && i->symbol->layer == "TOP"* I9 Z$ e# Y- x* G3 L  ^
    13.             ;;get shape of placebound
      0 c6 @1 u- W6 o6 `/ N; s
    14.             plcbnd = car(setof(x i->symbol->children (x->objType == "shape" && index(x->layer "PACKAGE GEOMETRY/PLACE_BOUND_"))))
      2 L( F3 K+ d8 _% P$ Y% C
    15.             when(plcbnd
      ( S; R2 R2 d" Q* e
    16.                 ;;change to poly+ s! y2 o7 f" w) T
    17.                 area = car(axlPolyFromDB(plcbnd ?layer plcbnd->layer))->area2 R# w! B' z* x, L0 E- Q
    18.                 ;;add
      , B# H1 E6 O+ X$ Y$ D( ^3 U
    19.                 sumPlc = sumPlc + area
      2 T& W( a9 K! [# O. H; O4 `
    20.             )
      5 f$ J( M, a: ^
    21.         )
      % ~2 J5 O' t! R# P1 V; m
    22.     )
      * {3 j9 q9 j1 e" D8 `$ s
    23.     : s7 J2 D' Y2 n1 ]
    24.     ;;calc area of outline5 Z  x' s; \2 z  D
    25.     shapeOutline = axlDBGetShapes("BOARD GEOMETRY/OUTLINE") || axlDBGetShapes("BOARD GEOMETRY/DESIGN_OUTLINE")
      , \: @( G2 V( @/ `
    26.     sumOutline = car(axlPolyFromDB(car(shapeOutline) ?layer shapeOutline->layer))->area& I9 h* |6 L+ O1 a+ |
    27.    
      ( w& L1 P; u. C  ~4 R1 K  ?- j- K) x
    28.     ;;calc percentage9 V- S& a" M* c7 x7 V) O4 |6 k
    29.     result = sumPlc * 100.0 / sumOutline
      % s! o1 T( C! z5 e5 |9 L4 P& k8 N
    30.     printf("Placebound Area = %.2f\nOutline Area = %.2f\nPercentage = %.2f%%\n" sumPlc sumOutline result)
      9 S, A9 r( ^* l0 l- s; ^: i  c
    31.     axlUIConfirm(sprintf(nil "Placebound Area = %.2f\nOutline Area = %.2f\nPercentage = %.2f%%\n" sumPlc sumOutline result))  R4 k2 T5 I4 [3 [; d/ q% r
    32. ))
    复制代码
    # E. D- w0 T: D7 ~. s" V

    . F4 F5 ]5 {. \, H+ ?! O5 M3 ?, H# i

    点评

    收到,感谢提供参考资料!  详情 回复 发表于 2023-5-29 09:52

    该用户从未签到

    7#
     楼主| 发表于 2023-5-29 09:52 | 只看该作者
    db-_- 发表于 2023-5-26 18:264 ?" Y+ O& d' `! U$ U4 W" X
    仅供参考
    ! i7 t8 C' y1 g/ G* e& j4 z
    收到,感谢提供参考资料!
    ) t% N% k/ X( V+ }$ y) U

    该用户从未签到

    8#
    发表于 2023-6-6 13:47 | 只看该作者
    簡單, 用place_bound 來建立底片 , 然後去看 Tools 裡面的file area report 即可
    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    关闭

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

    EDA365公众号

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

    GMT+8, 2025-8-18 22:20 , Processed in 0.156250 second(s), 31 queries , Gzip On.

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

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

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