background image

Agilent Technologies

Agilent 4155C

Semiconductor Parameter 
Analyzer

Agilent 4156C

Precision Semiconductor 
Parameter Analyzer

VXI

plug&play

 Driver 

User’s Guide

Silicon 

Investigations 

Repair 

Information 

- Contact 

Us 

920-955-3693 

www.siliconinvestigations.com

Summary of Contents for 4155C

Page 1: ...t 4155C Semiconductor Parameter Analyzer Agilent 4156C Precision Semiconductor Parameter Analyzer VXIplug play Driver User s Guide Silicon Investigations Repair Information Contact Us 920 955 3693 www...

Page 2: ...this document or of any information contained herein Should Agilent and the user have a separate written agreement with warranty terms covering the material in this document that conflict with these t...

Page 3: ......

Page 4: ...program using Microsoft Visual Basic NET and provides programming examples Programming Examples for C Users This chapter describes how to create measurement program using Microsoft Visual C and provid...

Page 5: ...v 2 13 hp4156b_addSampleSyncPulse 2 14 hp4156b_addStressSyncIv 2 14 hp4156b_addStressSyncPulse 2 15 hp4156b_autoCal 2 16 hp4156b_clearSampleSync 2 16 hp4156b_clearStressSync 2 16 hp4156b_close 2 16 hp...

Page 6: ...M 2 26 hp4156b_measureP 2 27 hp4156b_offsetCancel 2 27 hp4156b_opc_Q 2 27 hp4156b_readData 2 28 hp4156b_readStatusByte_Q 2 28 hp4156b_recoverOutput 2 29 hp4156b_reset 2 29 hp4156b_revision_query 2 29...

Page 7: ...er Functions 2 50 Function List 2 50 hpe5250a_biasChanCard 2 52 hpe5250a_biasChanList 2 52 hpe5250a_biasChanList_Q 2 52 hpe5250a_biasPort 2 53 hpe5250a_biasState 2 54 hpe5250a_close 2 54 hpe5250a_clos...

Page 8: ..._Q 2 64 hpe5250a_esr_Q 2 64 hpe5250a_func 2 65 hpe5250a_init 2 65 hpe5250a_opc_Q 2 66 hpe5250a_openCard 2 66 hpe5250a_openList 2 66 hpe5250a_openList_Q 2 67 hpe5250a_readStatusByte_Q 2 67 hpe5250a_res...

Page 9: ...ents 3 34 Multi Channel Pulsed Sweep Measurements 3 39 Staircase Sweep with Pulsed Bias Measurements 3 43 Sampling Measurements 3 48 Stress Force 3 53 4 Programming Examples for Visual Basic NET Users...

Page 10: ...mplate 5 3 To Create Measurement Program 5 6 High Speed Spot Measurements 5 7 Multi Channel Spot Measurements 5 9 Staircase Sweep Measurements 5 11 Synchronous Sweep Measurements 5 15 Multi Channel Sw...

Page 11: ...Measurements 6 24 Multi Channel Sweep Measurements 6 26 Pulsed Spot Measurements 6 30 Multi Channel Pulsed Spot Measurements 6 32 Pulsed Sweep Measurements 6 34 Multi Channel Pulsed Sweep Measurements...

Page 12: ...ng sample2 vee 7 19 Program Execution Flow 7 20 Panel Display 7 22 To Execute sample2 vee 7 23 Customizing Sample Programs 7 27 To Change an GPIB Address 7 28 To Change the Vth Measurement Setup 7 29...

Page 13: ...1 Installation...

Page 14: ...VXIplug play Driver User s Guide Edition 4 Installation This chapter explains the environment requirements and installation of the VXIplug play driver for Agilent 4155 4156 System Requirements Install...

Page 15: ...ay 82350B GPIB interface or equivalent These models include Agilent VISA and SICL I O libraries Computer and peripherals Required specifications depend on the application development environment See m...

Page 16: ...erface in step 3 2 Install VISA I O library Follow the instructions in the I O library s setup program 3 Configure and check the GPIB interface See the I O library manual 4 Install the programming sof...

Page 17: ...sert the E5250A Plug Play Driver Disk into FDD of your PC b Execute SETUP EXE stored on the diskette The program automatically installs the folloiwng files in the folder Vxipnp Winxx Hpe5250a hpe5250a...

Page 18: ...1 6 Agilent 4155C 4156C VXIplug play Driver User s Guide Edition 4 Installation Installing VXIplug play Driver...

Page 19: ...2 Driver Function Reference...

Page 20: ...s available for Agilent 41555 4156 and Agilent E5250A 4155 4156 Driver Functions E5250A Driver Functions NOTE For additional information on each function refer to the on line help for the VXIplug play...

Page 21: ...n Description Miscellaneous hp4156b_init Initializes the 4155 4156 hp4156b_close Closes the connection with the 4155 4156 hp4156b_reset Executes the 4155 4156 reset hp4156b_self_test Executes the 4155...

Page 22: ...ime hp4156b_setVm Sets the VMU measurement mode hp4156b_setPguR Sets the PGU output impedance Source Setup hp4156b_force Applies a dc current or voltage hp4156b_forcePulse Applies a pulse by using PGU...

Page 23: ...earStressSync Clears the source setup Passthrough Functions hp4156b_cmd Sends a command h4156b_cmdInt Sends a command with an integer parameter hp4156b_cmdReal Sends a command with a real parameter hp...

Page 24: ...iod pulse width and delay time PGU leading transition time and trailing transition time NOTE Macros Some functions can use macros to set the parameter values For details of functions and macros refer...

Page 25: ...10 mA limited auto ranging c 10 mA range 100 mA 100 mA limited auto ranging c 100 mA range 1 A for HPSMU 1 A limited auto ranging c a Negative range values are available for the functions used to star...

Page 26: ...V V 40 V 50 mA 500 mA 100 V 0 V 20 V 5 mV 100 mA 1000 mA 20 V V 40 V 50 mA 500 mA 40 V V 100 V 20 mA 125 mA 200 V 0 V 20 V 10 mV 1000 mA 20 V V 40 V 500 mA 40 V V 100 V 125 mA 100 V V 200 V 50 mA Meas...

Page 27: ...c This column shows the maximum value of the voltage compliance HRSMU MPSMU HPSMU 10 pA for HRSMU 0 I 10 pA 10 fA 100 V 100 pA for HRSMU 0 I 100 pA 10 fA 100 V 1 nA 0 I 1 nA 100 fA 100 V 100 V 200 V 1...

Page 28: ...or shorter 1PLC or longer 640 s to 1 92 ms 80 s to 560 s 10 pA for HRSMU 0 I 10 5 pA 1 fA 1 fA 1 fA 10 fA 100 pA for HRSMU 0 I 115 pA 1 fA 1 fA 10 fA 100 fA 1 nA 0 I 1 15 nA 10 fA 10 fA 100 fA 1 pA 10...

Page 29: ...4 mV 100 mA 40 V 0 V 40 V 8 mV 100 mA period value width value delay value a a The value must be 0 delay period value Resolution 2 0 s to 100 0 s 1 0 s to 99 9 s 0 to 100 0 s 0 1 s 100 s to 1000 s 1 s...

Page 30: ...weepIv hp4156b_sweepMiv hp4156b_sweepPiv hp4156b_sweepPbias hp4156b_sample hp4156b_stress hp4156b_readData Table 2 11 Status Values NOTE If multiple status conditions are found sum of the status value...

Page 31: ...nd of the last sampling measurement point Sampling measurement channels are defined by the hp4156b_sample function and sampling measurement timing is defined by the hp4156b_setSample function Syntax V...

Page 32: ...ount period width delay rise and fall and the hp4156b_setSample timing parameters Syntax ViStatus _VI_FUNC hp4156b_addSampleSyncPulse ViSession vi ViInt32 channel ViReal64 base ViReal64 peak ViInt32 c...

Page 33: ...er in A or V comp Compliance value in V or A It must be voltage for the current source or current for the voltage source NOTE range base stress comp parameters Available values depend on the unit See...

Page 34: ...56b_addSampleSyncIv function and the hp4156b_addSampleSyncPulse function Syntax ViStatus _VI_FUNC hp4156b_clearSampleSync ViSession vi Parameters vi Instrument handle returned from hp4156b_init hp4156...

Page 35: ...ta You specify the cmd_str and size parameters and get result Syntax ViStatus _VI_FUNC hp4156b_cmdData_Q ViSession vi ViString cmd_str ViInt32 size ViChar _VI_FAR result Parameters vi Instrument handl...

Page 36: ...r of items in the array 1 to 2147483647 result Response from instrument count Count of valid items in result Returned data hp4156b_cmdInt16_Q This function passes the cmd_str string to the instrument...

Page 37: ...le returned from hp4156b_init cmd_str Instrument command cannot exceed 256 bytes in length result Response from instrument hp4156b_cmdReal This function passes the cmd_str string to the instrument Thi...

Page 38: ...response that can be returned as a 64 bit real Syntax ViStatus _VI_FUNC hp4156b_cmdReal64_Q ViSession vi ViString cmd_str ViPReal64 result Parameters vi Instrument handle returned from hp4156b_init c...

Page 39: ...iver function to a readable string Syntax ViStatus _VI_FUNC hp4156b_error_message ViSession vi ViStatus error_number ViChar _VI_FAR message Parameters vi Instrument handle returned from hp4156b_init e...

Page 40: ...turned from hp4156b_init errorQueryDetect Error checking enable VI_TRUE or disable VI_FALSE hp4156b_errorQueryDetect_Q This function indicates if automatic instrument error detection is enabled or dis...

Page 41: ...nnel the SMU must be set to the voltage force mode by using the hp4156b_force function before executing this function If you define VMU for channel the VMU must be set to the differential voltage meas...

