Component Subtyping

advertisement
S1
Component Subtyping
Purpose
This document describes Agilent’s recommendations for component
subtyping, which is done in the Component file for both the Primary and
Secondary sides. 5DX users are encouraged to be consistent in their subtyping
method to facilitate the transference of programs between geographically
dispersed 5DX sites. This document also describes how to effectively transfer
data in Component Library between programs.
Subtyping permits tighter thresholds by grouping parts with similar solder
profiles. Minimizing the amount of variation within a subtype allows the
Regions of Interest (ROIs), such as the heel, center, and toe, to be placed
consistently on subsequent pads. Greater consistency yields fewer falls calls,
and increases the integrity of the 5DX program.
In this
document
This document is divided into six sections.
Topic
If you are using Component Library
Generate package data
Rename package names
Perform initial subtyping
Subtype out pins due to shape or shading
Sample component file
Component subtyping process flow
If you are using
Component
Library
See Page
1
3
3
4
7
9
10
If you are NOT using Component Library, proceed to the Generate Package
Data section.
Note: In the Component Library, if the NDF Data Package ID names do not
match the Library Data Package ID names, you CANNOT get Package
information, subtypes, or thresholds. You will need a different library for
each customer that uses different design groups with different Land Pattern
ID names.
Continued on next page
Ver 1.6
Page 1 of 10
S1
If you are using
Component
Library
(continued)
If you plan to use an existing library within Component Library, then follow
these steps to export data:
Step
1
2
3
4
Action
Start Component Library.
Select Open Library.
Load the NDF Panel
Export the Package Data
Note: Some CAD translators try to export a PACKAGE.NDF file
when exporting the other data. To avoid confusion, delete this file
before trying to export package information from Component
Library.
a.
Select the Packages tab in NDF Data and Library Data.
b.
Click on the Export button to export all packages used by
the program.
c.
Click OK at the window marked Copy All Relevant
Library Packages To NDFs .
d.
If notices appear, take note of the different land patterns.
e.
For each land pattern noted in the previous step, export the
land pattern data with the following steps.
• Select the LandPat tab in NDF Data and Library Data.
• Select the LandPats named in previous step.
5
• Click the Export button
Export the subtype numbers.
a.
Click on the Subtype button in the NDF Data.
b.
In the Assign Subtype Numbers window:
• Highlight all Joint Types.
• Select Package Name and Board Side.
• Click the Subtype button.
c.
Each Package ID will appear with a suggested subtype
number. To change the subtype number, enter a subtype
number, then click the Change button. To keep the
suggested subtype number, click the Skip button.
Continued on next page
Ver 1.6
Page 2 of 10
S1
If you are using Component Library (continued)
Step
Action
5
Note: If a subtype is in the library for a part on the primary side of
(cont.) the board but not the secondary, and the program you are
developing has that component on the secondary side, then export
it as the odd number. After exporting thresholds (below), change
the subtype number and copy the thresholds from the odd number
to the even number.
6
d.
When all joint types are done, click the Done button.
Export Thresholds
a.
Select Subtype Summary tab in NDF Data and Library Data.
b.
Click Export button.
c.
Click OK at the Copy Thresholds window.
Generate
package data
Generate the package data for those packages not available from Component
Library by following the guidelines in Generating Package Data, available
on the customer secure web site: www.agilent.com/key/boardtest under 5DX
Technical Support, ASAP Best Practices.
Rename
package
identifiers
Rename the packages if the same name is assigned to different algorithm
families. Some board designers use the package identifier “0603” for
resistors, inductors, and capacitors alike, but it is important that unique
package identifiers be used for each family. For example, you may elect to
change the package identifiers for the resistor, capacitor, and inductor to
R0603, C0603 and L0603 respectively. To accomplish this, perform the
following steps:
Step
1
2
Action
Go to the section in the Component file that has the same package,
for instance "0603", listed for various component types. Perform
a sort on the column of reference designators containing the ‘0603’
suffix. This will separate resistors (Rxxxx) from chips (Cxxxx)
and inductors (Lxxxx).
Rename the original package identifier as required. For example,
all 0603s associated with reference designators beginning with an
“R” are likely resistor and should be renamed “R0603". The same
holds true for capacitors and inductors, which should be renamed
to C0603 and L0603 respectively.
Continued on next page
Ver 1.6
Page 3 of 10
S1
Rename package identifiers (continued)
3
4
There are now 3 different types of packages in this group, R0603,
C0603, and L0603. These three groups must be placed into their
appropriate algorithm family, which would be Resistor, Chip and
Gullwing respectively.
NOTE: Now that you’ve created three new package identifiers in
the component file (C0603, R0603, and L0603), you will now
have to create packages for them.
Edit the Package file and locate the lines associated with these
package names. Duplicate these lines for each of the new package
names and rename it for each new package.
Assign each package to the appropriate algorithm family, indicated
in bold:
@0603 55.0000 PLASTIC RES 1 -30.000
@0603 55.0000 PLASTIC RES 2 30.000
@C0603 55.0000 PLASTIC CHIP 1 -30.000
@C0603 55.0000 PLASTIC CHIP 2 30.000
0.0000 R
0.0000 R
5
0.0000 R
0.0000 R
6.0000 30.0000
6.0000 30.0000
6.0000 30.0000
6.0000 30.0000
@R0603 55.0000 PLASTIC RES 1 -30.000
0.0000 R
6.0000
30.0000
@R0603 55.0000 PLASTIC RES 2 30.000
0.0000 R
6.0000
30.0000
@L0603 55.0000 PLASTIC GULLWING 1 -30.000 0.0000 R 6.0000
30.0000
@L0603 55.0000 PLASTIC GULLWING 2 30.000 0.0000 R 6.0000
30.0000
Compile. If there are errors, check the Component and Package
files.
Refer to Chapter 4 of the 5DX Reference Guide for proper syntax.
Perform initial
subtyping
This step describes how to format and subtype the Component files. Refer to
the Sample Component File to see what a completed Component file looks
like, available on the customer secure web site:
www.agilent.com/key/boardtest
under 5DX Technical Support, ASAP Best Practices.
Continued on next page
Ver 1.6
Page 4 of 10
S1
Perform initial subtyping (continued)
Step
1
Action
Separate the throughhole (TH) from the surface mount (SM) parts.
a.
Open the Component on the Primary board side.
b.
Subtyping will require sorting like package with like package.
Prepare the file for sorting by inserting the following comment lines
just prior to the line containing the first reference designator. These
comment lines will be used as the header for each of the various
families.
######The Following are inspected with the BGA2 algorithm######
######The Following are inspected with the FPGullwing algorithm######
######The Following are inspected with the Gullwing algorithm ######
######The Following are inspected with the Jlead algorithm ######
######The Following are inspected with the Connector algorithm ######
######The Following are inspected with the Resistor algorithm ######
######The Following are inspected with the PCap algorithm ######
######The Following are inspected with the CHIP algorithm ######
######The Following are inspected with the PTH algorithm ######
c.
The first step is to separate surface mount (SM) and through hole (TH)
components. Using VisualSlick, select/highlight those items falling
under the SM/TH column being sure to include ALL “SMs” and
“THs” and to exclude the header.
This column can be highlighted by placing the cursor just prior to the
first SM (or TH) to appear in the file starting from the top, pressing the
keys “ALT” and “C” and then moving the arrows keys until the entire
column is highlighted.
d.
Select “Tools” from the toolbar and then select “Sort” choose
“Ascending” order, then O.K. This will place all “SM” parts on the
top section of the board and the “TH” components just below.
e.
Since all TH parts are inspected using the PTH algorithm, cut the
“PTH” comment from B and insert it just prior to the section listing
the TH components. Place a pound sign (#) at the beginning of the line
to identify it as a COMMENT:
Continued on next page
Ver 1.6
Page 5 of 10
S1
Perform initial subtyping (continued)
Step
2
Action
Sort the package names within the throughhole (TH) and surface
mount (SM) groups.
a.
Using VisualSlick, select/highlight, in the SM section only, the
column of package names, which fall under the header “Package
Type.”
b.
From the Toolbar, select Tools then Sort and choose Ascending
order, then OK. This will group together all parts with the same
package name.
c.
Repeat this step for the TH parts.
d.
Look at each of the SM package groups now sorted/separated and
determine to which family each subgroup belongs. For examples,
• SOICs will fall into the FPGullwing family.
• An R0603 would fall into the Resistor family.
e.
3
Look at each group of package types in the file. Cut the lines
associated with each package group and then paste them under their
appropriate Header, created above.
Assign subtype numbers.
a.
Once all of the package types have been placed under their appropriate
Header, subtype numbers can be assigned.
b.
Assign different subtype numbers to every different package name
(SOIC14, SOIC8, SOIC12, etc…).
c.
Within each family, assign a subtype number. Assign odd subtype
numbers to the Primary side of the board, i.e. the side on which the
more complex devices reside (1, 3, 5, ... for each group within any
given family). Assign even numbers to the Secondary side (2, 4, 6, ...)
d.
Compile. If there are errors, check the Component files.
Refer to Chapter 4 of the 5DX Reference Guide for proper syntax.
Ver 1.6
Page 6 of 10
S1
Subtype out pins
due to shape or
shading
If the pads within a land pattern vary in size, or if certain pins/parts within
any subtype are shaded differently, remove these pins/parts from the existing
subtype and assign a separate subtype number to them. On occasion you may
come across a part for which one of the two following conditions exist:
a.
The part type, such as an SOT223, has one of its 3 pins much larger than
the remaining 2 pins.
b.
One or more of the component’s pins are shaded by a part on the opposite
side of the board causing its solder profile to vary from the other pins
within the subtype.
In either case, break the package into two subtypes, one for the larger or
shaded pins and a second subtype for the smaller or non-shaded pins. Again,
the more time you invest in grouping together parts/pads with similar solder
profiles, the tighter you are able to set thresholds which leads to a more robust
test.
NOTE: In the case of shading, you must observe which pins are shaded under
X-ray using CheckCad or during threshold tuning.
The following is an example of how to modify each of the NDF files
including the Board, Component, and SMLand (or THLand if a TH part) in
order to subtype a particular pin. This example uses the case whereby a part
U49 of package type SOT23 has one pin (Pin 1) much larger in size than the
remaining two pins; the same method applies to subtyping shaded pins.
Step
1
Action
Modify the board file. Duplicate the line for the part in question. Rename both the
reference designator and package name to differentiate the two types of pads. In this
example U49/SOT23 has been renamed with a “_lg” for the large pads and “_sm” for the
small pads.
#REF_DES
@U49_sm
@U49_lg
2
X
6495.000
6495.000
Y
3795.000
3795.000
ROT
180
180
FOOTPRINT
SOT23_sm
SOT23_lg
Modify the Component file. Duplicate the line for the part in question. Again, rename the
reference designator and package name so as to differentiate the two pads. Assign a
different subtype for each:
REF_DES LOAD? PACKAGE_TYPE COMP_TYPE ALGOSUB_TYPE
@U49_sm TRUE SOT23_sm
SM
3
@U49_lg TRUE SOT23_lg
SM
5
Continued on next page
Ver 1.6
Page 7 of 10
S1
Subtype out pins due to shape or shading (continued)
Step
3
Action
Modify the SMLand (or THLand) file. Determine which pin is of the larger size by observing the
last two columns, which reflect the pad width and length. In this case, Pin 1 has dimension of 50
and 60 mils which is much larger than the remaining pads, which measure 30 and 35mils. Modify
the Package name associated with each line accordingly.
FOOTPRINT
@SOT23_lg
@SOT23_sm
@SOT23_sm
4
X-PAD
0
-37
37
Y-PAD
40
-40
-40
SHAPE
R
R
R
DX
50
30
30
DY
60
35
35
Modify the Package file. Modify the Package file accordingly. It may be necessary to specify the
Pin Orientation after splitting up the package.
#PACKAGE_ID
@SOT23_lg
@SOT23_sm
@SOT23_sm
5
PIN
1
2
3
PITCH
63
38
38
MATERIAL
PLASTIC
PLASTIC
PLASTIC
JOINT TYPE
GULLWING
GULLWING
GULLWING
PIN
1
2
3
X Y SHAPE DX DY ORIENTATION
0 40 R
40 6
270
-37 -40 R
24 3.5 90
37 -40 R
24 3.5 90
Compile. If there are errors, check the NDFs.
Refer to Chapter 4 of the 5DX Reference Guide for proper syntax.
Continued on next page
Ver 1.6
Page 8 of 10
S1
Sample
component file
The following is an example of a component file.
####
SAMPLE COMPONENT FILE
.BOARD_ID:
#RD
######
TYPE
SUBTYPE
THE FOLLOWING ARE INSPECTED WITH BGA2 #####
TRUE PBGA272
SM
1
THE FOLLOWING ARE INSPECTED WITH FP GULLWING #####
@U132
@U132_shaded
#####
HYPOTHETICAL_BOARD_TOP
TEST PKG ID
@U110
######
####
TRUE QFP208_normal
TRUE QFP208_shaded
SM
SM
1
3
THE FOLLWING ARE INSPECTED WITH GULLWING #####
@U90
TRUE PQFP100
SM
1
@U76_smpins
TRUE QFP160
SM
5
@U79_lgpins
TRUE QFP160
SM
5
#####
THE FOLLOWING ARE TESTED WITH CONNECTOR ####
@J8
#####
TRUE CONN100
SM
1
THE FOLLOWING ARE INSPECTED WITH JLEAD #####
@U153
TRUE PLCC28
SM
1
@U165
TRUE PLCC44
SM
3
#####
THE FOLLOWING ARE INSPECTED WITH CHIP #####
@C91
TRUE C0805
SM
1
@C92_shaded
TRUE C0805
SM
3
#####
THE FOLLOWING ARE INSPECTED WITH RES
@R66
@R67
TRUE R1206
TRUE R1206
SM
SM
1
1
@R3
TRUE R1210
SM
3
@R1
TRUE R0805
SM
5
#####
THE FOLLOWING ARE INSPECTED WITH PTH #####
@DD7
TRUE CONN42
TH
1
##END OF FILE
Ver 1.6
Page 9 of 10
S1
Component Subtyping Process Flow
Component
Subtyping
Use
Component
Library?
No
Yes
Export the
Package Data
Generate Package
Data
Rename Package
Names
No
Is the compile
error-free?
Yes
Perform Initial
Subtyping
No
Is the compile
error-free?
Yes
Do the pads
vary in size or
any pins
shaded?
Yes
Subtype out pins
due to shape or
shading
No
End
Ver 1.6
Page 10 of 10
Download