Manuals >Nonlinear Device Models Volume 2 >The Agilent EEBJT2 Model
Print version of this Book (PDF file)
prevnext

Using the EEBJT2 Model

The base-emitter current in the EEBJT2 model has been changed from the Gummel-Poon and other earlier models. These models assume that the non-leakage base-emitter current is related to the collector-emitter current by a simple constant known as beta. In EEBJT2, the non-leakage base and collector currents are modeled with separate equations. This approach simplifies the extraction process and, in some cases, may provide a superior fit to the measured data. For more detail refer to the IC-CAP Reference manual.

The EEBJT2 model provides the following features:

    • High-level accuracy for a wide range of processes and operating conditions.
    • Extraction of package parasitics, significant at higher frequencies.
    • A complete set of model parameters that can be acquired directly from measurements (without knowledge of process information).
    • A high level of automation.

The DUTs and Setups

The DUT/Setup panel is part of the Model window, which is the central access point for all the measurement and parameter extraction procedures you perform. The Model window includes tabs to access the macros, the Model Parameters table, and other IC-CAP features. To open this model, click the Examples button on the toolbar and locate /model_files/bjt/HPEEbjt2.mdl.

Figure 156 Agilent EEBJT2 DUT/Setup Panel

In the DUT/Setup panel, the DUTs (for example DC_preview)—indicated by the inverted triangles—are groupings of similar measurement setups used to extract related model parameters. The setups (for example fgummel_pre) contain the information used to define the inputs and outputs for each measurement, as well as their measurement hardware configurations and their associated transforms and plots.

The measurement and parameter extractions are most easily performed with macros. If you use macros, you will not need to use the individual setups. However, if you want to extract individual parameters or "fine-tune" a parameter, you will use the individual setups.

README is not actually a macro, but an abbreviated version of the instructions in this chapter. It is most appropriate for users who are somewhat familiar with the model and with IC-CAP. You can view the README file in a separate window by clicking Detach. Then resize the window and move it away from the central work area. Scroll the window ahead as you work through the model.

The EEBJT2 model parameters, with their descriptions and default values are shown the following table.

Table 43 EEBJT2 Model Parameters 
Parameter
Description
Default (Units)
NF
Forward-current emission coefficient.
1.2 (unitless)
VAF
Forward early voltage.
30.0 (V)
IKF
Corner for forward beta high-current roll-off.
100 (A)
ISE
B-E leakage saturation current.
1.0e–20 (A)
NE
B-E leakage emission coefficient.
1.2 (unitless)
NR
Reverse-current emission coefficient.
1.2 (unitless)
VAR
Reverse early voltage.
3.0 (V)
IKR
Corner for reverse beta high-current roll-off.
100 (A)
ISC
B-C leakage saturation current.
1.0e–20 (A)
NC
B-C leakage emission coefficient.
1.2 (unitless)
RB
Base resistance.
1.0 (ohms)
RE
Emitter resistance.
1.0 (ohms)
RC
Collector resistance.
1.0e–6 (ohms)
CJE
B-E zero-bias depletion capacitance (CJE, VJE, and MJE determine nonlinear depletion-layer capacitance for B-E junction).
1.0e–12 (F)
VJE
B-E junction built-in potential (CJE, VJE, and MJE determine nonlinear depletion-layer capacitance for B-E junction).
0.75 (V)
MJE
B-E junction exponential factor (CJE, VJE, and MJE determine nonlinear depletion-layer capacitance for B-E junction).
0.33 (unitless)
TF
Ideal forward transit time (TR and TF, along with the depletion-layer capacitances, model base charge storage effects; TF may be bias-dependent).
0.0 (seconds)
XTF
Coefficient of bias-dependence for TF.
0.0 (unitless)
VTF
Voltage dependence of TF on B-C voltage.
0.02 (V)
ITF
Parameter for high-current effect on TF.
0.0 (A)
CJC
B-C zero-bias depletion capacitance (CJC, VJC, and MJC determine nonlinear depletion-layer capacitance for B-C junction).
1.0e–12 (F)
VJC
B-C junction built-in potential (CJC, VJC, and MJC determine nonlinear depletion-layer capacitance for B-C junction).
0.75 (V)
MJC
B-C junction exponential factor (CJC, VJC, and MJC determine nonlinear depletion-layer capacitance for B-C junction).
0.33 (unitless)
TR
Ideal reverse transit time (TR and TF, along with the depletion-layer capacitances, model base charge storage effects).
0.0 (seconds)
FC
Forward-bias depletion capacitance coefficient.
0.5 (unitless)
TYPE
Model type--NPN (1) or PNP (2).
npn (unitless)
ISF
Forward saturation current.
1.0e–20 (A)
IBIF
Forward base saturation current.
1.0e–20 (A)
NBF
Forward base emission coefficient.
1.2 (unitless)
ISR
Reverse saturation current.
1.0e–20 (A)
IBIR
Reverse base saturation current.
1.0e–20 (A)
NBR
Reverse base emission coefficient.
1.2 (unitless)
TAMB
Ambient temperature of measurement and model parameter extraction.
25 (degrees C)
LB
Base inductance.
0.0 (H)
LC
Collector inductance.
0.0 (H)
LE
Emitter inductance.
0.0 (H)
CXBE
External base-emitter fringing capacitance.
0.0 (F)
CXBC
External base-collector fringing capacitance.
0.0 (F)
CXCE
External collector-emitter fringing capacitance.
0.0 (F)

Setting the Model Variables

Before you begin the device measurements, it is necessary to set numerical values for some of the model variables. Most of these variables are set in macros, either automatically or with the aid of explanatory prompts. Other variables must be set manually, before any macros are run. All variable values are stored in the model variable table. They are referenced by mnemonic name from the various macros and/or setups throughout the model. Using mnemonics eliminates the need to set numerical input values for every measurement setup.


Note


Some variables have fixed values and must not be changed (refer to Variables with Fixed Values).


Entering the DC Supply Resolution Limits

The first set of variables defines the resolution limits of the DC current/voltage supply (for example an Agilent 4142B DC source/monitor). These variables are set manually, and must be set before any macros are run. When you set start, stop, and number of points values for a measurement sweep, the software automatic-ally generates the step size. If the step size is beyond the resolution of the DC supply, an error message is displayed. Presetting these resolution limits can prevent error messages from occurring. The resolution limit variables (which are near the end of the variable table) are:

Table 44
IB_RES
Current resolution of SMU connected to input port.
IC_RES
Current resolution of SMU connected to output port.
VB_RES
Voltage resolution of SMU connected to input port.
VC_RES
Voltage resolution of SMU connected to output port.

Appropriate values for these variables can be found in the documentation for the DC supply (for example Agilent 4142B).

Setting Circuit Solver Variables

The transforms that perform a DC analysis include a simple circuit solver that implements the EEBJT2 equations directly into the transforms. You will normally not see this circuit nor need to use it. However, there may be conditions when you would like to exercise control over the convergence criteria of the solver. The next three variables make this possible:

Table 45
NTRIALS
Maximum number of iteration trials used by the Newton-Raphson algorithm.
TOL_VOLT
The algorithm will exit when the sum of the magnitudes of the voltage corrections drops below this value.
TOL_FUNC
The algorithm will exit when the sum of the magnitudes of the function corrections drops below this value. The algorithm solves for the internal voltages of the device, but tries to match the model's predicted responses to the independent port currents or voltages being measured. If voltages are being set on both ports, the algorithm tries to zero out the functions v1_meas – v1_mod and v2_meas – v2_mod.

Variables with Fixed Values

The following variables are preset and should remain fixed. Do not change them:

Table 46
PATH_LOCAL
This is used by some transforms to look in the local path for data.
INFINITY
Preset to the value 1.0e50. It is used in some transforms to represent a very large number.
SIMULATOR
This should always have the value mns. During the model extraction and verification, the simulation is performed without the benefit of an external simulator. However, MNS can be used for additional verification of device behavior.

Setting Variables in Macros

The remaining variables are set in the variable initialization macros—the first three macros in the list after README:

    • Data_sheet_vars
    • Misc_sweep_vars
    • Pre_meas_vars

These macros should be run before any measurements or extractions are performed (except that Pre_meas_vars makes the DC_preview measurements and sets variables based on the results). Perform these initialization macros in the order listed. Select the required macro and Execute. Respond to the prompts.