Page 42: ...t for the voltage source polarity Compliance polarity only for SMU 0 auto or 1 manual If polarity 0 the compliance polarity is automatically set to the same polarity as value regardless of the specifi...

Page 43: ...b_setStress s duration pulse count hp4156b_forcePulse s period hp4156b_setStress s period hp4156b_init This function initializes the software connection to the instrument and optionally verifies that...

Page 44: ...ode 0 auto positive value limited auto or negative value fixed range For the available values see Table 2 2 and Table 2 5 or Table 2 7 value Measurement data Returned data status Measurement status Re...

Page 45: ...e 0 auto positive value limited auto or negative value fixed range For the available values see Table 2 2 and Table 2 5 or Table 2 7 value Measurement data Returned data status Measurement status Retu...

Page 46: ...arameters vi Instrument handle returned from hp4156b_init eod End of data flag Returned data 1 end of data or 0 not EOD data_type Data type of value Returned data 0 1 3 8 9 11 14 or 15 0 Voltage setup...

Page 47: ...s 1 to 6 SMU1 to SMU6 21 VSU1 22 VSU2 27 PGU1 or 28 PGU2 hp4156b_reset This function places the instrument in a default state Before issuing this function it may be necessary to send a device clear to...

Page 48: ...Parameters vi Instrument handle returned from hp4156b_init channel Channel number of the measurement unit 1 to 6 SMU1 to SMU6 23 VMU1 or 24 VMU2 Enter 0 to the last element of channel For example if y...

Page 49: ...ViSession vi ViInt32 channel ViInt32 state Parameters vi Instrument handle returned from hp4156b_init channel Channel number of the unit 1 SMU1 2 3 4 5 or 6 SMU6 state SMU filter state 0 off or 1 on h...

Page 50: ...on the unit See Parameters on page 2 6 Parameters vi Instrument handle returned from hp4156b_init channel Channel number of the sweep source 1 to 6 SMU1 to SMU6 21 VSU1 or 22 VSU2 mode Output mode 1 2...

Page 51: ...asurements and the staircase sweep with pulsed bias measurements Filter of the pulse source must be set to off by using the hp4156b_setFilter function For the staircase sweep with pulsed bias measurem...

Page 52: ...e compliance polarity is positive if the output value is 0 For mode 1 if base or peak is within 10 A and not 0 comp must be 2 V or less For mode 2 the minimum comp value must be as shown in Table 2 12...

Page 53: ...nel Channel number of the pulse sweep source 1 to 6 SMU1 to SMU6 21 VSU1 or 22 VSU2 mode Output mode 1 2 3 4 1 2 3 or 4 For the current mode or log sweep mode base start and stop must be the same pola...

Page 54: ...are defined by the hp4156b_sample function Syntax ViStatus _VI_FUNC hp4156b_setSample ViSession vi ViReal64 hold ViReal64 interval ViInt32 point Parameters vi Instrument handle returned from hp4156b_i...

Page 55: ...4156b_forcePulse s count hp4156b_setStress s period hp4156b_forcePulse s period hp4156b_setSweepSync This function specifies synchronous sweep source and sets the parameters The synchronous sweep sour...

Page 56: ...tically set to the same polarity as the output value regardless of the specified comp polarity The compliance polarity is positive if the output value is 0 p_comp Power compliance Available values are...

Page 57: ...surement mode 1 normal or 2 differential hp4156b_spotMeas This function executes a high speed spot measurement by the specified channel and returns the measured value and the measurement status Syntax...

Page 58: ...Enter 0 to the last element of channel For example if you use two channels set the array size to 3 specify the channels to the first and second elements and enter 0 to the third element mode Measureme...

Page 59: ...which enables the automatic abort function for the sweep measurement sampling measurement or stress force Also this function specifies the sweep source output of the measurement unit after the sweep...

Page 60: ...s function execute the hp4156b_setIv function to set the sweep source Also execute the hp4156b_setSweepSync function to set the synchronous sweep source Syntax ViStatus _VI_FUNC hp4156b_sweepIv ViSess...

Page 61: ...iReal64 sc 11 source data ViReal64 md 11 measurement data ViInt32 st 11 status ret hp4156b_setSwitch vi sch 1 ret hp4156b_setSwitch vi mch 1 ret hp4156b_force vi mch om or v1 icomp 0 ret hp4156b_setIv...

Page 62: ...available values see Table 2 2 and Table 2 5 or Table 2 7 point Number of measurement steps Returned data source Sweep source setup data Returned data value Measurement data Returned data status Measu...

Page 63: ...the md 2 n 1 data where n 0 to 10 integer hp4156b_sweepPbias This function executes a staircase sweep with pulsed bias measurement by the specified channel and returns the number of measurement steps...

Page 64: ...iReal64 v1 0 pulse base voltage ViReal64 v2 1 5 pulse peak voltage ViReal64 ic 0 05 pulse source current compliance ret hp4156b_setPbias vi pch om or v1 v2 tw tp th ic ViInt32 sch 2 SMU2 for sweep sou...

Page 65: ...Real64 value ViInt32 status Parameters vi Instrument handle returned from hp4156b_init channel Channel number of the measurement unit 1 to 6 SMU1 to SMU6 23 VMU1 or 24 VMU2 mode Measurement mode 1 cur...

Page 66: ...ce ret hp4156b_setPiv vi pch sm or v0 v1 v2 pts th tw tp ic ViInt32 mm 1 measurement mode current ViReal64 mr 0 measurement range auto ViInt32 mpts number of measurement steps ViReal64 sc 11 source da...

Page 67: ...urns the timeout value for driver I O transactions in milliseconds Syntax ViStatus_VI_FUNC hp4156b_timeOut_Q ViSession vi ViPInt32 pTimeOut Parameters vi Instrument handle returned from hp4156b_init p...

Page 68: ...E5250A hpe5250a_close Closes the connection with the E5250A hpe5250a_reset Executes the E5250A reset hpe5250a_self_test Executes the E5250A self test hpe5250a_error_query Queries for the E5250A error...

Page 69: ...ompensation hpe5250a_CompenC Executes the C G compensation hpe5250a_selectCompenFile Selects the compensation data file Diagnostics hpe5250a_testExec_Q Executes the relay front panel controller test h...

Page 70: ...isable bias on all the output ports specified by the biaschan_list The parameter biaschan_list is an array of integers with each integer representing one channel The last number of the biaschan_list s...

Page 71: ...sabled biaschan_list Channel numbers to know the bias status 5 digits integer ABCDE where A card number BC input port number DE output port number Top zero s can be ignored For example if A 0 BC 01 an...

Page 72: ...rd in the normal configuration mode or 0 all card in the automatic configuration mode For the configuration mode see hpe5250a_func state Bias mode 0 off or 1 on hpe5250a_close This function terminates...

Page 73: ...cified by the list is 100 Syntax ViStatus _VI_FUNC hpe5250a_closeList ViSession vi ViInt32_VI_FAR closechan_list Parameters vi Instrument handle returned from hpe5250a_init closechan_list Channel numb...

Page 74: ...1 closed hpe5250a_cmd This function passes the cmd_str string to the instrument Must be a NULL terminated C string Syntax ViStatus _VI_FUNC hpe5250a_cmd ViSession vi ViString cmd_str Parameters vi In...

Page 75: ...tr string to the instrument This command expects a response that is a definite arbitrary block of 16 bit integers You specify the cmd_str and size parameters and get result and count Syntax ViStatus _...

Page 76: ...cmd_str Instrument command cannot exceed 256 bytes in length size Size of result number of items in the array 1 to 2147483647 result Response from instrument count Count of valid items in result hpe52...

Page 77: ...t and count Syntax ViStatus _VI_FUNC hpe5250a_cmdReal64Arr_Q ViSession vi ViString cmd_str ViInt32 size ViReal64 _VI_FAR result ViPInt32 count Parameters vi Instrument handle returned from hpe5250a_in...

Page 78: ...n data file and specify the data file using hpe5250a_selectCompenFile function before executing this function Syntax ViStatus _VI_FUNC hpe5250a_compenC ViSession vi ViReal64 frequency ViReal64 len_hpt...

Page 79: ...n m Dim tri_l As Double 0 LO side triax cable length in m Dim co_h As Double 0 HI side coax cable length in m Dim co_l As Double 0 LO side coax cable length in m Dim cr As Double 0 0000000001 C value...

Page 80: ...leport_cardno ViInt16 port1 ViInt16 port3 ViInt16 port5 ViInt16 port7 ViInt16 port9 Parameters vi Instrument handle returned from hpe5250a_init coupleport_cardno Card number 1 card 1 2 card 2 3 card 3...

Page 81: ...function The device clear ensures that the instrument will be able to begin processing the new commands Syntax ViStatus _VI_FUNC hpe5250a_dcl ViSession vi Parameters vi Instrument handle returned from...

Page 82: ...or disables automatic instrument error checking If automatic error checking is enabled then the driver will query the instrument for an error at the end of each function call Syntax ViStatus _VI_FUNC...

Page 83: ...on vi ViInt16 channel_config Parameters vi Instrument handle returned from hpe5250a_init channel_config Configuration mode 0 auto or 1 normal hpe5250a_init This function initializes the software conne...

Page 84: ...us _VI_FUNC hpe5250a_openCard ViSession vi ViInt16 open_cardno Parameters vi Instrument handle returned from hpe5250a_init open_cardno Card number 1 card 1 2 card 2 3 card 3 4 card 4 or 5 all card in...

Page 85: ...ay of integers containing the return values of the query The open_status array returned will correspond one to one with openchan_list parameter Syntax ViStatus _VI_FUNC hpe5250a_openList_Q ViSession v...

Page 86: ...i Instrument handle returned from hpe5250a_init driver_rev Instrument driver revision This is limited to 256 characters instr_rev Instrument firmware revision This is limited to 256 characters hpe5250...

