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

The JUNCAP Model

The JUNCAP model represents the C-V and I-V behavior of the parasitic source and drain regions of MOSFET devices [5].

The JUNCAP model file contains four DUTs: area, locos, gate and analysis. The area, locos, and gate DUTs hold the data for the area, locos and gate test structures, respectively. The analysis DUT, and its associated setups, contains the transforms that control the parameter extraction strategies.

The area, locos, and gate DUTs

The area, locos, and gate DUTs all have the same structure, as shown in the following table.

Table 73 Parameters for area, locos and gate Test Structures
area
locos
gate
AB is set to AB1
LS is set to LS1 and
LG is set to 0
AB is set to AB2
LS is set to LS2 and
LG is set to 0
AB is set to AB3,
LS is set to LS3 and
LG is set to LG3

Each of these DUTs contain three setups: cv, fwd_iv and rev_iv.

cv  This setup contains measured and simulated C-V data. It consists of the following:

va  This input defines the voltage sweep for C-V measurement. It uses the variables CVSTART, CVSTOP and CVSTEP as defined in the setup_details macro.

cap  This output holds the measured capacitance.

cap_sim  This transform calls JUNCAP to evaluate the simulated capacitance.

make_cv_data   This transform is used for making synthetic data for demonstration purposes. It performs a model evaluation using the existing parameter set by calling cap_sim and then copies the resulting simulated data into the m part of the cap output. This macro assumes that the MOS Model 9 function MM9_COPY is available.

connect_cv  Modify this transform to enable automatic connection to the area DUT for C-V measurements.

cv_plot  This is a plot definition showing measured and simulated C-V data.

fwd_iv  This setup contains the measured and simulated forward I-V data. It consists of the following:

va, vk  These inputs define the anode and cathode voltages for forward I-V measurements. The variables FIVSTART, FIVSTOP and FIVSTEP control the voltage sweeps.

id   The output current

id_sim  A call to JUNCAP to evaluate the simulated current

make_iv_data  A transform to make synthetic forward I-V data. The function MM9_COPY is used in this transform.

connect_fiv  Modify this transform to enable automatic connection to the DUT for forward I-V measurements.

fwd_ivplot  The plot definition for the forward I-V data

rev_iv  This setup contains the measured and simulated reverse I-V data. It consists of the following:

va, vk  These inputs define the anode and cathode voltages for reverse I-V measurements. The variables RIVSTART, RIVSTOP and RIVSTEP control the voltage sweeps.

id  The output current

id_sim  A call to JUNCAP to evaluate the simulated current

set_temp  This transform sets the setup level variable TEMP to the model level variable TREVERSE. The reverse data may be measured at a different temperature, TREVERSE, than the forward I-V or C-V data. However, the JUNCAP function looks for a variable TEMP to determine the device temperature. Therefore TEMP is defined as a setup level variable in the area/rev_iv, locos/rev_iv, gate/rev_iv and analysis/rev_iv setups. Thus, during simulations in these setups, the setup variable TEMP will supersede the model level variable TEMP.

make_iv_data  A transform to make synthetic reverse I-V data. The function MM9_COPY is used is this transform.

connect_riv  You can modify this transform to enable automatic connection to the DUT for reverse I-V measurements.

rev_ivplot  The plot definition for the reverse I-V data.

The analysis DUT

In the analysis DUT, the dimensions AB, LS and LG are set to unity. The setups are cv, fwd_iv and rev_iv.

cv  This setup controls the extraction of the C-V parameters and contains the following:

va  This input definition for the anode voltage is the same as that in the area/cv, locos/cv and gate/cv setups.

cjbvn  A transform that extracts (and holds) the normalized area sub-region contribution to capacitance from the measurements in the area/cv, locos/cv and gate/cv setups.

set_cjbr   A transform that makes an initial approximation to the parameter CJBR by setting it to the value of cjbvn at the point where the anode voltage is closest to zero.

cjbvn_sim  A transform that calls JUNCAP to evaluate the area sub-region component of capacitance.

fit_cjbvn  An optimization definition that causes the parameters CJBR, PB and VDBR to be optimized with respect to the normalized area sub-region capacitance. The parameter limits are controlled by the following model variables, which you can change in the model variables table:

CJBR_MIN
CJBR_MAX
PB_MIN
PB_MAX
VDBR_MIN
VDBR_MAX

The data limits are controlled by the following variables, which are also in the model variables table:

CV_VMIN
CV_VMAX

cjsvn  A transform that extracts (and holds) the normalized locos sub-region contribution to capacitance from the measurements in the area/cv, locos/cv and gate/cv setups.