Data_sheet_vars Macro

This macro is used to set the following variables:

Table 47
VEB_MAX
Maximum emitter-base voltage.
VCB_MAX
Maximum collector-base voltage.
VCE_MAX
Maximum collector-emitter voltage.
IC_MAX
Maximum collector current.
PT_MAX
Maximum total device power dissipation.

Values for these variables are commonly available on data sheets of packaged parts. These variables are critical to the data acquisition in many setups, and they must be set before measurement of any device.

Misc_sweep_vars Macro

This macro sets many of the variable values for different sweeps used throughout the EEBJT2 model. Most of the default values for variables set by this macro are suitable for most devices, so you need only run this macro if you want to change any default values. Otherwise continue directly to the Pre_meas_vars macro. The following variables are included:

Table 48
FGML_START
Forward Gummel sweep start voltage.
FGML_PTS
Number of data points taken in forward Gummel sweep.
RGML_START
Reverse Gummel sweep start voltage.
RGML_PTS
Number of data points taken in reverse Gummel sweep.
IB_PRE_PTS
Number of data points taken in Ic vs. Ib preview measurement.
IB_PTS
Number of base current traces in forward and reverse IV measurement.
VCE_START
Forward IV measurement Vce start value.
VCE_PTS
Number of Vce points in forward IV measurement.
VCE_REV_START
Reverse IV measurement Vce start value.
VCE_REV_PTS
Number of Vce points in reverse IV measurement.
VCE_START_AC
Starting value for Vce in forward S-parameter measurements.
VCE_PTS_AC
Number of Vce points in forward S-parameter measurements.
VBE_CAP_PTS
Number of Vbe bias points for BE junction S-parameter measurements.
VBE_FB_PTS
Number of Vbe bias points for forward-bias BE junction S-parameter measurements.
VBC_CAP_PTS
Number of Vbc bias points for BC junction S-parameter measurements.
VJ_ON
Approximate junction turn-on voltage.

This macro requests the ambient temperature of the lab where the device is being measured. (This is actually the parameter TAMB, rather than a measurement variable. It is listed with its default value in Table 43.)

Pre_meas_vars Macro


Note


Do not run the initialization macros if you have existing measured data, as the data will be overwritten.


This macro should be run after the Data_sheet_vars macro and before performing any of the measurements in the DC_current DUT. You can also run the Misc_sweep_vars macro before this macro if you wish to change any of the default values in it. The Pre_meas_vars macro makes the DC_preview measurements and sets variables based on the results. Therefore you must have your test equipment set up and switched on and your device ready to measure.

This macro provides a straightforward way to interactively set the following variables:

FGML _STOP
Forward Gummel sweep stop voltage.
RGML_STOP
Reverse Gummel sweep stop voltage.
VCE_REV_STOP
Reverse IV measurement Vce stop value.
VCE_STOP
Forward IV measurement Vce stop value.
IC_COMP
Collector current compliance limit.
IB_START
Forward and reverse IV measurement base current start value.
IB_STOP
Forward and reverse IV measurement base current stop value.

While the macro is executing, it displays the following plots:

    • Forward Gummel
    • Reverse Gummel
    • Base current vs. collector current at VCE_STOP

Use the plots to visually determine appropriate values for the upper limit sweep variables FGML_STOP, RGML_STOP, and IB_STOP respectively. The objective is to set the variables as high as possible without violating the collector current compliance. If the compliance limit is violated, select "n" as indicated in the prompt to re-measure, and re-enter a new (lower) sweep limit variable.

You can now recall the same set of device variables any time you wish to measure and model similar devices. As you input more variables into the table in later procedures (particularly the macros) you will probably want to save the variable table again, overwriting this version.

Calibrating the Network Analyzer

All the EEBJT2 S-parameter measurements require only one calibration: a swept broadband calibration across the operating frequency range of the device under test. Good calibration of the network analyzer is critical to a good measurement and extraction.

For step-by-step calibration procedures, refer to:

    • Agilent 8510-based system—Calibrating the Network Analyzer in Appendix B, "Using IC-CAP with an Agilent 85122A Precision Modeling System"
    • Agilent 8753-based system—Calibrating the Network Analyzer in Appendix C, "Using IC-CAP with an Agilent 85123A Device Modeling System"
    • Wiltron 360 network analyzer—Refer to the Wiltron documentation

Make the following additional setting changes:

    • Set the network analyzer START frequency to the lowest possible frequency in the range of the network analyzer and bias networks: low frequencies allow more accurate AC conductances to be extracted.
    • Set the STOP frequency to the upper limit of the frequency range for the device under test. Frequencies up to Ft are useful but not required. Good package and charge extractions require frequencies high enough to see roll-off and package effects clearly.
    • Set the NUMBER of POINTS to 51 or 101 to provide clear and usable S-parameter plots: more points only add more time and memory requirement to the measurement and extraction.

Remember these frequency values: you will also need to enter them in IC-CAP when instructed. If you do not set these values correspondingly, the calibration will be invalid.

All S-parameter measurements for the EEBJT2 model are performed over the same frequency range. However, some of the extractions are performed at a single frequency point, for example in the Extract_extrin macro. These extractions must be performed at a calibrated frequency point. Only the measured frequency points in the sweep are calibrated, that is, points equal to the start frequency plus an integer multiple of the step size.

In the Extract_extrin macro, a transform takes any arbitrary frequencies you may have entered, and moves to the nearest calibrated frequency point.


Note


If you set a MHz value in IC-CAP, write MEG in full. IC-CAP is not case-sensitive and assumes that m or M corresponds to milli. If an error message is displayed during the measurement that indicates a network analyzer frequency value is too low, you may have entered M only.


Remember the number of the network analyzer cal set or register where you store the calibration. You will need to use this number in the instrument options of each S-parameter measurement when you define the instrument states.

Using Macros for Measurements and Extractions

Macros are the easiest and fastest way to perform a complete set of measurement and extraction procedures. Macros automate the modeling procedure so that a series of similar devices can be measured and modeled quite quickly with minimal user intervention. As you perform the extraction macros, the default values in the Model Parameters table are replaced by extracted values.

If individual parameters need to be extracted, or if you want to "fine-tune" a particular parameter, you can use the individual setups in the Model window instead of the macros. They are explained later in the chapter.

The following table describes the EEBJT2 macros and lists the setups whose transforms are used to accomplish the same thing if you want or need to do it manually.

Table 49 EEBJT2 Macros
Run This Macro
To Do This
Or Do It Manually By
Extract_DC
Measure, extract, and optimize DC parameters
Executing the transforms in the following setups (DC_current DUT):
    fgummel
    rgummel
    forward_IV
    reverse_IV
    rev_output
AC_Measure
Measure S-parameters
Executing the transforms in the following setups (AC_extrinsics DUT):
    package
and
(AC_measurements):
    meas_spar_vce_ib
    meas_spar_vbe
    meas_spar_vbe_fb
    meas_spar_vbc
Extract_extrin
Extract the parasitic inductances as well as the base and emitter resistances
Executing the transforms in the following setups (AC_extrinsics DUT):
    package
    extr_re
Extract_junc_cap
Extract the reverse-bias depletion capacitance parameters for both the BE and BC junctions
Executing the transforms in the following setups (AC_charge DUT):
    extr_be_cap
    extr_bc_cap
Extract_transit
Extracts the transit time related parameters for the BE junction
Executing the transforms in the following setups (AC_charge DUT):
    extr_be_delay
    extr_vtf

DC Measurements and Extractions

The Extract_DC macro performs the same DC measurements as the setups in the DC_current DUT in the Model window. It then extracts the DC parameters from the measured data and enters them in the Parameters table. The DC measurements should always be performed first, and the DC parameters must be the first parameters extracted. Later extractions are dependent on a good DC extraction.

To run the DC measurement and extraction macro:

  1   Click the Macros tab.

  2   Select Extract_DC > Execute.

The macro displays the DC plots one at a time. As each plot appears, one or more dialog boxes appear prompting you to input data values. You need to have some knowledge of the device to input appropriate values. When the macro is complete, the results of the extraction are printed in the Status window, and the corresponding values are listed in the Parameters table.

S-Parameter Measurements


Note


The network analyzer must be calibrated before you perform any S-parameter measurements; if you have not yet done so, refer to the section, Calibrating the Network Analyzer.


