NETEX-G Topics

Overview
• Introduction
• Applications
• User Interface
 
Inputs
• Gerber File Requirements
• Vias from Drill Data
• Layer Stackup
• Wire Bond Data
 
Assigning Nets and Nodes
• From ASCII Table
• From AIF
• From IPC356
• From GBRVU

Outputs
• ASCII Output
• Ansoft ANF
• Geometry Options
• GDSII
• DXF
• ACIS
 
Proximity Effect
• What is a Proximity Net?
• What is a Neighbor Net?
 
 
Extractions
• Extracting Nets
 
 
Netex Engine
• Program Flow
• Job File Syntax
• Command Line Syntax
• drl2gbr engine  

 

ASCII Output

NETEX-G writes out results as an ASCII file. Essentially the output is a series of polygons - each polygon belongs to a net and to a layer. A net can exist on multiple layers.

LIBRARY PBGA unit:MM grid:1000000
NET Net1
BOUNDARY 1
1173867 9384616
1165991 9375977
1160681 9362270
1160681 9347570
1165991 9333863
ENDEL
BOUNDARY 2
1173867 9384616
1165991 9375977
1160681 9362270
1160681 9347570
1165991 9333863
ENDEL
ENDSTR
NET Net2

ENDLIB

LIBRARY - this statement occurs only once and at the beginning of the file. It defines the library name, data units and grid. In the above example the library name = PBGA, the data units are MM and the grid is 1,000,000. The first coordinate is located at 1.173867,9.384616 MM.

NET - indicates the start of a net. Argument is the net's name. All boundary elements following belong to this net until another NET statement occurs.

ENDSTR - terminates this NET.

BOUNDARY - indicates the start of a boundary. It is followed by the layer number (position in the stackup.) Each line after the boundary contains an X-Y coordinate pair.

Because of the boolean operations used to build connectivity, the database consists solely of boundaries and there are not other entities such as traces or circles. There are no arcs in the boundary definition.

ENDEL - indicates the end of a boundary.

ENLIB - end of the data.


NETEX groups all boundaries associated with a particular net consecutively -- making it easy to pick out elements of a desired net.



Layer Table

At the beginning of the NETEX-G ASCII file is a layer table. This table contains the layer numbers found in the BOUNDARY entries and associates this number with an optional layer name that is assigned by the user; a layer type and a layer thickness. It is also possible for the user to include a material and associated eletrical properties. Note that the user is not forced to enter much of the information since NETEX-G itself does not need to know this information.

The layer table normally is located at the beginning of the file. The table is initiated with the B_LAYERS keyword and closed with the E_LAYERS keyword.

An example of a layer table is shown below

B_LAYERS
1   M1       METAL       0.000 GOLD     0xFF0000 0.000000  0.000000 0.000
2   D2       DIELECTRIC  0.000 TEFLON   0x00FF00 0.000000  0.000000 0.000
3   M3       METAL       0.000 GOLD     0xFF0000 0.000000  0.000000 0.000
4   D4       DIELECTRIC  0.000 TEFLON   0x00FF00 0.000000  0.000000 0.000
5   M5       METAL       0.000 GOLD     0xFF0000 0.000000  0.000000 0.000
6   D6       DIELECTRIC  0.000 TEFLON   0x00FF00 0.000000  0.000000 0.000
7   M7       METAL       0.000 GOLD     0xFF0000 0.000000  0.000000 0.000
E_LAYERS

Column Syntax

Column 1 - layer number
Column 2 - layer name (string - no spaces or special characters)
Column 3 - layer type (METAL | DIELECTRIC | WIREBOND | SOLDERMASK)
Column 4 - layer thickness
Column 5 - layer material e.g. copper, gold, FR4, teflon, air,
Column 6 - layer color ( RGB HEX 000000=black FFFFFF=white)
Column 7 - material conductivity
Column 8 - permittivity
Column 9 - permeability

A boundary on a dielectric layer should be interpreted as a via between two conductor layers -- not as a piece of dielectric. The NETEX-G output only consists of conductors.



Nodes

Nodes are test points that the user has supplied to NETEX-G. If a node has been entered and if it falls on a net then it will appear on the NET line. The node name will be followed by its coordinates and the stackup layer that it was referenced to. There can be more than one node per net. Typically one would have two nodes: input and output.

 LIBRARY PBGA unit:MM grid:1000000
 NET Net1 BF2 1164800 937500 1 
 BOUNDARY 1
 1173867 9384616
 1165991 9375977
 1160681 9362270
 1160681 9347570
 1165991 9333863
 ENDEL
 BOUNDARY 2
 1173867 9384616
 1165991 9375977
 1160681 9362270
 1160681 9347570
 1165991 9333863
 ENDEL
 ENDNET
 NET Net2

 ENDLIB

In the above example, for Net1 there is a node called BF2 that is located at coordinates 1164800 937500 on stackup layer 1.




Leonov Polygons

 