set_cjsr  A transform that makes an initial approximation to the parameter CJSR by setting it to the value of cjsvn at the point where the anode voltage is closest to zero.

cjsvn_sim  A transform that calls JUNCAP to evaluate the locos sub-region component of capacitance

fit_cjsvn  An optimization definition that causes the parameters CJSR, PS and VDSR to be optimized with respect to the normalized locos sub-region capacitance. The parameter limits are controlled by the following model variables, which you can change in the model variables table.

CJSR_MIN
CJSR_MAX
PS_MIN
PS_MAX
VDSR_MIN
VDSR_MAX

The data limits are controlled by the variables, which are also in the model variables table.

CV_VMIN
CV_VMAX

cjgvn  A transform that extracts (and holds) the normalized gate sub-region contribution to capacitance from the measurements in the area/cv, locos/cv and gate/cv setups.

set_cjgr   A transform that makes an initial approximation to the parameter CJGR by setting it to the value of cjgvn at the point where the anode voltage is closest to zero.

cjgvn_sim  A transform that calls JUNCAP to evaluate the gate sub-region component of capacitance

fit_cjgvn  An optimization definition that causes the parameters CJGR, PG and VDGR to be optimized with respect to the normalized gate sub-region capacitance. The parameter limits are controlled by the following model variables, which you can change in the model variables table.

CJGR_MIN
CJGR_MAX
PG_MIN
PG_MAX
VDGR_MIN
VDGR_MAX

The data limits are controlled by the following variables, which are also in the model variables table:

CV_VMIN
CV_VMAX

init_cv_pars  A transform to initialize some of the C-V parameters before optimization begins. The parameters initialized are:

VDBR = VDSR = VDGR = 0.75

PB = PS = PG = 0.4

opt_all_cv  An optimization definition that causes all the C-V parameters to be optimized with respect to the measured data in the area/cv, locos/cv and gate/cv setups. The parameters optimized are:

CJBR
CJSR
CJGR
VDBR
VDSR
VDGR
PB
PS
PG

The parameter limits are controlled by the following model variables:

CJBR_MIN
CJBR_MAX
CJSR_MIN
CJSR_MAX
CJGR_MIN
CJGR_MAX
VDBR_MIN
VDBR_MAX
VDSR_MIN
VDSR_MAX
VDGR_MIN
VDGR_MAX
PB_MIN
PB_MAX
PS_MIN
PS_MAX
PG_MIN
PG_MAX




The data limits are controlled by the following variables:

CV_VMIN
CV_VMAX

set_unit_dimensions  A transform that sets the dimensions AB, LS and LG in the analysis DUT to unity.

update_cv_curves  A transform that resimulates all the C-V curves in the area/cv, locos/cv, gate/cv and analysis/cv setups.

cjb  A plot definition for the normalized area sub-region contribution to capacitance.

cjs  A plot definition for the normalized locos sub-region contribution to capacitance.

cjs  A plot definition for the normalized gate sub-region contribution to capacitance.

fwd_iv  This setup controls the extraction of the I-V parameters with respect to the forward I-V data. In the forward region at moderate and high applied voltages the diffusion current components dominate. However for low-applied voltages the generation components are also important. Therefore all the optimizations to the forward I-V curves target both the diffusion and generation parameters.

va, vk  These input definitions for the anode and cathode voltages are the same as those in the area/fwd_iv, locos/fwd_iv and gate/fwd_iv setups.

ibn  A transform that extracts (and holds) the normalized area sub-region contribution to forward current from the measurements in the area/fwd_iv, locos/fwd_iv and gate/fwd_iv setups.

ibn_sim  A transform that calls JUNCAP to evaluate the area sub-region component of current.

fit_ibn  An optimization definition that causes the parameters JSDBR, NB and JSGBR to be optimized with respect to the normalized area sub-region forward current. The parameter limits are controlled by the model variables, which you can change in the model variables table.

JSDBR_MIN
JSDBR_MAX
NB_MIN
NB_MAX
JSGBR_MIN
JSGBR_MAX

The data limits are controlled by the following variables, which are also in the model variables table.

FIV_VMIN
FIV_VMAX

isn  A transform that extracts (and holds) the normalized locos sub-region contribution to forward current from the measurements in the area/fwd_iv, locos/fwd_iv and gate/fwd_iv setups.

isn_sim   A transform that calls JUNCAP to evaluate the locos sub-region component of current.

fit_isn   An optimization definition that causes the parameters JSDSR, NS and JSGSR to be optimized with respect to the normalized locos sub-region forward current. The parameter limits are controlled by the following model variables, which you can change in the model variables table.

