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

IPC网表文件详解和相应软件的操作

  [复制链接]

该用户从未签到

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

EDA365欢迎您登录!

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

x
IPC网表和相应软件的操作
什么是ipc网表文件?
准确的说应该是IPC-D-356网表文件,大家简称ipc网表文件。
它是一种特定格式的记录设计文件各逻辑关系的网络集合文件。
详细见以下英文描述(翻译水平有限就不翻译了)
The IPC-D-356 format was designed to define a standard netlist format by which bare board# U0 n5 Z* D, N* f/ z8 Q* W
test information can be represented. In the simplest of forms, this means it must be able to store
$ l" d& Y# C% V1 P. m, c8 ^netlist information along with XY coordinates, and even reference designators and pin numbers
% j- g4 h! h# z, N- I$ R(if they exist). I feel like ending this article here before it gets unmanageable, but then Pete
0 Z$ ]) K1 S& c  z' B  fWaddell wouldn’t be happy, so let’s proceed. If all the information that a test system would$ e" H$ N$ c4 I6 m8 ]: g
need to know to verify and test a bare board could be represented in a single file, it would bring
6 H2 X+ ]2 O6 F" c# Yconsistency to the testing world. IPC-D-356 does just that.
The IPC-D-356 format can carry a lot of information such as comments, format specifiers, field
+ H5 H1 W" N9 y- o3 C5 [4 v! Bparameters
/ W' p' p9 z1 ]' G9 [( B' l
为什么要网表对比操作?主要是以下2点
1,pcb软件输出的光绘文件,有时会变异,会造成开短路,通过对比能保证网络一致性(概率很小)
2,工厂端通常要修改设计文件以便符合生产,修改当中就可能会造成开短路,通过对比可以保证网络一致性(作用主要是此点,保障工厂修改完的文件网络没有问题)
Since testing bare boards is a manufacturing process, the design engineer seldom thinks about# u: s) b4 o% o' V
the problem of testing the PCB before it is stuffed with parts. Therefore, most CAD packages! p, V3 w* t7 \( I! g  U
do not even provide the option of exporting a coordinate based netlist in this format. CAM  l3 @( `) ^# S# Z( J
software is the common source of this information. Net connectivity is computed from the* d& w: C. z* {4 \
Gerber data and the file is exported. Nets are numbered because the original CAD netlist was% @: N  A( C2 O# {
not used. The RefDes/Pin# fields are also not filled in because this information does not exist in2 v) p; K6 `, {: r1 u, t
the Gerber data. The IPC-D-356 file is then read by the bare board test system. The net* g" g' P1 B6 B
information replaces the need for the old “golden board” technique. This process is the way the
' f  C2 @6 N: ?& Kmajority of the industry is working today.
0 p8 h! h% |& V' J! ~, n( J2 b

! c* K, B' j9 i1 g1 f4 s( ~

( z- R9 c! }9 b& B$ g( t

. |8 x  ~1 z, R. G% X
9 U- d$ P) T- h7 ^  Y5 N

该用户从未签到

推荐
 楼主| 发表于 2015-6-26 16:33 | 只看该作者
Cam350对比网表:
; f9 j6 u' Z7 h' L- s  H9 _3 z详见附件(同事写的文档,拿来给大家参考* M* f# u+ A( ^

! K7 L5 `! e' Z# B4 h0 U% _- C

! j, g; }; k  T+ A6 O

cam350对比网表.rar

957.67 KB, 下载次数: 1681, 下载积分: 威望 -5

点评

楼主提供个盲埋孔板的IPC网表对比呀  详情 回复 发表于 2015-11-17 00:33

该用户从未签到

推荐
 楼主| 发表于 2015-6-12 08:51 | 只看该作者
allegro输出的ipc网表(最规范的文件,严格按ipc格式要求)' h4 A3 w, I6 i! y
* U8 x3 e/ v' A; Y; X
$ @/ n' u8 G+ A' U( e1 F/ ^
protel输出的ipcb网表. r4 p0 }) C2 h" K" M" o6 F

1 x, d/ ]5 g( t6 s- b) Y0 d$ J/ Z0 O* _# ~' G% i
mentor输出的ipc网表7 S! G5 O2 w) ]; d

! a) O" X4 X/ t5 D# C- C- ]3 V
4 ~- M- l9 k7 o; {pads输出的ipc网表(本身软件不自带,后面国外朋友写的程序)  ]3 c1 A$ l% Z6 l; o. r% I6 q1 B9 Z
* L* t6 T, O% H3 [7 l6 ]8 k. ~6 K7 ?, l

+ ?- J( X9 ]  {+ v3 A+ W
: _- i( |  ]6 z3 i( o  A2 `
1 a8 _# s! {) _/ s# {- r2 J

该用户从未签到

推荐
 楼主| 发表于 2015-6-19 15:26 | 只看该作者
本帖最后由 dzyhym@126.com 于 2015-6-19 15:27 编辑 7 F1 S! s+ u% y) l, f( k

$ N* z1 U# E/ F* ~3 p2 \Genesis对比网表结果分析:- b" f% `% `8 M" p4 M+ n) ?6 S
IPC网表与Gerber进行比较后它会有哪几种现象呢,主要是以下四个。
" F" Y3 j! W6 @4 B( n8 e+ M* }
Shorted(短路) Broken(开路) Missing(丢失) Extra(多余) 通常分析前面的开短路,后面二个暂时不作探讨。
如对比网表有问题主要通过以下几点分析:
  • 文件各层属性定义是否正确,比如正负片属性定义反了将导致gerber网表错误。
    ! k4 e% Q4 O9 _- X' w
8 j) U1 c+ |9 c* Y8 D) t. i) R0 w
  • 钻孔层所贯穿的层次是否正确定义,比如盲、埋孔;孔径金属、非金属等(有些slot槽孔连接地或电源,如没有添加就会报开路)
    5 v+ i* j4 L, I  w( A6 W0 A6 J
5 ~, l& m( `0 h' a3 Y* J) Q
  • Gerber文件中线路层是否有边框,边框是否将两个不同网络连接。

    " ^4 z; F# L8 m# y
9 c7 Z5 Q( E# y- J, _
  • 在按Compare之前,网表是否与Gerber之间没有对位。

    2 \/ s# s% {# u# R/ [4 ~/ v8 F8 P
6 G$ H# S% ]5 G
  • 网表格式是否读入完全正确,比如IPC356A读入格式为IPC356。(注:正常盲埋孔的网表格式为IPC356A,如果为IPC356则有可能有问题)

    % h7 v4 W8 D: y

/ ?4 U/ h) C  |& G, x
  • 顾客提供的IPC网表是否100%正确(部分cad提供的网表是有错误的可能哦)。
    7 J3 g8 a+ P9 H+ q7 a' p3 P

  Y; Y2 o  _( K( W7 Z
  • Genesis软件比较后报出假错,比如低版本有错误,而高版本是正常(软件Bug)。

      N7 N" e6 v2 j6 U) V* z- k

8 ]+ M) L4 b/ e' K  _7 l0 _
  • 拼板的图形与单板的网表比较
    1 Q+ r# `4 c3 |
& m, k( p  B: w& X

/ f. c% N! B/ X& O: ~& E. w
+ W$ f3 r) T8 n4 S: b" C* I# e/ m

3 ?; J  Y" I& b1 I& Y9 x

. n6 l2 ]2 m0 T( ^
& x6 |( x! j+ X& h) T& S
1 R  Z- [; L7 ?2 u% d

; {/ U, a4 {. G& Z: i2 d* D# w

, f9 s: i5 W* d. U/ ^8 o4 a) I5 N

) {. v  w, `$ F3 v( q

- X( V: S' ^6 M# Z
$ b6 Q& L( f; L  \7 Y6 t0 m

该用户从未签到

3#
发表于 2015-6-12 14:57 | 只看该作者
支持一个,等待后续操作说明

该用户从未签到

4#
 楼主| 发表于 2015-6-15 09:09 | 只看该作者
Allegro输出网表文件:
+ N6 {5 _  S3 V. z4 ]使用File->Export->IPC 356 菜单执行输出网表命令,输出IPC-D-356A 格式网表文件。
+ ?( T0 g* q  z9 A% w/ A" a! ]IPC 自然网表文件命名为:PCB 编码.ipc,如B0101_030301.ipc0 C- o' i8 C" P1 M" D
8 ]! q* Q3 i( g# u6 o
9 Y! F$ t6 z1 v) X0 o' D1 n, d
AD输出网表文件:
% c/ c) z( x( z9 t9 l& Y1,选File-Fabrication outputs-test point report- _9 z8 {" [6 M4 d/ }/ o
$ X, `: T$ v3 K. s
2,选择IPC-D-356A,点OK,即可输出IPC网表
8 ]' E0 F1 E  o" M+ z$ }# G 7 z3 a* U/ I) P0 _

! e" M( E. k- y' N) e

该用户从未签到

5#
 楼主| 发表于 2015-6-16 08:46 | 只看该作者
Mentor输出IPC网表文件:: u) M% Y; |0 }8 @$ d
1.点击OUTPUT-Report writer
: q/ `& ~1 m% o
' d& e8 v2 ~% W( R7 ~, u, U1 x7 L! m2 r' J, C8 H& Q
2.在弹出的菜单按照默认选择,点击OK
7 i# e. d4 W4 F- _' F9 ] $ t! m6 d8 M+ }( w* Y6 f$ F

1 A/ X& i& t* h6 d& X) o6 p* w8 r# x3.在弹出的Report writer里面选择:TOOLS-Launcher  ?; G( K  o! G+ g$ F! u. m' g; i

/ r& g4 R7 H: v. s) A2 @+ n$ L% h- o
4.在Application Launcher选择IPC-D-356并点点击RUN+ V4 H/ T: \) Z6 y( M# q

* W: A; Y! ~) \1 ]* Q, E
5 Z  X& c$ a& g: W5,选择IPC网表的存放路径(默认是放在PCB文件夹的PCB-vbreport-output),然后点击OK,IPC网表生成( R$ F. |+ h' N8 i1 d) x
) N7 ~7 q: k, h" x5 ]( l

- K) _5 m% h% _; Y
9 q; @  q( H! Q' I  i% y/ a* B: V3 A+ _% ]

该用户从未签到

6#
 楼主| 发表于 2015-6-17 08:46 | 只看该作者
Pads输出IPC网表文件:7 q# b! I$ b/ K
1 选择tools-basic scripts菜单(如第一次运行需要load file加载script)* v+ B7 Z- r  U/ [6 L6 ]
* k4 h$ W( ~$ G0 \- G# c
9 B+ A+ G# D8 S4 Y- o. ^
2 选中相应的script 然后run运行之4 q1 _2 F$ g! M; ?. s
5 ~8 W' s: N( t! Q
: E' I( ^% o: `# b" I- [; g
3 在接下来的界面选择英制,BROWSE为选择输出的网表位置,一路OK即可输出网表: Q7 U: W' D/ o7 r
0 P* g$ c( \! m( w# W+ }
, Y2 E" l- b& V- T/ t2 Z

点评

版主能否提供一下这个脚本出来  详情 回复 发表于 2018-4-3 10:34

该用户从未签到

7#
 楼主| 发表于 2015-6-18 08:54 | 只看该作者
Genesis对比网表:! J3 V  |( U5 `  R: q/ M
1,将光绘文件和ipc网表一起input进genesis
1 q6 p: z9 H- @
  \0 r4 N! }7 f" r5 X6 ?
9 J7 X7 E1 Y0 a/ X2 n2,定义光绘各层属性(务必正确)
1 R: O- ]1 {+ z6 ]; _. G6 \( E - {% E3 \. h1 r

+ g7 e1 D7 o* _1 D3,使用Net Analyzer进行网络比较。将上半部的Step 中的net step设为CAD,点击Recalc按钮;将下半部的Step 中的net step设为Current,点击Recalc按钮。, e7 O9 z2 J4 j- E0 b% r5 R7 L
4,对位:选择上半部的Register…按钮,弹出新窗口,选择Automatic按钮进行自动对位。5 z% E6 S$ w1 {+ V
; h+ o" @, V: X! l" T6 J2 o
5,将下半部的Step 中的net step设为Current-Based-CAD,点击Recalc按钮。
2 Y1 U3 [1 {. W6,网络比较:点击Compare按钮,查看比较报告
/ |. b5 Y. T) x* O/ k
- q* ]2 r) O8 _9 _* n7 D$ m; g
! b$ r( S6 F$ R, y7 A. v5 x2 v% T

$ \5 F$ D! `( K! ?
# T$ V$ }( d+ D, ]& k
. ~8 B+ X. P6 K( d
3 a' Y2 p2 E. u6 j8 _

6 l& u1 p4 W+ w/ R

点评

对于IPC网表比对这一块儿 有点儿简洁了,能写得更细一些吗  详情 回复 发表于 2015-6-19 11:50

该用户从未签到

8#
发表于 2015-6-19 11:50 | 只看该作者
dzyhym@126.com 发表于 2015-6-18 08:54
+ G+ X5 j6 w( w9 E% q6 oGenesis对比网表:
& n8 T/ z8 Y8 u4 l6 u1,将光绘文件和ipc网表一起input进genesis

$ P1 V' P7 D" h* t( d0 ~9 }对于IPC网表比对这一块儿 有点儿简洁了,能写得更细一些吗
: I: p9 T/ F6 {- G) C$ E3 _/ P

点评

再详细就是genesis操作了 input=操作 需要讲?  详情 回复 发表于 2015-6-19 15:16

该用户从未签到

9#
 楼主| 发表于 2015-6-19 15:16 | 只看该作者
仁爱 发表于 2015-6-19 11:500 M6 `) Q) O5 x* `7 G) [
对于IPC网表比对这一块儿 有点儿简洁了,能写得更细一些吗
" l4 F4 [. M% Q) L$ ]
再详细就是genesis操作了 input=操作 需要讲?, C- B, m. W3 S3 c, K0 G5 W

点评

比如说:有椭圆形孔,怎么弄,过孔的属性,盘的属性如何编辑  详情 回复 发表于 2015-7-6 14:19

该用户从未签到

11#
 楼主| 发表于 2015-6-22 17:01 | 只看该作者
本帖最后由 dzyhym@126.com 于 2015-6-23 09:44 编辑 8 a' T9 E- Q$ P3 I+ x4 E4 J* C

* W/ f) v. Z9 bGenesis对比网表结果实战分析:
# L; p, [. i) x7 N8 t1 光绘中边框将一些网络连接了,实际上是不同网络。2 D" l7 a- h% a* h8 E; J# K0 ~$ _
   ' d$ ]3 w1 ?! i9 I5 {
2 下面是genesis没有定义边框的网表对比结果图片:% b% E+ _+ O/ B

6 I( S, q- ~& u( Q' B  j4 p" @. z7 a' R) b2 K3 Q
3下面是genesis定义边框的网表对比结果图片,可以看到开短路各只有一个了,这2个是客户要求固定短路不用理会了。8 e) N0 O+ G5 D+ n7 a) I
7 x* `, |5 |0 z/ H- ~& Y7 R
& D- v; A+ k; L% ?( C- N
+ r, t: i. Q, k9 S; C* }5 l0 ]

& _8 D& n$ t# ^" S6 [

该用户从未签到

12#
 楼主| 发表于 2015-6-23 09:55 | 只看该作者
本帖最后由 dzyhym@126.com 于 2015-6-23 09:56 编辑 * e' U  Z) y0 j, V
5 \6 S, O& d  R& l3 y
网表文件引起的问题:% N& e, V" Z4 C; W' {7 P" Y
有时发现开短路特别多,并且和某个器件或几个器件有关系,通过genesis和pcb对比分析发现网络没有问题,但网表比较就是有问题。这时应该怀疑网表文件是否存在问题(pads输出的ipc网表较多出现类似问题。)% ?/ q2 C3 `7 C1 k8 Z2 ^; b" X! |
) m1 X9 S& F, U7 R0 `" Z
上面一段网表文件可以明显看到u14器件的a后面没有层面信息,这样导致读入到genesis缺少信息,所以对比网表时会产生问题。到pcb中更改封装再重新导出ipc网表就没有问题了。' r8 W# L0 H; G  l9 Q- u
1 C+ I) D3 f, B- z( i: ?

0 R2 l+ [8 O8 O6 \

' e4 z8 V2 V  E( K* k/ c
- y4 p* d) a5 [2 `' h7 E
( X, w$ z9 w1 C# ~' P' x* u
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

EDA365公众号

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

GMT+8, 2025-10-25 11:21 , Processed in 0.234375 second(s), 29 queries , Gzip On.

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

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

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