Page 87: ...el or the controller Syntax ViStatus _VI_FUNC hpe5250a_testClear ViSession vi ViInt16 framecard_clear Parameters vi Instrument handle returned from hpe5250a_init framecard_clear Test result to be clea...

Page 88: ...lay test to 4 card 4 relay test 5 relay test for all card 6 front panel test or 7 controller test exec_result Test result 0 No error hpe5250a_timeOut This function sets a minimum timeout value for dri...

Page 89: ...3 Programming Examples for Visual Basic Users...

Page 90: ...eep Measurements Synchronous Sweep Measurements Multi Channel Sweep Measurements Pulsed Spot Measurements Multi Channel Pulsed Spot Measurements Pulsed Sweep Measurements Multi Channel Pulsed Sweep Me...

Page 91: ...programming Step 1 Connect instrument e g Agilent 4155 4156 to computer via GPIB Step 2 Launch Visual Basic and create a new project Step 3 Import the following file to the project hp4156b bas e g Pr...

Page 92: ...perform_meas vi ret calls perform_meas subprogram 25 ret hp4156b_cmd vi aa sends an invalid command check_err vi ret checks check_err subprogram operation Line Description 1 Beginning of the Main subp...

Page 93: ...sg vbOKOnly Else retStatus hp4156b_error_message vi ret err_message msg Driver Error ret Chr 10 Chr 10 err_message MsgBox msg vbOKOnly End If End If End Sub Line Description 30 Disables the software c...

Page 94: ...se sweep measurement and so on Step 2 Make a copy of your project template e g test my_temp to test dev_a my_temp Step 3 Rename the copy e g test dev_a my_temp to test dev_a spot_id Step 4 Launch Visu...

Page 95: ...MU1 drain pins 1 2 SMU2 gate pins 2 3 SMU3 source pins 3 4 SMU4 substrate ret hp4156b_setSwitch vi pins 3 1 9 ret hp4156b_setSwitch vi pins 2 1 ret hp4156b_setSwitch vi pins 1 1 ret hp4156b_setSwitch...

Page 96: ...56b_force vi pins 0 hp4156b_VF_MODE 2 vd idcomp 0 17 check_err vi ret ret hp4156b_spotMeas vi pins 0 hp4156b_IM_MODE 0 meas status 20 check_err vi ret ret hp4156b_zeroOutput vi hp4156b_CH_ALL 22 check...

Page 97: ...ue value Do you want to perform measurement again rbx MsgBox value vbYesNo vbQuestion title If rbx vbYes Then spot_meas vi ret pins End If Else value Status error Code status MsgBox value vbOKOnly tit...

Page 98: ...ns 3 As Long SMU port numbers 3 pins 0 1 SMU1 emitter pins 1 2 SMU2 base pins 2 4 SMU4 collector ret hp4156b_setSwitch vi pins 2 1 8 ret hp4156b_setSwitch vi pins 1 1 ret hp4156b_setSwitch vi pins 0 1...

Page 99: ...56b_force vi pins 0 hp4156b_VF_MODE 0 ve iecomp 0 30 ret hp4156b_force vi pins 1 hp4156b_VF_MODE 0 vb ibcomp 0 ret hp4156b_force vi pins 2 hp4156b_VF_MODE 0 vc iccomp 0 ret hp4156b_measureM vi mch 0 m...

Page 100: ...ue value Chr 10 Chr 10 Do you want to perform measurement again rbx MsgBox value vbYesNo vbQuestion title If rbx vbYes Then mspot_meas vi ret pins End If Else value Base channel status error Code st 1...

Page 101: ...3 m 0 1 SMU1 drain m 1 2 SMU2 gate m 2 3 SMU3 source m 3 4 SMU4 substrate ret hp4156b_setSwitch vi m 3 1 9 ret hp4156b_setSwitch vi m 2 1 ret hp4156b_setSwitch vi m 1 1 ret hp4156b_setSwitch vi m 0 1...

Page 102: ...r Dim j As Integer Dim n As Long n nop1 nop2 30 Dim msg As String Dim rep As Long 33 Dim sc As Double primary sweep output data Dim md As Double sweep measurement data Dim st As Long status data at ea...

Page 103: ...steps MsgBox msg vbOKOnly ret hp4156b_zeroOutput vi hp4156b_CH_ALL GoTo Bottom_sub End If Next j 72 ret hp4156b_zeroOutput vi hp4156b_CH_ALL save_data nop1 nop2 dvg md st sc vi ret m 75 Bottom_sub En...

Page 104: ...by fname Open fname For Output Access Write Lock Read Write As fnum Print fnum val Close fnum 22 displays data on a MsgBox Dim title As String 25 Dim rbx As Integer title Sweep Measurement Result val...

Page 105: ...1 1 5 11 64 0 1 1 8 13 09 0 1 2 1 14 385 0 1 2 4 15 57 0 1 2 7 16 63 0 1 3 17 6 0 2 0 0 000117215 0 2 0 3 4 178 0 2 0 6 7 9075 0 2 0 9 11 193 0 2 1 2 14 035 0 2 1 5 16 49 0 2 1 8 18 59 0 2 2 1 20 44...

Page 106: ...m 4 As Long SMU port numbers 3 m 0 1 SMU1 drain m 1 2 SMU2 gate m 2 3 SMU3 source m 3 4 SMU4 substrate ret hp4156b_setSwitch vi m 3 1 9 ret hp4156b_setSwitch vi m 2 1 ret hp4156b_setSwitch vi m 1 1 re...

Page 107: ...m p1comp As Double Dim p2comp As Double Dim nop As Long vpri1 0 vpri2 3 i1comp 0 01 vsyn1 0 vsyn2 3 i2comp 0 05 hold 0 delay 0 s_delay 0 p1comp 0 p2comp 0 nop 11 29 Dim rep As Long 31 Dim sc As Double...

Page 108: ...ret hp4156b_zeroOutput vi hp4156b_CH_ALL 50 Dim msg As String If rep nop Then 53 save_data nop md st sc vi ret m Else msg rep measurement steps were returned It must be nop steps MsgBox msg vbOKOnly E...

Page 109: ...As fnum Print fnum val Close fnum displays data on a MsgBox Dim title As String 22 Dim rbx As Integer title Sweep Measurement Result val val Chr 10 Chr 10 Data save completed val val Chr 10 Chr 10 Do...

Page 110: ...sual Basic Users Synchronous Sweep Measurements Measurement Result Example Vg V Id mA Status 0 0 000098485 0 0 3 2 338 0 0 6 4 9295 0 0 9 7 7645 0 1 2 10 8095 0 1 5 14 05 0 1 8 17 465 0 2 1 21 045 0 2...

Page 111: ...As Long 1 Dim m 3 As Long SMU port numbers 3 m 0 2 SMU2 base m 1 4 SMU4 collector m 2 1 SMU1 emitter ret hp4156b_setSwitch vi m 2 1 8 ret hp4156b_setSwitch vi m 1 1 ret hp4156b_setSwitch vi m 0 1 chec...

Page 112: ...p 0 1 vb1 0 3 vb2 0 8 ibcomp 0 001 hold 0 delay 0 s_delay 0 pcomp 0 nop 11 n nop 2 Dim mch 3 As Long Dim mode 2 As Long Dim range 2 As Double mch 0 m 0 base mch 1 m 1 collector mch 2 0 mode 0 1 curren...

Page 113: ...Output vi hp4156b_CH_ALL 59 Dim msg As String If rep nop Then 62 save_data nop md st sc vi ret m Else msg rep measurement steps were returned It must be nop steps MsgBox msg vbOKOnly End If 67 End Sub...

Page 114: ...name For Output Access Write Lock Read Write As fnum 18 Print fnum val Close fnum displays data on a MsgBox Dim title As String 23 Dim rbx As Integer title Sweep Measurement Result val val Chr 10 Chr...

Page 115: ...ments Measurement Result Example Vb V Ib mA Ic mA Status_b Status_c 0 3 0 0 005 0 0 0 35 0 0 005 0 0 0 4 0 0 005 0 0 0 45 0 0 005 0 0 0 5 0 0 0 0 0 55 0 0001 0 015 0 0 0 6 0 0005 0 085 0 0 0 65 0 0030...

Page 116: ...ins 1 2 SMU2 gate pins 2 3 SMU3 source pins 3 4 SMU4 substrate ret hp4156b_setSwitch vi pins 3 1 9 ret hp4156b_setSwitch vi pins 2 1 ret hp4156b_setSwitch vi pins 1 1 ret hp4156b_setSwitch vi pins 0 1...

Page 117: ...p4156b_force vi pins 2 hp4156b_VF_MODE 0 0 0 05 0 ret hp4156b_force vi pins 0 hp4156b_VF_MODE 2 vd idcomp 0 ret hp4156b_measureP vi pins 0 hp4156b_IM_MODE 0 meas status 27 check_err vi ret ret hp4156b...

Page 118: ...e value Do you want to perform measurement again rbx MsgBox value vbYesNo vbQuestion title If rbx vbYes Then spot_meas vi ret pins End If Else value Status error Code status MsgBox value vbOKOnly titl...

Page 119: ...g 1 Dim pins 3 As Long SMU port numbers 3 pins 0 1 SMU1 emitter pins 1 2 SMU2 base pins 2 4 SMU4 collector ret hp4156b_setSwitch vi pins 2 1 8 ret hp4156b_setSwitch vi pins 1 1 ret hp4156b_setSwitch v...

Page 120: ...pins 1 hp4156b_VF_MODE 0 vb ibcomp 0 32 ret hp4156b_force vi pins 2 hp4156b_VF_MODE 0 vc iccomp 0 ret hp4156b_startMeasure vi hp4156b_MM_PSPOT mch 0 mode 0 range 0 hp4156b_FLAG_OFF check_err vi ret re...