JSDSR_MIN
JSDSR_MAX
NS_MIN
NS_MAX
JSGSR_MIN
JSGSR_MAX

The data limits are controlled by the following variables, which are also in the model variables table:

FIV_VMIN
FIV_VMAX

ign  A transform that extracts (and holds) the normalized gate sub-region contribution to forward current from the measurements in the area/fwd_iv, locos/fwd_iv and gate/fwd_iv setups.

ign_sim   A transform that calls JUNCAP to evaluate the gate sub-region component of current.

fit_ign   An optimization definition that causes the parameters JSDGR, NG and JSGGR to be optimized with respect to the normalized gate sub-region forward current. The parameter limits are controlled by the following model variables, which you can change in the model variables table:

JSDGR_MIN
JSDGR_MAX
NG_MIN
NG_MAX
JSGGR_MIN
JSGGR_MAX

The data limits are controlled by the following variables, which are also in the model variables table.

FIV_VMIN
FIV_VMAX

init_iv_pars  A transform to initialize some of the I-V parameters before optimization begins. The parameters initialized are:

JSDBR = 10n
JSDSR = JSDGR = 10f
NB = NS = NG = 1
JSGBR = 1u
JSGSR = JSGGR = 100p
 

opt_all_fwd_iv  An optimization definition that causes all the I-V parameters to be optimized with respect to the measured data in the area/fwd_iv, locos/fwd_iv and gate/fwd_iv setups. The parameters optimized are:

JSDBR
JSDSR
JSDGR
NB
NS
NG
JSGBR
JSGSR
JSGGR
 

The parameter limits are controlled by the following model variables:

JSDBR_MIN
JSDBR_MAX
JSDSR_MIN
JSDSR_MAX
JSDGR_MIN
JSDGR_MAX
NB_MIN
NB_MAX
NS_MIN
NS_MAX
NG_MIN
NG_MAX
JSGBR_MIN
JSGBR_MAX
JSGSR_MIN
JSGSR_MAX,
JSGGR_MIN
JSGGR_MAX
 
 

The data limits are controlled by the variables:

FIV_VMIN
FIV_VMAX

update_iv_curves  A transform that resimulates all the I-V curves in the following setups:

area
fwd_iv, rev_iv
locos
fwd_iv, rev_iv
gate
fwd_iv, rev_iv
analysis
fwd_iv, rev_iv

ib  A plot definition for the normalized area sub-region contribution to current

is  A plot definition for the normalized locos sub-region contribution to current

ig  A plot definition for the normalized gate sub-region contribution to current

rev_iv  This setup controls the extraction of the I-V parameters with respect to the reverse I-V data. Current in the reverse region is dominated by the generation effects and so only the generation parameters are considered during these extractions.

va, vk  These input definitions for the anode and cathode voltages are the same as those in the area/rev_iv, locos/rev_iv and gate/rev_iv setups.

ibn  A transform that extracts (and holds) the normalized area sub-region contribution to reverse current from the measurements in the area/rev_iv, locos/rev_iv and gate/rev_iv setups.

ibn_sim  A transform that calls JUNCAP to evaluate the area sub-region component of current.

fit_ibn  An optimization definition that causes the parameter JSGBR to be optimized with respect to the normalized area sub-region reverse current. The parameter limits are controlled by the following model variables, which you can change in the model variables table.

JSGBR_MIN
JSGBR_MAX

The data limits are controlled by the following variables, which are also in the model variables table.

RIV_VMIN
RIV_VMAX

isn  A transform that extracts (and holds) the normalized locos sub-region contribution to reverse current from the measurements in the area/rev_iv, locos/rev_iv and gate/rev_iv setups.

isn_sim   A transform that calls JUNCAP to evaluate the locos sub-region component of current.

fit_isn   An optimization definition that causes the parameter JSGSR to be optimized with respect to the normalized locos sub-region reverse current. The parameter limits are controlled by the following model variables, which you can change in the model variables table.

JSGSR_MIN
JSGSR_MAX

The data limits are controlled by the following variables, which are also in the model variables table.

RIV_VMIN
RIV_VMAX

ign  A transform that extracts (and holds) the normalized gate sub-region contribution to reverse current from the measurements in the area/rev_iv, locos/rev_iv and gate/rev_iv setups.

ign_sim  A transform that calls JUNCAP to evaluate the gate sub-region component of current.

fit_ign  An optimization definition that causes the parameter JSGGR to be optimized with respect to the normalized gate sub-region reverse current. The parameter limits are controlled by the following model variables, which you can change in the model variables table.

