Measurement DuTs
Manage measurement data in DMT in as a measurement dut. Additionally has attributes which define the size and die of the dut.
- class DMT.core.dut_meas.DutMeas(database_dir, name, dut_type, wafer=None, die=None, ndevices=1, deemb_name=None, **kwargs)[source]
Bases:
DutView
Subclass of DutView that is used to capture relevant methods and properties of measured data.
- Parameters:
- database_dir
str
Root directory for saving duts and databases of this project.
- name
str
Name of the dut to save it human readable.
- dut_type
DutType
- width
float64
,optional
Width in m.
- length
float64
,optional
Length in m.
- wafer
str
,optional
Wafer identification string of this object.
- die
str
,optional
Die identification string of this object.
- ndevices
integer
Number of physically parallel devices of this measurement.
- hash
float64
Unique hash of this object.
- database_dir
- Attributes:
- width
float64
Width in m.
- length
float64
Length in m.
- perimeter
float64
Perimeter in m.
- area
float64
Area of this DutMeas object in m^2.
- wafer
str
Wafer identification string of this object.
- die
str
Die identification string of this object.
- ndevices
integer
Number of physically parallel devices of this measurement.
- width
Methods
run_simulation(sweep)
Raises NotImplementedError since measurements can not be simulated!
get_hash()
Return a unique hash based on some attributes of the DutMeas object.
add_short(short, key=’/dummies/short’, force=True)
Add a short dummy to the database of this DutMeas object.
add_open(short, key=’/dummies/short’, force=True)
Add an open dummy to the database of this DutMeas object.
get_output_data(sweep)
Raises NotImplementedError since a measurement can not return its output files.
- add_open(open_, key='dummies/open')[source]
Add an open dummy to the database of this DutMeas object.
- add_short(short, key='dummies/short')[source]
Add a short dummy to the database of this DutMeas object.
- classmethod from_json(json_content: Dict, classes_technology: List[Type[Technology]]) DutMeas [source]
Static class method. Loads a DutMeas object from a pickle file with full path save_dir.
Calls the from_json method of DutView with all dictionary inside the “parent” keyword. Afterwards the additional parameters are set correctly.
- info_json(**_kwargs) Dict [source]
Returns a dict with serializeable content for the json file to create.
The topmost dict MUST have only one key: The string casted class name. Inside the parameters are:
A version key,
all extra parameters of DutMeas compared to DutView and
the info_json of DutView.
- Returns:
dict
str(DutMeas): serialized content
- join_key_temperature(*key_parts, temperature_converter=None)[source]
Collects the temperature from key_parts and replaces it by a proper temperature key part.
- Parameters:
- key_parts[
str
] List of key strings to join. One element contains the temperature information.
- temperature_converter
callable()
object
,optional
Function to convert a key part into a temperature.
- key_parts[
- Returns:
- key
str
The correctly joined key_parts. If the temperature was inside, it is converted into “T” + temp + “K”.
- key
- make_input(sweep)[source]
Should genrate the input file for a given simulation sweep. This is not possible for measurements!
- Raises:
OSError
Always when called.
- prepare_simulation(sweep)[source]
Raise a OSError. Measurement duts can not be simulated!
- Raises:
OSError
Always when called.
- run_simulation(sweep)[source]
Raise a OSError. Measurements can not be simulated!
- Raises:
OSError
Always when called.