The following map formats are supported for output.
This is the latest and most comprehensive wafer map format created by the SEMI organization. Our implementation is limited to a wafer geometry, a single device, a single substrate and a single map per output file.
Header Section
This section identifies the file as a E142 and provides a link to the schema
<?xml version="1.0" encoding="UTF-8"?> <MapData xmlns="urn:semi-org:xsd.E142-1.V1005.SubstrateMap">
Layouts Section
This section defines the physical layout starting with a top level (the wafer) and then defines the size of the child (the device) While some tools may not require it, the Layouts section is a mandatory part of the SEMI E142 specification.
<Layouts> <Layout LayoutId="WaferMap" DefaultUnits="mm" TopLevel="true"> <Dimension X="1" Y="1" /> <DeviceSize X="200.000000" Y="200.000000" /> <ChildLayouts> <ChildLayout LayoutId="A205808" /> </ChildLayouts> </Layout> <Layout LayoutId="A205808" DefaultUnits="mm"> <Dimension X="120" Y="145" /> <DeviceSize X="1.259000" Y="1.542000" /> <StepSize X="1.259000" Y="1.542000" /> <ProductId>G2877F</ProductId> </Layout> </Layouts>
Substrates Section
This section defines a substrate (E142 can support multiple substrate definitions though our software only produces a single substrate per file.)
<Substrates> <Substrate SubstrateType="Wafer" SubstrateId="01"> <LotID>A205808</LotID> <GoodDevices>13199</GoodDevices> </Substrate> </Substrates>
Maps Section
This section defines the map. It first must be associated with a substrate and a layout. We then define the wafer orientation (0 = bottom) and the Origin location for the array.
That information is followed by a list of the reference devices. This particular wafer had 21 reference devices but the typical number is 1,2 or 4.
<SubstrateMaps> <SubstrateMap SubstrateType="Wafer" SubstrateId="01" LayoutSpecifier="WaferMap/A205808"> <Orientation>0</Orientation> <OriginLocation>UpperLeft</OriginLocation> <AxisDirection>DownRight</AxisDirection> <Overlay MapName="SortGrade" MapVersion="1"> <ReferenceDevices> <ReferenceDevice> <Coordinates X="6" Y="39" /> </ReferenceDevice>
Once the reference devices are listed, we then define the meaning of the various bin codes. Each entry will have a bin code, a bin quality attribute, a description and a count.
<BinCodeMap BinType="Ascii" NullBin="."> <BinDefinitions> <BinDefinition BinCode="."> <BinCount>3812</BinCount> <BinQuality>Null</BinQuality> </BinDefinition> <BinDefinition BinCode="F"> <BinCount>368</BinCount> <BinQuality>Fail</BinQuality> </BinDefinition> <BinDefinition BinCode="1"> <BinCount>13199</BinCount> <BinQuality>Pass</BinQuality> </BinDefinition> <BinDefinition BinCode="M"> <BinCount>21</BinCount> <BinQuality>Ref</BinQuality> </BinDefinition> </BinDefinitions>
The final section of the E142 file has the actual map data. This is a 2D array of bin codes.
<BinCode>....................................................FFFFFFFFFFFFFFF.....................................................</BinCode> <BinCode>...............................................1111111111111111111111111................................................</BinCode> <BinCode>............................................F111111111111111111111111111111.............................................</BinCode> <BinCode>.........................................F111111111111111111111111111111111111..........................................</BinCode> <BinCode>.......................................F1111111111111111111111111111111111111111........................................</BinCode> <BinCode>.....................................F11111111111111111111111111111111111111111111......................................</BinCode>
This is a very simple format that contains only the map information -- no header with units, step size, wafer flat orientation.
Only 4 bincodes are supported:
Bin Code Description . null 0 fail 1 pass R reference
A sample is shown below:
....................................................000000000000000..................................................... ...............................................1111111111111100000000000................................................ ............................................1111111111111111111111111111010............................................. .........................................0111111001111111111111111111111111111.......................................... .......................................11111111111111111111111111111111111111111........................................ .....................................111111111111111111111111111111111111111111111...................................... ....................................111110111111111111111111111110111111111111111111.................................... ....................................111111111111111111111111111111111111111111111111.................................... ....................................R1111111111111111111111111111111111111111111111R.................................... ..............................11111111111111111111111111111111111111111111110111111111110............................... .............................1111111111111111111111111111111111111111111111111111111111111.............................. ...........................11111111111111111111111111111111111111111111111111111111111111110............................ ..........................1111111111111111111011111111111111111111111111111111111111111111111...........................
The SINF [Simplified Integrator Nested Format] spec consists of a header section followed by Row data. The basic structure is shown below:
Header
DEVICE:xxx identification assigned by originator LOT:xxx identification assigned by originator WAFER:xxx identification assigned by originator FNLOC:180 wafer flat position (0=TOP,90=RIGHT,180=BOT 270=LEFT) ROWCT:62 number of rows COLCT:63 number of columns BCEQU:01 List of Bin Codes that are good die REFPX: x-coord of reference die (optional) REFPY: y-coord of reference die (optional) DUTMS:mm die units of measurement (mm or mil) XDIES:2.945 step along X YDIES:2.945 step along Y
Row Data
Following the header is row data. It is identified by the keyword RowData: Here are the various hex values one will find in the row data:
00-0A good die (each die type gets its own unique identifier starting at 00, 01, 02 ...) reserve 0A for the die at wafer center. 0B-F0 bad die __ no die (underscore-underscore) used as a placeholder in the matrix. @@ uninspected die FD-FE edge die (optional) FF reference die (typically a die that is visually different)
Row data lines look like this:
RowData:__ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ 01 01 01 01 __ __ __ __ __ 01 01 01 01 01 01 01 01 RowData:__ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 RowData:__ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01
Reference Die
There are two ways of locating the reference die:
a) a die marked with bin code FF.
b) REFPX:
and REFPY:
values in the header.
The coordinate system when REFPX:
and REFPY:
is used is shown below:
Header
FACILITY=OEMNAME Facility ID LOT=99XXX.1 Lot ID DEVICE=CMD252EUBMB4 Device ID WAFERS=01 Number of Wafers in this file X_SIZE=123.228 Die Size in X (units appear to be mils Y_SIZE=123.228 Die Size in Y (units appear to be mils SCRIBE="BOTTOM,15,NTRL,FAB" Location of scribed data? WAFER_SIZE=150 Wafer diameter in mm STATUS="PROD" Status USER="NOINK" User or user defined info BIN_NAME.01="G,WQLPASS" Bin category BIN_NAME.09="WQLFAIL" Bin category
This is followed by a section called a shot map. This appears to be a listing of all die - perhaps those present from the reticle shots. Notice that for each Y row (ranging from -21 to 20) there is a "list" of X locations.
SHOT_MAP="Y-21 12/31 Y-20 10/33 Y-19 9/34 Y-18 8/35 Y-17 7/36 Y-16 6/37 Y-15 5/38 Y-14 4/39 Y-13 3/40 Y-12 3/40 Y-11 2/41 Y-10 2/41 Y-9 1/42 Y-8 1/42 Y-7 1/42 Y-6 0/43 Y-5 0/43 Y-4 0/43 Y-3 0/19 24/43 Y-2 0/19 24/43 Y-1 1/19 24/42 Y0 1/19 24/42 Y1 1/42 Y2 1/42 Y3 1/42 Y4 1/42 Y5 1/42 Y6 1/42 Y7 2/41 Y8 2/41 Y9 3/40 Y10 3/40 Y11 4/39 Y12 5/38 Y13 5/38 Y14 6/37 Y15 7/36 Y16 8/35 Y17 10/33 Y18 11/32 Y19 13/30 Y20 16/27"
Now the wafer is identified, the number of bins is declared and a BIN (previously defined) referred to. That is followed by all the die positions belonging to this bin.
WAFERID.01=LG991-01-E4 NUM_BINS.01=02 BIN_COUNT.01.01=01313 MAP_XY.01.01="Y-21 12/18 20/28 30/31 Y-20 10/12 15/33 Y-19 9/34 Y-18 8/13 16/35 Y-17 7/13 16/22 24/27 29/35 Y-16 6/13 15/37 Y-15 5/8 10/13 16/31 33/37 Y-14 4/13 16/39 Y-13 4/13 16/26 28/40 Y-12 4/12 16/40 Y-11 2/5 7 9/12 16/41 Y-10 2/8 10/13 16 18/24 26/37 39/41 Y-9 1/13 16/42 Y-8 1/13 17/42 Y-7 2/13 17/25 27/42 Y-6 0/13 17/43 Y-5 0/13 18/43 Y-4 0/14 17/43 Y-3 0/7 9/14 17/19 24/43 Y-2 0/14 17 19 24/41 43 Y-1 1 3/5 7/11 13/17 19 26/29 31/42 Y0 2/10 17 36/42 Y1 1/11 23 27/31 38/42 Y2 1/2 4/10 14 19 21/22 24 26/42 Y3 1/2 4/10 12/21 23/32 35/42 Y4 1/2 4/14 16/19 21/29 31 33/42 Y5 1/2 4/42 Y6 1/2 4/17 19/23 25 27/42 Y7 2 4/25 27/41 Y8 2/17 19/41 Y9 4/40 Y10 4/13 15/18 20/23 25/29 31/36 38/40 Y11 4/31 33/39 Y12 5/12 14/38 Y13 5/25 27/38 Y14 6/16 18/37 Y15 7/9 11/29 31/34 36 Y16 8/16 18 20/27 29/35 Y17 10/33 Y18 11 13/29 31/32 Y19 13 15/21 23 25/30 Y20 16/19 21/24 26/27"
The next bin is enumerated followed by all the die positions belonging to this bin.
BIN_COUNT.01.09=00165 MAP_XY.01.09="Y-21 19 29 Y-20 13/14 Y-18 14/15 Y-17 14/15 23 28 36 Y-16 14 Y-15 9 14/15 32 38 Y-14 14/15 Y-13 3 14/15 27 Y-12 3 13/15 Y-11 6 8 13/15 Y-10 9 14/15 17 25 38 Y-9 14/15 Y-8 14/16 Y-7 1 14/16 26 Y-6 14/16 Y-5 14/17 Y-4 15/16 Y-3 8 15/16 Y-2 15/16 18 42 Y-1 2 6 12 18 24/25 30 Y0 1 11/16 18/19 24/35 Y1 12/22 24/26 32/37 Y2 3 11/13 15/18 20 23 25 Y3 3 11 22 33/34 Y4 3 15 20 30 32 Y5 3 Y6 3 18 24 26 Y7 3 26 Y8 18 Y9 3 Y10 3 14 19 24 30 37 Y11 32 Y12 13 Y13 26 Y14 17 Y15 10 30 35 Y16 17 19 28 Y18 12 30 Y19 14 22 24 Y20 20 25"
The file is closed with an END.
END.