JSGGR_MIN
JSGGR_MAX

The data limits are controlled by the following variables, which are also in the model variables table.

RIV_VMIN
RIV_VMAX

set_temp  This transform sets the setup level variable TEMP to the model level variable TREVERSE.

opt_all_rev_iv  An optimization definition that causes all the generation parameters to be optimized with respect to the measured data in the area/rev_iv, locos/rev_iv and gate/rev_iv setups. The parameters optimized are:

JSGBR
JSGSR
JSGGR

The parameter limits are controlled by the following model variables:

JSGBR_MIN
JSGBR_MAX
JSGSR_MIN
JSGSR_MAX
JSGGR_MIN
JSGGR_MAX

The data limits are controlled by the following variables:

FIV_VMIN
FIV_VMAX

ib  A plot definition for the normalized area sub-region contribution to current.

is  A plot definition for the normalized locos sub-region contribution to current.

ig  A plot definition for the normalized gate sub-region contribution to current.

Macros

This section describes the macros provided with the JUNCAP model.

setup_details  This macro prompts you for various setup details. These details are stored in the model variables table. The current values of the variables are used as prompts so you can easily change one setting by executing the macro a second time and choosing OK to all questions except the change required. The information requested by this macro is as follows:

TR
Model parameter representing reference temperature
VR
Model parameter representing the reference voltage for parameter scaling (usually 0)
TEMP
Ambient temperature at which the forward I-V and the C-V curves will be measured
TREVERSE
The temperature at which the reverse I-V curves will be measured. If possible, this should be higher than TEMP to accentuate the current component from generation effects
AB1
The area of the area DUT
LS1
The locos perimeter length of the area DUT
AB2
The area of the locos DUT
LS2
The locos perimeter length of the locos DUT
AB3
The area of the gate DUT
LS3
The locos perimeter length of the gate DUT
LG3
The gate perimeter length of the gate DUT
CONNECT_CV
This variable is set depending on whether the user wishes to use manual or automatic connections for C-V measurement.
CONNECT_FIV
This variable is set depending on whether the user wishes to use manual or automatic connections for forward I-V measurement.
CONNECT_RIV
This variable is set depending on whether the user wishes to use manual or automatic connections for reverse I-V measurement.
CVSTART
The start voltage for C-V sweeps
CVSTOP
The stop voltage for C-V sweeps
CVSTEP
The voltage step for C-V sweeps
FIVSTART
The start voltage for forward I-V sweeps
FIVSTOP
The stop voltage for forward I-V sweeps
FIVSTEP
The voltage step for forward I-V sweeps
RIVSTART
The start voltage for reverse I-V sweeps
RIVSTOP
The stop voltage for reverse I-V sweeps
RIVSTEP
The voltage step for reverse I-V sweeps
DATASOURCE
If set to M, measurements will be taken. Otherwise data will be generated from simulations
DISPLAYPLOTS
If set to Y, plots are displayed during measurement and optimizations. Otherwise they are not (unless they have previously been displayed and not closed).

The setup_details macro also calls the transform set_unit_dimensions, which sets the dimensions in the analysis DUT to unity.

measure_cv  This macro causes a measurement to be taken in the cv setups of the area, locos and gate DUTs. At the end of these measurements, you are prompted to specify the following information:

CV_VMI
The lower voltage limit for optimizations with respect to the C-V data
CV_VMAX
The upper voltage limit for optimizations with respect to the C-V data

measure_forward_iv  This macro causes a measurement to be taken in the fwd_iv setups of the area, locos and gate DUTs. At the end of these measurements. you are prompted to specify the following information:

FIV_VMIN
The lower voltage limit for optimizations with respect to the forward I-V data
FIV_VMAX
The upper voltage limit for optimizations with respect to the forward I-V data

measure_reverse_iv  This macro causes a measurement to be taken in the rev_iv setups of the area, locos and gate DUTs. At the end of these measurements, you are prompted to specify the following information:

RIV_VMIN
The lower voltage limit for optimizations with respect to the reverse I-V data
RIV_VMAX
The upper voltage limit for optimizations with respect to the reverse I-V data

extract_cv_pars  This macro controls the extraction of the C-V parameters by splitting the C-V data into the area, locos and gate contributions and optimizing the parameters to these. At the end of the extractions, the simulated C-V arrays in the area, locos, gate and analysis DUTS are updated with the new parameters.

extract_fwd_iv_pars  This macro controls the extraction of the forward I-V parameters by splitting the forward I-V data into the area, locos and gate contributions and optimizing the parameters to these. At the end of the extractions, the simulated I-V arrays (forward and reverse) in the area, locos, gate and analysis DUTS are updated with the new parameters.