The AC_Measure macro performs an S-parameter measurement equivalent to the one in the package setup (AC_extrinsics DUT). It is a swept-frequency S-parameter measurement at a single DC bias point. The macro displays prompts for you to enter the frequency start and stop values and number of measurement points, and the Ib and Vce bias points. It then performs the measurement and plots the results.

    • If you are not satisfied with the measurement results, you can exit the macro and recalibrate the network analyzer.
    • If you are satisfied with the measurement results, you can have the instrument states (options) copied to the other S-parameter measurement setups (in the AC_measurements DUT).


Note


You can enter additional bias variables and the rest of the S-parameter measurements are performed automatically. You should do this if you are going to perform the AC extraction macros, because the Extract_junc_cap and Extract_transit macros use the data from these additional S-parameter measurements. These are swept frequency measurements with swept DC bias.


AC Extractions

The AC extractions require running three separate macros:

    • Extract_extrin
    • Extract_junc_cap
    • Extract_transit

These macros do not make measurements, but use the S-parameter data collected during the execution of the AC_measure macro.

Extract_extrin Macro: Parasitic Extractions

This macro extracts the parasitic inductances as well as the base and emitter resistances. It is thus equivalent to the package and extr_re setups in the AC_extrinsics DUT. It prompts you for extraction frequencies for conductances, capacitances, and inductances. If you use arbitrary frequency values, a transform in the macro moves the extraction to the nearest calibrated frequency point. Calibrated frequency points are any points in the calibrated network analyzer frequency range that are equal to the start frequency plus an integer multiple of the step size. The macro extracts the parasitic inductances and the base and emitter resistances, and lists their values in the Parameters table. It extracts re by optimizing the modeled intrinsic gm to fit the measured intrinsic gm.

Extract_junc_cap Macro: Junction Capacitance Extractions

This macro extracts the reverse-bias depletion capacitance parameters for both the BE and BC junctions. It is thus equivalent to the extr_be_cap and extr_bc_cap setups under AC_charge. It first displays plots of cbe_vs_vbe and cbc_vs_vbc, then performs optimizations and lists the new parameter values in the Parameters table. The parameters optimized are cje, vje, mje, cjc, vjc, and mjc. No measurements are taken in this macro: be sure to run the AC_measure macro first.

Extract_transit: Transit Time Related Parameter Extractions

This macro is equivalent to the extr_be_delay and extr_vtf setups in the AC_charge DUT. It displays plots of cbe_vs_ic and ft_vs_ic. It prompts you for a value for the parameter xtf and optimizes tf and itf. It then displays the cbe_vce plot from the extr_vtf setup, and extracts vtf. It enters the new parameter values in the Parameters table. No measurements are taken in this macro: be sure to run the AC_measure macro first.

Executing Individual Measurement Transforms

Though the macros are the fastest and easiest way to perform the measurement and extraction procedures, you may sometimes want to extract parameters individually, or you may want to "fine-tune" a particular parameter.

The rest of this chapter explains in detail how to make preview device measurements and set model variables from the results obtained; how to make the measurements required for specific extractions; how to perform the individual extractions and optimizations; and how to save the resulting model.

Note that, among the individual setups, the fgummel and rgummel setups each include a macro transform to automate the measurement and extraction procedures for those particular setups.

Defining the Instrument States

For each of the measurement setups, it is necessary to define the instrument states (options) for the measurement instruments used in that setup. The instrument states need to be defined individually for each setup. With minor exceptions, the options must be the same for all setups that use the same instruments.

To set the instrument options for any given setup:

  1   Select the setup of interest.

  2   Click the Instrument Options tab and the display changes to show the options for the instruments used in that measurement.
     In the DC setups, the options for the DC source/monitor are displayed.
     In the S-parameter setups, the options for both the DC source/monitor and the network analyzer are displayed.

The instrument state settings will be explained in this chapter with their corresponding setups.

Making DC Measurements

The easiest and fastest way to make all of the DC measurements (and perform the DC extractions) is to use the Extract_DC macro, after first running the variable initialization macros Data_sheet_vars, Misc_sweep_vars, and Pre_meas_vars. These initialization macros set most of the variables needed for the DC measurements. Additional variables are set in the Extract_DC macro or the individual setups.

Measuring with the DC_preview DUT


Note


Although measurement instructions are provided here for each setup in the DC_preview DUT, it is easier to use the Pre_meas_vars macro to automate the DC preview measurements.


The DC_preview DUT setups are used to obtain a good set of measured DC-IV curves on which most of the other measurements will be based. These setups are:

    • fgummel_pre
    • rgummel_pre
    • ic_vs_ib_pre

Each of the three setups is designed to give you a quick preview of the measurement and, based on the results, set the related variables that control the final measurement.

Previewing forward Gummel with fgummel_pre

This setup is used to preview the forward Gummel measurements for both the base and collector currents.

To define the DC Source/Monitor instrument state, follow these instructions:

    • Agilent 8510-based system—Defining the DC Source/Monitor Instrument State in Appendix B, "Using IC-CAP with an Agilent 85122A Precision Modeling System"
    • Agilent 8753-based system—Defining the DC Source/Monitor Instrument State in Appendix C, "Using IC-CAP with an Agilent 85123A Device Modeling System"

These procedures configure IC-CAP with the instrument state settings (instrument options) for the Agilent 4142B DC source/monitor. Then return to this chapter and continue.

The input values define the device configuration, the sweep values that will be used to make the measurement, and the compliance limits for the power supply.

To view the fgummel_pre input values:

Select the fgummel_pre setup in the DC_preview DUT.

    • You will not need to change the input values, although you may need to change some variable values as a result of the measurement. However, the inputs show you what measurement is being made and how the measurement variables are used.
    • Notice that Mode is set to V for all inputs, to provide a voltage at all the device terminals.
    • The Unit names must conform to the names you set in the hardware window (see Getting Started in IC-CAP). They must also correspond with the actual plug-in SMU connections from the Agilent 4142. The vb unit must be set to SMU1 and the vc unit to SMU2. The ve unit must be set to GND.
    • Compliance values limit SMU output voltage or current and prevent damage to the device under test, as well as to the SMUs, bias networks, and probes if used. With a voltage input, compliance refers to current. In this model, the compliance values are preset. Note that the compliance at the collector is set for maximum collector current.
    • Notice the input vb is set for a linear voltage sweep from start to stop values preset with variables. The start value is the approximate junction turn-on voltage. It may be necessary to change the variable value of FGML_STOP after the measurement.
    • Notice the input ve is grounded. All measurements in this model are made with the BJT in a common-emitter configuration.
    • Notice the input vc is set for a sweep synchronized to the vb sweep.
    • The outputs are ib (base current) and ic (collector current).
    • The output Type is M for measured. The other possibilities are S for simulated and B for both.


Note


In measuring chip devices, remove any high-intensity light sources such as microscope light before taking a measurement. This is particularly important if currents in the nanoamp range are being measured. One simple method of blocking light is to place an opaque plastic box on the fixture directly above the device.


The measurement process triggers the device measurement, controlling the DC source/monitor to supply the signals defined in the instrument options window and the inputs, and monitors the results.

To view the sample fwd_Gummel plot:

  1   From the Plots folder, select the fwd_Gummel plot, and click Display Plot.

Figure 157 Example fgummel_pre Data Plot

     The lower curve is base current and the upper curve is collector current.
     The stop value for the base voltage sweep has been preset to a value large enough to drive the device into compliance on the collector port to obtain the maximum amount of data possible within the compliance range. However, it is not required that you drive the device into compliance, so you can use a lower value of FGML_STOP if you prefer.
     The recommended approach is to drive the device into compliance using the preset FGML_STOP value, then find the maximum value of vb below compliance. Set FGML_STOP to this value. To do this, go to the variable table and find the variable FGML_STOP, then manually change its value in the table. Then re-measure and make sure the new value does not violate the compliance limit.

  2   To initiate the measurement process, from the Measure/Simulate folder, click Measure and observe the plot(s) change.

  3   To save the plotted data, select File > Save As and a filename with the suffix .set.

Previewing Reverse Gummel with rgummel_pre

The rgummel_pre setup is used to preview the reverse Gummel measurements for both the base and emitter currents.

To define the DC Source/Monitor instrument state:

Follow the same procedure from the fgummel_pre setup, using the same settings.

