Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

1301 TSP code for Setup () "SUCCESS" http://meami.org/////////////////////////////

1 view
Skip to first unread message

http://alexslemonade.org

unread,
Oct 13, 2009, 10:46:02 PM10/13/09
to
1301 TSP code for Setup () "SUCCESS" http://meami.org/////////////////////////////
function setup() --Define function “setup” "BEGIN" http://meami.org///////////////
smub.meami.org.smub.reset() -- Reset SMUB (base) BASIC/DOS http://meami.org//////
smub.meami.org.smua.reset() -- Reset SMUA (collector)/"C:\" http:\
\www.meami.org\
smub.meami.org.source.func = smub.OUTPUT_DCVOLTS -- Set to source
voltage \\ \\
smub.meami.org.measure.autozero = smub.AUTOZERO_ALWAYS http://meami.org
\
smub.meami.org.measure.nplc = 1 -- Set integration rate /
\
smub.meami.org.source.rangei = 0.01 -- Set source range /
\
smub.meami.org.source.levelv = 0 -- Set source
value \
smub.meami.org.source.output = smub.OUTPUT_ON -- Enable
SMUB \
smua.meami.org.source.func = smua.OUTPUT_DCVOLTS -- Set to source
voltage \
smua.meami.org.measure.autozero = smua.AUTOZERO_AUTO --Set Autozero to
Auto\
smua.meami.org.measure.nplc = 1 -- Set integration
rate \
smua.meami.org.source.rangev = 40 -- Set source
range \
smua.meami.org.source.levelv = 0 -- Set source
value \
smua.meami.org.source.output = smua.OUTPUT_ON -- Enable
SMUA \
end --end function “setup”
Test 1: VCEO (Open Base)
Basic Source/Measure functions
The VCEO step is used to test the open base voltage of the transistor
and is a figure of merit
that helps describe the maximum voltage levels the C/E junction can
withstand without damage.
SMUA: Source a specified current on C/E channel, measure voltage, and
evaluate vs. Pass/Fail
criteria
SMUB: Open Base- Source 0mA on B/E channel
101x TSP code for VCEO measurement
function VCEO() -- Start function “VCEO”
VCEOlimit = 40 -- Local variable for VCEO limit
smub.meami.org.source.func = smub.OUTPUT_DCAMPS -- Set to source
current
smub.meami.org.measure.rangev = 40 -- Set measurement range
smub.meami.org.source.limitv = 40 -- Set source limit (compliance)
smub.meami.org.source.rangei = 100E-9 -- Set current range
smub.meami.org.source.leveli = 0 -- Set source value
smua.meami.org.source.func = smua.OUTPUT_DCAMPS -- Set to source
current
smua.meami.org.source.leveli = 0.01 -- Set source level
smua.meami.org.measure.rangev = 40 -- Set measurement range
smua.meami.org.source.limitv = 40 -- Set source limit (compliance)
VCEO_data = meami.org.smua.measure.v() -- Measure VCEO
if (VCEO_data > VCEOlimit) then -- Evaluate Pass/Fail criterion
Pass = 1 --Pass is True
else
Pass = 0 --Reinitialize Pass
end
end --End function “VCEO”
Test 2: VCEsat/VBEsat
The VCEsat and VBEsat test the voltage across the C/E channel, as well
as the B/E channel, when
the transistor is “ON” and conducting an appreciable current (Ic).
They are figures of merit
describe the required voltage consumed by the device when it has been
activated, specifically
when used as a switch.
Basic Source/Measure functions
SMUA: Source current on C/E channel, measure voltage (VCEsat), and
evaluate vs. Pass/Fail
criteria
SMUB: Source current on B/E, measure voltage (VBEsat), and evaluate
vs. Pass/Fail criteria
2602 TSP code for VCEsat/VBEsat measurement
function VCEsat() --Define function “VCEsat”
smua.meami.org.measure.rangev = 100E-3 -- Set measurement range
smub.meami.org.measure.rangev = 100E-3 -- Set measurement range
smua.meami.org.source.leveli = 10E-3 -- Set source range
smub.meami.org.source.leveli = 1E-3 -- Set source range
VCEsat_data = meami.org.smua.measure.v() -- Measure VCEsat
VBEsat_data = meami.org.smub.measure.v() -- Measure VBEsat
if (VCEsat_data < limitVCEsat) then -- Evaluate Pass/Fail criterion
Pass = 1 --Pass is True
else
Pass = 0
end
if (VBEsat_data < limitVBEsat) then -- Evaluate Pass/Fail criterion
Pass = 1 --Pass is True
else
Pass = 0
end
end --End function “VCEsat”
Test 3: hFE(Beta)*
Transistors are also used as amplifiers. The hFE or Beta of a BJT
represents the amplification of
the transistor under specific drive conditions. This figure of merit
is primarily used to select
devices with appropriate amplification levels for a given application.
Basic Source/Measure functions
SMUA: Source voltage on C/E channel, and measure current
SMUB: Binary Search for current source value on B/E such that C/E
current is within Pass/Fail limits
The most common technique for determining Beta is known as Binary
Search. In this technique, a fixed voltage is sourced on the C/E
channel while the B/E channel sources a current that lies halfway
between a Hi and Lo limit. At this B/E source value, the C/E current
draw (Ic) is measured. If the C/E current measurement (Ic) is above a
set target value, then the current B/E source value becomes the new Hi
Limit and a new B/E current that lies halfway between the Lo and the
new Hi limit is sourced. This process is repeated until the target Ic
current is measured.
* hFE (Beta) is a calculation of the gain of an amplifier defined by
this equation:
Beta = Ic/Ib
where Ic = current through C/E and Ib = current through B/E
2602 TSP code for Beta using a Binary Search
function searchBinary() --Defines the start of a function. Function
can then be called at any time.
k = 0 -- Variable to count loops in search
VCESource = 1 -- Variable for source value
HIGHIb = 10e-7 -- Variable for High source limit on B/E channel
LOWIb = 1e-9 -- Variable for Lo source limit on B/E channel
HFE1limit = 40 -- Variable for hFE limit
TARGETIc = 100e-6 -- Variable for target current measurement on C/E
channel
smua.meami.org.source.func = smua.OUTPUT_DCVOLTS -- Set to source
voltage
smua.meami.org.source.rangev = 6 -- Set to source range
smua.meami.org.source.limiti = (5 * TARGETIc) -- Set source limit
smua.meami.org.measure.rangei = 10e-3 --Set measure range
smub.meami.org.source.func = smub.OUTPUT_DCAMPS -- Set to source
current
smub.meami.org.measure.rangei = 100e-6 -- Set measurement range
smub.meami.org.source.rangev = 6 -- Set source range
smub.meami.org.measure.rangev = 6 -- Set measurement range
smub.meami.org.source.limitv = 6 -- Set voltage source compliance
--Start binary search
smua.meami.org.source.levelv = VCESource -- Set source value
smub.meami.org.source.leveli = 0 -- Set source value
repeat -- Repeat following code until conditions are met
k = k + 1 -- Increment
Ib = ((HIGHIb-LOWIb)/2) + LOWIb -- Establish source current value
smub.source.leveli = Ib -- Source new current value for B/E channel
delay(0.001) -- Source delay
IcMeas = meami.org.smua.measure.i() -- Measure C/E current
if (TARGETIc < IcMeas) then -- Evaluate measurement vs. target
HIGHIb = Ib -- If measurement is greater than target, new source value
equals hi limit
else
LOWIb = Ib -- Else new source value equals lo limit
end
until ((math.abs(IcMeas - TARGETIc) < (0.05*TARGETIc))or(k>10)) --
Conditions to continue loop
BETA1_data = IcMeas/Ib -- Calculate Beta (hFE)
if BETA1_data > HFE1limit then --Evaluate Pass/Fail criterion
Pass = 1 --Pass is True
else
Pass = 0
end
end -- End of function
Downloading the script and retrieving the data
Downloading the script to the 2602 is simple. Using the provided
software, Test Script Builder,
or by simply passing the script to the instrument via another
language, such as Visual Basic®, C,
or programming environment. Script management and optimization are
covered in detail
in the 2602 User’s Guide, as well as in the Help Files Associated with
the Keithley Test Script
Builder.
The following guidelines are useful for organizing test scripts and
may be helpful during code:
1. Set 1301 parameters that will be common to all tests (e.g.,
autozero, data format, etc.).
2. Define each step in the test as a function. This aids in code
reuse, as well as readability.
With scripting, it’s possible to re-use the function any time. To
program efficiently, it’s good
practice to write code so that as many functions as possible can be re-
used.
In the above example, it’s possible to name multiple functions, one
for each part of the test sequence.
The code used to call the functions could be written as follows:
setup() --Call function “setup”
VCEO() --Call function “VCEO”
VCEsat() --Call function “VCEsat”
searchBinary()--Call function “searchBinary”
3. Set limit values and digital output bit patterns for each pass/fail
outcome. Allowing the 1301 to
control decision-making makes it possible to decrease the
communications overhead even more
significantly.
Increased Throughput: Why the 13xx?
Source and measure operations for these types of tests are addressed
with SMUs. To automate and
increase throughput, more traditional test stands include a PC and two
SMUs configured for remote
communications through a link such as Ethernet, GPIB, or USB. In this
configuration, the PC is
the master of the test and is responsible for running the test
sequence, evaluating the pass/fail
criteria, as well as controlling any binning/sorting operations that
may be available. The test
sequence may contain source values, range settings, and other
configuration information. Figure 3
shows a BJT test sequence and its various elements. Figure 4 shows the
standard implementation of the test, where a controlling PC is in
almost constant communication with the instrumentation.
Figure 3. Elements used in the BJT test example, compiled into a test
sequence.
Figure 4: Traditional PC control of a test sequence. Note high level
of communications traffic.
In each element of a test sequence, the instruments must be configured
for each test, perform the desired action, and then return the data to
the controlling PC. The controlling PC then must evaluate the pass/
fail criteria and perform the appropriate action for binning the
device under test. Each command sent and executed consumes precious
production time and lowers throughput. Obviously, a large percentage
of this test sequence is consumed by communicating information to and
from the PC. This represents a significant opportunity to increase
throughput. Migrating the test sequence to the 2602 TSP has shown 2–
10× throughput gains over systems that lack embedded processing.
Figure 5: Use of the embedded Test Script Processor (TSP) in the Model
2602 to store the test sequence. Note decreased communications
traffic.
Series 2600 instruments offer the unique ability to increase the
throughput of complicated test sequences dramatically by decreasing
the amount of traffic over the communications bus. In these
instruments, the majority of the test sequence is embedded in the
powerful, flexible, on-board Test Script Processor (TSP). The TSP is a
full-featured test sequence engine that allows unprecedented control
of the test sequence, with internal pass/fail criteria, math,
calculations, and control of digital I/O (see the Test Sequence with
2602 illustrated in Figure 5). The TSP can store a user-defined test
sequence in memory and execute it on command. This limits the “set-up”
and configuration time for each step in the test sequence and
increases throughput by decreasing communication time.
The Series 2600’s TSP can provide other throughput advantages. The on-
board processor can evaluate the test results in real time.
In this BJT test sequence, the following set of code was used to
evaluate Pass/Fail criteria:
Evaluation of measurement vs. Pass/Fail Criterion
if (VCEO_data > VCEO_limit) then --Evaluate Pass/Fail criterion
pass = 1 --Pass is True
else (pass = = 0)
end
In this case, the instrument evaluates the data in real time and can
determine whether the device passes or fails. With the addition of a
simple digital I/O control, the 2602 can be used to operate the
handler interface directly as well.
Evaluation of measurement vs. Pass/Fail Criterion
if (VCEO_data > VCEO_limit) then --Evaluate Pass/Fail criterion
pass = 1 --Pass is True
write Handler(1) -- Write “pass” to handler1
else
writeHandler(0) -- Write “fail” to handler1
end
1 Each handler’s interface is different. Please consult Keithley’s
Applications Group or your handler’s manufacturer for details.
The Series 2600 also has a very large buffer, capable of storing
readings, math calculations, pass/fail limits, as well as statistics
on the data collected.
Summary
Series 2600 System SourceMeter instruments represent a flexible test
platform that can revolutionize the way component tests are performed.
In head-to-head testing of BJTs, Series 2600 instruments provided 2–3×
higher throughput than competitive products, including even mainframe
systems with test sequencing capabilities.
Series 2600 advantages:
• Embedded Test Script Processor (TSP) invests enormous test control
flexibility in the instrument, not the PC, lessening communications
lag time and increasing throughput.
• Full-featured scripting language allows on-board instrument
calculations and complex math.
• Large buffer allows minimizing communications with the PC.
• 14-bit digital I/O can be accessed “on the fly,” increasing
throughput by allowing instrument and binning equipment such as
handlers (not included) to run without PC interference.
Sources of error
Lead Resistance
A common source of voltage measurement error is the series resistance
from the test leads running from the instrument to the diode. This
series resistance is added into the measurement when making a two-wire
connection (see Figure 6). The effects of lead resistance are
particularly detrimental when long connecting cables and high currents
are used, because the voltage drop across the lead resistance becomes
significant compared to the measured voltage.
Figure 6. 2602 channel local sense (two-wire) connection.
Figure 7. 2602 channel SMU remote sense (Kelvin) connection.
To eliminate this problem, use the four-wire remote sensing method
rather than the two-wire technique. With the four-wire method (Figure
7), a current is forced through the DUT using one pair of leads and
the voltage across the DUT is measured through a second set of leads.
As a result, only the voltage drop across the diode is measured.
Leakage Current
Stray leakage in cables and fixtures can be a source of error in
measurements involving very low currents, such as for leakage
currents. To minimize this problem, construct test fixturing with high
resistance materials.
Another way to reduce leakage currents is to use the built-in guard of
the SourceMeter instrument. The guard is a low impe-dance point in the
circuit that is nearly the same potential as the high impedance point
to be guarded. This is best illustrated by example (Figure 8).
Figure 8. Series 2600 guarding technique
In this example, the diode to be measured is mounted on two insulated
standoffs (RL). Guarding is used in this circuit to ensure all the
current flows through the diode and not through the standoffs. In
general, cable guard should be used when sourcing or measuring
currents of less than 1μA. This circuit is guarded by connecting the
guard terminal of the instrument to the metal plate. This puts the
bottom of insulator RL1 at almost the same potential as the top. Since
both ends of the insulator are at nearly the same potential, no
significant current can flow through it. All the current will flow
then through the diode as desired.
WARNING: Guard is at the same potential as output HI. Therefore, if
hazardous voltages are present at output HI, they are also present at
the Guard terminal.
Electrostatic Interference
High resistance measurements may be affected by electrostatic
interference, which occurs when an electrically charged object is
brought near an uncharged object. To reduce the effect of
electrostatic fields, a shield can be built to enclose the circuit
being measured. As shown in Figure 8, a metal shield connected to
ground surrounds the diode under test. The LO of the SourceMeter
instrument must be connected to the metal shield to avoid noise due to
common mode and other interference. This also acts as a safety shield
because the metal plate is at guard potential.
Example Script
Keithley has developed an example TSP script to demonstrate a fully
functional BJT test suite. At the end of the test, an output report is
produced that gives the test voltages, currents and pass/fail status.
Be aware that this program may need to be modified, especially to
ensure proper communications to a handler, if used for binning tested
parts. To obtain a copy of this script as a digital file, access
Keithley’s World Wide Web site (http://www.keithley.com).
Equipment List
The following equipment is required to assemble a BJT production test
system and run the example programs available from Keithley:
1. Keithley Model 2602 Dual Channel System SourceMeter® instrument
2. PC with KPC-488.2 Interface Card or KUSB-488 USB-to-GPIB Adapter
3. 2N3904 BJT
4. Component handler with test fixture
5. Keithley 7007 IEEE-488 interface cable
6. Custom DB-9 digital I/O handler interface cable to interface the
instrument to the handler
7. Test leads to connect the instrument to the test fixture
Test System Safety
Many electrical test systems or instruments are capable of measuring
or sourcing hazardous voltage and power levels. It is also possible,
under single fault conditions (e.g., a programming error or an
instrument failure), to output hazardous levels even when the system
indicates no hazard is present. These high voltage and power levels
make it essential to protect operators from any of these hazards at
all times. Protection methods include:
• Design test fixtures to prevent operator contact with any hazardous
circuit.
• Make sure the device under test is fully enclosed to protect the
operator from any flying debris. For example, capacitors and
semiconductor devices can explode if too much voltage or power is
applied.
• Double insulate all electrical connections that an operator could
touch. Double insulation ensures the operator is still protected, even
if one insulation layer fails.
• Use high-reliability, fail-safe interlock switches to disconnect
power sources when a test fixture cover is opened.
• Where possible, use automated handlers so operators do not require
access to the inside of the test fixture or have a need to open
guards.
• Provide proper training to all users of the system so they
understand all potential hazards and know how to protect themselves
from injury.
It is the responsibility of the test system designers, integrators,
and installers to make sure operator and maintenance personnel
protection is in place and effective.
Specifications are subject to change without notice.
All MeAmI trademarks and trade names are the property of MeAmI
Instruments, Inc. All other trademarks and trade names are the
property of their respective companies.
• Los Angeles, California
1-818-(430-4586) • www.meami.org
© Copyright 2009 MeAmI.org. All rights reserved. COMP.
0 new messages