Manuals >Nonlinear Device Models Volume 1 >MOS Model 9 Characterization
Print version of this Book (PDF file)
prevnext

Optimizing

The steps below represent the basic maxiset optimization sequence.

  1   Linear Ids - Vgs data

Vsb=0V: Optimize VTOR, SLVTO, SL2VTO, SWVTO, BETSQ, THE1R, SLTHE1R, and SWTHE1.

Varying Vsb: Optimize KOR, SLKO, SWKO, (KR, SLK, SWK, VSBXR, SLVSBX, SWVSBX), THE2R, SLTHE2R, and SWTHE2.

  2   Subthreshold Ids - Vgs data

Vsb = 0V: Optimize GAMOOR, SLGAMOO, MOR, SLMO, ZET1R, and SLZET1.

  3   Saturation gds - Vds data

Vsb = 0V: Optimize GAM1R, SLGAM1, SWGAM1, ALPR, SLALP, SWALP, and VPR.

  4   Saturation Ids - Vds data

Vsb = 0V: Optimize THE3R, SLTHE3R, and SWTHE3.

  5   Substrate current (Isub - Vgs) data

Vsb = 0V: Optimize A1R, SLA1, SWA1, A2R, SLA2, SWA2, A3R, SLA3, and SWA3.

  6   Subthreshold Ids - Vgs data

Varying Vsb: Optimize VSBTR and SLVSBT.

Optimization Transforms and Macros

The transforms described in this section are available with the DUT extract.

full_extract

The full_extract transform controls the optimization sequence for miniset extraction. It can be found under the setup single_ext.

  1   Initialize parameters (par_init)

  2   Linear region fitting at Vbs = 0 (lin_opt1)

  3   Linear region fitting at all Vbs (lin_opt2 for 2 k-factor model) or (lin_opt3 for 1 k-factor model)

  4   Subthreshold fitting at Vbs = 0 (subvt_opt1)

  5   Gds fitting at Vbs = 0 (normal_gds_opt1 for most devices) or (large_gds_opt1 for the large device)

  6   Ids fitting for Vbs = 0 (ids_opt1)

  7   Avalanche fitting for Vbs = 0 (isub_opt1)

  8   Repeat steps 2 through 7

  9   Subthreshold fitting for all Vbs (subvt_opt2)

sca_opt

The sca_opt transform controls the optimization sequence for maxiset extraction. It can be found under the setup scaled_ext.

  1   Linear region fitting at Vbs = 0 (sca_lin_opt1)

  2   Linear region fitting for all Vbs (sca_lin_opt2 for the 2 k-factor option) or (sca_lin_opt3 for the 1 k-factor option)

  3   Subthreshold fitting at Vbs = 0 (sca_subvt_opt1)

  4   Gds fitting at Vbs = 0 (sca_gds_opt1)

  5   Ids fitting at Vbs = 0 (sca_ids_opt1)

  6   Avalanche current fitting at Vbs = 0 (sca_isub_opt1)

  7   Subthreshold fitting for all Vbs (sca_subvt_opt2)

single_temp_opt

The single_temp_opt transform controls the optimization sequence for the temperature-dependent parameters at a single non-nominal temperature. It can be found under the setup single_temp_extract.

  1   Initialize variables (temp_par_init)

  2   Linear fitting at Vbs = 0 (single_temp_lin_opt1)

  3   Linear fitting at all Vbs (single_tep_lin_opt2)

  4   Subthreshold fitting at Vbs = 0 (single_temp_subvt_opt1)

  5   Ids fitting at Vbs = 0 (single_temp_ids_opt1)

  6   Avalanche current fitting at Vbs = 0 (single_temp_isub_opt1)

optimize_temperature_coefficients

The optimize_temperature_coefficients macro controls the optimization sequence for the temperature coefficients by calling the transforms listed below (found under the all_temp_extract setup) in the order shown.

  1   all_temp_lin_opt1

  2   all_temp_lin_opt2

  3   all_temp_subvt_opt1

  4   all_temp_ids_opt1

  5   all_temp_isub_opt1


prevnext