To view the rgummel_pre input values:

Select the rgummel_pre setup.

    • Note that in this setup, vb is set to a constant value of 0.0.
    • The input vc is set for a linear voltage sweep from start to stop values preset with variables. Note that the start value is -VJ_ON for this reverse measurement It may be necessary to change the variable value of RGML_STOP after the measurement.
    • The compliance at the collector is set for maximum collector current, as in the fgummel_pre measurement. The stop value for the collector voltage sweep has been preset to a value large enough to drive the device into compliance on the emitter port.

To view the sample rev_Gummel plot:

  1   From the Plots folder, select the rev_Gummel plot, and click Display Plot.

Figure 158 Example rgummel_pre Data Plot

     The lower curve is the base current and the upper curve is the emitter current.
     The stop value of the collector voltage sweep has been preset to a value large enough to drive the device into compliance on the emitter port, to obtain the maximum amount of data within compliance.
     Drive the device into compliance using the preset RGML_STOP value, then find the maximum value of vc below compliance. Set RGML_STOP to this value, and perform the measurement again.

  2   To initiate the measurement process, from the Measure/Simulate folder, click Measure and observe the plot(s) change.

  3   To save the plotted data, select File > Save As and a filename with the suffix .set.

Previewing Collector Current with ic_vs_ib_pre

The ic_vs_ib_pre setup is used to preview the collector current at VCE_STOP (the stop value for Vce used in the forward_IV measurement). The objective of this setup is to find the largest value of IB_STOP such that the collector current compliance is not violated. Note that it is easier to run the Pre_meas_vars macro to automate the DC preview.

To define the DC source/monitor instrument state:

Follow the same procedure from the fgummel_pre setup, using the same settings.

To view the ic_vs_ib_pre input values:

Select the ic_vs_ib_pre setup.

    • In this setup, the input on the base is current, therefore the ib Mode is set to I. With this current input, the compliance is a voltage.
    • The input ib is set to sweep from 0.0 to IB_STOP, the base current stop value used for the forward_IV and reverse_IV measurements. vc is set to a constant value of VCE_STOP.
    • You will need to set the values of VCE_STOP and IC_COMP manually in the variable table. Set VCE_STOP to a value <= VCE_MAX. Set IC_COMP to the lesser of IC_MAX or PT_MAX/VCE_STOP.
    • You can also set the values for IB_STOP and IB_PRE_PTS in the variable table, but the default values are usually adequate for most devices.

To view the sample ic_vs_ib plot:

  1   From the Plots folder, select the ic_vs_ib plot and click Display Plot.

  2   To initiate the measurement process, from the Measure/Simulate folder, click Measure and observe the plot(s) change. If you are not satisfied with the results, change the value of IB_STOP in the variable table and perform the measurement again.

  3   To save the plotted data, select File > Save As and a filename with the suffix .set.

Measuring with the DC_current DUT


Note


Do not run the initialization macros if you have existing data in this model file, or the data will be overwritten. Do not run the Extract_DC macro if you already have acceptable measured DC data.


The DC_current DUT makes five DC measurements using the following setups:

    • fgummel
    • rgummel
    • forward_IV
    • reverse_IV
    • rev_output

To prevent possible bias oscillation, put the network analyzer in hold sweep mode.

Measuring with the fgummel Setup

This setup measures the operating range of base and collector currents with the transistor in forward active mode. It measures Ic and Ib with respect to Vbe.

To define the DC Source/Monitor instrument state:

Follow the same procedure from the fgummel_pre setup, using the same settings except set Integ Time to L (long) to slow the measurement and reduce noise at the lower end of the curve.

To view the fgummel input values:

From the DC_current DUT, select the fgummel setup.

    • The inputs are almost the same as for the fgummel_pre setup, except that now the vb Start value is set to FGML_START, the forward Gummel sweep start voltage, which you can set in the variable table if you wish to make it different from the junction turn-on voltage.

To view the sample fwd_Gummel plot:

  1   From the Plots folder, select the fwd_Gummel plot and click Display Plot.

  2   To initiate the measurement process, from the Measure/Simulate folder, click Measure and observe the plot(s) change.

  3   To save the plotted data, select File > Save As and a filename with the suffix .set.

Measuring with the rgummel Setup

The rgummel setup measures the base and emitter currents with the transistor in the reverse active mode. It measures Ib and Ie with respect to –Vce.

To define the DC Source/Monitor instrument state:

Follow the same procedure from the fgummel_pre setup, using the same settings except set Integ Time to L (long).

To view the rgummel input values:

Select the rgummel setup.

    • The inputs are almost the same as for the rgummel_pre setup, except that now the vc Start value is set to RGML_START, the reverse Gummel sweep start voltage, which you can set in the variable table if you wish to make it different from the inverse value of the junction turn-on voltage.

To view the sample rev_Gummel plot:

  1   From the Plots folder, select the rev_Gummel plot and click Display Plot.

  2   To initiate the measurement process, from the Measure/Simulate folder, click Measure and observe the plot(s) change.

  3   To save the plotted data, select File > Save As and a filename with the suffix .set.

Measuring with forward_IV

The forward_IV setup measures Ic with respect to Vce at several values of Ib.

To define the DC Source/Monitor instrument state:

Follow the same procedure from the fgummel_pre setup, using the same settings.

To view the forward_IV input values:

Select the forward_IV setup.

    • The vc values are set to sweep the collector voltage across the operating range of the device.
    • The ib values are set to measure several values of base current. IB_PTS is set for the number of base current traces.

To view the sample ic_vce plot:

  1   From the Plots folder, select the ic_vce plot and click Display Plot.

  2   To initiate the measurement process, from the Measure/Simulate folder, click Measure and observe the plot(s) change. If you are not satisfied with your results, you can change the values of variables in the variable table. For example, if the Ib curves are too low or too high, you can change the IB_START or IB_STOP values. If you do change any variable values, perform the measurement again.

  3   To save the plotted data, select File > Save As and a filename with the suffix .set.

Measuring with reverse_IV

The reverse_IV setup measures Ie with respect to Vce at several values of Ib. The Vce values are chosen to measure the device in the reverse active mode.

To define the DC Source/Monitor instrument state:

Follow the same procedure from the fgummel_pre setup, using the same settings.

To view the reverse_IV input values:

Select the reverse_IV setup.

    • The ib values are set the same as for the forward_IV measurement. This setup measures the same number of base current traces as the forward_IV.
    • The vc sweep variables are set to negative voltage values.

To view the sample ie_vce plot:

  1   From the Plots folder, select the ie_vce plot and click Display Plot.

  2   To initiate the measurement process, from the Measure/Simulate folder, click Measure and observe the plot(s) change. If you are not satisfied with your results, you can change the variable table values, as in the forward_IV measurement, and perform the measurement again. Do not change the number of measurement points for either ib or vc

  3   To save the plotted data, select File > Save As and a filename with the suffix .pre.

Measuring with rev_output

The rev_output setup measures Ie with respect to Vec, with the device in the reverse active mode. The measured data will be used later in the procedures to extract the reverse early voltage parameter EEBJT2.var. It is important that the Gummel measurements are performed first.

To define the DC Source/Monitor instrument state:

Follow the same procedure from the fgummel_pre setup, using the same settings except set Integ Time to L (long) to reduce noise, because one of the transforms uses a numerical derivative, and the extraction will be inaccurate if the data is noisy.

To view the rev_output input values:

Select the rev_output setup.

    • You will need to set the variable value for VBC_EARLY manually before you make the measurement. VBC_EARLY is the Vbc value at which an Ie vs. Vec trace is measured. Scroll the variable table until you find VBC_EARLY, and enter a value. Select a value in the linear region of the reverse Gummel plot, near the high end of the region but below the series resistance drop effects.
    • The default value for EARLY_PTS is generally acceptable.

To view the sample ie_vec plot:

  1   From the Plots folder, select the ie_vec plot and click Display Plot.

  2   To initiate the measurement process, from the Measure/Simulate folder, click Measure and observe the plot(s) change. If you are not satisfied with your results, you can change the value of VBC_EARLY in the variable table, and perform the measurement again.

  3   To save the plotted data, select File > Save As and a filename with the suffix .set.

Making S-parameter Measurements