Leonov polygons are grouped with a container boundary coming first in the list followed by one or more children boundaries. The children are "subtractive" - their area is subtracted from the container polygon. In order to identify such polygons in the ASCII output a special header is used: LEONOV BGN to start the group and LEONOV END to close the group.

 
LIBRARY PBGA unit:MM grid:1000000
NET Net1
LEONOV BGN       <-- beginning of the group.

BOUNDARY 1       <-- the container boundary.
1173867 9384616
1165991 9375977
1160681 9362270
1160681 9347570
1165991 9333863
ENDEL

BOUNDARY 1       <--  a child boundary.
1173867 9384616
1165991 9375977
1160681 9362270
1160681 9347570
1165991 9333863
ENDEL

BOUNDARY 1       <-- child boundary.
1273867 9484616
1265991 9475977
1260681 9462270
1260681 9447570
1265991 9433863
ENDEL

LEONOV END       <-- end of the group.



 

Vias

There are two approaches to handling vias: by default, each via is decomposed into its crossection (a circular shaped polygon) on the layer that it passes through; optionally, one can also get a "symbolic insertion of a via in which the start and end layer are specified along with the via's diameter.

The via syntax is described below:


NET Net964        <-- elements organized by net
VIA 1 5 10000     <-- via from stackup 1 through stackup 5
                  <-- diameter = 10000 see library for units
5685000 4245000   <-- center of via
ENDEL             <-- end of via
VIA 1 5 10000
5425000 3985000
ENDEL



 

Vias

Padstacks can be generated when the input to NETEX-G is ODB++.

Padstacks are defined as follows


B_PADSTACKS         <-- start of the padstack section
1 pin_def_1         <-- index, stack name
B_PADSTACK_GEOM     <-- start of padstack geometry
1  C 1.5  1.5  1.0  <-- stackup, shape, xdim,ydim, drill dia
7  C 1.5  1.5  1.0  <-- stackup, shape, xdim,ydim, drill dia
E_PADSTACK_GEOM     <-- end of padstack geometry

2 pin_def_2         <-- start of next padstack
B_PADSTACK_GEOM
1  R 1.5  1.3 0
E_PADSTACK_GEOM


E_PADSTACKS



 

Components

Beginning in version 1.49 the ASCII output of NETEX-G can contain a component section - in particular when the input to NETEX-G is ODB++ and the ODB++ file has a netlist section.

A component entry is shown below. Notice that we do not take a library/reference point of view -- instead each placed component has its own complete entry.


B_COMP_REF                         <-- beginning of a component placement
C4 1114.94  1025.04   1            <-- ref_des x,y stackup
COMP_NAME capc1608x90n             <-- name of the component from ODB
COMP_EXTENT 1113 1024 1116 1025    <-- comp extent box (absolute)
B_COMP_ATTR                        <-- start of any attributes found in ODB
comp_mount_type 1                  <-- taken directly from ODB++
comp_height 0.0354                 <-- taken directly from ODB++
E_COMP_ATTR                        <-- end of component attributes
B_COMP_PIN                         <-- start listing of component pins ...    
C4-1  1045.27 1072.44  1 - 25      <-- pin_label x,y stackup padstack netindex
C4-2  1047.81 1072.44  1 - 12      <-- pin_label x,y stackup padstack netindex
E_COMP_PIN                         <-- end of pin listing
E_COMP_REF                         <-- end of component placement definition



 

Paths

The ASCII format now supports paths. These are "recovered" from the unionized conductor data so occasionally the endpoint of the path may not match the original endpoint from the Gerber/ODB data when terminating on a pad. Because the source data is Gerber/ODB++ one should assume that the path is created by a circular draw.


PATH 7 0 0 1150000     <-- keyword, stackup, datatype, endcap, width
-1026883648 1027675000 <-- x,y coordinate
-1026883648 1026525000 <-- x,y coordinate
ENDEL                  <-- end of element definition

Notes

datatype (GDSII parameter only, integer 0-4096 not used ...)

encap 0=flush, 1 = round 2=1/2 ext square

Wirebonds

Starting with Version 1.40 of NETEX-G the Wirebond data has been greatly expanded to support a full 3D description and is now described on its own page.

Wirebonds are not normally converted to boundaries unless the user sets them as METAL layers instead of WIREBOND layers in the stackup definition. Instead, NETEX-G outputs a special WIRE entity that includes the layer, diameter and starting/ending coordinates of the wire.

WIRE 3 25400 W3
-3937800 1580000
-5826180 2441410
ENDEL

Syntax

column 1 - WIRE
column 2 - stackup layer
column 3 - wire diameter
column 4 - layer name

Wire Coordinates

Wire coordinates are automatically sorted by NETEX-G. The first pair define "inner" end of the wire with the assumption made that these connect to the die side. The second pair define the "outer" end of the wire with the assumption that they drop down to the metal below.




Download

Benchmark Files

Revision History

Price



ARTWORK CONVERSION SOFTWARE, INC.       Company Profile
417 Ingalls St., Santa Cruz, CA 95060    Tel (831) 426-6163     Fax 426-2824    email: info@artwork.com