ODB++ Exporter Issues

The following known issues have been found regarding translated ODB++ directories. The problems occur when the contents of an ODB++ file do not completely conform to the Valor ODB++ specifications. The Ansys ODB++ Translator response varies depending on the nature of the problem, and an informative warning/error message is provided.

Extra text after the part-name of a CMP record in a components file

The one-word component part-name should be the final text before the terminating semi-colon in a CMP record (“;”). Any extra text is ignored.

Example with the extra text in bold:

CMP 8 0.94074 0.3248 270.0 N J1 mPCIE EDGECONN ;0=1,1=0.000010

Duplicate pin numbers in TOP records in a components file

Each toeprint record (TOP) for a component should have a distinct pin number. When a duplicate is found, the duplicate pin number is changed to an unused number. Users are given a warning.

Example:

The bold pin numbers are duplicates.

...

TOP 14 -0.1284500 0.1181400 90.0000000 N 108 0 15

TOP 15 0.1284500 0.1181400 90.0000000 N 85 0 16

TOP 16 -0.1284500 0.1575100 90.0000000 N 109 0 17

TOP 17 0.1284500 0.1575100 90.0000000 N 7 0 18

TOP 18 0.0000000 0.3960000 90.0000000 N 1 0 G1

TOP 18 – 0.1140000 0.2820000 90.0000000 N 1 0 G1

TOP 18 0.0790000 0.3530000 90.0000000 N 1 0 G1

TOP 18 – 0.0790000 0.3530000 90.0000000 N 1 0 G1

TOP 18 0.1140000 0.2820000 90.0000000 N 1 0 G1

TOP 19 0.0000000 -0.3700000 90.0000000 N 1 0 G2

TOP 19 – 0.1140000 -0.2820000 90.0000000 N 1 0 G2

TOP 19 0.1140000 -0.2820000 90.0000000 N 1 0 G2

TOP 19 0.0790000 -0.3530000 90.0000000 N 1 0 G2

TOP 19 – 0.0790000 -0.3530000 90.0000000 N 1 0 G2

A NET record in an eda data file contains extra text

The net name specified in the NET line of an eda data file should not contain spaces. If spaces are present, they are replaced with underscores. A warning is issued. This situation could happen when net names with spaces are exported without removing the spaces.

Example:

These NET lines from an edata/data file result in nets named JTG_ENA_TOP and JTG_ENA_PHY.

#NET 973

NET JTG_ENA TOP

...

#NET 974

NET JTG_ENA PHY

Duplicate pin names

Duplicate pin names in the same component — as defined by a PKG record in an eda data file. When a pin name is duplicated, the translator forces it to be unique by appending a number. A warning is issued.

Example with pin names 11 through 18 used twice in the PKG record:

# PKG 2

PKG smnhda18.2_39_ni 0.03937 -0.4084999 -0.24 0.3825 0.24

RC -0.251 -0.24 0.502 0.48

PIN 1 S 0.15745 -0.1284499 0 U U

RC 0.14545 -0.1634499 0.024 0.07

PIN 2 S 0.15745 0.12845 0 U U

RC 0.14545 0.09345 0.024 0.07

PIN 3 S 0.11808 -0.1284499 0 U U

RC 0.10608 -0.1634499 0.024 0.07

PIN 4 S 0.11808 0.12845 0 U U

RC 0.10608 0.09345 0.024 0.07

PIN 5 S 0.07871 -0.1284499 0 U U

RC 0.06671 -0.1634499 0.024 0.07

PIN 6 S 0.07871 0.12845 0 U U

RC 0.06671 0.09345 0.024 0.07

PIN 7 S 0.03934 -0.1284499 0 U U

RC 0.02734 -0.1634499 0.024 0.07

PIN 8 S 0.03934 0.12845 0 U U

RC 0.02734 0.09345 0.024 0.07

PIN 9 S -0.0000299 -0.1284499 0 U U

RC -0.0120299 -0.1634499 0.024 0.07

PIN 10 S -0.0000299 0.12845 0 U U

RC -0.0120299 0.09345 0.024 0.07

PIN 11 S -0.0393999 -0.1284499 0 U U

RC -0.0513999 -0.1634499 0.024 0.07

PIN 12 S -0.0393999 0.12845 0 U U

RC -0.0513999 0.09345 0.024 0.07

PIN 13 S -0.0787699 -0.1284499 0 U U

RC -0.0907699 -0.1634499 0.024 0.07

PIN 14 S -0.0787699 0.12845 0 U U

RC -0.0907699 0.09345 0.024 0.07

PIN 15 S -0.1181399 -0.1284499 0 U U

RC -0.1301399 -0.1634499 0.024 0.07

PIN 16 S -0.1181399 0.12845 0 U U

RC -0.1301399 0.09345 0.024 0.07

PIN 17 S -0.1575099 -0.1284499 0 U U

RC -0.1695099 -0.1634499 0.024 0.07

PIN 18 S -0.1575099 0.12845 0 U U

RC -0.1695099 0.09345 0.024 0.07

PIN G1 T -0.3959999 0 0 U U

CR -0.3959999 0 0.0125

PIN G2 T 0.37 0 0 U U

CR 0.37 0 0.0125

PIN 11 S -0.0393999 -0.1284499 0 U U

RC -0.0513999 -0.1634499 0.024 0.07

PIN 12 S -0.0393999 0.12845 0 U U

RC -0.0513999 0.09345 0.024 0.07

PIN 13 S -0.0787699 -0.1284499 0 U U

RC -0.0907699 -0.1634499 0.024 0.07

PIN 14 S -0.0787699 0.12845 0 U U

RC -0.0907699 0.09345 0.024 0.07