The AC_measure macro performs all the S-parameter measurements in the model, including copying the instrument states and frequency range from the first S-parameter measurement setup to all the others. But first you must run the variable initialization macros Data_sheet_vars, Misc_sweep_vars, and Pre_meas_vars.


Note


Do not run the initialization macros if you have existing data in this model file, or the data will be overwritten. Do not run the AC_measure macro if you already have acceptable measured S-parameter data.


These initialization macros set most of the variables needed for the S-parameter measurements; a few additional variables are set in the set_bias transform macros in each S-parameter setup. If you intend to measure the S-parameters in one setup only, you will first need to run the set_bias transform macro in that setup. The macro prompts you for bias values specific to the measurement. You will also need to set the sweep parameters manually (once for all the measurements).


Note


The network analyzer must be calibrated before you perform any S-parameter measurements. Also make sure the network analyzer is in continuous sweep mode. For details see Calibrating the Network Analyzer.


Measuring with the AC_extrinsics DUT

The AC_extrinsics DUT contains two setups:

    • package—Contains measurement and extraction transforms. Measuring is described here; the extraction is described later in the extraction section.
    • extr_re—Contains extraction transforms only and will be described later in the extraction section.
Measuring with package

The package setup measures S-parameters in the typical operating region of the device, with constant values of base and collector bias. The data measured here will be used to extract the extrinsic parasitic base resistance and the extrinsic parasitic inductances.

Defining the Instrument States

You will need to set the instrument states for both the DC source/monitor and the network analyzer. For details, refer to:

    • Instrument States for Swept Measurements (for an Agilent 8510-based system) in Appendix B, "Using IC-CAP with an Agilent 85122A Precision Modeling System"
    • Instrument States for Swept Frequency Measurements (Agilent 8753- or 8720-based system) in Appendix C, "Using IC-CAP with an Agilent 85123A Device Modeling System"


Note


For the DC source/monitor, use the same settings as you did for the DC measurements. Calibrate the network analyzer. In the instrument options for the network analyzer, be sure to set the Cal Set No to the cal set or register where you save your calibration.


You will use these instrument states in all the setups that make S-parameter measurements with the network analyzer.

To view the package input values:

Select the package setup.

    • Unless you used the AC_measure macro, you need to set the frequency sweep variables manually. Scroll the variable table to show the values for FREQ_START, FREQ_STOP, and FREQ_PTS. Manually enter values for these variables that correspond with the sweep values used for the network analyzer calibration.
    • If you wish, you can also set the bias sweep variables IB_TYP and VCE_TYP manually, or you can use the set_bias transform macro.
    • To do so, select Extract/optimize > set_bias > Execute. Enter typical base current and collector voltage values close to the intended point of operation.

To view the sample S-parameter plots:

  1   From the Plots folder, select each plot of interest and click Display Plot.

  2   To initiate the measurement process, from the Measure/Simulate folder, click Measure and observe the plot(s) change.

  3   To save the plotted data, select File > Save As.

Measuring with the AC_measurements DUT

The setups in the AC_measurements DUT are used to obtain S-parameter data for extractions performed in other setups, as shown in the following table.

Table 50 S-parameter Measurement and Extraction setups
DUT/Setup for Measurement
DUT/Setup for Corresponding Extraction
AC_measurements/meas_spar_vce_ib
AC_extrinsics/extr_re
AC_charge/extr_vtf
AC_measurements/meas_spar_vbe
AC_charge/extr_be_cap
AC_measurements/meas_spar_vbe_fb
AC_charge/extr_be_delay
AC_measurements/meas_spar_vbc
AC_charge/extr_bc_cap


Note


The package setup (in the AC_extrinsics DUT) is also used for making AC measurements, but unlike those listed in Table 50, the package setup also contains the related extraction transforms.


The extractions listed in Table 50 will work only if the corresponding AC_measurement setup contains previously measured S-parameters. Each of the extraction setups must have bias input variables identical to the input variables of the corresponding AC_measurement setup. It is important that they remain the same: do not change the inputs.

The transform s_mod in each S-parameter measurement setup computes the modeled S-parameters of the small-signal equivalent circuit for comparison with the measured results.

Measuring with meas_spar_vce_ib

The meas_spar_vce_ib setup measures the device S-parameters in the forward active region with Ib and Vce as the control variables.

To define the instrument states:

Follow the same procedure you used in the package setup. Use the same settings for both the DC source/monitor and the network analyzer. (The instrument states need to be set independently for each setup, unless you ran the AC_measure macro.)

To view the meas_spar_vce_ib input values:

Select the meas_spar_vce_ib setup.

    • The frequency variables FREQ_START, FREQ_STOP, and FREQ_PTS must have values in the variable table that correspond with the frequency values used in calibrating the network analyzer.
    • The base current is set to sweep over the same range as in the forward_IV DC measurement.
    • The vc values are set to sweep the collector voltage across the approximate operating range of the device.
    • You can set the VCE_STOP_AC value using the set_bias transform macro. Select Extract/Optimize > set_bias > Execute, and respond to the prompts.

To view the sample S-parameter plots:

  1   From the Plots folder, select each plot of interest and click Display Plot.

  2   To initiate the measurement process, from the Measure/Simulate folder, click Measure and observe the plot(s) change.

  3   To save the plotted data, select File > Save As.

Measuring with meas_spar_vbe

The meas_spar_vbe setup measures S-parameters with Vbc equal to zero and Vbe varying from reverse bias to forward bias. This will be used for extraction of parameters associated with the BE junction capacitance.

To define the instrument states:

Follow the same procedure you used in the package setup. Use the same settings.

To view the meas_spar_vbe input values:

Select the meas_spar_vbe setup.

    • The frequency inputs are the same as for the meas_spar_vce_ib setup, and are also the same in the other S-parameter setups.
    • The input vc is set for a sweep synchronized to the vb sweep.
    • The vb values are set to vary the device performance from reverse bias to forward bias. VBE_CAP_PTS is a default value.
    • You can set the vb start and stop values for the measurement using the set_bias transform macro. Select Extract/Optimize > set_bias > Execute, and respond to the prompts.

To view the sample S-parameter plots:

  1   From the Plots folder, select each plot of interest and click Display Plot.

  2   To initiate the measurement process, from the Measure/Simulate folder, click Measure and observe the plot(s) change.

  3   To save the plotted data, select File > Save As.

Measuring with meas_spar_vbe_fb

The meas_spar_vbe_fb setup measures S-parameters with Vbc equal to zero and Vbe forward biased. This measured data will also be used for extraction of parameters associated with the BE junction capacitance.

To define the instrument states:

Follow the same procedure you used in the package setup. Use the same settings.

To view the meas_spar_vbe_fb input values:

Select the meas_spar_vbe_fb setup.

    • The frequency inputs are the same as in all the other S-parameter setups.
    • The input vc is set for a sweep synchronized to the vb sweep.
    • The vb values are set to forward bias the device. VBE_FB_PTS is a default value.
    • You can set the vb start and stop values for the measurement using the set_bias transform macro. Select Extract/Optimize > set_bias > Execute, and respond to the prompts.

To view the sample S-parameter plots:

  1   From the Plots folder, select each plot of interest and click Display Plot.

  2   To initiate the measurement process, from the Measure/Simulate folder, click Measure and observe the plot(s) change.

  3   To save the plotted data, select File > Save As.

Measuring with meas_spar_vbc

The meas_spar_vbc setup measures S-parameters, with Vbe equal to zero and Vbc varying from reverse bias to forward bias.

To define the instrument states:

Follow the same procedure you used in the package setup. Use the same settings.

To view the meas_spar_vbc input values:

Select the meas_spar_vbc setup.

    • The frequency inputs are the same as in all the other S-parameter setups.
    • The vb inputs set the base voltage to zero.
    • The vc input values are set to vary the device performance from reverse bias to forward bias. VBC_CAP_PTS is a default value.
    • You can set the vc start and stop values for the measurement using the set_bias transform macro. Select Extract/Optimize > set_bias > Execute, and follow the prompts.

To view the sample S-parameter plots:

  1   From the Plots folder, select each plot of interest and click Display Plot.

  2   To initiate the measurement process, from the Measure/Simulate folder, click Measure and observe the plot(s) change.

  3   To save the plotted data, select File > Save As.

Executing Individual Extraction Transforms


Note


