找回密码
 注册
关于网站域名变更的通知
查看: 40249|回复: 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
' ]/ I3 `1 B$ `5 x. Ntest information can be represented. In the simplest of forms, this means it must be able to store
; b+ Z5 _) K7 K, ]6 [3 Qnetlist information along with XY coordinates, and even reference designators and pin numbers2 I+ S: `0 F; _) A
(if they exist). I feel like ending this article here before it gets unmanageable, but then Pete
4 k( F* w# d1 ^; _6 Z: aWaddell wouldn’t be happy, so let’s proceed. If all the information that a test system would$ b) ~; v% r3 }
need to know to verify and test a bare board could be represented in a single file, it would bring
/ R  O' {3 T0 ^7 W2 o0 B: m: l& U: Econsistency 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, field7 ~2 G% q: E7 F/ G2 H1 ~9 }
parameters

; c2 E2 J: H1 [9 q
为什么要网表对比操作?主要是以下2点
1,pcb软件输出的光绘文件,有时会变异,会造成开短路,通过对比能保证网络一致性(概率很小)
2,工厂端通常要修改设计文件以便符合生产,修改当中就可能会造成开短路,通过对比可以保证网络一致性(作用主要是此点,保障工厂修改完的文件网络没有问题)
Since testing bare boards is a manufacturing process, the design engineer seldom thinks about# u2 {9 Q# Y; N2 @
the problem of testing the PCB before it is stuffed with parts. Therefore, most CAD packages$ @5 f7 W9 s' U6 G2 k/ Z3 ~7 L
do not even provide the option of exporting a coordinate based netlist in this format. CAM
) O% }; o1 U# G! W) }, @software is the common source of this information. Net connectivity is computed from the
0 _0 Q) j2 m6 uGerber data and the file is exported. Nets are numbered because the original CAD netlist was" ^% N, X3 d) \5 X0 M
not used. The RefDes/Pin# fields are also not filled in because this information does not exist in
* n5 [9 _! N9 ]$ Z5 jthe Gerber data. The IPC-D-356 file is then read by the bare board test system. The net
# }4 H+ @# G& i( R! Rinformation replaces the need for the old “golden board” technique. This process is the way the) |* J9 K1 J5 f, i  S& w5 b% M
majority of the industry is working today.

( @% a" ?: c0 b* E. a) p

* q3 m/ T1 t: h& b& P) u. r

' b! h8 B; t4 o! Q' x0 F( i# D; a
8 X* C# f9 t5 Q9 S! ]5 H

8 G1 L4 v5 w" E0 V1 H7 J

该用户从未签到

推荐
 楼主| 发表于 2015-6-26 16:33 | 只看该作者
Cam350对比网表:& z% B4 }  i8 m: |4 g
详见附件(同事写的文档,拿来给大家参考6 d8 `# a2 [* L1 y" l4 w
4 o2 r* i( e( |, b& N
! K- b. K: B, G0 k; H2 I# c

cam350对比网表.rar

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

点评

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

该用户从未签到

推荐
 楼主| 发表于 2015-6-12 08:51 | 只看该作者
allegro输出的ipc网表(最规范的文件,严格按ipc格式要求)) y! y$ Y" P* S$ H  ^/ h1 z

7 [- O; ?; \2 ~" L7 K7 ?: E# N* @3 m$ Z$ f
protel输出的ipcb网表
" q/ D- y: Z+ `( M! Z * G9 P+ B9 Y! |
2 t5 W4 z  ]9 w, a- C+ I' o
mentor输出的ipc网表
' C3 F  S3 ^3 K# `  N8 _6 z ' G0 J- Y' D9 I$ M6 `& w
) G5 B" \+ s& e$ p; p' a
pads输出的ipc网表(本身软件不自带,后面国外朋友写的程序)/ o  s3 e. Z5 C0 t* L
$ b4 D0 [4 U: H. ^7 V; d3 c8 E0 K
; f+ i& o2 z/ m8 v; H% J

: s" l7 Y. r7 g0 i/ M: R8 ]0 d, o& B. t' Q

该用户从未签到

推荐
 楼主| 发表于 2015-6-19 15:26 | 只看该作者
本帖最后由 dzyhym@126.com 于 2015-6-19 15:27 编辑
# L; M* s& F" c% P) R0 B
$ S6 g% k" C) Y7 t- XGenesis对比网表结果分析:
# O& `5 S1 J% SIPC网表与Gerber进行比较后它会有哪几种现象呢,主要是以下四个。+ h4 P& }4 `6 y( X
Shorted(短路) Broken(开路) Missing(丢失) Extra(多余) 通常分析前面的开短路,后面二个暂时不作探讨。
如对比网表有问题主要通过以下几点分析:
  • 文件各层属性定义是否正确,比如正负片属性定义反了将导致gerber网表错误。
    " r" Y; X( C. ]  m3 _1 u

# N- M% j0 E. i3 d3 r9 P( r" s) Y2 ^+ e2 p
  • 钻孔层所贯穿的层次是否正确定义,比如盲、埋孔;孔径金属、非金属等(有些slot槽孔连接地或电源,如没有添加就会报开路)
    : y; O8 [! R7 e! y' }4 R) ~
; |) i2 b2 h, q$ Z
  • Gerber文件中线路层是否有边框,边框是否将两个不同网络连接。

    2 S8 u- }  f+ v, a) Q4 c