PIN 15 S -0.1181399 -0.1284499 0 U U

RC -0.1301399 -0.1634499 0.024 0.07

PIN 16 S -0.1181399 0.12845 0 U U

RC -0.1301399 0.09345 0.024 0.07

PIN 17 S -0.1575099 -0.1284499 0 U U

RC -0.1695099 -0.1634499 0.024 0.07

PIN 18 S -0.1575099 0.12845 0 U U

RC -0.1695099 0.09345 0.024 0.07

Property line contains multiple words for property name

A property line (PRP) should contain a single-word property-name followed by a quoted string for the value. Some PRP lines have multiple words that precede the quoted value. In this case, it is assumed that the extra words are intended to be part of the property name and they are then concatenated together with underscores. A warning is issued.

Example:

PRP SIMULATION MODEL 'MAX2003'

Property line contains extra text after value

A property line (PRP) should contain a single-word property-name followed by a quoted string for the value. Some PRP lines have multiple-quoted values. The text after the first quoted value is ignored. A warning is issued.

Example:

PRP PART LABEL 'RELE' TN2C'

Property line is missing value

A property line (PRP) should contain a single-word property-name followed by a quoted string for the value. Some PRP lines are missing the quoted value. When this occurs, the property is ignored. A warning is issued.

Example:

PRP Manufacturer

Discrepancy between component file and eda file

A correlation exists between the toeprints specified in the component file and those specified in the eda file. If the files are created incorrectly and their indexes do not match, the ODB++ Translator aborts translating the components file. Overall translation is continued, but components, padstacks, and nets are not translated. A warning is issued.

Negative net index specified in components file

Toeprints in a component file should have a positive net index. If the net index is negative, the ODB++ Translator aborts translating the components file. Overall translation is continued with padstacks and nets being translated, but components are not translated. A warning is issued.

Example with negative net index in bold:

TOP 1 6.31 7.9018001 0.0 N -1 0 2_3

The eda data file contains a trace subnet with a hole feature

Trace subnets (part of eda data file) should have only copper features as members. If holes are found as trace members, the hole feature is ignored. A warning is issued.

Example with hole feature in bold.

SNT TRC

FID H 6 4717

Features from multiple padstacks are listed in the same toeprint in the eda data file

The features listed for a toeprint in an eda data file can be on the same padstack. When features from multiple padstacks are found in one toeprint warnings are issued. The first padstack is translated normally. Pads and hole on the other padstacks are merged into the first when possible.

Arc definition is incorrect

Arcs are specified in ODB++ directories with a start point, end point, and center point. The distance on the start point to the center should be the same as the distance on the end point to the center. If the two distances are different, an arc can not be created, and instead, the start and end points are used to create a segment (0 height arc). A warning message is issued.

Holes not specified in eda data file

Padstack via and pin holes are specified in the eda data file of the ODB++ directories. Following is an excerpt of an eda via specification. FID entries specify each part of a via: holes, pads, and antipads. Entries containing "C" are pads (copper), and entries containing "L" are antipads (laminate). Lines containing "H" specify holes, but there are no holes specified in this example because a known problem exists wherein hole features are not specified in the eda data file.

SNT VIA

FID C 2 8479

FID C 3 10992

FID L 4 1310

FID L 5 2414

FID L 8 1310

FID L 11 1310

FID L 14 2053

FID L 15 1310

FID C 16 5566

FID C 17 3399

If "H" lines are present they indicate which feature from which layer is to be used for the hole. Hole features are found on ODB drill layers. There is a drill layer defined in this ODB folder and it does have features. But because of a known problem, holes are not specified in the eda data file, so “H” lines are not present in the file.

A line in the feature file contains a non-numeric attribute value

The feature file contains lines that list numeric values which specify the setting of various attributes and options. The following feature line mistakenly contains an attribute with a string value instead of a numeric value.

P 3.6765000 2.4700000 0 P 0 0;0=0,1=NO,2=1

The attribute are not used and a warning message is issued.

Non-numeric value for attribute on feature line in the features file

Feature lines may have attributes specified at the end of the line. The value for an attribute is omitted for boolean attributes. Otherwise it is an number representing either the numerical value for integer and float attributes, an option number for option attributes, or an integer referencing a string on the attribute text string section of the file. The following feature line has a value that is a string, rather than either being omitted or a number as is correct.

P 3.6765000 2.4700000 0 P 0 0;0=0,1=NO,2=1

The attribute are not used and a warning message is issued.

Missing package name

The PKG record in the eda data file is missing the required package name. There should be a package name in the underlined space underneath.

# PKG 0

PKG 0.1 -0.1275 -0.0275 0.9275 1.0275

Package contour hole before island in eda data file

A package contour specification for a footprint outline mistakenly specifies a hole (H) before it specifies the island (I) that could contain it. The hole is ignored and a warning is issued.

# PKG 20

PKG T 0.03937 -0.2411574 -0.0492126 0.1688426 0.146504

CT

OB 0.0327165 0.040748 H

OS -0.068451 0.040748

OS -0.068451 0.040441

OS 0.0327165 0.040441

OS 0.0327165 0.040748

OE

OB -0.068451 0.0856299 I

OS 0.0327165 0.0856299

OS 0.0327165 0.1415828

...

Features on negative layers specified to be copper rather than laminate

Subnet toeprint features in the eda data file that are on negative layers should be specified as laminate. Some tools incorrectly export them as copper. When this deviation is supported, the feature is used as if it is laminate; the feature becomes an antipad. Copper features in a subnet toeprint are pads. If the FID line under layer 5 is a negative ODB++ layer, the "C" should be an "L".

SNT TOP B 32 0

FID C 5 598