The fastest and easiest way to perform the extractions is to use the macros provided. Or you can perform each extraction step individually to allow complete process control in case you want to extract parameters individually or "fine-tune" a particular parameter. This section explains how to extract parameters using the individual transforms; for details on using the macros, refer to Using Macros for Measurements and Extractions.


When the measurements are finished and you have a complete set of measured data for a particular device, you can begin the extractions. If you saved the measured data, you can perform an extraction later, at any time. This also offers the opportunity for the measurement and extraction to be done by different people.

Extracting with the DC_current DUT

This section describes performing extractions by executing individual transforms associated with the DC_current DUT.

Extracting parameters with the fgummel_macro transform

The easiest way to perform the extraction of all the forward Gummel parameters is to use the fgummel_macro transform. This extracts a number of critical parameters from the data measured earlier. If you are not using the macros under the Macros tab to automate the extractions, it is important that this is the first extraction performed, because effective extractions in later setups are dependent on accurate parameters obtained in the fgummel and rgummel setups.

  1   Select the fgummel setup.

  2   Click Extract/Optimize and select fgummel_macro > Execute.
     The macro displays the measured data on the fwd_Gummel plot.
     Screen prompts ask you to input limit values for the extraction.
     Observe the simulated traces converge to the measured traces on the plot as the macro optimizes the parameters.
     The Parameters table is updated with the new optimized forward Gummel parameters.


Note


A similar method is available in the rgummel setup, where the rgummel_macro transform is the easiest way to perform the extraction of all the reverse Gummel parameters.


Extracting Parameters with Individual fgummel Transforms

This is the method to use if you need to extract individual parameters or "fine-tune" a particular parameter. Use the Parameters table, scrolling as necessary, to see the new extracted values of the parameters. Because this setup extracts a fairly large number of parameters, the procedure is more complex than for many setups. The procedures presented in this section—for each transform—assume the fgummel setup is the active setup.

To compute hfe from the measured data:

From the Extract/Optimize folder, select hfe_fwd_meas > Execute. To look at the hfe trace, select Plots > hfe_vs_ic > Display Plot.

After setting the variables on which the extractions and optimizations depend, you can extract and optimize the base current parameters EEBJT2.ibif, nbf, ise, and ne.

To set the variables:

  1   Select Plots > fwd_Gummel > Display Plot.

  2   To view a linear portion of the fgummel traces, click the Setup Variables tab. The setup variable table appears.

  3   From the plotted data, choose a linear portion of the collector current trace, excluding any noisy data at the low end. Click the mouse pointer at the lower and upper boundary points of the linear portion to make a box on the trace, as shown in Figure 159.

  4   From the Plot window, select Options > Copy to Variables. This changes the X_LOW and X_HIGH values for this plot to the boundary points you selected.

  5   In the setup variable table, set VBE_LOW_TR to a value less than X_HIGH, where the slope of the base current trace is still the same as at X_HIGH.

Figure 159 Selecting a Linear Portion of the Ic Trace

  6   In the setup variable table, set VBE_HIGH_LK to a value greater than X_LOW where the slope of the base current trace is the same as at X_LOW.
     The region between VBE_LOW_TR and X_HIGH is the transport region where the parameters ibif and nbf can be estimated.
     The region between X_LOW and VBE_HIGH_LK encloses the leakage region where the parameters ise and ne can be estimated.

Once these variables are set, the remaining transforms can be executed. Many of the transforms rely on these variables, therefore the extractions will not work properly unless the variables are first set correctly.

To execute the remaining transforms in the fgummel setup:

  1   Scroll the Parameters table to display isf and nf.

  2   Select Extract/Optimize.

  3   Select extr_isf_nf > Execute. Observe the changes in the Parameters table values.


Note


The values extracted for the parameters isf and nf are a function of both the input data and the parameter EEBJT2.var. Therefore, after you extract var in the rev_output setup, you will need to return to this setup and execute the extr_isf_nf transform again. (Note that this is handled automatically in the Extract_DC macro.)


  4   Select icf_Gummel > Execute. The transform computes the simulated forward Gummel collector current.

  5   Scroll the Parameters table to display EEBJT2.ibif and nbf.

  6   Select est_ibif_nbf > Execute. Observe the changes in the Parameters table values.


Note


This transform zeroes the parameter EEBJT2.ise so that the effects of EEBJT2.ibif and nbf are the only ones visible in simulations immediately following the extraction. This makes the quality of the fit easier to determine.


  7   Select ibf_Gummel > Execute. The transform computes the simulated forward Gummel base current, so that the result of the ibif and nbf extraction is observable on the plot.

Now you must make a decision based on the results you have seen thus far:

     If the Gummel fit in the transport region between VBE_LOW_TR and X_HIGH looks good, you can stop the extraction at this point.
     If you want to extract the leakage parameters ise and ne, you can skip the next two transforms (set_opt_vars_fwd, Step 1 and opt_ibif_nbf, Step 2) and go directly to est_ise_ne (Step 3).
     If you are not satisfied with the Gummel fit in the transport region and you do not need to extract the leakage parameters, perform the next two transforms (set_opt_vars_fwd, Step 1 and opt_ibif_nbf, Step 2) and then stop.

  1   Select set_opt_vars_fwd > Execute. This sets optimization limits for the ibif, nbf, ise, and ne parameters. The limits are set to a specific percentage above and below the parameter values. The variable PAR_OPT_TOL controls the percentage variation.

  2   The optimization performed with the opt_ibif_nbf transform should only be used if the base current leakage parameters are to be neglected. Otherwise, use the opt_ise_ne_ibif_nbf transform. If you use the opt_ibif_nbf transform, be sure to execute the transform est_ibif_nbf first.

  3   Scroll the Parameters table to display EEBJT2.ise and ne.

  4   Select est_ise_ne > Execute. Observe the value changes in the Parameters table.

  5   Select ibf_Gummel > Execute again so that you can view the results of the parameter estimates for ise and ne on the plot.

Check the fit of the Gummel plot again and proceed as follows:

     If the fit looks good, the extraction is done.
     If you think it is necessary to optimize the fit, execute the following two transforms (set_opt_vars_fwd, Step 1 and opt_ise_ne_ibif_nbf, Step 2).

  1   Select set_opt_vars_fwd > Execute.

  2   Select opt_ise_ne_ibif_nbf > Execute. This optimizes all the parameters ibif, nbf, ise, and ne. You can see the final values in the Parameters table.

Extracting Parameters with Individual rgummel Transforms

Use this method if you need to extract individual parameters or "fine-tune" a particular rgummel parameter. Use the Parameters table, scrolling as necessary, to see the new extracted values of the parameters. The steps presented in this section—for each transform—assume the rgummel setup is the active setup.

To compute the emitter current (ie):

  1   Select the rgummel setup.

  2   Select Extract/Optimize.

  3   Select ie > Execute. The transform computes the emitter current from the measured base and collector currents.

After setting the variables on which the extractions and optimizations depend, you can extract and optimize the base current parameters EEBJT2.ibir, nbr, isc, and nc.

To set the variables:

  1   Select Plots > rev_Gummel > Display Plot.

  2   To view a linear portion of the rgummel traces, click the Setup Variables tab. The setup variable table appears.

  3   From the plotted data, choose a linear portion of the emitter current trace, excluding any noisy data at the low voltage end. Click the mouse pointer at the lower and upper boundary points of the linear portion of the trace.

  4   From the Plot window, select Options > Copy to Variables to change the X_LOW and X_HIGH values for this plot to the boundary points you selected.

  5   In the setup variable table, set VBC_LOW_TR to a value less than X-HIGH, where the slope of the base current trace is still the same as at X_HIGH.

  6   In the setup variable table, set VBC_HIGH_LK to a value greater than X_LOW where the slope of the base current trace is the same as at X_LOW.
     The region between VBC_LOW_TR and X_HIGH is the transport region where the parameters ibir and nbr can be estimated.
     The region between X_LOW and VBC_HIGH_LK encloses the leakage region where the parameters isc and nc can be estimated.

Once these variables are set, the remaining transforms can be executed. Many of the transforms rely on these variables, therefore the extractions will not work properly unless the variables are first set correctly.

  1   Scroll the Parameters table to display isr and nr.

  2   Select Extract/Optimize.

  3   Select extr_isr_nr > Execute. Observe the changes in the Parameters table values.


Note