Page 121: ...Chr 10 Chr 10 value value Do you want to perform measurement again rbx MsgBox value vbYesNo vbQuestion title If rbx vbYes Then mspot_meas vi ret pins End If Else value Base channel status error Code s...

Page 122: ...3 As Long SMU port numbers 3 m 0 4 SMU4 collector m 1 2 SMU2 base m 2 1 SMU1 emitter ret hp4156b_setSwitch vi m 2 1 8 ret hp4156b_setSwitch vi m 1 1 ret hp4156b_setSwitch vi m 0 1 check_err vi ret sw...

Page 123: ...j As Integer Dim n As Long n nop1 nop2 Dim rep As Long Dim sc As Double primary sweep output data Dim md As Double sweep measurement data Dim st As Long status data at each step Dim dib As Double seco...

Page 124: ...urned It must be nop1 steps MsgBox msg vbOKOnly ret hp4156b_zeroOutput vi hp4156b_CH_ALL GoTo Bottom_sub End If Next j 72 ret hp4156b_zeroOutput vi hp4156b_CH_ALL 74 save_data nop1 nop2 md st sc dib v...

Page 125: ...Agilent data data4 txt fnum 1 Open fname For Output Access Write Lock Read Write As fnum Print fnum val Close fnum Dim title As String 22 Dim rbx As Integer title Pulsed Sweep Measurement Result val...

Page 126: ...8 9 83 0 50 2 1 9 835 0 50 2 4 9 85 0 50 2 7 9 9 0 50 3 9 915 0 100 0 0 1 0 100 0 3 15 725 0 100 0 6 18 115 0 100 0 9 18 715 0 100 1 2 18 84 0 100 1 5 18 925 0 100 1 8 19 015 0 100 2 1 19 045 0 100 2...

Page 127: ...s Long ret As Long 1 Dim m 3 As Long SMU port numbers 3 m 0 1 SMU1 emitter m 1 2 SMU2 base m 2 4 SMU4 collector ret hp4156b_setSwitch vi m 0 1 8 ret hp4156b_setSwitch vi m 1 1 ret hp4156b_setSwitch vi...

Page 128: ...collector mch 1 m 1 measurement channel base mch 2 0 mode 0 1 current measurement mode mode 1 1 current measurement mode range 0 0 auto range range 1 0 auto range Dim rep As Long Dim sc As Double pri...

Page 129: ...a Data measured by mch 0 collector ret hp4156b_readData vi eod dtype mdata stat ch md2 i mdata Data measured by mch 1 base ret hp4156b_readData vi eod dtype mdata stat ch sc i mdata Pulsed sweep sourc...

Page 130: ...10 sc i md1 i 1000 md2 i 1000 Next i Dim fname As String data file name 8 Dim fnum As Integer file number fname C Agilent data data5 txt fnum 1 Open fname For Output Access Write Lock Read Write As fn...

Page 131: ...m 4 As Long SMU port numbers 3 m 0 1 SMU1 drain m 1 2 SMU2 gate m 2 3 SMU3 source m 3 4 SMU4 substrate ret hp4156b_setSwitch vi m 3 1 9 ret hp4156b_setSwitch vi m 2 1 ret hp4156b_setSwitch vi m 1 1 re...

Page 132: ...g As String Dim rep As Long 35 Dim sc As Double primary sweep output data Dim md As Double sweep measurement data Dim st As Long status data at each step Dim dvg As Double secondary sweep output data...

Page 133: ...t vg vg d_vg If rep nop1 Then 73 i i nop1 Else msg rep measurement steps were returned It must be nop1 steps MsgBox msg vbOKOnly ret hp4156b_zeroOutput vi hp4156b_CH_ALL GoTo Bottom_sub End If 80 Next...

Page 134: ...er fname C Agilent data data6 txt fnum 1 Open fname For Output Access Write Lock Read Write As fnum Print fnum val Close fnum Dim title As String 21 Dim rbx As Integer title Sweep Measurement Result v...

Page 135: ...1 2 10 035 0 1 1 5 11 68 0 1 1 8 13 13 0 1 2 1 14 425 0 1 2 4 15 61 0 1 2 7 16 675 0 1 3 17 65 0 2 0 0 005 0 2 0 3 4 205 0 2 0 6 7 955 0 2 0 9 11 245 0 2 1 2 14 11 0 2 1 5 16 55 0 2 1 8 18 67 0 2 2 1...

Page 136: ...As Long ret As Long 1 Dim m 3 As Long SMU port numbers 3 m 0 1 SMU1 t1 m 1 2 SMU2 t2 m 2 3 SMU3 low ret hp4156b_setSwitch vi m 2 1 8 ret hp4156b_setSwitch vi m 1 1 ret hp4156b_setSwitch vi m 0 1 check...

Page 137: ...0 1 hold 0 1 interval 0 05 nop 30 Dim mch 3 As Long Dim mode 2 As Long Dim range 2 As Double Dim n As Long n nop 2 mch 0 m 0 t1 mch 1 m 1 t2 mch 2 0 mode 0 1 mode 1 1 range 0 0 range 1 0 Dim point As...

Page 138: ...sg vbOKOnly Else save_data vi ret nop index bias value status m End If End Sub 63 Line Description 41 to 42 Sets the SMU filter on for the all channels and sets the A D converter integration time 44 t...

Page 139: ...s Integer file number fname C Agilent data data7 txt fnum 1 Open fname For Output Access Write Lock Read Write As fnum Print fnum val Close fnum Dim title As String 28 Dim rbx As Integer title Samplin...

Page 140: ...8 98 10 759 9 29 0 11 11 147 8 97 10 752 9 31 0 12 11 136 8 98 10 759 9 29 0 13 11 136 8 98 10 755 9 29 0 14 11 147 8 97 10 766 9 28 0 15 11 141 8 97 10 755 9 29 0 16 11 143 8 97 10 762 9 29 0 17 11...

Page 141: ...im m 3 As Long SMU port numbers 3 m 0 1 SMU1 t1 m 1 2 SMU2 t2 m 2 3 SMU3 low ret hp4156b_setSwitch vi m 2 1 8 ret hp4156b_setSwitch vi m 1 1 ret hp4156b_setSwitch vi m 0 1 check_err vi ret stress_meas...

Page 142: ...p4156b_VF_MODE range vlout ilcomp 0 ret hp4156b_force vi m 1 hp4156b_VF_MODE range bias icomp 0 ret hp4156b_force vi m 0 hp4156b_VF_MODE range bias icomp 0 ret hp4156b_spotMeas vi m 0 hp4156b_IM_MODE...

Page 143: ...ange md 3 st 3 check_err vi ret ret hp4156b_zeroOutput vi hp4156b_CH_ALL 55 disp_data2 vi ret m md st stress duration End Sub 58 Line Description 40 to 45 Sets the stress timing parameters applies vol...

Page 144: ...st 0 val val Chr 13 Chr 10 T2 current md 1 1000 mA val val Status st 1 val val Chr 10 Chr 10 Do you want to CANCEL stress force val val Chr 10 Chr 10 Stress stress V Duration duration sec Dim msg As S...

Page 145: ...before stress val val Chr 13 Chr 10 T1 current md 0 1000 mA val val Status st 0 val val Chr 13 Chr 10 T2 current md 1 1000 mA val val Status st 1 val val Chr 10 Chr 10 Stress stress V Duration durati...

Page 146: ...3 58 Agilent 4155C 4156C VXIplug play Driver User s Guide Edition 4 Programming Examples for Visual Basic Users Stress Force...

Page 147: ...4 Programming Examples for Visual Basic NET Users...

Page 148: ...pling Measurements Stress Force NOTE About Program Code Programming examples are provided as subprograms that can be run with the project template shown in Table 4 1 To execute the program insert the...

Page 149: ...future programming Step 1 Connect instrument e g Agilent 4155 4156 to computer via GPIB Step 2 Launch Visual Basic NET and create a new project The project type must be Agilent T M Toolkit Projects Fo...

Page 150: ...sheet resistance and so on Measurement method Spot measurement staircase sweep measurement and so on Step 2 Make a copy of your project template e g test my_temp to test dev_a my_temp Step 3 Rename t...

Page 151: ...to stop the program vbOKOnly Console WriteLine Measurement completed Chr 10 End Sub 24 Line Description 1 to 7 These lines are necessary to use the Agilent 4155 4156 VXIplug play driver 11 to 24 Main...

Page 152: ...plate The values are dummy You must change the values to match your program If you find unnecessary variables delete them i and j Variables used to specify the element of the data array nop1 and nop2...

Page 153: ...1 For i 0 To nop1 1 Print 1 data j i Next Next FileClose 1 Dim rbx As Integer For j 0 To nop2 1 For i 0 To nop1 1 val val data j i Next Next val val Chr 10 Chr 10 Data save completed val val Chr 10 C...

Page 154: ...r 1 2 3 4 13 Ag415x SetSwitch t 3 1 SMU4 substrate Ag415x SetSwitch t 2 1 SMU3 source Ag415x SetSwitch t 1 1 SMU2 gate Ag415x SetSwitch t 0 1 SMU1 drain Dim vd As Double 0 5 19 Dim vg As Double 0 5 Di...

Page 155: ...6 save_data fname title val data nop1 nop2 Ag415x Check_err 39 If err 0 Then MsgBox Instrument error err Chr 10 msg vbOKOnly End Sub Line Description 33 to 34 Performs spot measurement And stores the...

Page 156: ...Result Dim msg As String No error Dim err As Integer 0 Dim t As Integer 1 2 3 13 Ag415x SetSwitch t 2 1 SMU3 collector Ag415x SetSwitch t 1 1 SMU2 base Ag415x SetSwitch t 0 1 SMU1 emitter Dim vc As Do...