* j3 S+ a+ |. G2 I1 A: t
  • 在按Compare之前,网表是否与Gerber之间没有对位。

    ! z( u: j) f5 W. e9 M1 O! D
' E/ a. D+ C5 _" Z& F: m8 J
  • 网表格式是否读入完全正确,比如IPC356A读入格式为IPC356。(注:正常盲埋孔的网表格式为IPC356A,如果为IPC356则有可能有问题)
    : f4 t7 m1 X' v4 |
3 E( p! l' x( U1 t7 y# J
  • 顾客提供的IPC网表是否100%正确(部分cad提供的网表是有错误的可能哦)。

    ( i1 o2 ?6 V8 v# j4 O, ?

9 f( ^' ]1 n* V! R
  • Genesis软件比较后报出假错,比如低版本有错误,而高版本是正常(软件Bug)。

    % ?) |/ U0 _( c: B) F
; Y. y7 L, t( T4 y: a& J$ L" f
  • 拼板的图形与单板的网表比较
    $ j/ ]  s) l* }# k! l0 Z4 _0 h/ s! h
0 @. w8 @  E$ T% F- T1 j
- p0 ]' ^6 x6 v
/ ?: l9 H! b- E+ a. I  ^

+ H5 y+ B8 G  y0 M- x- h) x1 k% A
# l; {. O: R3 R* O

