This document contains information which is protected by copyright. All rights are
reserved. Reproduction, adaptation, or translation without prior written permission is
prohibited, except as allowed under the copyright laws.
•Product Warranty
Agilent Technologies warrant Agilent Technologies hardware, accessories and supplies
against defects in materials and workmanship for the period of one year from the
warranty start date specified below. If Agilent Technologies receive notice of such
defects during the warranty period, Agilent Technologies will, at its option, either
repair or replace products which prove to be defective. Replacement products may be
either new or like-new.
Warranty service of this product will be performed at Agilent Technologies. Buyer
shall prepay shipping charges to Agilent Technologies and Agilent Technologies shall
pay shipping charges to return the product to Buyer. However, Buyer shall pay all
shipping charges, duties, and taxes for products returned to Agilent Technologies from
another country.
Agilent Technologies do not warrant that the operation of Agilent Technologies
products will be uninterrupted or error free. If Agilent is unable, within a reasonable
time, to repair or replace any product to a condition as warranted, customer will be
entitled to a refund of the purchase price upon prompt return of the product.
The Agilent Technologies products may contain remanufactured parts equivalent to
new in performance or may have been subject to incidental use.
The warranty period begins on the date of delivery or on the date of installation if
installed by Agilent Technologies. If customer schedules or delays Agilent
Technologies installation more than 30 days after delivery, warranty begins on the 31st
day from delivery.
Warranty does not apply to defects resulting from (a) improper or inadequate
maintenance or calibration, (b) software, interfacing, parts or supplies not supplied by
Agilent Technologies, (c) unauthorized modification or misuse, (d) operation outside of
the published environmental specifications for the product, or (e) improper site
preparation or maintenance.
To the extent allowed by local law, the above warranties are exclusive and no other
warranty or condition, whether written or oral, is expressed or implied and Agilent
Technologies specifically disclaim any implied warranties or conditions of
merchantability, satisfactory quality, and fitness for a particular purpose.
Agilent Technologies will be liable for damage to tangible property per incident up to
the greater of $300,000 or the actual amount paid for the product that is the subject of
the claim, and for damages for bodily injury or death, to the extent that all such
damages are determined by a court of competent jurisdiction to have been directly
caused by a defective Agilent Technologies product.
To the extent allowed by local law, the remedies in this warranty statement are
customer’s sole and exclusive remedies. Expect as indicated above, in no event will
Agilent Technologies or its suppliers be liable for loss of date or for direct, special,
incidental, consequential (including lost profit or date), or other damage, whether based
in contract, tort, or otherwise.
For consumer transactions in Australia and New Zealand: the warranty terms contained
in this statement, except to the extent lawfully permitted, do not exclude, restrict or
modify and are in addition to the mandatory statutory rights applicable to the sale of
this product to you.
•Assistance
Product maintenance agreements and other customer assistance agreements are
available for Agilent Technologies products.
For any assistance, contact your nearest Agilent Technologies Sales Office.
•Certification
Agilent Technologies Inc. certifies that this product met its published specifications at
the time of shipment from the factory. Agilent further certifies that its calibration
measurements are traceable to the National Institute of Standards and Technology
(NIST), to the extent allowed by the Institute’s calibration facility, and to the
calibration facilities of other International Standards Organization members.
This manual describes some sample application programs and setup files, which will be
helpful for creating your own applications using Agilent 4155C/4156C.
All programs and setup files described in this manual are stored on the Sample Application
Program Disk (DOS formatted, 3.5-inch diskette) that is furnished with your
4155C/4156C. All programs are written in the Instrument BASIC, and ready to run in the
4155C/4156C’s built-in Instrument BASIC environment.
This manual covers the following applications:
•V- RA M P
•J-RAMP
•SWEAT
•GO/NO-GO Test
•HCI Degradation Test
•Charge Pumping
•Flash EEPROM Test
•TDDB
•Electromigration
CAUTIONThese programs are only examples, so you may need to modify these programs and setup
files for your own application before executing. If these example programs damage your
devices, Agilent Technologies is NOT LIABLE for the damage.
NOTEYou should copy all files in the Sample Application Program Disk to a diskette that you
will use as your working diskette, and keep the original diskette as backup.
Voltage-Ramped (V-Ramp) test is one of the Wafer Level Reliability (WLR) tests, which is
used to evaluate device reliability on a wafer. This test can provide quick evaluation data
for estimating the overall reliability of thin oxides, and this data can be used to improve the
thin oxide manufacturing process.
With the thickness of oxide shrinking along with device geometries, creating a reliable thin
oxide has become an important issue. The integrity of the thin oxide in a MOS device is a
dominant factor in determining the overall reliability of a micro-circuit. The V-Ramp test
can promptly give useful feedback to the manufacturing process about oxide reliability.
This operation manual covers a sample V-Ramp program running on Agilent 4155/4156,
and how to use and customize the program. The program is written in the Instrument
BASIC (IBASIC), and is ready to run on the built-in IBASIC controller of the 4155/4156.
“Theory of V-Ramp Test Procedure” describes basic theory, procedure, and terminology of
the V-Ramp test.
“Basic Operation” describes the V-Ramp sample program. Included are V-Ramp
methodology using the 4155/4156, how to execute the sample program, and program
overview.
“Customization” describes how to customize the sample program. This is very helpful
because you probably need to modify the sample program to suit your test device.
“Measurement Setups” shows the 4155/4156 page settings that are stored in the setup files.
This section describes the Voltage-Ramped (V-Ramp) Test procedure. Included are basic
theory, procedure, and terminology of V-Ramp test. The V-Ramp test procedure is based on
JEDEC standard No.35.
V-Ramp Test Overview
V-Ramp test measures the breakdown voltage (Vbd) and breakdown charge (Qbd) of thin
oxide capacitors, which you designed as test structures on the wafer. These results are used
to evaluate the oxide integrity. The higher the Vbd and Qbd measured by this test, the better
the integrity of the oxide on wafer.
You extract these two parameters from a large amount of test structures and extracted
parameters are used for standard process control to quickly evaluate oxide integrity.
In the V-Ramp test, an increasing voltage is forced to the oxide capacitor until the oxide
layer is broken. Breakdown voltage (Vbd) is defined as the voltage at which breakdown
occurs. And breakdown charge (Qbd) is the total charge forced through the oxide until the
breakdown occurs.
Figure 1-1 shows a simplified flowchart of V-Ramp test.
The V-Ramp test consists of three tests: initial test, ramp stress test, and post stress test.
In the initial test, normal operating voltage is applied to the oxide capacitor, then leakage
current through the capacitor is measured to check for initial failure.
In the ramp stress test, linear ramped voltage is applied to the capacitor, and the current is
measured.
The post stress test is for confirming that failure occurred during the ramp stress test. The
normal operating voltage is applied to the oxide capacitor again, and leakage current is
measured under the same conditions as the initial test.
After the tests, the test results must be analyzed and saved (data recording).
Before performing the V-Ramp test, test conditions must satisfy the following:
•Gate bias polarity is in accumulated direction. That is, negative (minus) voltage is
applied to gate conductor for P-type bulk, and positive (plus) voltage is applied for
N-type bulk.
•Diffusions and wells (if any) must be connected to substrate.
•Temperature is in 25 ± 5 °C range.
Initial Test
Initial test is to confirm that the oxide capacitor is initially good. If leakage current of that
capacitor exceeds 1 mA, it is categorized as initial failure.
For example, when you test a TTL-level oxide capacitor, constant voltage of -5 V is
applied to that capacitor, and leakage current is measured. If the leakage current is more
than 1 mA, that capacitor is an initial failure.
Post Stress Test
The post stress test checks the oxide status after the ramp stress test. If the oxide is broken,
proper ramp stress was applied to the oxide capacitor. If not, maybe the ramp stress was not
applied correctly.
To check the oxide status, the normal operating voltage is applied to the oxide capacitor
(same as initial test), then leakage current is measured. The leakage current (I
indicates the following:
•If I
•If I
> 1 mA:
leak
The oxide was broken by the applied ramped voltage.
< 1 mA:
leak
The oxide was not broken by the applied ramped voltage.
If the applied ramped voltage reached the maximum electric field, the testing was
probably faulty: for example, the ramped voltage was not applied to the oxide due to an
open circuit.
leak
) value
For example, if you test a TTL level oxide capacitor, constant voltage of -5 V is applied to
that capacitor, then leakage current is measured. If the leakage current is more than 1 mA,
the capacitor was properly broken.
A linear ramped voltage or a linear stepped voltage, which is approximately ramped
voltage, is applied to the oxide capacitor. While the ramped voltage is forced, the current
through the oxide is measured.
The ramped voltage is stopped when one of the following conditions occurs:
•Current through the oxide exceeds ten times the expected current. The expected current
is calculated from the applied voltage and structure of oxide capacitor. For example, the
expected current density J for a 200 angstrom oxide capacitor is calculated from the
equation for Fowler-Nordheim current as follows:
2B
æö
JAE
Where, A and B are constants in terms of effective mass and barrier height.E is electric
field.
exp×=
---
–
èø
E
•Current through the oxide exceeds the current compliance determined by the current
density compliance limit of 20 A/cm
2
.
•Electric field generated by the applied voltage exceeds 15 MV/cm. This typically
indicates faulty testing.
Figure 1-2 shows the concept of Vbd and Qbd. In the graph, left vertical axis shows current
through the oxide, right vertical axis shows voltage applied to the oxide capacitor, and
horizontal axis shows time.
When the current through the oxide reaches 10 times the expected current, the ramped
voltage is stopped, and the applied voltage at this point is the breakdown voltage (Vbd).
Breakdown charge (Qbd) is calculated by integrating the current through the oxide:
According to the measurement results, the oxide status is categorized as follows and
recorded:
Initial Failure: Failed the initial test. Indicates initially defective oxide
Catastrophic Failure: Failed ramped and post stress tests. Indicates that oxide
Masked Catastrophic Failure: Did not fail ramped stress test, but failed post stress test.
Non-catastrophic Failure: Failed ramped stress test, but not post stress test.
Other Did not fail ramped stress test or post stress test.
The failure category is recorded for each test device. If the catastrophic failure is observed,
breakdown voltage (Vbd) and breakdown charge density (q
recorded.
Table 1-1 shows the oxide failure categories.
Table 1-1Oxide Failure Categories
V-RAMP
Theory of V-Ramp Test Procedure
capacitor. Other tests should not be performed.
capacitor was properly broken by the ramped stress test.
This section covers the following for using an 4155/4156 to perform V-Ramp Test:
required equipment, required files, methodology, how to execute the sample program, and
sample program overview.
Methodology
The entire V-Ramp Test procedure can be performed by executing the VRAMP sample
program on the built-in IBASIC controller of the 4155/4156.
As explained in “Theory of V-Ramp Test Procedure”, the V-Ramp test consists of three
measurement parts and an analysis part. Each measurement part executes three steps as
follows:
1. Loads the measurement setup file into the 4155/4156 execution environment.
2. Changes some of the measurement or analysis parameters on the setup pages.
3. Executes the measurement.
The VRAMP program executes the above three steps for each test: initial test, ramp stress
test, and post stress test. Using the measurement setups (step 1 above) loaded from a file
reduces the length and complexity of the program. For details, see Programmer's Guide.
Measurement setups, which are loaded into the 4155/4156 execution environment, were
previously developed and saved to measurement setup files on the diskette. You can easily
modify the measurement setup information in fill-in-the-blank manner in the 4155/4156
execution environment. The VRAMP sample program is also saved to the diskette. You
can easily modify the sample program by using the editor in the built-in IBASIC
environment.
The VRAMP sample program assumes that the built-in IBASIC controller of the
4155/4156 is used, but you can also use another controller, such as HP BASIC running on
an external computer. To do so, you must modify the sample program for your
environment. See “Customization” on how to modify the program to run on an external
controller.
Initial Test
The initial test makes sure the oxide capacitor is initially good by applying the normal
operating voltage (Vuse), then measuring the leakage current (I
I
exceeds 1 mA, the oxide capacitor is categorized as "initial failure".
leak
The sample program assumes that SMU1 and SMU4 are connected to the oxide capacitor
as shown in Figure 1-4.
For the initial test, the sample program does as follows:
1. Sets up the 4155/4156 according to the VRSPOT.MES setup file, which the sample
program previously loaded from the diskette into internal memory MEM1.
2. Sets up SMU1 to constant voltage Vuse for PMOS device, or -Vuse for NMOS
device. Vuse value is specified previously in the sample program, and reset on the
MEASURE: SAMPLING SETUP page by OUTPUT statement (line 2550 of the
sample program).
3. Forces voltage from SMU1, then measures current after the HOLD TIME, which was
setup by VRSPOT.MES setup file described next.
4. Checks if current through the oxide Ig exceeds 1 mA. If so, the sample program aborts
further testing.
The following are main points about the setup by the VRSPOT.MES setup file:
•On CHANNELS: CHANNEL DEFINITION page (see Figure 1-13)
•MEASUREMENT MODE is set to SAMPLING.
•SMU1 and SMU4 are set to be constant voltage sources.
•Ig is defined as name of current measured by SMU1.
•On MEASURE: SAMPLING SETUP page (see Figure 1-5)
•NO. OF SAMPLES is set to 1 to execute the measurement once.
•HOLD TIME is set to 2.00 s to allow the output voltage to stabilize.
•SMU4 is set to force a constant 0 V.
•STOP CONDITION is enabled, NAME is set to Ig, THRESHOLD is set to 1 mA,
and EVENT is set to Val > Th.
So, the measurement will stop if the current through the oxide (Ig) exceeds 1 mA.
If so, the sample program will abort further testing.
Figure 1-4Simplified Measurement Circuit and Output Voltage of Initial Test
Figure 1-5MEASURE: SAMPLING SETUP Page for Initial Test
Ramp Stress Test
After the initial test, the sample program executes the ramp stress test. Linear stepped
voltage is applied to the oxide.
The measurement setup for the ramp stress test is stored in the VRSWEP.MES setup file on
the diskette. At the beginning of the sample program, this setup is loaded into internal
memory (MEM2). Then, at the beginning of the ramp stress test, the sample program loads
this setup into the 4155/4156.
To force proper stepped voltage, the sample program and VRSWEP.MES set the following:
•SMU channel definition (see Figure 1-6):
SMU4 is set to force a constant 0 V, and SMU1 is set to voltage sweep mode.
•Constant step interval time (see Figure 1-8):
Step interval time of output sweep voltage must be constant.
•Measurement stop mode:
If the current through the oxide reaches the specified compliance, the voltage sweep
and measurement stops.
•Auto-analysis and user functions:
After the measurement, the 4155/4156 executes analysis automatically to search for
Vbd, and to calculate Qbd.
The sample program assumes the connection between the SMUs and the oxide capacitor as
shown in Figure 1-6. SMU4 is set to force a constant 0 V, and SMU1 is set to voltage
sweep mode by the VRSWEP.MES setup as shown in Figure 1-7.
Figure 1-6Simplified Measurement Circuit of Ramp Stress Test
V-RAMP
Basic Operation
Figure 1-7CHANNELS: CHANNEL DEFINITION Page for Ramp Stress Test
To keep a constant step interval time for the voltage sweep and measurement, triggering
and measurement ranging techniques are used. VRSWEP.MES sets the measurement
ranging mode to FIXED, so the time between measurements does not vary due to range
changing.
VRSWEP.MES enables the TRIG OUT function, and the sample program calculates and
sets values so that the step interval time becomes constant as shown in Figure 1-8. The step interval time (Step_time) is the delay time (Step_delay_t) plus step delay time
(Step_keep_t). Strictly speaking, the sample program calculates these as follows:
•1.2 ms is overhead time associated with the delay time for voltage sweep measurement,
when the WAIT TIME field is set to 0 (zero). So, do not set another value in this field.
•0.1 ms is overhead time associated with the TRIG OUT function.
•Ramp rate (Ramp_rate), oxide thickness (Tox), and step voltage (Vstep) are
specified in lines 1800 to 1840 of the sample program.
The start voltage (Vstart), stop voltage (Vstop), and step voltage (Vstep) are
specified in sample program in lines 1830 to 1850. For NMOS devices, the ramp stress test
subprogram actually sets the opposite polarity for these values by using the Tp variable.
Measurement stop mode.
NOTEThe JEDEC standard says that the ramp stress test should abort when the current through
the oxide reaches 10 times the expected current (Iexpect). But this sample program
aborts when the current reaches current compliance (Igcomp). The Iexpect and Igcomp values are specified in lines 1860 and 1870 of the sample program, and must
meet the following condition: Igcomp ³ Iexpect ´ 10.
VRSWEP.MES file sets the sweep stop condition to SWEEP STOP AT COMPLIANCE as
shown in the Figure 1-10.
Figure 1-8Output Sweep Voltage for Ramp Stress Test
1. Sets up the maximum and minimum values for graph axes: X, Y1, and Y2. Lines 2940
to 2980.
2. Performs the measurement. Line 3020.
3. Moves marker to maximum Ig, and saves value to Igmax. Lines 3100 to 3170.
4. Moves marker to position where Ig = Iexpect*10. Line 3200.
5. If compliance was reached or if Igmax ³ Iexpect*10, the sample program reads
the value of Vbd and Qbd at present marker position. Lines 3250 to 3320. Where Vdb
and Qbd are specified as described below.
The VRSWEP.MES setup file defines user functions on the CHANNELS: USER
FUNCTION DEFINITION page (see Figure 1-20) as follows:
Table 1-2User Functions for Ramp Stress Test
Name Units Definition
Time(sec)
@INDEX * 1
a
Vbd(V)@MY2
Qbd(Q)INTEG(Ig,Time)
a. This is a temporary value. Value of Time is redefined by line 2810 of the
sample program.
The above user function calculates Qbd as follows:
Tbd
QbdImeas t() td
==
ò
Tstart
N
1
-- -Imeas
å
2
i 2=
Imeas
+()TiT
i
i 1–
–()´
i 1–
Where, N is step number when the breakdown occurs.
Post stress test checks the oxide status after the ramp stress test.
The methodology of the post stress test is the same as for initial test. The normal operating
voltage (Vuse) is applied to the oxide, then the leakage current (I
For the measurement circuit, connections, and measurement setups, see “Initial Test”.
Failure Categorization
Table 1-3 shows the oxide failure categories that are determined by the sample program.
The failure category is displayed for each device, and Vbd, Qbd, and qbd are also
displayed.
The measured data and measurement settings are saved in a file.
The following provides a brief description for each subprogram.
Test_setting Specifies and checks the parameter values. These are values that the
program will set directly instead of some of the setup file values.
Get_fileLoads measurement setup files from the diskette into internal memory:
spot measurement setup into MEM1, and sweep measurement setup
into MEM2. Having the measurement setups in internal memory
reduces the measurement time.
Init_fin_test Executes the spot measurement for initial test or for post stress test.
First parameter specifies the test: Init is for initial test, and Fin is
for post stress test. The measurement results are returned to the second
parameter.
JudgeCategorizes failure according to measurement results of initial, ramped
stress, and post stress tests. If the failure is initial failure, this
subprogram aborts the program.
Sweep_testExecutes sweep measurement for ramped stress test, then returns the
result flag, Vbd, and Qbd to the three parameters. The measurement
result data is temporarily stored in internal memory (MEM3).
Save_dataSaves measurement result data (that is in MEM3) to a file on the
This section describes how to customize the sample program to suit your test device.
Using an External Computer
This sample program (VRAMP) is assumed to run on the Instrument BASIC that is built
into the 4155/4156. The 4155/4156 is used as both the measurement instrument and the
controller running IBASIC, so VRAMP sets device selector 800. On the following three
lines, the 4155/4156 is assigned and interrupt from it is enabled as follows:
If you use an external controller (that can run HP BASIC environment) to control the
4155/4156, you need to modify a few lines of the sample program. For example, if you use
HP BASIC/WS on an HP 9000 Series 300 computer, you only need to modify lines the
above three lines as follows:
In this case, the 4155/4156 has GPIB address 17 and is not used as the system controller,
and is connected to the built-in GPIB of the HP 9000 series 300 controller with an GPIB
cable. Use the following procedure to set the GPIB address and system mode:
1. Turn on your 4155/4156.
2. Press
3. Select MISCELLANEOUS softkey.
4. Move the field pointer to the "415x is " field, then select the NOT CONTROLLER
5. Move the field pointer to the "415x" field in the GPIB ADDRESS area, then enter: 17.
Sel ect Syst em Cont r ol Mode wi t h sof t key or r ot ar y knob.
FI LERMI SCEL-
LANEOUS
CONFI GCAL I B/
USER I D200
* NETWORK PRI NTER SETUP
PRI NTER
IP ADDRESS 0.0.0.0
DI AG
PRI NT
SETUP
COLOR
SETUP
Specifying Setup File to Load
CON-
TROLLER
NOT
CON-
TROLLER
Two setup files are used to set up the 4155/4156 for the V-Ramp test: one is used for initial
and post stress tests, and the other is for ramp stress test.
Filenames of these setups are defined on the following lines:
1730 Init_file$="VRSPOT.MES" !Spot Measurement Setup File Name
1740 Sweep_file$="VRSWEP.MES" !Sweep Measurement Setup File Name
If you want to use other setup files, store the setup files on the diskette, then modify the
filenames on the lines above.
File for Saving Measurement Results
The following lines specify the filename for the measurement results file. The filename
starts with "D", then HHMMS, then ends with ".DAT". Where HH is hour, MM is minute,
and S is second (tens digit only).
1750 Save_file$=TIME$(TIMEDATE) !File Name for saving measurement
results
1760 Save_file$="D"&Save_file$[1,2]&Save_file$[4,5]&Save_file$[7,7]&".D
AT"
The following line commands the 4155/4156 to create the specified file on the diskette,
then stores the result data in the file.
For example, "D09344.DAT" file that contains measurement data is created on the
diskette. This filename means the "data file created at 9:34 4x seconds."
To change to your desired filename, you only need to edit line 1760.
Input parameter values are specified on the following lines. These are values that the
sample program will set directly instead of using some of the setup file values. You can
easily modify the values by editing these program lines.
1780 Type$="NMOS"! Type NMOS -- Pbulk, PMOS -- Nbulk
1790 Vuse=5! Vuse (V)
1800 Ramp_rate=.5*1.E+6 ! Ramp rate (MV/cm*s)
1810 Tox=160*1.E-8! Oxide Thickness (cm)
1820 Area=.001! Gate Area (cm^2)
1830 Vstart=5! Start voltage (V)
1840 Vstop=24! Stop voltage (V)
1850 Vstep=.05! Step voltage (V)
1860 Iexpect=.003! Expected breakdown current (A)
1870 Igcomp=.05! Ig compliance (A)
Parameter Default Description
Type$
NMOS
a
Bulk type: NMOS is for P bulk and PMOS is for
N bulk
Vuse5 (V)Normal operating voltage for the device
Ramp_rate
Tox
Area
5
5.0´10
(MV/cm×s)
1.60´10
0.001 (cm
-6
(cm)
2
)
Ramp rate of stepped voltage
Thickness of oxide
Area of target oxide
Vstart5 (V)Start voltage
Vstop24 (V)Stop voltage
Vstep50 (mV)Step voltage
Iexpect3 (mA)Expected current through the oxide
Igcomp50 (mA)Current compliance through the oxide
a. If type is NMOS, opposite polarity values for the voltages are actually used
later in the program by using the tp parameter, which is set to -1 in line 1880.
In the VRAMP program, Iexpect is set to 0.003 A in line 1860 of the program.
However, this is a very simple method and might not give accurate results.
Iexpect is the expected current through the oxide, and is a function of the electric field E.
So, the actual Iexpect depends on the applied voltage.
To get more accurate results, you can plot a graph of Iexpect versus Vg by using the
Fowler-Nordheim equation:
2B
æö
JAE
Where: A and B are constants in terms of effective mass and barrier height. E is electric
field.
The oxide capacitor of MOS can be considered to be a parallel plate capacitance, so the
oxide thickness (To x) and its area (Area) results in the
following:
IexpectArea J×Area A
Where: V is applied voltage.
To draw the curve for the above equation, you can use a user function. For example, when
a=100 and b=-415, you set the following user function on the CHANNELS: USER
FUNCTION page:
exp×=
---
–
èø
E
2
V
æö
---------
èø
Tox
BTox×
æö
----------------- -
–
exp××
èø
V
Area A×
------------------ --2
Tox
2
BTox×
æö
V
----------------- -
–
exp××aV
èø
V
2
b
æö
---
exp××====
èø
V
NAME UNIT DESCRIPTION
IexpA100*Vg^2*EXP(-415/Vg)
So, after the measurement finishes, you set up Vg for the X-Axis, Ig for the Y1 axis, and
Iexp for the Y2 axis on the DISPLAY: DISPLAY SETUP page.
Also, set up analysis so that the marker will move automatically to the point on the curve
where Ig is equal to 10*Iexp. In the DISPLAY: ANALYSIS SETUP page, you would
set as follows:
*MARKER: At a point where
[Ig] = [10*Iexp]
[]
This method allows you to find more accurately the Vbd, which it the value of Vg where
Ig is equal to 10*Iexp.
This section covers the measurement setups that are stored in the VRSPOT.MES and
VRSWEP.MES files.
Setups for Initial and Post Stress Tests
The measurement setups stored in VRSPOT.MES are used for the initial and post stress
tests. The setups of each page are shown in Figure 1-13 to Figure 1-18.
Setups for Ramped Stress Test
The measurement setups that are stored in VRSWEP.MES are used for the ramped stress
test. The setups of each page are shown in Figure 1-19 to Figure 1-25.
Figure 1-13CHANNELS: CHANNEL DEFINITION Page for Initial/Post Stress
CHANNE L S: CHANNE L D EF I NI T I ON9 5 F EB 0 2 08 : 1 7 A M
Vol t age Ramp I ni t i al / Post Spot Measur ement
* MEAS UREMENT MODE
SAMPLI NG
* CHA NNEL S
UNI TV NAMEI NA MEMODEF CT NRESI S TA NCE
SMU1 : HRVgI gVCONST0 o h m
SMU2 : HR0 o h m
SMU3 : HR
SMU4 : HRVs u bI s u bVCONST
VSU1-------
VSU2-------
VMU1------------ ----
VMU2------------ ----
SAMPLI NG
Sel ect Measur ement Mode wi t h sof t key or r ot ar y kn ob.
Current-Ramped (J-Ramp) test is one of the Wafer Level Reliability (WLR) tests, which is
used to evaluate device reliability on a wafer. This test can provide quick evaluation data
for estimating the overall reliability of thin oxides, and this data can be used to improve the
thin oxide manufacturing process.
With the thickness of oxide shrinking along with device geometries, creating a reliable thin
oxide has become an important issue. The integrity of the thin oxide in a MOS device is a
dominant factor in determining the overall reliability of a micro-circuit. The J-Ramp test
can promptly give useful feedback to the manufacturing process about oxide reliability.
This operation manual covers a sample J-Ramp program running on the 4155/4156, and
how to use and customize the program. The program is written in the Instrument BASIC
(IBASIC), and is ready to run on the built-in IBASIC controller of the 4155/4156.
“Theory of J-Ramp Test Procedure” describes basic theory, procedure, and terminology of
the J-Ramp test.
“Basic Operation” describes the J-Ramp sample program. Included are J-Ramp
methodology using the 4155/4156, how to execute the sample program, and program
overview.
“Customization” describes how to customize the sample program. This is very helpful
because you probably need to modify the sample program to suit your test device.
“Measurement Setups” shows the 4155/4156 page settings that are stored in the setup files.
“Proof of Equations” shows how to solve equations described in “Basic Operation”.
This section covers Current Ramped (J-Ramp) Test procedure. Included are basic theory,
procedure, and terminology of J-Ramp test.
The J-Ramp test procedure is based on the JEDEC standard No.35.
J-Ramp Test Overview
J-Ramp test searches for the breakdown voltage (Vbd), then calculates the breakdown
charge (Qbd) of thin oxide capacitors, which you designed as test structures on the wafer.
These results are used to evaluate the oxide integrity. The higher the Vbd and Qbd
measured by this test, the better the integrity of the oxide on wafer.
You extract these two parameters from a large amount of test structures and usually plot the
cumulative breakdown/breakdown charge distribution on a probability chart. The
manufacturing process should be driven so that this distribution becomes closer to the ideal
shape.
In the J-Ramp test, an increasing current is forced to the oxide capacitor. This charges up
the capacitor so the voltage across the capacitor increases. When the oxide layer is broken
by the high electric field in the oxide, the current can flow through, so the voltage across
the oxide capacitor decreases (breakdown). Breakdown voltage (Vbd) is defined as the
voltage at which breakdown occurs. And breakdown charge (Qbd) is the total charge
forced through the oxide until breakdown occurs.
Figure 2-1 shows a simplified flowchart of J-Ramp test.
The J-Ramp test consists of three tests: initial test, ramp stress test, and post stress test.
In the initial test, an initial current I
then voltage across the oxide is measured to check for initial failure.
In the ramp stress test, a stepped current is applied, and the voltage across the oxide is
continuously measured.
The post stress test is for confirming that failure occurred during the ramp stress test. The
initial current is forced again, then the voltage across the oxide is measured.
After the tests, the test results must be analyzed and saved (data recording).
Before performing the J-Ramp test, test conditions must satisfy the following:
•Gate bias polarity is in accumulated direction. That is, negative (minus) current is
applied to gate conductor for P-type bulk, and positive (plus) current is applied for
N-type bulk.
•Diffusions and wells (if any) must be connected to substrate.
•Temperature is in 25 ± 5 °C range.
(typical value is 1 mA) is forced to the oxide capacitor,
Initial test is to confirm that the oxide capacitor is initially good. To do so, an initial current
I
(typical value is 1 mA), which is low enough not to break the oxide, is forced to the oxide
0
capacitor, and the voltage across the oxide is measured after a certain time t
measured voltage does not reach the normal operating voltage, it is categorized as initial failure.
If an oxide capacitor is categorized as initial failure, test should not continue for the
capacitor. If the capacitor passes the initial test, the J-ramp stress test may begin
immediately.
The value of t
Initial current I
time t
, but must be small enough not to break the oxide.
initial
Typically, 10
due to the system capacitance. The initial current I
is 50 ms or ten times the oxide time constant, whichever is greater.
initial
must be large enough to charge up the capacitor within a reasonably short
0
-6
C/cm2 is the minimum breakdown current density qbd that can be measured
varies depending on the area of the
0
oxide capacitor (test structure), oxide thickness, and oxide defect levels.
A stepped current is applied to the oxide capacitor, and the voltage across the capacitor is
continuously measured. Normally, applying the current to the oxide capacitor charges up
the capacitor, so the voltage increases across the capacitor. When the electric field reaches
a threshold, the oxide is broken, and current flows through the oxide.
Figure 2-2 shows the concept of Vbd and Qbd for the J-ramp stress test. The forced current
is increased logarithmically, and the voltage across the capacitor is measured at a constant
interval. When the measured voltage < previously measured voltage ´ 0.85, the breakdown
is considered to have occurred in the oxide. The previously measured voltage is considered
to be Vbd, and Qbd is calculated by integrating the current applied to the oxide.
If the measurement results indicate that breakdown occurred, the result of J-ramp stress test
is defined as "fail".
The current forced to the oxide capacitor is stepped in a logarithmic manner. The value of
each step is related to the initial current I
following equation:
I
= I0 ´ F
n
n
Where n = 1, 2, 3, . . .
That is,
I
= I0 ´ F
1
I
= I0 ´ F
2
I3 = I0 ´ F
2
3
. . . .
I
= I0 ´ F
n
n
J-Ramp Characteristics (Conditions for Forced Current)
The forced current must satisfy the following conditions:
by the step increase factor F as shown in the
0
•Current ramp rate: 1 decade/500 ms.
•Maximum time (t
) between voltage measurements: 50 ms or once per current step,
meas
whichever is less.
•Maximum charge density: 50 C/cm
2
.
•Maximum electric field (voltage compliance limit): 15 MV/cm.
•Maximum current step increase factor F: Ö10
, approximately 3.2.
•Step interval time of applied current: constant.
Indication of faulty J-ramp stress test
If either of the following situations occurs during the J-ramp stress test, the test should be
aborted. This indicates that the testing was faulty.
•Accumulated charge density (q) reaches the maximum allowed charge density. Charge
density q is the accumulated charge Q divided by the oxide area Area.
The post stress test checks the oxide status after the J-ramp stress test. If the oxide is
broken, proper J-ramp stress was applied to the oxide capacitor, and the result of post stress
test is defined as "fail".
To check the oxide status, the initial current (I
) is applied to the oxide capacitor (same as
0
initial test), then the voltage across the capacitor is measured. The measured voltage
(V
) indicates the following:
meas
•If V
meas
< V
use
:
The oxide was broken by the J-ramp stress test. Forced current flows through the oxide,
so the voltage across the capacitor does not increase enough.
•If V
meas
> V
use
:
The oxide was not broken by the J-ramp stress test. Forced current does not flow
through the oxide enough, so the voltage across the capacitor increases.
One possible reason is that the testing was faulty as described in the previous section.
For example, the current was not forced to the oxide due to an open circuit.
According to the measurement results, the oxide status is categorized as follows:
Initial Failure: Failed the initial test. Indicates initially defective oxide
Catastrophic Failure: Failed during J-ramp and post stress tests. Indicates that
Masked Catastrophic Failure: Did not fail during J-ramp stress test, but failed post
Non-catastrophic Failure: Failed during the J-ramp stress test, but not post stress
Others: Did not fail during J-ramp stress test, and did not fail
The failure category is recorded for each test device. If the catastrophic failure is observed,
breakdown voltage (Vbd) and breakdown charge density (q
recorded.
Table 2-1 shows the oxide failure categories.
capacitor. Other tests should not be performed.
oxide capacitor was properly broken by the J-ramp stress
test.
stress test.
test.
post stress test.
= Qbd/Area) are also
bd
Table 2-1Oxide Failure Categories
Stress Failure Category Initial Test J-Ramp Stress Test Post Stress Test
This section covers the following for using an 4155/4156 to perform J-Ramp Test: required
equipment, required files, methodology, how to execute the sample program, and sample
program overview.
Methodology
The entire J-Ramp Test procedure can be performed by executing the JRAMP sample
program on the built-in IBASIC controller of the 4155/4156.
As explained in “Theory of J-Ramp Test Procedure”, the J-ramp test consists of three
measurement parts and an analysis part. Each measurement part executes three steps as
follows:
1. Loads the measurement setup file into the 4155/4156 execution environment.
2. Changes some of the measurement or analysis parameters on the setup pages.
3. Executes the measurement.
The JRAMP program executes the above three steps for each test: initial test, J-ramp stress
test, and post stress test. Using the measurement setups (step 1 above) loaded from a file
reduces the length and complexity of the program. For details, see Programmer's Guide.
Measurement setups, which are loaded into the 4155/4156 execution environment, were
previously developed and saved to measurement setup files on the diskette. You can easily
modify the measurement setup information in fill-in-the-blank manner in the 4155/4156
execution environment. The JRAMP sample program is also saved to the diskette. You can
easily modify the sample program by using the editor in the built-in IBASIC environment.
The JRAMP sample program assumes that the built-in IBASIC controller of the 4155/4156
is used, but you can also use another controller such as HP BASIC running on an external
computer. To do so, you must modify the sample program for your environment. See
“Customization” on how to modify the program to run on an external controller.
The initial test makes sure the oxide capacitor is initially good by applying an initial
current I
capacitor. If the voltage does not reach the normal operating voltage, the oxide capacitor is
categorized as "initial failure".
The sample program assumes that SMU1 and SMU4 are connected to the oxide capacitor
as shown in Figure 2-3.
Figure 2-3Simplified Measurement Circuit and Output Current of Initial Test
(Iforce0 in the sample program), then measuring the voltage across the oxide
0
For the initial test, the sample program does as follows:
1. Sets up the 4155/4156 according to the JINIT.MES setup file, which the sample
program previously loaded from the diskette into internal memory (MEM1).
2. Sets up SMU1 to constant current Iforce0 for PMOS device, or -Iforce0 for
NMOS device. Iforce0 value is specified at beginning of the sample program, and
reset in the MEASURE: SAMPLING SETUP page by OUTPUT statement (line 2550
of the sample program).
3. Sets the THRESHOLD value of the STOP CONDITION to Vuse or -Vuse, which is
the normal operating voltage that was specified at beginning of the sample program.
4. Forces current Iforce0 from SMU1, and measures as set up by the JINIT.MES file
described next.
5. Checks if the maximum voltage reached Vuse. If not, the sample program aborts
further testing.
The following are main points about the setup by the JINIT.MES setup file:
•On CHANNELS: CHANNEL DEFINITION page (see Figure 2-13)
•MEASUREMENT MODE is set to SAMPLING.
•SMU4 is set to be a constant voltage source.
•SMU1 is set to be a constant current source.
•Vg is defined as name of voltage measured by SMU1.
•On MEASURE: SAMPLING SETUP page (see Figure 2-4)
•Sampling mode (MODE) is set to LINEAR.
•Sampling measurement interval (INITIAL INTERVAL) is set to 10 ms.
•NO. OF SAMPLES is set to 100.
J-RAMP
•TOTAL SAMP. TIME is set to 1 second (t
). So, for 1 second, the current
initial
Iforce0 will be forced and sampling measurements will be performed.
•SMU4 is set to force a constant 0 V.
•SMU1 is set to force a constant 1 mA.
•STOP CONDITION is enabled, NAME is set to Vg, and EVENT is set to
|Val|>|Th|. Note that THRESHOLD is set to Vuse by the sample program as
described previously.
So, if the maximum Vg measured by SMU1 reaches Vuse, the sample program
next performs the J-Ramp Stress test. If not, the measurement will abort further
testing.
Figure 2-4MEASURE: SAMPLING SETUP Page for Initial Test
MEASURE: S AMPLI NG S ETUP95 FEB0 2 0 9: 20 AM
Samplin g Mode
Interval Time
Number of Samples
Total Sam pling Tim e
Volt age Ramp I ni ti al/ Pos t Spot Measur ement
* SAMPL I NG PARAMETER* STOP CONDI TI ON
MODELI NEARENABLE/ DI SABLE ENABLE
I NI TI AL I NTERVAL 10. 00msENABLE DELAY0. 0000000 s
After the initial test, the sample program executes the J-ramp stress test. Logarithmic
stepped current is applied to the oxide, and voltage across the oxide is measured at least
once for each step.
The measurement setup for the J-ramp stress test is stored in the JRMP.MES setup file on
the diskette. At the beginning of the sample program, this setup is loaded into internal
memory (MEM2). Then, at the beginning of the J-ramp stress test, the sample program
loads this setup into the 4155/4156.
To force proper stepped current, the sample program and JRMP.MES set the following:
•SMU channel definition (see Figure 2-5):
SMU1 is set to current sweep mode, and SMU4 is set to force a constant 0 V.
•Constant step interval time (see Figure 2-7):
Step interval time of output sweep current should be constant. The time can be constant
by setting the delay time and step delay time. See Figure 2-7. However in the
logarithmic sweep, if the sweep range extends to 1 decade or more (example; sweep
range 1 mA to 100 mA), the step interval time varies due to the output range changing of
sweep source. This interval time error will cause the calculation error of breakdown
charge (Qbd). Then the JRAMP sample program does the error correction of Qbd after
the measurement.
•Stepped current to be forced:
Stepped current forced to the oxide is increased logarithmically. This stepped current is
defined in the sample program.
•Measurement stop condition:
Current sweep continues until one of three conditions is satisfied.
•Searching for breakdown point and calculating Qbd:
After the measurement, the JRAMP sample program gets the measured voltage values,
and searches for the breakdown voltage (Vbd). Then, calculates Qbd by using the
user-defined functions. Finally, the program compensates the Qbd calculation error,
and displays the Qbd value.
To keep a constant step interval time for the current sweep and measurement, triggering
and measurement ranging techniques are used. JRMP.MES sets the measurement ranging
mode to FIXED, so the time between measurements does not vary due to measurement
range changing.
JRMP.MES enables the TRIG OUT function, and the sample program calculates and sets
values so that the step interval time becomes constant as shown in Figure 2-7. The step interval time (Step_time) is the delay time (Step_delay_t) plus step delay time
(Step_keep_t). Strictly speaking, the sample program calculates these as follows:
•3.7 ms is overhead time associated with the current output logarithmic sweep mode.
So, do not set another value in this field.
•Factor is the step increase factor. See later in this section and “Proof of Equations”
for details of this calculation.
In the logarithmic sweep, if the sweep range extends to 1 decade or more, the step interval time (Step_time) varies due to the output range changing of sweep source. The output
range changing adds the range changing time to the step interval time. This additional time
depends on the range setting, but it is approximately 2 % of the time for 1 decade sweep.
The output range changing will also cause the calculation error of Qbd. The JRAMP
sample program can compensate this calculation error.
Figure 2-7Output Sweep Current for J-Ramp Stress Test
The sample program sets to force to the oxide a current that increases logarithmically
according to the equation I
the JRAMP sample program, you specify the start current (Iforce0 on line 1800) and
step increase factor F (Factor on line 1890), then the step interval time (Step_time on
line 1900) and stop current (Istop on line 4560) are calculated. For NMOS devices, the
ramp test subprogram actually sets the opposite polarity for these values by using the Tp
variable (lines 2020 and 2030).
= I0 ´ Fn, where n = 1, 2, . . . n. See “J-Ramp Stress Test”. In
n
Iforce0 is normally 1 mA, as mentioned in the “Theory of J-Ramp Test Procedure”.
Three values (10
, 10
1/25
, and 10
1/50
) are possible for step factor F (Factor) of the
1/10
4155/4156 because you can use 10, 25, or 50 steps per decade for the logarithmic sweep.
The step interval time Ts (Step_time in program) of each step depends on the number of
steps per decade, and must satisfy the condition that the ramp rate is 1 decade/500 ms. So,
if N is the number of steps per decade, then Ts = 0.5/N. The following is the relationship of
Ts to the step increase factor F:
Ts = 0.5 ´ log
10
F
The current is stepped logarithmically until the charge density reaches the maximum
allowed value, which is normally 50 C/cm
n
It() td
ò
0
Where, I(t) = I
n
I0FnTsnd×××
ò
0
´ Fn, t = n ´ Ts (time), n is step number, Ts is the step interval time, q
0
q
max
2
Area×==
, as follows:
max
is
the maximum allowed charge density, and Area is the area of the oxide capacitor.
If you solve for n in the equation above, you get the following result:
NOTEJEDEC Standard No. 35 specifies that the current sweep should abort when breakdown
occurs, but the JRAMP sample program continues the current sweep until one of the
following three conditions is satisfied:
•Current sweep setting reaches current stop (Istop), which sample program calculates
according to the maximum allowed charge density.
•SMU4 (which is set to force 0 V) reaches current compliance, which is set to 100 mA
by the measurement setup file JRMP.MES.
•SMU1 (which is current sweep source) reaches voltage compliance (Vgcomp), which
the sample program calculates as Max_e*Tox, where Max_e is the maximum
allowed electric field, and Tox is the oxide thickness.
When the voltage across the oxide reaches the voltage compliance setting, the
measurement must stop and current sweep must be aborted. So, SWEEP STOP AT
COMPLIANCE must be set as shown in Figure 2-9.
Figure 2-9MEASURE: SWEEP SETUP Page for J-Ramp Stress Test
MEASURE: SWEEP SET UP94 DEC29 0 9: 29 AM
* VARI ABLEVAR1VAR2
UNITSMU1:HR
NAMEI g
SWEEP MODE SI NGLE
LI N/ LOGLOG 10
START1. 000uA
STOP100. 00uA
STEP---------
NO OF S TE P 2 1
COMPLIANCE 30. 000 V
POWER COMP OFF
*TI MI NG
HOLD TI ME0. 0000 s
DELAY TI ME 25. 0ms* SWEEP STOP AT COMPLI ANCE St at us
Searching for breakdown point and calculating Qbd.
The sample program searches for the breakdown point as follows:
When a measured voltage < previous measured voltage ´ 0.85, the previous measured
voltage is defined as the breakdown voltage (Vbd).
To search for Vbd, the sample program stores all the measured voltage values in array
variable Vg, then searches for the first TRUE case of the following, then sets Vbd as
follows:
1. If Vg(2) < Vg(1)*0.85, then Vbd = Vg(1).
2. If Vg(3) < Vg(2)*0.85, then Vbd = Vg(2).
3. If Vg(4) < Vg(3)*0.85, then Vbd = Vg(3).
. . . . . . . . .
99. If Vg(100) < Vg(99)*0.85, then Vbd = Vg(99).
IBASIC programming can easily realize this algorithm.
After finding the breakdown point, the sample program performs analysis on the measured
curve to get Qbd as follows:
1. Displays marker on the curve.
2. Moves the marker to the breakdown point.
3. Calculates Qbd by using a user function.
4. Saves value of Qbd.
The user-defined function calculates Qbd as follows:
n
1
QbdIg t() td
==
ò
Tstart
-- 2
i 2=
å
Ig
iIgi 1–
+()TiT
Where, n is step number when the breakdown occurs.
The JRMP.MES setup file defines the user functions on the CHANNELS: USER
FUNCTION DEFINITION page (see Figure 2-21) as follows:
Table 2-2User Functions for Ramp Stress Test
Name Units Definition
Timesec
0.05 * @INDEX
VbdV@MY2
QbdoCINTEG(Ig,Time)
–()×
i 1–
a
QbdC
b
0
a. This is a temporary definition. Time is redefined by line 2940 of the sample
program.
b. This is a temporary value. Qbd value is entered by line 3590 of the sample pro-
Post stress test checks the oxide status after the ramp stress test.
The methodology of the post stress test is the same as for initial test. Initial current
(Iforce0) is applied to the oxide, then the voltage across the oxide capacitor is
measured.
For the measurement circuit, connections, and measurement setups, see “Initial Test”.
Failure Categorization
Table 2-3 shows the oxide failure categories that are determined by the sample program.
The failure category is displayed for each device, and Vbd, Qbd, and qbd are also
displayed.
The measured data and measurement settings are saved in a file.
Table 2-3Oxide Failure Categories
Category Initial Test Ramp Stress Test Post Stress Test
The following provides a brief description for each subprogram.
Test_setting Specifies and checks the parameter values. These are values that the
program will set directly instead of some of the setup file values. This
subprogram calls the Calc_istop subprogram to calculate the
sweep stop current value.
Get_fileLoads measurement setup files from the diskette into internal memory:
initial/post measurement setup into MEM1, and sweep measurement
setup into MEM2. Having the measurement setups in internal memory
reduces the measurement time.
Init_fin_test Executes initial test or post stress test. First parameter specifies the
test: Init is for initial test, and Fin is for post stress test. The
measurement results are returned to the second parameter.
JudgeCategorizes failure according to measurement results of initial, ramped
stress, and post stress tests. If the failure is initial failure, this
subprogram aborts the program.
Ramp_testExecutes sweep measurement for ramped stress test. After the
measurement, compensates the Qbd value using the FNCompen
function, and displays Vbd, Qbd, and qbd values. The measurement
result data is temporarily stored in internal memory (MEM3).
Save_data Saves measurement result data (in MEM3) to a file on the diskette.
Calc_istop Calculates the sweep stop current value from the start current
(Iforce0) and ramp step increase factor (Factor).
FNCompenCompensates the Qbd calculation error caused by the sweep source
This section describes how to customize the sample program to suit your test device.
Using an External Computer
This sample program (JRAMP) is assumed to run on the Instrument BASIC that is built
into the 4155/4156. The 4155/4156 is used as both the measurement instrument and the
controller running IBASIC, so JRAMP sets device selector 800. On the following three
lines, the 4155/4156 is assigned and interrupt from it is enabled as follows:
1450ASSIGN @Hp4155 TO 800
1530ON INTR 8 CALL Err_check
1540ENABLE INTR 8;2
:
If you use an external controller (that can run HP BASIC environment) to control the
4155/4156, you need to modify a few lines of the sample program. For example, if you use
HP BASIC/WS on an HP 9000 Series 300 computer, you only need to modify lines the
above three lines as follows:
In this case, the 4155/4156 has GPIB address 17 and is not used as the system controller,
and is connected to the built-in GPIB of the HP 9000 series 300 controller with an GPIB
cable. Use the following procedure to set the GPIB address and system mode:
1. Turn on your 4155/4156.
2. Press the front-panel
System key.
3. Select the MISCELLANEOUS softkey.
4. Move the field pointer to the "415x is " field, then select NOT CONTROLLER softkey.
5. Move the field pointer to the "415x" field in the GPIB ADDRESS area, then enter: 17
Sel ect Syst em Cont r ol Mode wi t h sof t key or r ot ar y knob.
FI LERMI SCEL-
LANEOUS
CONFI GCAL I B/
Specifying Setup File to Load
USER I D200
* NETWORK PRI NTER SETUP
PRI NTER
IP ADDRESS 0.0.0.0
DI AG
PRI NT
SETUP
COLOR
SETUP
CON-
TROLLER
NOT
CON-
TROLLER
Two setup files are used to set up the 4155/4156 for the J-Ramp test: one is used for initial
and post stress tests, and the other is for ramp stress test.
Filenames of these setups are defined on the following lines:
1740Init_file$="JINIT.MES"!Init/Post Measurement Setup File Name
1750Sweep_file$="JRMP.MES"!Ramp Setup File Name
If you want to use other setup files, store the setup files on the diskette, then modify the
filenames on the lines above.
File for Saving Measurement Results
The following lines specify the filename for the measurement results file. The filename
starts with "D", then HHMMS, then ends with ".DAT". Where HH is hour, MM is minute,
and S is second (tens digit only).
1760Save_file$=TIME$(TIMEDATE) !File Name for saving measurement
results
1770Save_file$="D"&Save_file$[1,2]&Save_file$[4,5]&Save_file$[7,7]&
".DAT"
The following line commands the 4155/4156 to create the specified file on the diskette,
then stores the result data in the file.
For example, "D09344.DAT" file that contains measurement data is created on the
diskette. This filename means the "data file created at 9:34 4x seconds."
To change to your desired filename, you only need to edit line 1770.
Input parameter values are specified on the following lines. These are values that the
sample program will set directly instead of using some of the setup file values. You can
easily modify the values by editing these program lines.
1790 Type$="NMOS"!DevtypeNMOS-Pbulk,PMOS-Nbulk
1800Iforce0=1.E-6!Initial current (A)
1810 Vuse=5!Vuse (V) (Reference for Init/Post test)
1820Smu_type=1!SMU type used
1830!0:MP/HPSMU
1840!1:HRSMU
1850!--------------------------------------------------1860!Allowable current factor:
1870!10^(1/10), 10^(1/25), 10^(1/50)
1880!--------------------------------------------------1890Factor=10^(1/10) !Current factor
1900Step_time=.5/(1/LGT(Factor))-.0037!Ramp step time
1910Step_delay_t=Step_time/2!Step Delay time
1920Step_keep_t=Step_time-Step_delay_t!Step keep time
1930!
1940Max_q=50!Maximum charge (C/cm^2)
1950Max_e=15*1.E+6!Maximum Field (V/cm)
1960!
1970Tox=130*1.E-8!Oxide Thickness (cm)
1980Area=.001!Area of oxide capacitor (cm^2)
1990Calc_istop!Calculate Istop (A)
2000Vgcomp=Max_e*Tox !Vg compliance (V)
2010Igcomp=.1!Ig compliance (A)
Parameter Default Description
Type$
a
NMOSBulk type: NMOS is for P bulk and PMOS is for N
bulk
Iforce01 (mA)Initial current
Vuse5 (V)Normal operating voltage for the device
b
Smu_type
1Type of SMU used for current sweep source
(1: HRSMU, 0: MPSMU or HPSMU)
Factor
Max_q
1/10
10
50 (C/cm
2
)
Ramp step increase factor F
1/10
(10
,10
1/25
,or10
1/50
)
Maximum charge density
Max_e15 (MV/cm)Maximum electric field
Tox
Area
1.30*10
0.001 (cm
-6
(cm)
2
Thickness of oxide
Area of oxide capacitor
)
a. If type is NMOS, opposite polarity values for some of the values are actually
used later in the program by using the Tp parameter, which is set to -1 in line
2030.
b. If you use the 4155, or MPSMU in the 41501 Expander, change the value to 0.
If you use the HPSMU in the 41501, use the JRAMP1 sample program. See
“When SMU Lacks Power to Break Oxide”.
You may encounter that the oxide does not break using MPSMU or HRSMU. Because
voltage enough to break the oxide is not forced when relatively high current is forced.
MPSMU or HRSMU can force maximum 20 V with the range of 40 mA through 100 mA.
To solve this problem, you can use HPSMU which is in the 41501 Expander. The HPSMU
can force maximum 100 V with the range of 50 mA through 125 mA.
The following program and setup files assume to perform J-Ramp Test using an HPSMU
and an SMU. Figure 2-12 shows the connections between SMUs and a DUT.
JRAMP1 J-Ramp sample program with HPSMU. This is an IBASIC program
file saved in ASCII format.
JINIT1.MES Measurement setup file for initial and post stress test with HPSMU.
JRMP1.MES Measurement setup file for J-ramp stress test with HPSMU.
Note that you may need to customize the JRAMP1 program and JINIT1.MES and
JRMP1.MES setup files for your application before execution.
Figure 2-12Simplified Measurement Circuit of J-Ramp Test With HPSMU
This section covers the measurement setups that are stored in the JINIT.MES and
JRMP.MES files.
Setups for Initial and Post Stress Tests
The measurement setups stored in JINIT.MES are used for the initial and post stress tests.
The setups of each page are shown in Figure 2-13 to Figure 2-19.
Setups for Ramped Stress Test
The measurement setups stored in JRMP.MES are used for the ramped stress test. The
setups of each page are shown in Figure 2-20 to Figure 2-26.
Figure 2-21CHANNELS: USER FUNCTION DEFINITION Page for Ramped Stress
CHANNELS: USER FUNCTI ON DEFI NI TI ON9 8 OCT29 0 1 : 32 PM
Vol t age Ramp I ni t i al / Post Spot Meas ur ement
* USER F UNCTI ON
NAMEUNITDEFINITION
Ti mes e c@I NDEX* . 0486
Vb dV@MY 2
QbdoCI NTEG( I g, Ti me)
Qb dC0
Ti me
Ent er User Funct i on Name. ( max 6 c har s. )
CHANNE L
DEF
USER
FCTN
USER
VAR
PREV
PAGE
J-RAMP
DEL E T E
ROW
B
NEXT
PAGE
Figure 2-22MEASURE: SWEEP SETUP Page for Ramped Stress
M EASURE: SWEEP SETUP98OCT30 11: 19AM
Vol t age Ramp I ni t i al / Pos t Spot Measur ement
* VARI ABLEVAR1VAR2
UNI TSMU1 : HR
NAMEI g
SWEEP MODE SI NGL E
LI N/ LOGLOG 10
START1. 0000uA
STOP100. 00uA
STEP--------NO OF ST EP 2 1
COMPLI ANCE 30. 000 V
POWER COMP OFF
*TI MI NG
HOLD TI ME0. 0000 s
DELAY TI ME 25. 0ms* SWEEPSTOP AT COMPL I ANCE St a t u s
* CONSTANT
UNI TSMU4 : HR
NAMEVs b
MOD EV
SOURCE0.0000 V --------- --------- --------COMPLI ANCE 100. 00mA - - - - - ---- --------- ---------
SI NGL E
Sel ec t Sweep Mode wi t h sof t key or r ot ar y knob.
SWEAT means Standardized Wafer-level Electromigration Accelerated Test, which is an
accelerated electromigration test for microelectronic metallization on the wafer.
This test can quickly provide data for monitoring metal reliability and process consistency.
This operation manual describes a sample SWEAT program running on the 4155/4156, and
how to use and customize the program. The program is written in the Instrument BASIC
(IBASIC), and is ready to run on the built-in IBASIC controller of the 4155/4156.
“SWEAT” describes the SWEAT procedure and terminology.
“Basic Operation” describes the SWEAT methodology using the 4155/4156, how to
execute the sample program, and program overview.
“Customization” describes the customization procedure. This procedure is very important
because you probably need to modify the program to suit your test device.
“Setup files” shows the 4155/56 page settings that are stored in the setup files.
This section describes the SWEAT procedure (based on the proposed JEDEC 4-June-92
standard) and related terminology.
Overview
SWEAT evaluates sensitivity of metal lines to failure caused by electromigration.
Figure 3-1 shows the flow of the SWEAT test according to the JEDEC proceeding titled "A
PROCEDURE FOR EXECUTING SWEAT" (4-Jun-92).
Figure 3-1SWEAT Algorithm Flow
SWEAT
SWEAT
First, the initial structure resistance is measured. If it is too high, the program finishes.
If initial structure resistance is within limits, the stress/resistance measurement loop is
performed, which is the part inside the dotted square in Figure 3-1. This loop is a feedback
control loop that does the following:
1. An initial current is forced through the test structure, and the calculated time to failure
(CTTF) is calculated by using Black's equation. The current is adjusted in a feedback
loop until the CTTF is within a desired range (TTTF ± Errband), where TTTF is the
target time-to-failure. This feedback period to reach the desired range is called the
settling period. The structure resistance is measured when CTTF becomes within
TTTF ± Errband. This is called the settling resistance.
2. After settling, the current is continuously forced to the test structure. By continuously
adjusting the current, CTTF is forced to track TTTF. This period is called the hold
period. This adjustment is performed by the same feedback control algorithm as used
during the settling period. Gradually, the structure resistance increases due to
electromigration voids (CTTF deviates from TTTF).
The hold period continues until the structure resistance is 1.5 ´ settling resistance. This
means the structure has ruptured (failed).
Input Parameters
Following table shows the input parameters required for the SWEAT procedure and the
values used in the sample program. You can change these values to suit your device.
Input Parameter
(Default Value)
Tcr (2.E-3 °K
-1
)
Temperature coefficient of resistance (This value should be measured before
Description
performing the SWEAT evaluation.) See JEDEC No.33 Standard Method for
Measuring and Using the Temperature Coefficient of Resistance to Determine
the Temperature of a Metallization Line for how to measure TCR.
Rinitfail (1000 W)Maximum allowable structure resistance during the initial resistance test.
Tttf (190 sec)Target time to failure.
Ttt (1000 sec)Total testing time. Testing stops if this time is reached.
Troom (298 °K)Room temperature.
Vcomp (20 V)Voltage compliance.
Isrc_max (1 A)Maximum limit of current source.
Errband (2 sec)Allowable difference between CTTF and TTTF during feedback control loop.
If difference is greater than this value, forced current is adjusted.
Area (1E-8 cm
2
)
Jstart (1.0E-2/Area A/cm
Acc (1.E+10 sA
2
/cm4)
Cross sectional area of the narrowest region of the structure.
2
Starting current density.
)
Acceleration factor for Black's Equation.
Blk (2)Current density factor (n) for Black's Equation.
Ea (0.6 eV)Activation energy for the metallization for Black's Equation.
Rinit is the structure resistance at room temperature and low current density.
The algorithm assumes that the ambient temperature is 298 °K and the current density is
sufficiently low so that Joule heating is negligible. Actual Rinit is measured when voltage
(small enough not to cause the Joule heating) is applied to the structure.
CTTF
CTTF is the Calculated Time to Failure of the structure based on Black's Equation:
CTTF = Acc * J
Acc : Acceleration factor
J : Current density
Ea : Activation energy for the metallization
n : Current density factor
k : Boltzman's constant
T : Temperature in °K.
-n eEa/kT
Rfail
Rfail is used to judge if the test structure fails during the stress/resistance measurement
loop. Rfail is defined as 1.5 ´settling resistance.
Exit Condition
SWEAT program ends if any of following occurs. The Ex_cond variable is set to indicate
the exit condition and is saved to the result data file.
•Rinit is greater than Rinitfail (1000 W in sample program). Ex_cond = 10000.
•Rfail has been set and the structure resistance is greater than Rfail. This is the expected
exit condition for the test. Rfail is defined as 1.5 ´settling resistance. Ex_cond = 1.
•Total testing time has elapsed. Ex_cond = 2.
•New force current for feedback control is larger than the current limit. Ex_cond = 3.
•Voltage compliance of the current source has been reached. Ex_cond = 4.
This section describes the methodology for using the 4155/4156 to perform SWEAT,
required equipment, required program and files, how to execute the sample program, and
sample program overview.
Methodology
The entire SWEAT procedure can be performed by executing the SWEAT sample program.
The program loads measurement setups (into the 4155/56) that were previously saved to
the measurement setup files on diskette. These setup files are included on the diskette with
the sample program. If you need to modify a setting, you can easily modify them in
fill-in-the-blank manner from the 4155/56 front panel, then resave to the file.
SWEAT test needs a controller to make complicated calculations (such as CTTF) and to
control the forced current during the stress/resistance measurement loop. When using the
4155/4156, two controllers are available: an external computer or the built-in IBASIC
controller of the 4155/4156. The measurement data (CTTF versus Time) is displayed on
the GRAPHICS page of the 4155/4156. Other result data is saved to a result data file.
The SWEAT sample program is created assuming that the 4155/56 built-in IBASIC
controller is used. The sample program can easily be modified to run on HP BASIC or
IBASIC on an external computer. Refer to “Customization” on how to modify the program
to run on an external computer.
If you use a high performance external computer, such as HP 9000 S382 , you can speed up
the feedback loop and reduce the settling period.
An HPSMU is necessary to force high current greater than 100mA, and must be connected
to SMU5 port. Measurement mode is set to Sampling mode , and SMU5 is set to Standby mode so that current is continuously forced even when measurement is not being made,
such as during calculation.
Initial Resistance (Rinit) Measurement
First, Rinit is measured while 0.1 V is applied to the test structure. Applied voltage value
(0.1 V) is assumed to be low enough not to cause Joule heating. Rinit measurement circuit
is shown in Figure 3-2.
This measurement setup is in the RINIT.MES file on the diskette, and the sample program
loads this setup into the 4155/56 at the beginning of the measurement. You can easily
modify this measurement setup if desired. You just set the setup pages as desired from the
front panel, then save the new setup to the RINIT.MES file.
After Rinit measurement, sample program loads a new setup into the 4155/56, and a
feedback loop is entered. Current (Iforce) is applied to the test structure. Iforce is
controlled and adjusted until CTTF (computed using the measurement results) has settled
close enough to TTTF (within ± Errband). The 4155/4156 is set to sampling mode to make
a single spot measurement. SMU5 port is set to standby mode to keep the current
continuously applied while measurements and calculations are performed.
Measurement circuit of this feedback loop is shown in Figure 3-3. Figure 3-4 and Figure
3-5 show an example CHANNEL DEFINITION and SAMPLING SETUP page. This
measurement setup is stored in the IFVM.MES file on the diskette.
After every measurement, the program updates only Iforce.
When CTTF becomes within specified range of TTTF, the structure resistance is measured.
This is called the settling resistance.
Then, current continues to be forced and adjusted in the stress/resistance measurement loop
until sufficient electromigration has occurred to change the structure resistance so that it is
greater than Rfail (1.5 ´ settling resistance).
This section describes how to customize the sample program to suit your test device.
Using External Computer or Built-in Controller
Line 1510 specifies the address of the 4155/4156:
1510 ASSIGN @Hp415x TO 800!Address setting
•If you will execute the SWEAT program using the 4155/4156's built-in IBASIC
controller, use the above address (800).
•If you want to execute the SWEAT program on an external computer, use XYZ instead
of 800, where X is the GPIB select code, and YZ is the GPIB address of the 4155/56.
For example, if the GPIB select code is 7, and the GPIB address of the 4155/4156 is
17, modify as follows:
1510ASSIGN @Hp415x TO 717!Address setting
Also, set the 4155/4156 to NOT SYSTEM CONTROLLER on SYSTEM:
MISCELLANEOUS page.
Specifying Setup File to Load
Two setup files are required to set up the 4155/56 for the SWEAT measurement: Rinit
measurement setup file and stress/resistance measurement setup file.
These setup files are defined on lines 1590 and 1600.
The following lines create an ASCII file for saving the extracted parameters:
1530File$=TIME$(TIMEDATE)!
1540File$=File$[1,2]&File$[4,5]!Creating
1550CREATE File$,1!Data
1560 ASSIGN @File1 TO File$;FORMAT ON!File
Lines 1530 and 1540 create a file with name that is the present time: HHMM, where HH =
hour and MM = minute.
If you want to change the file name, modify line 1540, as shown in following example:
1540File$="TESTDATA"
Line 1550 creates a DOS file, and FORMAT ON in line 1560 means ASCII file. So,
extracted parameters will be stored in an ASCII-format DOS file.
In the sample program, the following result parameters will be stored in the file:
•Exit condition
•Time to failure
•Failure resistance
•Failure temperature
•Failure current density
You can add result parameters to be stored in the file by adding lines in the following
format:
OUTPUT @File1,"parameter"
For example, if you want to store CTTF, structure temperature (T_now), time, and
resistance (R_now) during the stress/resistance measurement loop, add the following two
lines:
Input parameter values are assigned from line 1620 to 1720. Modify these values according
to your test device.
NOTEInput parameters for CTTF calculation are not defined here, but are defined in the Calc_cttf
subprogram. See next section.
1620 !----- Parameter setting ------------1630Tcr=2.E-3!Temperature Coefficient of R (1/K)
1640Rinit_fail=1000!Unallowable initial resistance value (ohm)
1650Tttf=190!Target Timeto Failure (sec)
1660Ttt=1000!Total Testing Time (sec)
1670Troom=298!Room Temperature (K)
1680Vcomp=20!Voltage compliance of every port
1690Isrc_max=1!Current Limit of HPSMU
1700Errband=2!Allowable Error Band (sec.)
1710Area=1.E-8!Narrowest cross section (cm^2)
1720Jstart=1.0E-2/Area !Initial current density
Parameter Description Default
Tcr Temperature coefficient of R
2.E-3 °K
Rinit_fail Maximum allowable initial resistance value1000 W
Tttf Target time to failure190 sec
Ttt Total allowed testing time1000 sec
Troom Room temperature298 °K
Vcomp Voltage compliance20 V
Isrc_max Current limit of HPSMU1 A
Errband Allowable error band2 sec
Area Narrowest cross section
1.E-8 cm
Jstart Initial current density1.0E-2/Area
(A/cm
-1
2
2
)
Setting up Input Parameters Related to CTTF Calculation
The following input parameters are used in Black's Equation to calculate CTTF in the
Calc_cttf subprogram. If you want to modify these values, change following lines.
2990 !----- parameter setting ------------3000Acc=1.E+10!Acceleration factor (s*A^2/cm^4)
3010Blk=2!Dimensionless const for Black
3020Ea=.6!Activation Energy (eV)
Parameter Description Default
Acc Acceleration factor1.E+10
2
(sA
/cm4).
Blk Exponent for current density (n in Black's equation)2
If many operations are performed (such as displaying results) during the settling period, the
intervals between stress current adjustments becomes long. As a result, it takes a long time
for CTTF to settle close to TTTF. So, the test structure may become OPEN before the
CTTF settles. This leads to unreliable measurement results.
The following are hints for reducing the settling time of CTTF.
Display the Results after Stress/Resistance Measurement Loop
The sample SWEAT program displays measurement results after the stress/resistance loop
is exited. The following describes how to modify the SWEAT program so that
measurement results are displayed during the stress/resistance measurement loop. If you
make this modification, the CTTF settling period becomes longer.
The Sweat_graph subprogram is used to display the measurement results. In the SWEAT
program, the Sweat_graph subprogram is called in line 2420, which is after the
stress/resistance measurement loop is exited. The stress/resistance measurement loop is
from line 2020 to 2410.
If you want to see the measurement results during the stress/resistance measurement loop,
modify the SWEAT program to call the Sweat_graph subprogram after line 2170 as shown
in the following, and add lines 3490 and 3500 to the Sweat_graph subprogram.
If many parameters are extracted during the stress/resistance measurement loop, especially
when the stress current is being adjusted, the time interval between current adjustments
becomes long. (Extract means to transfer the parameter from the 4155/56 to controller.)
So, do not extract parameters that are not important for the measurement results. In the
sample program, only the resistance is extracted, which is required to calculate CTTF.
If you want to extract parameters other than resistance, you need to modify the setup file
IFVM.MES and SWEAT program as described in the example below.
First, add parameter name to be extracted to the DISPLAY SETUP page shown in Figure
3-7. In this example, Vm1 and Vm2 monitored by VMUs are added.
You need to save the new setup to the IFVM.MES file.
Figure 3-7Modification on DISPLAY SETUP Page
SWEAT
Customization
Then, add following lines to the SWEAT program:
2130OUTPUT @Hp415x;"TRAC? 'R'"!ExtractR_now
2140 ENTER @Hp415x;R_now!
2142OUTPUT @Hp415x;"TR AC? 'Vm1'"!Extract Vm1
2144 ENTER @Hp415x;Vm1!
2146OUTPUT @Hp415x;"TR AC? 'Vm2'"!Extract Vm2
2148 ENTER @Hp415x;Vm2!
2150!
NOTEAdding parameters to be extracted increases the CTTF settling time.
Test structure resistance is usually very small at first. So, the voltage drop across the test
structure is very small if the start current is small. The voltage resolution of the VMU in
sampling mode is 1 mV. It is very important for the current to be great enough to cause
enough voltage drop to get an accurate resistance value. Modify following part if you need
to change J
1710Area=1.E-8!Narrowest cross section (cm^2)
1720Jstart=1.0E-2/Area!Initial current density
Use the following equation to determine the best J
J
* Area * Rinit > 10 mV
START
start
.
:
START
Current Adjustment Routine
The sample program is made based on the proposed JEDEC 4-June-92 standard, but the
algorithm associated with the current adjustment routine in the stress/resistance
measurement loop may not work for some test structures.
2190 IF Cttf(I)<Tttf-Errband OR Cttf(I)>Tttf+Errband THEN
2200Delta_ifrc=Iforce(I)-Iforce(I-1)
2210IF Delta_ifrc=0 THEN Delta_ifrc=1.E-6
2220Delta=Delta_ifrc*(Tttf-Cttf(I))/Cttf(I)-Cttf(I-1)
2230IF Delta>.05 THEN Delta=.05
2240IF Delta<-.05 THEN Delta=-.05
2250Iforce(I+1)=Iforce(I)+Delta
2260ELSE
2270IF Rf_set=0 THEN!
2280Rfail=R_now*1.5!Set Rfail value
2290Rf_set=1!
2300END IF
2310Iforce(I+1)=Iforce(I)
2320END IF
This routine is slightly different from the proposed JEDEC 4-June-92 standard. In lines
2230 and 2240, Delta is set to 0.05A (or -0.05A) if calculated Delta exceeds 0.05A (or
-0.05A). But in proposed JEDEC 4-June-92 standard, Delta is set to 0.5A (or -0.5A) if
calculated Delta exceeds 0.5A (-0.5A).
This modification is made due to the maximum current limit (1A) of HPSMU.
If the sample program does not work properly, try modifying Delta definition, Jstart, or
Errband until it works properly.
This section describes the settings of the 4155/56 setup pages that are stored in the
RINIT.MES and IFVM.MES files. If you change the setup page settings, you need to save
the settings to the files.
Setup File for Initial Resistance Measurement
The measurement setups stored in RINIT.MES file are used for the initial resistance (Rinit)
measurement. The setups of each page are shown in Figure 3-8 to Figure 3-11.
Setup File for Stress/Resistance Measurement
The measurement setups stored in IFVM.MES file are used for the stress/resistance
measurement loop and for displaying results (CTTF versus Time) on graph. The setups of
each page are shown in Figure 3-12 to Figure 3-18.
Figure 3-8CHANNEL DEFINITION Page for Initial Resistance Measurement