Page 157: ...1 Ag415x ZeroOutput 0 41 save_data fname title val data nop1 nop2 Ag415x Check_err 44 If err 0 Then MsgBox Instrument error err Chr 10 msg vbOKOnly End Sub Line Description 34 to 35 Checks if an error...

Page 158: ...0 Dim t As Integer 1 2 3 4 13 Ag415x SetSwitch t 3 1 SMU4 substrate Ag415x SetSwitch t 2 1 SMU3 source Ag415x SetSwitch t 1 1 SMU2 gate Ag415x SetSwitch t 0 1 SMU1 drain Dim vd1 As Double 0 19 Dim vd...

Page 159: ...put 0 57 save_data fname title val data nop1 nop2 Ag415x Check_err 60 If err 0 Then MsgBox Instrument error err Chr 10 msg vbOKOnly If rep nop1 Then MsgBox No of data rep not nop1 vbOKOnly End Sub Lin...

Page 160: ...1 1 8 12 4335 0 1 2 1 13 654 0 1 2 4 14 7489 0 1 2 699 15 7364 0 1 3 16 6246 0 2 0 0 00174059 0 2 0 3 4 03733 0 2 0 6 7 63927 0 2 0 9 10 80673 0 2 1 2 13 5329 0 2 1 5 15 8655 0 2 1 8 17 8811 0 2 2 1 1...

Page 161: ...e Ag415x SetSwitch t 2 1 SMU3 source Ag415x SetSwitch t 1 1 SMU2 gate Ag415x SetSwitch t 0 1 SMU1 drain Dim vpri1 As Double 0 Dim vpri2 As Double 3 Dim vsyn1 As Double 0 Dim vsyn2 As Double 3 Dim vcon...

Page 162: ...To nop1 1 46 data j i Chr 13 Chr 10 sc i md i 1000 st i Next i Ag415x ZeroOutput 0 50 save_data fname title val data nop1 nop2 Ag415x Check_err 53 If err 0 Then MsgBox Instrument error err Chr 10 msg...

Page 163: ...collector Ag415x SetSwitch t 0 1 SMU2 base Dim vc As Double 3 Dim ve As Double 0 Dim vb1 As Double 0 3 Dim vb2 As Double 0 8 Dim iccomp As Double 0 1 Dim ibcomp As Double 0 001 Dim iecomp As Double 0...

Page 164: ...SweepMiv mch mode range rep sc md st If rep nop1 Then Ag415x ZeroOutput 0 GoTo Check_err For i 0 To nop1 1 47 data j i Chr 13 Chr 10 sc i md 2 i 1000 data j i data j i st 2 i md 2 i 1 1000 data j i da...

Page 165: ...ate Ag415x SetSwitch t 2 1 SMU3 source Ag415x SetSwitch t 1 1 SMU2 gate Ag415x SetSwitch t 0 1 SMU1 drain Dim vd As Double 0 5 Dim vg As Double 0 5 Dim idcomp As Double 0 05 Dim igcomp As Double 0 01...

Page 166: ...0 meas status data j i Chr 13 Chr 10 meas 1000 status 40 Ag415x ZeroOutput 0 42 save_data fname title val data nop1 nop2 Ag415x Check_err 45 If err 0 Then MsgBox Instrument error err Chr 10 msg vbOKO...

Page 167: ...ng No error Dim err As Integer 0 Dim t As Integer 1 2 3 13 Ag415x SetSwitch t 2 1 SMU3 collector Ag415x SetSwitch t 1 1 SMU2 base Ag415x SetSwitch t 0 1 SMU1 emitter Dim vc As Double 0 Dim vb As Doubl...

Page 168: ...r 10 mdata 1000 stat Ag415x ReadData eod dtype mdata stat ch md 1 mdata data j i data j i mdata 1000 stat data j i data j i md 0 md 1 Ag415x ZeroOutput 0 51 save_data fname title val data nop1 nop2 Ag...

Page 169: ...ase Ag415x SetSwitch t 0 1 SMU3 collector Dim vc1 As Double 0 Dim vc2 As Double 3 Dim iccomp As Double 0 05 Dim ib1 As Double 0 00005 50 uA Dim ib2 As Double 0 00015 150 uA Dim vbcomp As Double 5 Dim...

Page 170: ...a fname title val data nop1 nop2 Ag415x Check_err 63 If err 0 Then MsgBox Instrument error err Chr 10 msg vbOKOnly If rep nop1 Then MsgBox No of data rep not nop1 vbOKOnly End Sub Line Description 39...

Page 171: ...1 9 8057 0 50 2 4 9 8673 0 50 2 699 9 881 0 50 3 9 8536 0 100 0 0 0846 0 100 0 3 15 4259 0 100 0 6 18 0373 0 100 0 9 18 6679 0 100 1 2 18 8804 0 100 1 5 18 9351 0 100 1 8 19 0448 0 100 2 1 19 1202 0 1...

Page 172: ...2 3 13 Ag415x SetSwitch t 0 1 SMU1 emitter Ag415x SetSwitch t 1 1 SMU2 base Ag415x SetSwitch t 2 1 SMU3 collector Dim vc As Double 0 Dim vb As Double 0 Dim iccomp As Double 0 1 Dim ibcomp As Double 0...

Page 173: ...mch mode range Hp4156b SourceEnum SourceDataOutput For i 0 To nop1 1 42 Ag415x ReadData eod dtype mdata stat ch data j i Chr 13 Chr 10 mdata 1000 stat t 2 collector Ag415x ReadData eod dtype mdata sta...

Page 174: ...r 0 Dim t As Integer 1 2 3 4 13 Ag415x SetSwitch t 3 1 SMU4 substrate Ag415x SetSwitch t 2 1 SMU3 source Ag415x SetSwitch t 1 1 SMU2 gate Ag415x SetSwitch t 0 1 SMU1 drain Dim vd1 As Double 0 Dim vd2...

Page 175: ...g vg d_vg Next j Ag415x ZeroOutput 0 61 save_data fname title val data nop1 nop2 Ag415x Check_err 64 If err 0 Then MsgBox Instrument error err Chr 10 msg vbOKOnly If rep nop1 Then MsgBox No of data re...

Page 176: ...5 10 9109 0 1 1 8 12 316 0 1 2 1 13 3578 0 1 2 4 14 6257 0 1 2 699 15 5852 0 1 3 16 6064 0 2 0 0 0071 0 2 0 3 3 92 0 2 0 6 7 3332 0 2 0 9 10 4586 0 2 1 2 13 3852 0 2 1 5 15 3453 0 2 1 8 17 4015 0 2 2...

Page 177: ...ng No error Dim err As Integer 0 Dim t As Integer 1 2 3 13 Ag415x SetSwitch t 0 1 SMU1 t1 Ag415x SetSwitch t 1 1 SMU2 t2 Ag415x SetSwitch t 2 1 SMU3 low Dim base As Double 0 Dim bias As Double 0 1 Dim...

Page 178: ...tput 0 56 save_data fname title val data nop1 nop2 Ag415x Check_err 59 If err 0 Then MsgBox Instrument error err Chr 10 msg vbOKOnly If point nop1 Then MsgBox No of data point not nop1 vbOKOnly End Su...

Page 179: ...6456 10 367 9 15976 10 917 0 12 9 6456 10 367 9 16084 10 916 0 13 9 64641 10 367 9 15976 10 917 0 14 9 6456 10 367 9 16112 10 916 0 15 9 64614 10 367 9 15976 10 917 0 16 9 64505 10 368 9 16003 10 917...

Page 180: ...415x SetSwitch t 2 1 SMU3 low Dim range As Double 0 Dim base As Double 0 Dim stress As Double 2 Dim bias As Double 0 1 Dim icomp As Double 0 1 Dim vlout As Double 0 Dim ilcomp As Double 0 1 Dim hold A...

Page 181: ...m1 CurrentMeasurement range md 2 st 2 Ag415x SpotMeas t 1 Hp4156b ModeEnum1 CurrentMeasurement range md 3 st 3 Ag415x ZeroOutput 0 data j 1 Chr 13 Chr 10 After stress md 2 1000 st 2 data j 1 data j 1...

Page 182: ...4 36 Agilent 4155C 4156C VXIplug play Driver User s Guide Edition 4 Programming Examples for Visual Basic NET Users Stress Force...

Page 183: ...5 Programming Examples for C Users...

Page 184: ...p Measurements Synchronous Sweep Measurements Multi Channel Sweep Measurements Pulsed Spot Measurements Multi Channel Pulsed Spot Measurements Pulsed Sweep Measurements Multi Channel Pulsed Sweep Meas...

Page 185: ...or the console application for the new project template selection They will simplify the programming Of course other project template can be used Step 3 Define the followings to the project propertie...

Page 186: ...30 Line Description 1 to 4 Required to use the Agilent 4155 4156 VXIplug play driver The header files contain various necessary information such as function declaration and macro definitions You may...

Page 187: ...r vi ret return VI_SUCCESS 55 Line Description 33 Establishes the software connection with the Agilent 4155 4156 The above example is for the Agilent 4155 4156 on the GPIB address 17 Confirm the GPIB...

Page 188: ...p measurement and so on Step 2 Make a copy of your project template e g test my_temp to test dev_a my_temp Step 3 Rename the copy e g test dev_a my_temp to test dev_a spot_id Step 4 Launch the program...

Page 189: ...te ViInt32 source ViInt32 bulk drain 1 SMU1 gate 2 SMU2 source 3 SMU3 bulk 4 SMU4 11 ret hp4156b_setSwitch vi drain 1 13 ret hp4156b_setSwitch vi gate 1 ret hp4156b_setSwitch vi source 1 ret hp4156b_s...

