Juncap current extraction step
Extraction step for the juncap currents of the PSP MOSFET compact model. Each of the two junctions (drain-buld and source-bulk) has three components (bottom, STI and gate edge).
Extracts the source-bulk and drain-bulk junction current parameters for the PSP model
Parameters: * either:
Direct on the I_SB(V_SB) or I_DB(V_SB) characteristics at fixed V_DS=0V AND fixed V_GS=0V
- class DMT.psp.x_juncap_current.XJuncapCurrent(name: str, mcard: McPsp, lib: DutLib, op_definition: dict, dut_square: DutView, dut_finger: DutView, dut_miller: DutView, component: Literal['bottom', 'STI-edge', 'gate-edge', 'full'], junction: Literal['source-bulk', 'drain-bulk'], to_optimize_set: Literal['ideal', 'srh', 'btb', 'avalanche'] = 'ideal', model=None, to_optimize=None, relevant_duts=None, **kwargs)[source]
Bases:
XStep
- Parameters:
- name
str
Name of this XStep in the parameter extraction flow.
- mcard
MCard
orMcParameterCollection
This MCard needs to hold all relevant parameters of the model and is used for simulations or model equation calculations.
- lib
DutLib
This library of devices need to hold a relevant internal dut with data in one or more DataFrames as fitting reference.
- op_definition{
key
float
,tuple
orlist
} 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.
- model
VerilogAE
model
Model object with all model equations used for this extraction step.
- name
- ensure_input_correct_per_dataframe(dataframe, dut=None, key=None)[source]
Search for all required columns in the data frames.
- 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_model
MCard
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.
- 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_model
McParameterCollection
,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.
- paras_model