Wafermap#
The wafermap object is your gateway to the probe station stepping and binning operations. You can use it to set and get information on the wafer layout and perform stepping operations.
method ClearBins()
#
Clears all previously set bin values from the wafermap.
Example#
probe_station = measmatic.GetDevice('device-probe-station')
probe_station.Wafermap.ClearBins()
method CreateMap(mapType: Atv.Framework.Devices.Prober.Enumerations.MapType, sizeX: int, sizeY: int)
#
Creates a new wafer map.
Parameters#
Name | Description |
---|---|
mapType | An integer value representing the map type. Must be either one of 0 (Round) or 1 (Rectangular) |
sizeX | Number of columns. (Optional; Only used for rectangular maps!) |
sizeY | Number of rows. (Optional; Only used for rectangular maps!) |
Example#
probe_station = measmatic.GetDevice('device-probe-station')
probe_station.Wafermap.CreateMap(1, 50, 100)
method GetColumnAndRowForIndex(pathIndex: int)
#
Returns the column and row information for a given linear die index. A linear die index is the die number. This function will translate a die number into column and row information.
Parameters#
Name | Description |
---|---|
pathIndex | An integer value representing a die index. |
Returns#
Type | Description |
---|---|
int | The die column information |
int | The die row information |
Example#
probe_station = measmatic.GetDevice('device-probe-station')
col, row = probe_station.Wafermap.GetColumnAndRowForIndex(123)
method GetCurrentSite()
#
Returns the column and row of the current die. The returned information is the die coordinate in the wafer grid. It is only valid during stepping operations!
Returns#
Type | Description |
---|---|
int | The column index |
int | The row index |
Example#
probe_station = measmatic.GetDevice('device-probe-station')
col, row = probe_station.Wafermap.GetCurrentSite()
site = probe_station.Wafermap.GetCurrentSubSiteIndex()
method GetCurrentSubSiteIndex()
#
Returns the current subsite index. Using this functions is only allowed during prober stepping operations.
Returns#
Type | Description |
---|---|
int | The subsite index. This is an integer number representing one of the subsites defined in the wafermap. |
Example#
probe_station = measmatic.GetDevice('device-probe-station')
col, row = probe_station.Wafermap.GetCurrentSite()
site = probe_station.Wafermap.GetCurrentSubSiteIndex()
method GetDieSize()
#
Returns the die size set up in the wafer map.
Returns#
Type | Description |
---|---|
float | The die width |
float | The die height |
Example#
probe_station = measmatic.GetDevice('device-probe-station')
width, height = probe_station.Wafermap.GetDieSize()
method GetDieStatus()
#
Queries the status of the die at certain grid coordinate.
Returns#
Type | Description |
---|---|
int | The returned value indicates whether the die is selected for test (0), not selected but existent (1) or nonexistent (2) |
Example#
probe_station = measmatic.GetDevice('device-probe-station')
status = probe_station.Wafermap.GetDieStatus(10, 20)
method GetHomeDie()
#
Queries the grid location of the home die.
Returns#
Type | Description |
---|---|
int | The home die column |
int | The home die row |
Example#
probe_station = measmatic.GetDevice('device-probe-station')
col, row = probe_station.Wafermap.GetHomeDie()
method GetNumDies()
#
Returns the number of dies selected for test.
Returns#
Type | Description |
---|---|
int | The number of dies selected for test. Please note that this number will be different than the total number of dies when only a subset is selected for testing. |
Example#
probe_station = measmatic.GetDevice('device-probe-station')
num_selected = probe_station.Wafermap.GetNumDies()
method GetSubSiteLabel(subSiteIdx: int)
#
Returns the label/id of a certain subsite.
Parameters#
Name | Description |
---|---|
subSiteIdx | An integer number representing the subsite index. |
Returns#
Type | Description |
---|---|
string | The label/id of the given subsite. |
Example#
probe_station = measmatic.GetDevice('device-probe-station')
site_label = probe_station.Wafermap.GetSubSiteLabel(0)
method GetWaferHomeAbs()
#
Returns chuck coordinates of the home die position.
Returns#
Type | Description |
---|---|
float | X-Position of the home die in microns |
float | Y-Position of the home die in microns |
Example#
probe_station = measmatic.GetDevice('device-probe-station')
posx, posy = probe_station.Wafermap.GetHomeDie()
method OpenMap()
#
Load a wafermap file.
Example#
probe_station = measmatic.GetDevice('device-probe-station')
probe_station.Wafermap.OpenMap("mymap.xwmf")
method SelectSiteForTest(siteColumn: int, siteRow: int, isSelectedForTest: bool)
#
Select a die for testing.
Parameters#
Name | Description |
---|---|
siteColumn | The wafer grid column of the die. |
siteRow | The wafer grid row of the die. |
isSelectedForTest | A flag to indicate whether to test the die (true) or not (false). |
Example#
probe_station = measmatic.GetDevice('device-probe-station')
probe_station.Wafermap.SelectSiteForTest(10, 15, true)
method SetAxisOrientation(axisOrientation: Atv.Framework.Devices.Prober.Enumerations.AxisOrientation)
#
Sets the axis orientation of the map.
Parameters#
Name | Description |
---|---|
axisOrientation | An integer value (0-3) representing the axis orientation. 0 - Y-Axis pointing up; X-Axis pointing right 1 - Y-Axis pointing down; X-Axis pointing right 2 - Y-Axis pointing up; X-Axis pointing left 3 - Y-Axis pointing down; X-Axis pointing left |
Example#
probe_station = measmatic.GetDevice('device-probe-station')
probe_station.Wafermap.SelectSiteForTest(10, 15, true)
method SetBin(siteColumn: int, siteRow: int, binCode: int)
#
Set the bin of a die
Parameters#
Name | Description |
---|---|
siteColumn | The die column |
siteRow | The die row |
binCode | An integer value representing the bin code. |
Example#
probe_station = measmatic.GetDevice('device-probe-station')
probe_station.Wafermap.SetBin(4, 5, 1)
method SetBinSubSite(siteColumn: int, siteRow: int, subSiteIndex: int, binCode: int)
#
Set the bin code of a subsite
Parameters#
Name | Description |
---|---|
siteColumn | The die column |
siteRow | The die row |
subSiteIndex | The sub site index |
binCode | An integer value representing the bin code. |
Example#
probe_station = measmatic.GetDevice('device-probe-station')
probe_station.Wafermap.SetBinSubSite(4, 5, 0, 1)
method SetDieSize(widthInMicrometer: float, heightInMicrometer: float)
#
Set the die size of the wafermap.
Parameters#
Name | Description |
---|---|
widthInMicrometer | Width of the die in microns. |
heightInMicrometer | Height of the die in microns. |
Example#
probe_station = measmatic.GetDevice('device-probe-station')
probe_station.Wafermap.SetDieSize(1000, 2000)
method SetDieStatus(siteColumn: int, siteRow: int, status: Atv.Framework.Devices.Prober.Enumerations.DieStatus)
#
Set the status of a given die.
Parameters#
Name | Description |
---|---|
siteColumn | The column of the die. |
siteRow | The row of the die. |
status | The status of the die. (0 - Selected, 1 - NotSelected, 2 - NotPresent) |
Example#
probe_station = measmatic.GetDevice('device-probe-station')
probe_station.Wafermap.SetDieSize(1000, 2000)
method SetGridOrigin(siteColumn: int, siteRow: int)
#
Set the grid origin of the wafermap. The grid origin is the origin of a user defined grid coordinate system. Usually a wafermap has a native and a custom coordinate system. The grid origin is defined in terms of coordinates given in the native coordinate system.
Parameters#
Name | Description |
---|---|
siteColumn | The column of the die. |
siteRow | The row of the die. |
Example#
The following line will make the coordinate 10,10 of the native wafer coordinate system the origin of the user defined coordinate system thus giving them the user defined coordinates 0,0.
probe_station = measmatic.GetDevice('device-probe-station')
probe_station.Wafermap.SetGridOrigin(10, 10)
method SetHomeDie(x: int, y: int)
#
Set the grid coordinates of the home die.
Parameters#
Name | Description |
---|---|
x | The column of the home die in user defined grid coordinates. |
y | The row of the home die in user defined grid coordinates. |
Example#
The following line will make the coordinate 10,10 of the native wafer coordinate system the origin of the user defined coordinate system thus giving them the user defined coordinates 0,0.
probe_station = measmatic.GetDevice('device-probe-station')
probe_station.Wafermap.SetHomeDie(10, 10)
method SetPath(refPoint: Atv.Framework.Devices.Prober.Enumerations.RefPoint, trace: Atv.Framework.Devices.Prober.Enumerations.RoutingTrace)
#
Set up a route for die testing. This command will define how stepping is conducted. it gets a starting point and a trace parameter and orders the test dies in the test plan accordingly.
Parameters#
Name | Description |
---|---|
refPoint | The location of the first point of the route to be created. 0 - Center, 1 - LowerLeft, 2 - UpperLeft, 3 - LowerRight, 4 - UpperRight |
trace | An integer value for selecting the routing scheme. 0 - Rows, 1 - Cols, 2 - WindingRows, 3 - WindingCols |
Example#
probe_station = measmatic.GetDevice('device-probe-station')
probe_station.Wafermap.SetPath(0)
method StepToFirstSite()
#
Step to the first die of the route. Use this command to initiate die stepping mode. The command will return column, row and subsite information of the die that the chuck was moved to.
Returns#
Type | Description |
---|---|
int | The column of the die the chuck is positioned on |
int | The row of the die the chuck is positioned on |
int | The subsite of the die the chuck is positioned on |
bool | A boolean value indicating whether this is the last die of the route. |
Example#
probe_station = measmatic.GetDevice('device-probe-station')
probe_station.Wafermap.StepToFirstSite()
method StepToFirstSubSite()
#
Step to the first subsite of a die.
Returns#
Type | Description |
---|---|
int | The subsite index |
bool | A boolean value indicating whether this is the last die of the route. |
Example#
probe_station = measmatic.GetDevice('device-probe-station')
probe_station.Wafermap.StepToFirstSubSite()
method StepToNextSite()
#
Step the next die in the route but remain on the same subsite.
Returns#
Type | Description |
---|---|
int | The column of the die the chuck is positiond on |
int | The row of the die the chuck is positioned on |
int | The subsite of the die the chuck is positioned on |
bool | A boolean value indicating whether this is the last die of the route. |
Example#
probe_station = measmatic.GetDevice('device-probe-station')
probe_station.Wafermap.StepToNextSite()
method StepToNextSiteOrSubSite()
#
Step the next subsite. When the chuck is at the last subsite step to the first subsite of the next die.
Returns#
Type | Description |
---|---|
int | The column of the die the chuck is positiond on |
int | The row of the die the chuck is positioned on |
int | The subsite of the die the chuck is positioned on |
bool | A boolean value indicating whether this is the last die of the route. |
bool | A boolean value indicating whether this is the last subsite of the current die. |
Example#
probe_station = measmatic.GetDevice('device-probe-station')
probe_station.Wafermap.StepToNextSiteOrSubSite()
method StepToNextSubSite()
#
Step the next subsite.
Returns#
Type | Description |
---|---|
int | The subsite of the die the chuck is positioned on |
bool | A boolean value indicating whether this is the last subsite of the current die. |
Example#
probe_station = measmatic.GetDevice('device-probe-station')
probe_station.Wafermap.StepToNextSubSite()
method StepToSite(siteColumn: int, siteRow: int)
#
Step an arbitrary die given by its column and row.
Parameters#
Name | Description |
---|---|
siteColumn | The column of the die to step to |
siteRow | The row of the die to step to |
Example#
probe_station = measmatic.GetDevice('device-probe-station')
probe_station.Wafermap.StepToSite(10, 15)
method StepToSubSite(subSiteIdx: int)
#
Step to a subsite. This command will step to a different subsite of the current die.
Parameters#
Name | Description |
---|---|
subSiteIdx | Index of the subsite to step onto. |
Example#
probe_station = measmatic.GetDevice('device-probe-station')
probe_station.Wafermap.StepToSubSite(1)