Vt extraction step

Extraction step for the threshold voltage of the PSP MOSFET compact model using y-parameters.

Extracts the threshold voltage of MOSFET transistors * VT

Direct on the I_D(V_GS) characteristics at fixed V_DS AND fixed V_BS

G. GHIBAUDO, “NEW METHOD FOR THE EXTRACTION OF MOSFET PARAMETERS”, EDS Letters, 1988.

class DMT.psp.x_y_vt.XYVt(name, mcard, lib, op_definition, model=None, relevant_duts=None, to_optimize=None, **kwargs)[source]

Bases: XStep

Parameters:
namestr

Name of this XStep in the parameter extraction flow.

mcardMCard or McParameterCollection

This MCard needs to hold all relevant parameters of the model and is used for simulations or model equation calculations.

libDutLib

This library of devices need to hold a relevant internal dut with data in one or more DataFrames as fitting reference.

op_definition{keyfloat, tuple or list}

Defines how to filter the given data in the duts by setting either a single value (float), a range (2-element tuple) or a list of values (list) for each variable to filter.

modelVerilogAE model

Model object with all model equations used for this extraction step.

ensure_input_correct_per_dataframe(dataframe, dut=None, key=None)[source]

Search for all required columns in the data frames.

extract_vt(vgs, vds, vbs, vdb, t_dev, *, k=None, vt=None, **kwargs)[source]
fit(data_model, paras_model, dut=None)[source]

Calculate the drain current from known node voltages.

Parameters:
data_model{‘x’:np.ndarray(), ‘y’:np.ndarray(), ‘y_ref’:np.ndarray(), ‘TEMP’:float}

Content of this dict is defined in the method “init_data_reference_per_dataframe”.

paras_modelMCard

The model parameters for which the drain current “y” should be calculated.

Returns:
data_model[{‘x’:np.ndarray(), ‘y’:np.ndarray(), ‘y_ref’:np.ndarray(), ‘TEMP’:float}]

Same dict as input, but “y” now corresponds to the drain current.

get_description()[source]

Return a tex description of this XStep. Used for generating the documentation. If not implemented, there is no description for this XStep in the documentation.

get_tex()[source]

Return a tex Representation of the Model that is beeing fitted. This can then be displayed in the UI.

init_data_reference_per_dataframe(dataframe, t_meas, dut=None, key=None)[source]

Find the reference data for each line in the supplied dataframe or database. Write the data into the data_model attribute of this XStep object.

main_plot()[source]

Creates the main plot that is also displayed in the GUI and printed to the documentation.

The parameters are not used in the method here, but in the decorator plot()

Parameters:
paras_modelMcParameterCollection, optional

If given, it is set to this XStep before plotting.

calc_all{False, True}

If True, the method calc_all() is called before plotting.

plot_transfer()[source]
set_initial_guess(data_reference)[source]

Find suitable initial guesses for (some of the) model parameters from the given reference data.

staticMetaObject = PySide6.QtCore.QMetaObject("XYVt" inherits "XStep": )[source]