Page 190: ...drain hp4156b_IM_MODE 0 meas status check_err vi ret 38 ret hp4156b_zeroOutput vi hp4156b_CH_ALL 40 check_err vi ret 41 printf Id 9 6f mA at 3 1f V n meas 1000 vd 43 printf Vg 3 1f V n vg ret hp4156b...

Page 191: ...t32 emitter 3 ViInt32 base ViInt32 collector emitter 1 SMU1 base 2 SMU2 collector 4 SMU4 8 ret hp4156b_setSwitch vi emitter 1 10 ret hp4156b_setSwitch vi base 1 ret hp4156b_setSwitch vi collector 1 ch...

Page 192: ...ge md 0 st 0 check_err vi ret 45 ret hp4156b_zeroOutput vi hp4156b_CH_ALL 47 check_err vi ret 48 printf Ic 8 6f mA n md 0 1000 printf Ib 8 6f mA n md 1 1000 printf hfe 10 6f n md 0 md 1 52 ret hp4156b...

Page 193: ...ssion vi ViStatus ret 1 ViInt32 drain 1 SMU1 4 ViInt32 gate 2 SMU2 ViInt32 source 3 SMU3 ViInt32 bulk 4 SMU4 ViReal64 vd 3 ViReal64 vg 3 ViReal64 idcomp 0 05 ViReal64 igcomp 0 01 ViReal64 hold 0 ViRea...

Page 194: ...eepIv vi drain hp4156b_IM_MODE 0 rep sc i md i st i check_err vi ret if rep nop1 i i nop1 else printf d measurement steps were returned nIt must be d steps n rep nop1 ret hp4156b_zeroOutput vi hp4156b...

Page 195: ...ad1 c for j 0 j nop2 j n j nop1 for i n i n nop1 i fprintf stream 4 2f 4 2f 9 6f d n dvg j sc i md i 1000 st i printf s c msg2 c if fclose stream printf Data file was not closed n 100 ret hp4156b_setS...

Page 196: ...0 0 1 00 2 40 15 595000 0 1 00 2 70 16 690000 0 1 00 3 00 17 680000 0 2 00 0 00 0 000117 0 2 00 0 30 4 168000 0 2 00 0 60 7 882000 0 2 00 0 90 11 150500 0 2 00 1 20 13 975000 0 2 00 1 50 16 425000 0 2...

Page 197: ...l64 vg 3 ViReal64 idcomp 0 05 ViReal64 igcomp 0 01 ViReal64 hold 0 ViReal64 delay 0 ViReal64 s_delay 0 ViReal64 pdcomp 0 ViReal64 pgcomp 0 ViInt32 nop 11 ViInt32 rep ViReal64 sc 11 ViReal64 md 11 ViIn...

Page 198: ...vi hp4156b_CH_ALL 0 check_err vi ret 47 if rep nop 49 printf d measurement steps were returned nIt must be d steps n rep nop exit ret 52 printf Vg V Id mA n 54 for i 0 i nop i printf 4 2f 9 6f n sc i...

Page 199: ...385000 0 2 10 20 955000 0 2 40 24 660000 0 2 70 28 500000 0 3 00 32 450000 0 FILE stream 59 if stream fopen f_name w NULL printf Data file was not opened n else printf s c msg1 c fprintf stream s c he...

Page 200: ...ViSession vi ViStatus ret 1 ViInt32 emitter 1 SMU1 3 ViInt32 base 2 SMU2 ViInt32 collector 4 SMU4 ViReal64 vb1 0 3 ViReal64 vb2 0 8 ViReal64 vc 3 ViReal64 ve 0 ViReal64 ibcomp 0 01 ViReal64 iccomp 0 1...

Page 201: ...ange rep sc 0 md 0 st 0 check_err vi ret 51 ret hp4156b_zeroOutput vi hp4156b_CH_ALL 53 ret hp4156b_setSwitch vi hp4156b_CH_ALL 0 check_err vi ret 55 if rep nop 57 printf d measurement steps were retu...

Page 202: ...0 0 80 55 71000000 0 33300000 167 29729730 0 0 ViInt32 i 67 ViInt32 n printf Vb V Ic mA Ib mA n for i 0 i nop i printf 4 2f 11 8f 11 8f n sc i md 2 i 1000 md 2 i 1 1000 ViChar f_name C Agilent data d...

Page 203: ...gate 2 SMU2 source 3 SMU3 bulk 4 SMU4 ViReal64 vd ViReal64 vg ViReal64 idcomp ViReal64 igcomp ViReal64 base ViReal64 width ViReal64 period ViReal64 hold ViReal64 meas ViInt32 status 21 ret hp4156b_set...

Page 204: ...t hp4156b_measureP vi drain hp4156b_IM_MODE 0 meas status check_err vi ret 46 ret hp4156b_zeroOutput vi hp4156b_CH_ALL check_err vi ret 49 printf Id 9 6f mA at 3 1f V n meas 1000 vd printf Vg 3 1f V n...

Page 205: ...SMU1 base 2 SMU2 collector 4 SMU4 ViReal64 vc ViReal64 vb ViReal64 iccomp ViReal64 ibcomp vc 0 vb 0 iccomp 0 1 ibcomp 0 1 ViInt32 mch 3 ViInt32 mode 2 ViReal64 range 2 ViReal64 md 2 ViInt32 st 2 ViIn...

Page 206: ...hp4156b_readData vi eod type mdata stat ch 47 md 0 mdata st 0 stat ret hp4156b_readData vi eod type mdata stat ch md 1 mdata st 1 stat check_err vi ret printf Ic 9 6f mA n md 0 1000 printf Ib 9 6f mA...

Page 207: ...iReal64 vc 3 ViReal64 ib 150E 6 ViReal64 iccomp 0 05 ViReal64 vbcomp 5 ViReal64 hold 0 1 ViReal64 width 0 001 ViReal64 period 0 01 ViInt32 nop1 11 ViInt32 nop2 3 ViInt32 rep ViReal64 sc 33 ViReal64 md...

Page 208: ...lse printf d measurement steps were returned nIt must be d steps n rep nop1 ret hp4156b_zeroOutput vi hp4156b_CH_ALL ret hp4156b_setSwitch vi hp4156b_CH_ALL 0 check_err vi ret exit ret 58 ret hp4156b_...

Page 209: ...head1 c for j 0 j nop2 j n j nop1 for i n i n nop1 i fprintf stream 5 1f 4 2f 9 6f d n dib j 1E6 sc i md i 1000 st i printf s c msg2 c if fclose stream printf Data file was not closed n 91 ret hp4156b...

Page 210: ...935000 0 50 0 2 70 9 970000 0 50 0 3 00 10 010000 0 100 0 0 00 0 095000 0 100 0 0 30 15 765000 0 100 0 0 60 18 245000 0 100 0 0 90 18 910000 0 100 0 1 20 19 030000 0 100 0 1 50 19 105000 0 100 0 1 80...

Page 211: ...a file Table 5 10 Multi Channel Pulsed Sweep Measurement Example void perform_meas ViSession vi ViStatus ret 1 ViInt32 emitter 1 SMU1 3 ViInt32 base 2 SMU2 ViInt32 collector 4 SMU4 ViReal64 vb 0 ViRea...

Page 212: ..._ALL 50 ret hp4156b_setSwitch vi hp4156b_CH_ALL 0 check_err vi ret 52 ViInt32 i 54 for i 0 i nop i ret hp4156b_readData vi eod type mdata stat ch md1 i mdata Data measured by mch 0 collector ret hp415...

Page 213: ...Ve V Ic mA Ib mA n for i 0 i nop i printf 5 2f 11 8f 11 8f n sc i md1 i 1000 md2 i 1000 ViChar f_name C Agilent data data5 txt 74 ViChar head1 Ve V Ic mA Ib mA ViChar msg1 Saving data ViChar msg2 Dat...

Page 214: ...1 ViInt32 drain 1 SMU1 4 ViInt32 gate 2 SMU2 ViInt32 source 3 SMU3 ViInt32 bulk 4 SMU4 ViReal64 vd 3 ViReal64 vg 3 ViReal64 idcomp 0 05 ViReal64 igcomp 0 01 ViReal64 hold 0 ViReal64 delay 0 ViReal64...

Page 215: ...hp4156b_sweepPbias vi drain hp4156b_IM_MODE 0 rep sc i md i st i check_err vi ret if rep nop1 i i nop1 else printf d measurement steps were returned nIt must be d steps n rep nop1 ret hp4156b_zeroOutp...

Page 216: ...am s c head1 c for j 0 j nop2 j n j nop1 for i n i n nop1 i fprintf stream 4 2f 4 2f 9 6f d n dvg j sc i md i 1000 st i printf s c msg2 c if fclose stream printf Data file was not closed n 100 ret hp4...

Page 217: ...14 270000 0 1 00 2 40 15 425000 0 1 00 2 70 16 495000 0 1 00 3 00 17 460000 0 2 00 0 00 0 005000 0 2 00 0 30 4 165000 0 2 00 0 60 7 875000 0 2 00 0 90 11 135000 0 2 00 1 20 13 945000 0 2 00 1 50 16 37...

Page 218: ...eal64 vlout 0 ViReal64 ilcomp 0 1 ViReal64 hold 0 1 ViReal64 interval 0 05 ViInt32 nop 30 ViInt32 mch 3 ViInt32 mode 2 ViReal64 range 2 ViInt32 point ViInt32 index 30 ViReal64 value 60 ViInt32 status...

Page 219: ...check_err vi ret exit ret ViInt32 i 54 ViChar f_name C Agilent data data7 txt ViChar head1 Index I1 mA R1 ohm I2 mA R2 ohm Status ViChar msg1 Saving data ViChar msg2 Data save completed ViChar c n Li...

