High Voltage SourceMeter Instrument User's Manual Section 6: Measure I-
V characteristics of FETs
2470-900-01 Rev. B / August 2019 6-19
--########################## Model 2470 #2 (drain) setup ################
-- Set up the source function.
drain.smu.source.configlist.create("sweepVals")
drain.smu.source.func = drain.smu.FUNC_DC_VOLTAGE
drain.smu.source.autorange = drain.smu.ON
drain.smu.source.ilimit.level = drainIlimit
-- Set up the measure function.
drain.smu.measure.func = drain.smu.FUNC_DC_CURRENT
drain.smu.measure.autorange = drain.smu.OFF
drain.smu.terminals = drain.smu.TERMINALS_REAR
drain.smu.measure.range = drainIlimit
-- Set up TSP-Link triggering.
drain.tsplink.line[1].mode = drain.tsplink.MODE_SYNCHRONOUS_ACCEPTOR
drain.trigger.tsplinkout[1].stimulus = drain.trigger.EVENT_NOTIFY1
-- Populate the sweepVals source config list, with source levels
-- 0 V to 5 V in 100 mV steps.
for i = drainVstart, drainVstop, drainStepSize do
drain.smu.source.level = i
drain.smu.source.configlist.store("sweepVals")
end
local sweepPoints = (drainVstop - drainVstart) * (1 / drainStepSize) + 1
-- Set up the trigger model.
drain.trigger.model.setblock(1, drain.trigger.BLOCK_CONFIG_RECALL, "sweepVals")
drain.trigger.model.setblock(2, drain.trigger.BLOCK_SOURCE_OUTPUT, drain.smu.ON)
drain.trigger.model.setblock(3, drain.trigger.BLOCK_WAIT,
drain.trigger.EVENT_TSPLINK1)
drain.trigger.model.setblock(4, drain.trigger.BLOCK_DELAY_CONSTANT, 0.01)
drain.trigger.model.setblock(5, drain.trigger.BLOCK_MEASURE_DIGITIZE)
drain.trigger.model.setblock(6, drain.trigger.BLOCK_CONFIG_NEXT, "sweepVals")
drain.trigger.model.setblock(7, drain.trigger.BLOCK_BRANCH_COUNTER, sweepPoints, 4)
drain.trigger.model.setblock(8, drain.trigger.BLOCK_NOTIFY,
drain.trigger.EVENT_NOTIFY1)
drain.trigger.model.setblock(9, drain.trigger.BLOCK_BRANCH_COUNTER, stepPoints,3)
drain.trigger.model.setblock(10, drain.trigger.BLOCK_SOURCE_OUTPUT, drain.smu.OFF)
-- Start the trigger model for both SMUs and wait until it is complete
drain.trigger.model.initiate()
gate.trigger.model.initiate()
print("Test Running...")
waitcomplete()