extract_rev_iv_pars  This macro controls the extraction of the reverse I-V parameters by splitting the reverse I-V data into the area, locos and gate contributions and optimizing the parameters to these. At the end of the extractions, the simulated I-V arrays (forward and reverse) in the area, locos, gate and analysis DUTS are updated with the new parameters.

opt_all_cv  This macro controls the optimization of the full set of C-V parameters with respect to the measured data in the area, locos and gate DUTs. At the end of the extractions, the simulated C-V arrays in the area, locos, gate and analysis DUTS are updated with the new parameters.

opt_all_fwd_iv  This macro controls the optimization of the full set of I-V parameters with respect to the measured forward I-V data in the area, locos and gate DUTs. At the end of the extractions, the simulated I-V arrays (forward and reverse) in the area, locos, gate and analysis DUTS are updated with the new parameters.

opt_all_rev_iv  This macro controls the optimization of the generation current parameters with respect to the measured reverse I-V data in the area, locos and gate DUTs. At the end of the extractions, the simulated I-V arrays (forward and reverse) in the area, locos, gate and analysis DUTS are updated with the new parameters.

simulate_all_curves  This macro allows all the curves to be resimulated.

set_new_TR  This macro allows the model parameters to be recalculated for a new reference temperature.

read_data_from_directory  Reads data previously stored in a subdirectory under the current working directory.

write_data_to_directory  Writes the data to a subdirectory under the current working directory.

General Extraction Methodology

The JUNCAP model extraction methodology assumes that the parasitic source and drain regions consist of three sub-regions:

    • The area of the source/drain
     On an IC layout, this is the area of the source/drain active region. This area is labeled AB and has dimensions of m2.
    • The LOCOS edge
     On an IC layout, this is the perimeter of the source/drain region that is shared with the LOCOS edge. This perimeter is labeled LS and has dimensions of m.
    • The gate edge
     On an IC layout, this is the perimeter of the source/drain region that is shared with the gate polysilicon edge. This perimeter is labeled LG and has dimensions of m.

Parameters are specified for each of these three sub-regions separately. To enable these parameters to be uniquely determined, at least three different source/drain regions must be measured with various dimensions for the three sub-regions. The present implementation assumes that three different test structures labeled area, locos and gate will be measured, as shown in the following table.

Table 74 Test Structures for JUNCAP Model
DUT
AB
LS
LG
area
AB1 large
LS1 small
LG1 zero
locos
AB2 small
LS2 large
LG2 zero
gate
AB3 intermediate
LS2 intermediate
LG3 non-zero

The parameters AB1, AB2 and AB3 are the areas associated with the three DUTs; LS1, LS2 and LS3 are the LOCOS perimeters; and LG1, LG2, and LG3 are the gate perimeters. In the area DUT, the contribution of the area sub-region is assumed to be large while the contributions of the locos and gate sub-regions are small or zero. The locos DUT is assumed to have a larger contribution from the locos sub-region and the gate DUT has a non-zero contribution from the gate sub-region.

The capacitance associated with any DUT is considered to be the sum of the contributions of the three sub-regions. For example, for the DUT gate, the capacitance at any voltage V is given by:

C(V) = C_AREA(V).AB3 + C_LOCOS(V).LS3 + C_GATE(V).LG3

where C_AREA(V),C_LOCOS(V) and C_GATE(V) are the normalized contributions of the area, locos and gate sub-regions at voltage V.

With respect to current, JUNCAP includes two mechanisms: diffusion and generation. These are described separately for each sub-region so that for the DUT gate, the current flow at any voltage V is given by:

I(V) = ( ID_AREA(V) + IG_AREA(V) ).AB3

+ ( ID_LOCOS(V) + IG_LOCOS(V) ).AL3

+ ( ID_GATE(V) + IG_GATE(V) ).AG3

where ID_AREA(V) and IR_AREA(V) are the normalized contributions of the diffusion current and generation current, respectively, for the area sub-region at voltage V with similar notation being used for the locos and gate sub-regions.

Once the three DUTs have been measured, a set of simultaneous equations can be solved that allows the contributions of the area, locos and gate sub-regions to be separated and normalized. Parameter extraction then proceeds by optimizing the relevant parameters to each of the sub-region contributions in turn. Finally, the model parameters may be fine-tuned by optimization with respect to the directly-measured data in the area, locos and gate DUTs.

For the case of a well diode, you should specify that there is no gate test structure by setting the variable AB3 to zero. With AB3=0, the gate device will be ignored during measurements and optimizations.


prevnext