Page 220: ...i value 2 i 1000 bias value 2 i value 2 i 1 1000 bias value 2 i 1 status i printf s c msg2 c if fclose stream printf Data file was not closed n 82 ret hp4156b_clearSampleSync vi ret hp4156b_setSwitch...

Page 221: ...1 0 10 11 133 8 982 10 759 9 295 0 11 11 147 8 971 10 752 9 301 0 12 11 136 8 980 10 759 9 295 0 13 11 136 8 980 10 755 9 298 0 14 11 147 8 971 10 766 9 289 0 15 11 140 8 977 10 755 9 298 0 16 11 143...

Page 222: ...ias 0 1 ViReal64 icomp 0 1 ViReal64 vlout 0 ViReal64 ilcomp 0 1 ViReal64 hold 0 0 ViReal64 duration 5 0 ViReal64 period 0 01 ViInt32 status ViReal64 md 2 ViInt32 st 2 18 ret hp4156b_setSwitch vi t1 1...

Page 223: ...ret hp4156b_force vi low hp4156b_VF_MODE range vlout ilcomp 0 ret hp4156b_addStressSyncIv vi 1 t1 2 range base stress icomp check_err vi ret ret hp4156b_addStressSyncIv vi 2 t2 2 range base stress ic...

Page 224: ...56b_IM_MODE range md 0 st 0 ret hp4156b_spotMeas vi t2 hp4156b_IM_MODE range md 1 st 1 ret hp4156b_zeroOutput vi hp4156b_CH_ALL check_err vi ret printf Data after stress n 63 printf T1 current 8 5f mA...

Page 225: ...6 Programming Examples for VEE Users...

Page 226: ...g examples This chapter contains the following sections Programming Basics High Speed Spot Measurements Multi Channel Spot Measurements Staircase Sweep Measurements Synchronous Sweep Measurements Mult...

Page 227: ...er on Agilent VEE Basic Objects to Control the Instrument To display the To From object To define transactions in the To From object To set input parameters To use the Help function To use input varia...

Page 228: ...displayed 4 Enter the device name in the Name field The example shown in Figure 6 1 sets HP4156B 5 Enter the GPIB address for the device in the Address field The example shown in Figure 6 1 sets 717...

Page 229: ...river OK Help Cancel Plug play Driver Name Parameter to init call Address eg GPIB VXI 12 INSTR Perform Identification Query Perform Reset HP4156B HPE5250A hpvisa Unknown File Edit View Debug Untitled...

Page 230: ...play shown in Figure 6 2 1 Display the To From object for the VXIplug play driver 2 Define the transactions functions of the driver in the To From object 3 Set the input parameters for the transaction...

Page 231: ...ent hp4156b_spotMeas This function executes a spot measurement hp4156b_zeroOutput This function disables the 4155 4156 output To display the To From object You can display the To From object as shown...

Page 232: ...lable for the instrument and displays the Help message for the selected function 2 Select the function you want to add to the To From object Figure 6 4 selects the Applying dc Current Voltage function...

Page 233: ...ou can set the input parameter value using the Edit Function Panel dialog box Figure 6 5 sets the following values for the input parameters of the hp4156b_force function which forces dc current or vol...

Page 234: ...der to enter the parameter value move the mouse pointer to the appropriate entry field then click the right mouse button The context based Help function will be displayed Figure 6 6 shows the Help mes...

Page 235: ...value in the Panel tab If you pass the value from another object such as Data Real object click the Parameters tab and use Variable not Constant See Figure 6 7 Figure 6 7 To Use Input Variables NOTE...

Page 236: ...he To From object You can create the output terminal as shown in the following example 1 Click the Parameters tab 2 Enter the Name output terminal name for the output variable value 3 Enter the Name o...

Page 237: ...ject to the input terminal of the To From HP4156B object NOTE Confirm the data type of the input variable The data type of the Data object must be the same as the data type for the input parameter To...

Page 238: ...ng Agilent VEE the 4155 4156 control mode is controlled by the hp4156b_init function which is automatically called and executed by Agilent VEE when the program first runs after loading However if you...

Page 239: ...function call If this function is enabled 1 of Figure 6 11 and if an error occurs in the function call Agilent VEE stops the program execution and displays an error dialog box You must then enter the...

Page 240: ...unctions automatically when you close the program or Agilent VEE These functions cannot be called in a program using Agilent VEE hp4156b_error_message hpe5250a_error_message These functions receive th...

Page 241: ...Output Switch Setup hp4156b_setSwitch channel state Output Filter Setup hp4156b_setFilter channel state Integration Time Setup hp4156b_setInteg table time average Forces dc bias hp4156b_force channel...

Page 242: ...ot Measurement Table 6 2 Program Explanation Object Title Menu Explanation Vs Vg Vsub Vd Data Constant Real Enters input parameters of hp4156b_force To From HP4156B I O InstrumentManager Plug play Exe...

Page 243: ...nd Source Setup for Example Program Description Function Parameters Output Switch Setup hp4156b_setSwitch channel state Output Filter Setup hp4156b_setFilter channel state Integration Time Setup hp415...

Page 244: ...asurement Table 6 4 Program Explanation Object Title Menu Explanation Vbe Data Constant Real Enters input parameters of hp4156b_force To From HP4156B I O InstrumentManager Plug play Executes measureme...

Page 245: ...nels Ch1 Ch2 Ch1Mode Ch2Mode Ch1Range Ch2Range Data Constant Integer Data Constant Real Enters data to allocate array and array element for channel mode range of hp4156b_measureM A 1 Device Formula Ca...

Page 246: ...state Integration Time Setup hp4156b_setInteg table time average Forces dc bias hp4156b_force channel mode range value compliance polarity Sweep Source Setup hp4156b_setIv channel mode range start st...

Page 247: ...Title Menu Explanation Vs Vg Vsub VdStart VdStop MeasPoints Data Constant Real Data Constant Integer Enters input parameters of hp4156b_force hp4156b_setIv and hp4156b_sweepIv To From HP4156B I O Ins...

Page 248: ...on page 6 25 This program measures MOSFET Id Vg characteristics The measurement setup is shown in Figure 6 19 Figure 6 19 Device Connection and Source Setup for Example Program Description Function P...

Page 249: ...ct Title Menu Explanation Vs Vsub Vstart Vstop MeasPoints Data Constant Real Data Constant Integer Enters input parameters of hp4156b_force hp4156b_setIv and hp4156b_setSweepSync To From HP4156B I O I...

Page 250: ...Switch Setup hp4156b_setSwitch channel state Output Filter Setup hp4156b_setFilter channel state Integration Time Setup hp4156b_setInteg table time average Forces dc bias hp4156b_force channel mode r...

Page 251: ...urement Table 6 11 Program Explanation Object Title Menu Explanation VeStart VeStop MeasPoints Data Constant Real Data Constant Integer Enters input parameters of hp4156b_setIv and hp4156b_sweepMiv To...

Page 252: ...Ch2 Ch1Mode Ch2Mode Ch1Range Ch2Range Data Constant Integer Data Constant Real Enters data to allocate array and array element for channel mode range of hp4156b_sweepMiv A 1 Device Formula Calculates...

Page 253: ...Channel Sweep Measurements Figure 6 24 GetMeasData User Object Table 6 13 Program Explanation Object Title Menu Explanation GetValues Data AccessArray GetValues Gets data from array value status Ic I...

Page 254: ...lter channel state pulse channel must be set to OFF Integration Time Setup hp4156b_setInteg table time average Forces dc bias hp4156b_force channel mode range value compliance polarity Forces pulse bi...

Page 255: ...Table 6 15 Program Explanation Object Title Menu Explanation Vs Vg Vsub Vd Data Constant Real Enters input parameters of hp4156b_force and hp4156b_setPbias To From HP4156B I O InstrumentManager Plug p...

Page 256: ...nnel state pulse channel must be set to OFF Integration Time Setup hp4156b_setInteg table time average Forces dc bias hp4156b_force channel mode range value compliance polarity Sends Command String hp...

Page 257: ...nd array element for channel mode range of hp4156b_startMeasure A 1 Device Formula Calculates A 1 to allocate array AllocReal AllocInteger Data AllocateArray Real Data AllocateArray Integer Allocates...

Page 258: ...t be set to OFF Integration Time Setup hp4156b_setInteg table time average Forces dc bias hp4156b_force channel mode range value compliance polarity Sweep Source Setup hp4156b_setPiv channel mode rang...

Page 259: ...le Menu Explanation Vs Vg Vsub VdStart VdStop MeasPoints Data Constant Real Data Constant Integer Enters input parameters of hp4156b_force hp4156b_setPiv and hp4156b_sweepPiv To From HP4156B I O Instr...

Page 260: ...hp4156b_setFilter channel state pulse channel must be set to OFF Integration Time Setup hp4156b_setInteg table time average Forces dc bias hp4156b_force channel mode range value compliance polarity S...

Page 261: ...Program Explanation Object Title Menu Explanation VbeStart VbeStop MeasPoints Data Constant Real Data Constant Integer Enters PWV command parameters For Count Flow Repeat ForCount Repeats next action...

Page 262: ...stant Integer Data Constant Real Enters data to allocate array and array element for channel mode range of hp4156b_startMeasure A 1 Device Formula Calculates A 1 to allocate array AllocReal AllocInteg...

Page 263: ..._setFilter channel state pulse channel must be set to OFF Integration Time Setup hp4156b_setInteg table time average Forces dc bias hp4156b_force channel mode range value compliance polarity Forces pu...

Page 264: ...lanation VcStart VcStop Vb Ve MeasPoints Data Constant Real Data Constant Integer Enters input parameters of hp4156b_force hp4156b_setPbias and hp4156b_setIv To From HP4156B I O InstrumentManager Plug...

Page 265: ...Integration Time Setup hp4156b_setInteg table time average Forces dc bias hp4156b_force channel mode range value compliance polarity Sampling timing setup hp4156b_setSample hold interval point Sampli...