The values extracted for the parameters isr and nr are a function of both the input data and the parameter EEBJT2.vaf. Therefore, after you extract vaf in the forward_IV setup, you will need to return to this setup and execute the extr_isr_nr transform again. (Note that this is handled automatically in the Extract_DC macro.)


  4   Select icr_Gummel > Execute. The transform computes the simulated reverse Gummel collector current.

  5   Scroll the Parameters table to display EEBJT2.ibir and nbr.

  6   Select est_ibir_nbr > Execute. Observe the value changes in the Parameters table.


Note


This transform zeroes the parameter EEBJT2.isc so that the effects of EEBJT2.ibir and nbr are the only ones visible in simulations immediately following the extraction. This makes the quality of the fit easier to determine.


  7   Select ibr_Gummel > Execute. The transform computes the simulated reverse Gummel base current, so that the result of the ibir and nbr extraction is observable on the plot.

Now you must make a decision based on the results you have seen thus far:

     If the Gummel fit in the transport region between VBC_LOW_TR and X_HIGH looks good, you can stop the extraction at this point.
     If you want to extract the leakage parameters isc and nc, you can skip the next two transforms (set_opt_vars_rev, Step 1 and opt_ibir_nbr, Step 2) and go directly to est_isc_nc (Step 3).
     If you are not satisfied with the Gummel fit in the transport region and you do not need to extract the leakage parameters, perform the next two transforms (set_opt_vars_rev, Step 1 and opt_ibir_nbr, Step 2) and then stop.

  1   Select set_opt_vars_rev > Execute. This sets optimization limits for the ibir, nbr, isc, and nc parameters. The limits are set to a specific percentage above and below the parameter values. The variable PAR_OPT_TOL controls the percentage variation.

  2   The optimization performed with opt_ibir_nbr should only be used if the base current leakage parameters are to be neglected. Otherwise, use the opt_isc_nc_ibir_nbr transform. If you use this opt_ibir_nbr transform, be sure to execute the transform est_ibir_nbr first.

  3   Scroll the Parameters table to display EEBJT2.isc and nc.

  4   Select est_isc_nc > Execute. Observe the value changes in the Parameters table.

  5   Select ibr_Gummel > Execute again so that you can view the results of the parameter estimates for isc and nc on the plot.

Check the fit of the reverse Gummel plot again.

     If the fit looks good, the extraction is done.
     If you think it is necessary to optimize the fit, perform the following two transforms (set_opt_vars_rev, Step 1 and opt_isc_nc_ibir_nbr, Step 2).

  1   Select set_opt_vars_rev > Execute.

  2   Select opt_isc_nc_ibir_nbr > Execute. This optimizes all the parameters ibir, nbr, isc, and nc. You can see the final values in the Parameters table.

Extracting Parameters with forward_IV (DC)

The forward_IV setup is used to extract the parameters EEBJT2.vaf, ikf, and rc. It is important to understand that this extraction will be effective only if the Gummel parameters have been properly extracted first.

  1   Select the forward_IV setup.

  2   Select Plots > ic_vce > Display Plot.

  3   Select Extract/Optimize.

  4   Select set_limits > Execute. A series of dialog boxes appears, prompting you to input minimum and maximum Vce and Ic values for the optimization.

  5   Select ic_mod > Execute. This computes the modeled (simulated) collector current using Ib and Vce as the independent variables.

  6   Select set_vaf_to_limit > Execute. This sets the parameter EEBJT2.vaf to its upper optimization limit VAF_MAX. It is useful to perform this transform before opt_ikf, because a high value for vaf helps to give a good upper boundary to EEBJT2.ikf.

  7   In the Parameters table, set EEBJT2.rc to 0.0 for the ikf extraction.

  8   Select opt_ikf > Execute. This performs a random optimization on the parameter EEBJT2.ikf. When executed with EEBJT2.rc = 0.0 and EEBJT2.vaf set to a large value, this optimization gives a good upper bound for EEBJT2.ikf.

  9   Select set_ikf_max > Execute. This sets the variable IKF_MAX equal to the parameter EEBJT2.ikf, for use in the macro Extract_DC.

  10   Select opt_vaf_ikf > Execute. This optimizes the parameters EEBJT2.vaf and ikf to fit the measured forward IV collector current. This optimization should be used only after you obtain a reasonable estimate for an upper bound on ikf.

  11   Select opt_rc > Execute. This performs a random optimization of EEBJT2.rc to the measured forward IV collector current. The primary purpose is to get an initial estimate of rc.

  12   Select set_opt_vars_rc > Execute. This sets the optimization limit variables for EEBJT2.rc. The limits are set to a specific percentage above and below the current values of rc:. The variable PAR_OPT_TOL controls the percentage variation. The primary purpose of this transform is to set the variables to a reasonable window after executing the opt_rc optimization and before executing the final opt_vaf_ikf_rc optimization.

  13   Select opt_vaf_ikf_rc > Execute. This optimizes all three parameters to fit the measured forward IV collector current. This transform should be used only after you use the previous extraction steps to find reasonable estimates for these three parameters. Usually windowing is not necessary, but you can use the X-LOW/X-HIGH and Y-LOW/Y-HIGH functions if breakdown or self-heating effects are visible at high values of Vce, to obtain a linear data trace for the optimization. You can see the final values in the Parameters table and observe the traces converge on the plot.

  14   Now that you have extracted a final value for vaf, go back to the rgummel setup and select extr_isr_nr > Execute again.

Extracting Parameters with reverse_IV (DC)

The reverse_IV setup is included for validation and reference only; it does not include any extractions.

  1   Select the reverse_IV setup.

  2   Select Plots > ie_vce > Display Plot.

  3   Select Extract/Optimize.

  4   Select ie_meas > Execute. The transform displays the measured data on the plot.

  5   Select ie_mod > Execute to display the modeled data.

  6   Observe the plot to compare the modeled data to the measured data.

Extracting Parameters with rev_output (DC)

The rev_output setup is used to extract and validate the reverse early voltage parameter EEBJT2.var. This extraction will be effective only if the Gummel parameters have been properly extracted first.

  1   Select the rev_output setup.

  2   Select Plots > ie_vec > Display Plot.

  3   Select Extract/Optimize.

  4   Select ie > Execute. The transform computes the measured emitter current from the measured base and collector currents.

  5   Select ie_mod > Execute. This computes the modeled (simulated) emitter current.

  6   Select go > Execute. This computes the derivative of the emitter current with respect to the voltage Vec. Scroll the Parameters table to display EEBJT2.var.

  7   Select est_var > Execute. This computes an approximation of EEBJT2.var from a closed-form equation, using a numerical derivative based on the measured data to estimate var. The method is described in the book "Modeling the Bipolar Transistor," by Ian Getreu (see Modeling the Bipolar Transistor. Ian Getreu. 1976 Tektronix Inc.). This step should be done before the optimization.

  8   Select opt_var > Execute. This optimizes EEBJT2.var to fit the modeled ie data to the measured ie. You can observe the traces converge on the plot, and the final value for var in the Parameters table.

  9   Now that you have extracted a final value for var, go back to the fgummel setup and select extr_isf_nf > Execute again.

Extracting with the AC_extrinsics DUT

The AC_extrinsics DUT contains two setups:

    • package—Contains measurement and extraction transforms. The extraction is described here; measuring was described earlier in the measurement section.
    • extr_re—Contains extraction transforms only and is described here in detail.
Extracting Parameters with package (AC)

The package setup extracts the extrinsic parasitic base resistance EEBJT2.rb and the extrinsic parasitic inductances lb, lc, and le.

  1   Select the package setup. Select Extract/Optimize.

  2   Select set_freq_pars > Execute. This transform looks for any arbitrary user-specified frequency values that are not calibrated, and resets them by moving them to the nearest calibrated frequency point. A calibrated frequency point is any point in the measured frequency sweep that is equal to the start frequency plus an integer multiple of the step size.

  3   Select s_mod_int > Execute. This computes the intrinsic modeled S-parameters of the small-signal BJT equivalent circuit.

  4   In the Parameters table find EEBJT2.lb, lc, and le. Set the values for these three inductance parameters to 0.000.

  5   Select estimate_ind > Execute. This extracts the parasitic inductances from the measured data based on the method of Arnold et al, documented in "Direct Extraction of GaAs MESFET Intrinsic Element and Parasitic Inductance Values" (see Modeling the Bipolar Transistor. Ian Getreu. 1976 Tektronix Inc.).

  6   Open the delta_z_im plot and the S-parameter plots not suffixed _pre.

  7   Select s_mod_int > Execute again. The s_mod and delta_z transforms are automatically recomputed and their results updated on the S-parameter plots and the delta_z_im plot. The modeled S-parameters should fit the measured data reasonably well after this step. Slight errors in the S11 fit will be accounted for in the next step. The traces in the delta_z_im plot should exhibit a linear dependence with frequency.

  8   Locate EEBJT2.rb in the Parameters table.

  9   Select opt_rb > Execute. This optimizes the parameter EEBJT2.rb by minimizing the error between measured and modeled S11. This also automatically calls the transform s_mod, which computes the modeled extrinsic S-parameters of the small-signal BJT equivalent circuit.