+ Z4 Z8 d% k8 D7 o0 N' A& t5 S: U
8 f- `! j# O$ b  @( r

. N1 A2 q8 ]0 y6 v

5 {8 s0 d9 n9 k
0 G% {/ ^9 }/ E  s9 U7 q. p

* i9 h: ]2 K6 _7 D# G; N0 o2 a$ G% K- @! s7 d9 H  ]

该用户从未签到

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

该用户从未签到

4#
 楼主| 发表于 2015-6-15 09:09 | 只看该作者
Allegro输出网表文件:" q. H. x; ?6 _0 [8 n# N9 g! j
使用File->Export->IPC 356 菜单执行输出网表命令,输出IPC-D-356A 格式网表文件。
% V+ |+ W. q# G9 n6 i9 q6 oIPC 自然网表文件命名为:PCB 编码.ipc,如B0101_030301.ipc
* {3 u( U2 U0 S( X( t9 J
( ~7 Z$ @4 G9 h/ n7 d* j
  E) V8 ~1 H$ W  }. Q/ k, mAD输出网表文件:1 [2 K# ?7 O( R6 U
1,选File-Fabrication outputs-test point report
( c2 x$ Y# a( w7 x4 e
8 x1 c2 Q' T* A' w  _  f5 o2,选择IPC-D-356A,点OK,即可输出IPC网表
" F% [: w  P' q  c: ?) G3 f4 |
) i6 `( g7 z, N6 h; j% K( r0 ^: C! r2 ~, p

该用户从未签到

5#
 楼主| 发表于 2015-6-16 08:46 | 只看该作者
Mentor输出IPC网表文件:
- b6 L9 J' ?2 i6 I1.点击OUTPUT-Report writer
; _3 m3 l* G  n* ~' A/ ^4 C 7 E9 B. g2 \. U7 \( B- H
; z" h( k+ Z/ A# P. A6 g2 E
2.在弹出的菜单按照默认选择,点击OK# T" T* k* p! i0 `/ v# h- |7 ?* U
4 l6 P! l9 n# ]' L" X

7 P% o/ e8 V# w3 e8 D- }  n8 i3.在弹出的Report writer里面选择:TOOLS-Launcher
; I$ e! k- b1 i) g8 A + ?7 V9 o5 H4 ~' D, F$ N# j
6 ~& A: m7 c2 m5 {: k
4.在Application Launcher选择IPC-D-356并点点击RUN) z2 L' G# w2 U; b

/ F7 m: ^  P4 L7 h2 I+ d9 m3 _! B; r+ J/ n4 V
5,选择IPC网表的存放路径(默认是放在PCB文件夹的PCB-vbreport-output),然后点击OK,IPC网表生成
% X* N% U: S* O" R' ?8 V7 G % X) U7 b/ L; S  ?$ I

* A+ F# X8 ]! l  B5 E; G
+ |' J4 E; m; J1 i! o+ U1 P1 h5 F) z1 H3 L. R5 G

该用户从未签到

6#
 楼主| 发表于 2015-6-17 08:46 | 只看该作者
Pads输出IPC网表文件:
* A# y) `! m7 X5 y& m; \1 选择tools-basic scripts菜单(如第一次运行需要load file加载script): I5 S5 L. O# [* i8 u! R. i' q9 e
6 M. N4 T3 S/ m7 X" q- w- w

7 ?& d8 @5 S; h% M" S- Z9 |2 选中相应的script 然后run运行之( Z5 F: v" a2 L  L

+ Y8 k* ]% H9 h0 H1 L/ R7 z7 k% ~
3 在接下来的界面选择英制,BROWSE为选择输出的网表位置,一路OK即可输出网表; E) f9 K" z* q; k) U
; n+ F) v% S+ U& b2 D& e
2 C# a$ m% z8 ?4 W

点评

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

该用户从未签到

7#
 楼主| 发表于 2015-6-18 08:54 | 只看该作者
