Skip to content

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 clear_bins()#

Clears all previously set bin values from the wafermap.

Example#

probe_station = measmatic.GetDevice('device-probe-station')
probe_station.wafermap.clear_bins()

method create_map(map_type: int, size_x: int, size_y: int)#

Creates a new wafer map.

Parameters#

Name Description
map_type An integer value representing the map type. Must be either one of 0 (Round) or 1 (Rectangular)
size_x Number of columns. (Optional; Only used for rectangular maps!)
size_y Number of rows. (Optional; Only used for rectangular maps!)

Example#

probe_station = measmatic.GetDevice('device-probe-station')
probe_station.wafermap.create_map(1, 50, 100)

method get_column_and_row_for_index(path_index: 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
path_index 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.get_column_and_row_for_index(123)

method get_current_site()#

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.get_current_site()
site = probe_station.wafermap.get_current_sub_site_index()

method get_current_sub_site_index()#

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.get_current_site()
site = probe_station.wafermap.get_current_sub_site_index()

method get_die_size()#

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.get_die_size()

method get_die_status(System.Int32,System.Int32)#

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.get_die_status(10, 20)

method get_home_die()#

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.get_home_die()

method get_num_dies()#

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.get_num_dies()

method get_sub_site_label(sub_site_index: int)#

Returns the label/id of a certain subsite.

Parameters#

Name Description
sub_site_index An integer number representing the subsite index.

Returns#

Type Description
str The label/id of the given subsite.

Example#

probe_station = measmatic.GetDevice('device-probe-station')
site_label = probe_station.wafermap.get_sub_site_label(0)

method get_wafer_home_abs()#

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.get_wafer_home_abs()

method open_map(System.String)#

Load a wafermap file.

Example#

probe_station = measmatic.GetDevice('device-probe-station')
probe_station.wafermap.open_map("mymap.xwmf")

method select_site_for_test(site_column: int, site_row: int, is_selected_for_test: bool)#

Select a die for testing.

Parameters#

Name Description
site_column The wafer grid column of the die.
site_row The wafer grid row of the die.
is_selected_for_test A flag to indicate whether to test the die (true) or not (false).

Example#

probe_station = measmatic.GetDevice('device-probe-station')
probe_station.wafermap.select_site_for_test(10, 15, true)

method set_axis_orientation(axis_orientation: int)#

Sets the axis orientation of the map.

Parameters#

Name Description
axis_orientation An integer value (0-3) representing the axis orientation.

Example#

probe_station = measmatic.GetDevice('device-probe-station')
probe_station.wafermap.set_axis_orientation(0)

method set_bin(site_column: int, site_row: int, bin_code: int)#

Set the bin of a die

Parameters#

Name Description
site_column The die column
site_row The die row
bin_code An integer value representing the bin code.

Example#

probe_station = measmatic.GetDevice('device-probe-station')
probe_station.wafermap.set_bin(4, 5, 1)

method set_bin_sub_site(site_column: int, site_row: int, sub_site_index: int, bin_code: int)#

Set the bin code of a subsite

Parameters#

Name Description
site_column The die column
site_row The die row
sub_site_index The sub site index
bin_code An integer value representing the bin code.

Example#

probe_station = measmatic.GetDevice('device-probe-station')
probe_station.wafermap.set_bin_sub_site(4, 5, 0, 1)

method set_die_size(width_in_micrometer: float, height_in_micrometer: float)#

Set the die size of the wafermap.

Parameters#

Name Description
width_in_micrometer Width of the die in microns.
height_in_micrometer Height of the die in microns.

Example#

probe_station = measmatic.GetDevice('device-probe-station')
probe_station.wafermap.set_die_size(1000, 2000)

method set_die_status(site_column: int, site_row: int, status: int)#

Set the status of a given die.

Parameters#

Name Description
site_column The column of the die.
site_row 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.set_die_status(1000, 2000)

method set_grid_origin(site_column: int, site_row: 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
site_column The column of the die.
site_row 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.set_grid_origin(10, 10)

method set_home_die(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.set_home_die(10, 10)

method set_path(ref_point: int, trace: int)#

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
ref_point The location of the first point of the route to be created.
trace An integer value for selecting the routing scheme.

Example#

probe_station = measmatic.GetDevice('device-probe-station')
probe_station.wafermap.set_path(0)

method step_to_first_site()#

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.step_to_first_site()

method step_to_first_sub_site()#

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.step_to_first_sub_site()

method step_to_next_site()#

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.step_to_next_site()

method step_to_next_site_or_sub_site()#

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.step_to_next_site_or_sub_site()

method step_to_next_sub_site()#

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.step_to_next_sub_site()

method step_to_site(site_column: int, site_row: int)#

Step an arbitrary die given by its column and row.

Parameters#

Name Description
site_column The column of the die to step to
site_row The row of the die to step to

Example#

probe_station = measmatic.GetDevice('device-probe-station')
probe_station.wafermap.step_to_site(10, 15)

method step_to_sub_site(sub_site_idx: int)#

Step to a subsite. This command will step to a different subsite of the current die.

Parameters#

Name Description
sub_site_idx Index of the subsite to step onto.

Example#

probe_station = measmatic.GetDevice('device-probe-station')
probe_station.wafermap.step_to_sub_site(1)