Note


The transform set_bias is actually a macro that was used in the measurement procedure for setting the sweep variables IB_TYP and VCE_TYP. Do not use it now.


Extracting Parameters with extr_re (AC)

This setup extracts the emitter resistance parameter EEBJT2.re. It is important that all the DC_current extractions are performed before this one.

This setup uses the measured S-parameter data from the meas_spar_vce_ib setup, and will only work if that measured S-parameter data exists. Note that this setup and the meas_spar_vce_ib setup have identical sets of bias input variables. It is important that they remain the same: do not change the inputs.

  1   Select the extr_re setup.

  2   Select Plots > gm_vs_vce > Display Plot.

  3   In the Parameters table find EEBJT2.re.

  4   Select Extract/Optimize.

  5   Select sdta > Execute. This reads the measured data, de-embeds the extrinsics, and transforms the intrinsic data into a table of bias-dependent small-signal element values. This is the data on which the rest of the transforms are performed.

  6   Select set_limits > Execute. A series of dialog boxes appear prompting for you to enter minimum and maximum Vce and gm values for the gm optimization.

  7   Select gm_int_mod > Execute. This computes the intrinsic transconductance of the model.

  8   Select opt_re_random > Execute. This uses a random optimization to minimize the error between the measured intrinsic gm and the modeled intrinsic gm, thus optimizing the emitter resistance re. Observe the re value change in the Parameters table.

  9   Select opt_re_grad > Execute. This uses a gradient optimization to further minimize the error between the measured intrinsic gm and the modeled intrinsic gm.

Extracting with the AC_charge DUT

These setups are used for extractions only. For measured data, the AC_charge setups rely on the S-parameter measurements made in the setups of the AC_measurements DUT.


Note


If you do not use the Measure_AC macro to perform the measurements, you will need to set the variables FREQ_START, FREQ_STOP, and FREQ_PTS manually in the variable table. The values you select must correspond with the sweep values used for the network analyzer calibration.


Extracting Parameters with extr_be_cap (AC)

This setup extracts the base-emitter junction depletion capacitance parameters EEBJT2.cje, vje, and mje. It uses the measured S-parameter data from the meas_spar_vbe setup, and will only work if that measured S-parameter data exists. This setup and the meas_spar_vbe setup have identical sets of bias input variables. It is important that they remain the same: do not change the inputs.

  1   Select the extr_be_cap setup. Display the cbe_vs_vbe plot.

  2   Select Extract/Optimize.

  3   Select sdta > Execute. This reads the measured data, de-embeds the extrinsics, and transforms the intrinsic data into a table of bias-dependent small-signal element values. This is the data on which the rest of the transforms are performed.

  4   In the Parameters table, set EEBJT.tf, xtf, and itf to 0.000.

  5   Scroll the Parameters table to show EEBJT2.cje, vje, and mje.

  6   Select cbe_mod > Execute. This computes the base-emitter capacitance for the EEBJT2 model.

  7   Select set_cje > Execute. This estimates the zero-bias junction capacitance parameter EEBJT2.cje from a direct extraction.

  8   Select cbe_mod > Execute again.

  9   Select opt_mje_vje > Execute. This optimizes mje and vje only, holding cje constant.

  10   Select set_opt_vars > Execute. This sets the optimization limit variables for cje and vje.

  11   Select opt_cje_mje_vje > Execute. This optimizes the three junction capacitance parameters by minimizing the error between the measured Cbe and the modeled Cbe. You can see the values change in the Parameters table.

Extracting Parameters with extr_bc_cap (AC)

This setup extracts the base-collector junction depletion capacitance parameters EEBJT2.cjc, vjc, and mjc. It uses the measured S-parameters from the meas_spar_vbc setup, and will only work if that measured S-parameter data exists. Note that this setup and the meas_spar_vbc setup have identical sets of bias input variables. It is important that they remain the same: do not change the inputs.

  1   Select the extr_bc_cap setup. Display the cbc_vs_vbc plot.

  2   Scroll the Parameters table to show EEBJT2.cjc, vjc, and mjc.

  3   Select Extract/Optimize.

  4   Select sdta > Execute. This reads the measured data, de-embeds the extrinsics, and transforms the intrinsic data into a table of bias-dependent small-signal element values. This is the data on which the rest of the transforms are performed.

  5   Select cbc_mod > Execute. This computes the base-collector capacitance for the EEBJT2 model.

  6   Select set_cjc > Execute. This estimates the zero-bias junction capacitance parameter EEBJT2.cjc from a direct extraction.

  7   Select opt_mjc_vjc > Execute. This optimizes mjc and vjc only, holding cjc constant.

  8   Select set_opt_vars > Execute. This sets the optimization limit variables for cjc and vjc.

  9   Select opt_cjc_mjc_vjc > Execute. This optimizes the three junction capacitance parameters by minimizing the error between the measured Cbc and the modeled Cbc. You can see the values change in the Parameters table. The following figure shows an example of the plotted data following optimization.

Figure 160 Example cbc_vs_vbc Plot

Extracting Parameters with extr_be_delay (AC)

This setup extracts the base-emitter junction transit time parameters EEBJT2.tf and itf. It uses the measured S-parameters from the meas_spar_vbe_fb setup, and will only work if that measured S-parameter data exists. Note that this setup and the meas_spar_vbe_fb setup have identical sets of bias input variables. It is important that they remain the same: do not change the inputs.

  1   Select the extr_be_delay setup. Display the ft_vs_ic plot. The following figure shows an example of ft plotted with respect to collector current in the ft_vs_ic plot.

Figure 161 Example ft_vs_ic Plot

  2   Scroll the Parameters table to display EEBJT2.tf and itf. (They are not together in the table.)

  3   Select Extract/Optimize.

  4   Select sdta > Execute. This reads the measured data, de-embeds the extrinsics, and transforms the intrinsic data into a table of bias-dependent small-signal element values. This is the data on which the rest of the transforms are performed.

  5   Select cbe_mod > Execute. This computes the base-emitter capacitance for the EEBJT2 model.

  6   Select opt_cbe > Execute. This optimizes the parameters EEBJT2.tf and itf by minimizing the error between the measured Cbe and the modeled Cbe. The values in the Parameters table will probably change by only a small amount.

  7   Select ft_int_meas > Execute. This computes the intrinsic device Ft from the measured gm and Cbe.

  8   Select ft_int_mod > Execute. This computes the intrinsic device Ft from the modeled gm and Cbe.

Extracting Parameters with extr_vtf (AC)

This setup extracts the base-emitter junction transit time parameter EEBJT2.vtf. It uses the measured S-parameters from the meas_spar_vce_ib setup, and will only work if that measured S-parameter data exists. Note that this extr_vtf setup and the meas_spar_vce_ib setup have identical sets of bias input variables. It is important that they remain the same: do not change the inputs.

  1   Select the extr_vtf setup. Display the cbe_vce plot.

  2   Scroll the Parameters table to show EEBJT2.vtf (near the bottom of the table).

  3   Select Extract/Optimize.

  4   Select sdta > Execute. This reads the measured data, de-embeds the extrinsics, and transforms the intrinsic data into a table of bias-dependent small-signal element values. This is the data on which the rest of the transforms are performed.

  5   Select cbe > Execute. This computes the base-emitter capacitance for the EEBJT2 model.

  6   Select opt_vtf > Execute. This optimizes the parameter EEBJT2.vtf by minimizing the error between the measured Cbe and the modeled Cbe. The value in the Parameters table will probably change by only a small amount.


prevnext