Genesis对比网表:
5 J) F6 Q) C( h+ x, |" y1,将光绘文件和ipc网表一起input进genesis& E& W$ H8 |, s+ c
" i* o# S* \- o: D

, h( y7 U7 f7 o4 ^. V+ K2,定义光绘各层属性(务必正确)& w; B) Q: c& m+ b2 ]
# t( G7 T, @/ l6 Y' Z) i0 W
1 |+ o& n  a  X2 \! v' ?
3,使用Net Analyzer进行网络比较。将上半部的Step 中的net step设为CAD,点击Recalc按钮;将下半部的Step 中的net step设为Current,点击Recalc按钮。
/ r# z) a$ |- }% C: I4,对位:选择上半部的Register…按钮,弹出新窗口,选择Automatic按钮进行自动对位。
2 Z# ~/ m6 T# B4 W# D
+ b2 t$ z; h# a; i) L/ g, Y9 X' f% C0 P5,将下半部的Step 中的net step设为Current-Based-CAD,点击Recalc按钮。
/ t+ D" `& u& m9 t6,网络比较:点击Compare按钮,查看比较报告
! W: y) g' [9 M
: w. U9 _$ o0 K2 H; E$ q6 {  e( x5 u) |( ^7 P; k
7 |, \; W" c* W- _/ I- l! l; s! ~
% I  i3 K& B+ z1 n
6 j3 x% N2 I! W, t: U
" ?# W, ~3 D: w/ M, r1 L
  X+ R5 S9 l# d

点评

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

该用户从未签到

8#
发表于 2015-6-19 11:50 | 只看该作者
dzyhym@126.com 发表于 2015-6-18 08:54. @/ m) q9 M, _! T0 N
Genesis对比网表:! n+ F5 S& k7 T" q! v" j7 \6 K
1,将光绘文件和ipc网表一起input进genesis

" |" N/ F8 M& m( N对于IPC网表比对这一块儿 有点儿简洁了,能写得更细一些吗8 o( O+ B/ e+ F; n% n

点评

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

该用户从未签到

9#
 楼主| 发表于 2015-6-19 15:16 | 只看该作者
仁爱 发表于 2015-6-19 11:505 H2 ^9 g  e3 I( k, d
对于IPC网表比对这一块儿 有点儿简洁了,能写得更细一些吗
. m/ J% v/ t" V( d# P: O, h5 K
再详细就是genesis操作了 input=操作 需要讲?
+ ]: b/ {5 n( O

点评

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

该用户从未签到

11#
 楼主| 发表于 2015-6-22 17:01 | 只看该作者
本帖最后由 dzyhym@126.com 于 2015-6-23 09:44 编辑
* [0 v7 O& `& z1 |# ^! n7 g% b6 U
Genesis对比网表结果实战分析:; a, N3 |- Z% L+ `8 I
1 光绘中边框将一些网络连接了,实际上是不同网络。
9 v% [' W; P5 \   3 q+ ~. q+ F" ^; ]
2 下面是genesis没有定义边框的网表对比结果图片:
  {3 U* `5 o8 a; _" F
+ F" V# m& _# ?& @! z
! U- x" D$ U0 D$ i! ^: S& v% f3下面是genesis定义边框的网表对比结果图片,可以看到开短路各只有一个了,这2个是客户要求固定短路不用理会了。4 r' I2 J: [- n
; Q' N" N1 a$ [; K2 E

% h4 @! ?7 x$ F) n) W" c

' A: C+ Z* l; z9 ^" `
( `# e6 y+ s5 _3 I" k

该用户从未签到

12#
 楼主| 发表于 2015-6-23 09:55 | 只看该作者
本帖最后由 dzyhym@126.com 于 2015-6-23 09:56 编辑 9 B, a$ O- M& _* R
& F- _/ M/ ^: Y2 I, n: y- L, E
网表文件引起的问题:- ^; z0 {( B6 S7 v/ \
有时发现开短路特别多,并且和某个器件或几个器件有关系,通过genesis和pcb对比分析发现网络没有问题,但网表比较就是有问题。这时应该怀疑网表文件是否存在问题(pads输出的ipc网表较多出现类似问题。)3 J3 e+ F* F- c+ R

+ H! o. Z; n$ s0 ?6 Q7 P! s上面一段网表文件可以明显看到u14器件的a后面没有层面信息,这样导致读入到genesis缺少信息,所以对比网表时会产生问题。到pcb中更改封装再重新导出ipc网表就没有问题了。
2 o+ z4 W+ n$ O. I0 |: Z1 ~6 K& a1 F. X4 ^2 ]6 v

6 v. Y# j2 F5 M5 x( g1 _; _" h
. K) R, c: x0 z' Y9 b1 B

8 f6 d) J. l- t& \7 S
8 h7 X3 f1 v" c6 V# c+ `4 ]
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

EDA365公众号

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

GMT+8, 2025-10-8 16:13 , Processed in 0.187500 second(s), 30 queries , Gzip On.

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

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

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