Page 266: ...erval Bias MeasCh1 MeasCh2 MeasMode MeasRange MeasPoints Data Constant Integer Data Constant Real Enters input parameters of hp4156b_force hp4156b_setSample hp4156b_addSampleSyncIv hp4156b_addSampleSy...

Page 267: ...nts Figure 6 38 SetArray User Function Table 6 27 Program Explanation Object Title Menu Explanation AllocReal AllocInteger Data AllocateArray Real Data AllocateArray Integer Allocates array for channe...

Page 268: ...User s Guide Edition 4 Programming Examples for VEE Users Sampling Measurements Figure 6 39 GetData User Function Table 6 28 Program Explanation Object Title Menu Explanation GetValues Data AccessArra...

Page 269: ...156b_setPguR channel state Forces dc bias hp4156b_force channel mode range value compliance polarity Stress timing setup hp4156b_setStress hold mode duration period dc stress setup hp4156b_addStressSy...

Page 270: ...lsestress width delay rise fall Data Constant Real Data Constant Integer Enters input parameters of hp4156b_force hp4156b_setStress hp4156b_addStressSyncIv hp4156b_addStressSyncPulse hp4156b_stress To...

Page 271: ...7 Sample Application Programs Using VEE...

Page 272: ...llation Using sample1 vee Using sample2 vee Customizing Sample Programs CAUTION The program and setup files stored on the Sample Program Disk are examples only and may need to be customized for your s...

Page 273: ...gilent E5250A low leakage switch mainframe and the Summit series semi auto prober from Cascade Microtech Inc The following files are stored on the disk readme txt This is a text file with a brief intr...

Page 274: ...wo MOSFETs 4 Store the measured data into files and display the results The differences between the two programs are the probing control and the display as shown in Table 7 1 Table 7 1 Differences Bet...

Page 275: ...points which are the nearest from the targeted point for both higher and lower directions The targeted point Vg_extract Id_target is an ideal point which indicates the Id_target value on the line thro...

Page 276: ...y Select this mode if you use the 4155 4156 only The test device is a single MOSFET as the 4155 4156 has four SMUs to connect and measure a 4 terminal device simultaneously A test fixture or manual pr...

Page 277: ...e default source setup Figure 7 2 Measurement Connection and Source Setup NOTE To avoid misconnection pay close attention to the die device1 and device2 and the pin assignment of the probe card if use...

Page 278: ...y for HP4155B 4156B Sample Program Mon 15 Jun 1998 14 14 30 Comment Device 1 Vth Table X Index Y Index Vth V 5 7 9 21E 01 7 5 9 19E 01 5 5 7 32E 01 3 5 9 20E 01 5 3 9 22E 01 Device 2 Vth Table X Index...

Page 279: ...your PC and the prober must be connected to your PC via Cascade s interface For the interface and the operating system supported by the PCS contact Cascade Microtech Inc 2 Agilent VEE Sample Program D...

Page 280: ...ams using Windows Explorer 2 Create a subdirectory in the working directory The subdirectory will be used to save the measurement data files 3 Insert the Agilent VEE Sample Program Disk into the flexi...

Page 281: ...g sample1 vee This section covers the following topics Program Execution Flow Panel Display To Execute sample1 vee NOTE For the wafer test using the Summit series semi auto prober from Cascade Microte...

Page 282: ...ay Driver User s Guide Edition 4 Sample Application Programs Using VEE Using sample1 vee Program Execution Flow The execution flow of the sample1 vee program is shown in Figure 7 5 and Table 7 2 Figur...

Page 283: ..._meas 1 header lines are written in vth1 txt and vth2 txt See Measurement Data Files on page 8 7 Until Break Repeats the following sequence until a break occurs 8 Start Measurement Triggers the start...

Page 284: ...of device 1 and 2 X Y Index Displays wafer map of Vth value using the following characters Both device 1 and 2 test data are within the allowable range F1 Device 1 test data is out of the allowable r...

Page 285: ...and the semi auto prober being used if applicable 5 Display the SYSTEM MISCELLANEOUS screen on the 4155 4156 Select NOT SYSTEM CONTROLLER in the 4155C 4156C is field 6 Run Agilent VEE If this is the f...

Page 286: ...allowable range of device 1 Vth value Min field sets the lower limit Max field sets the upper limit Dev2 Vth Min Max Enter the allowable range of device 2 Vth value Min field sets the lower limit Max...

Page 287: ...er s Guide Edition 4 7 17 Sample Application Programs Using VEE Using sample1 vee Figure 7 7 Running sample1 vee with Cascade Microtech Prober Control Software 1 Figure 7 8 Running sample1 vee with Ca...

Page 288: ...p the program click the stop button on the Agilent VEE menu bar NOTE In Offline mode the program returns the dummy data instead of the raw measurement data in step 8 NOTE A wafer map is also displayed...

Page 289: ...ing sample2 vee This section covers the following topics Program Execution Flow Panel Display To Execute sample2 vee NOTE For the wafer test using the Summit series semi auto prober from Cascade Micro...

Page 290: ...y Driver User s Guide Edition 4 Sample Application Programs Using VEE Using sample2 vee Program Execution Flow The execution flow of the sample2 vee program is shown in Figure 7 10 and Table 7 4 Figur...

Page 291: ...uments if used 9 1 Init G 1st meas Sets G_1st_meas value If G_1st_meas 1 the prober sets the first die to probe and header lines are written in vth1 txt and vth2 txt See Measurement Data Files on page...

Page 292: ...Vg Id Graph Displays Id Vg curve for the device selected Enter the file name then click View to display the graph X Y Index Displays wafer map of Vth value using the following characters Both device 1...

Page 293: ...semi auto prober being used if applicable 5 Display the SYSTEM MISCELLANEOUS screen on the 4155 4156 Then select NOT SYSTEM CONTROLLER in the 4155C 4156C is field 6 Run Agilent VEE If this is the fir...

Page 294: ...s field if the semi auto prober is not used Dev1 Vth Min Max Enter the allowable range of Vth value for device 1 Min field sets the lower limit Max field sets the upper limit Dev2 Vth Min Max Enter th...

Page 295: ...r s Guide Edition 4 7 25 Sample Application Programs Using VEE Using sample2 vee Figure 7 12 Running sample2 vee with Cascade Microtech Prober Control Software 1 Figure 7 13 Running sample2 vee with C...

Page 296: ...gram click the stop button on the Agilent VEE menu bar NOTE In Offline mode the program returns the dummy data instead of the raw measurement data in step 8 NOTE A wafer map is also displayed in the C...

Page 297: ...stomizing Sample Programs Customizing Sample Programs This section offers examples of modifications to the sample1 vee and sample2 vee programs To Change an GPIB Address To Change the Vth Measurement...

Page 298: ...he Advanced Device Configuration dialog box 7 Click OK in the Device Configuration dialog box 8 Click Save Config in the Instrument Manager dialog box to register the new address Figure 7 15 To Change...

Page 299: ...the Agilent VEE program explorer The Device 1 or 2 Vth Measurement object is displayed 3 Change the Device ID for MOSFET if needed using a string format 4 Change the setup for all terminals for MOSFET...

Page 300: ...Setup object and then open the Setup4155 object 4 Double click hp4156b_force and display the Edit Function Panel 5 Change the setup value on the panel To Remove a Test Device If your test die include...

Page 301: ...Max If Vth Pass for device2 If Then Else F2 F3 5 Delete the input terminal Vth2 6 Add the Flow If Then Else object and enter A then connect the lines between If Vth Pass and If Then Else A terminal be...

Page 302: ...trate terminal of device 1 the example does not modify the objects for device 2 1 Open the Vth Measurement object using the Agilent VEE program explorer 2 Display the program and cut the following thr...

Page 303: ...the sub_ch and Vsub input terminals 6 Open the Setup 4155 object and delete the sub_ch and Vsub input terminals 7 Delete the hp4156b_force instrHandle sub_ch function from the Setup 4155 object Figur...

Page 304: ...easurement 2 Change the measurement setup Device ID String pin voltage and so on for the third device on the panel display of the Device 3 Vth Measurement object See To Change the Vth Measurement Setu...

Page 305: ...he definition of the If Then Else object as shown in Figure 7 22 9 Copy and paste P F1 F2 and F3 objects and change the title and entry to F4 F5 F6 and F7 respectively 10 Cut the line between Else and...

Page 306: ...f the Show Result object 14 Click the right mouse button on the Show Result object and select the Restore menu The Show Result object panel display is restored on the Main program display 15 Select th...

Page 307: ...lowable range F7 Test results of all devices are out of the allowable range To Add a Measurement Parameter If you want to add a measurement parameter such as drain current Id modify the program as sho...

Page 308: ...reate Vg input terminal e comp 1m f polarity AUTO hp4156b_spotMeas function a channel Use drain_ch variable b mode CURRENT MEASUREMENT c range 0 d value Use spot_id variable and create spot_id output...

Page 309: ...erminals in the Meas 4155 Offline object 11 Connect the line between the spot_id object and the spot_id terminal Then connect the line between the spot_id_s object and the spot_id_s terminal 12 Connec...

Page 310: ...to Vg_spot and enter any value for gate voltage in volts This example enters 3 3 Connect the line between the Vg_spot object and the Vg_spot terminal of the Measurement object 4 Create the spot_id and...

Page 311: ...pot_id_s terminal of the Vth Id Measurement object and the spot_id_s output terminal 4 Copy and paste Save Vth Table and change the title to Save Id Table 5 Connect the lines between the Device Id Str...

Page 312: ...ed to the panel display of the Show Result object Adjust the position and size of the object 6 Open the Main program display and connect the line between the Show Result object spot_id terminal and th...

Reviews: