ngspice/examples/optran/models/TLV6001.LIB

383 lines
12 KiB
Plaintext

*$
* TLV6001
*****************************************************************************
* (C) Copyright 2019 Texas Instruments Incorporated. All rights reserved.
*****************************************************************************
** This model is designed as an aid for customers of Texas Instruments.
** TI and its licensors and suppliers make no warranties, either expressed
** or implied, with respect to this model, including the warranties of
** merchantability or fitness for a particular purpose. The model is
** provided solely on an "as is" basis. The entire risk as to its quality
** and performance is with the customer
*****************************************************************************
*
* This model is subject to change without notice. Texas Instruments
* Incorporated is not responsible for updating this model.
*
*****************************************************************************
*
** Released by: Online Design Tools, Texas Instruments Inc.
* Part: TLV6001
* Date: 19FEB2019
* Model Type: Generic (suitable for all analysis types)
* EVM Order Number: N/A
* EVM Users Guide: N/A
* Datasheet: SBOS779D -JUNE 2016-REVISED MAY 2017
* Created with Green-Williams-Lis Op Amp Macro-model Architecture
*
* Model Version: Final 1.2
*
*****************************************************************************
*
* Updates:
*
* Final 1.2
* VOS drift feature is added
* Added Unique subckt name, removed Claw ABS.
* Simplified subckt for current noise.
*
* Final 1.1
* Release to Web.
*
****************************************************************************
* Model Usage Notes:
* 1. The following parameters are modeled:
* OPEN-LOOP GAIN AND PHASE VS. FREQUENCY WITH RL, CL EFFECTS (Aol)
* UNITY GAIN BANDWIDTH (GBW)
* INPUT COMMON-MODE REJECTION RATIO VS. FREQUENCY (CMRR)
* POWER SUPPLY REJECTION RATIO VS. FREQUENCY (PSRR)
* DIFFERENTIAL INPUT IMPEDANCE (Zid)
* COMMON-MODE INPUT IMPEDANCE (Zic)
* OPEN-LOOP OUTPUT IMPEDANCE VS. FREQUENCY (Zo)
* OUTPUT CURRENT THROUGH THE SUPPLY (Iout)
* INPUT VOLTAGE NOISE DENSITY VS. FREQUENCY (en)
* INPUT CURRENT NOISE DENSITY VS. FREQUENCY (in)
* OUTPUT VOLTAGE SWING vs. OUTPUT CURRENT (Vo)
* SHORT-CIRCUIT OUTPUT CURRENT (Isc)
* QUIESCENT CURRENT (Iq)
* SETTLING TIME VS. CAPACITIVE LOAD (ts)
* SLEW RATE (SR)
* SMALL SIGNAL OVERSHOOT VS. CAPACITIVE LOAD
* LARGE SIGNAL RESPONSE
* OVERLOAD RECOVERY TIME (tor)
* INPUT BIAS CURRENT (Ib)
* INPUT OFFSET CURRENT (Ios)
* INPUT OFFSET VOLTAGE (Vos)
* INPUT OFFSET VOLTAGE VS. TEMPERATURE (Vos Drift)
* INPUT COMMON-MODE VOLTAGE RANGE (Vcm)
* INPUT OFFSET VOLTAGE VS. INPUT COMMON-MODE VOLTAGE (Vos vs. Vcm)
* INPUT/OUTPUT ESD CELLS (ESDin, ESDout)
******************************************************
.subckt TLV6001 IN+ IN- VCC VEE OUT
******************************************************
* MODEL DEFINITIONS:
.model BB_SW VSWITCH(Ron=50 Roff=1e9 Von=700e-3 Voff=0)
.model ESD_SW VSWITCH(Ron=50 Roff=1e9 Von=500e-3 Voff=100e-3)
.model OL_SW VSWITCH(Ron=1e-3 Roff=1e9 Von=900e-3 Voff=800e-3)
.model OR_SW VSWITCH(Ron=10e-3 Roff=1e9 Von=1e-3 Voff=0)
.model R_NOISELESS RES(T_ABS=-273.15)
******************************************************
XV_OS N032 N038 VOS_DRIFT_TLV6001
R1 N035 N033 R_NOISELESS 1e-3
R2 N044 ESDn R_NOISELESS 1e-3
R3 N056 0 R_NOISELESS 1e9
C1 N056 0 1
R4 VCC_B N055 R_NOISELESS 1e-3
C2 N055 0 1e-15
C3 N057 0 1e-15
R5 N057 VEE_B R_NOISELESS 1e-3
G1 N035 N036 N006 N005 1e-3
R6 MID N042 R_NOISELESS 1e9
VCM_MIN N043 VEE_B -0.2
R7 N043 MID R_NOISELESS 1e9
VCM_MAX N042 VCC_B 0.2
XVCM_CLAMP N036 MID N039 MID N042 N043 VCCS_EXT_LIM_TLV6001
R8 N039 MID R_NOISELESS 1
C4 N040 MID 1e-15
R9 N039 N040 R_NOISELESS 1e-3
V4 N053 OUT 0
XIQ+ VIMON MID VCC MID VCCS_LIM_IQ_TLV6001
XIQ- MID VIMON VEE MID VCCS_LIM_IQ_TLV6001
R12 VCC_B N009 R_NOISELESS 1e3
R13 N028 VEE_B R_NOISELESS 1e3
XCLAWp VIMON MID N009 VCC_B VCCS_LIM_CLAWp_TLV6001
XCLAWn MID VIMON VEE_B N028 VCCS_LIM_CLAWn_TLV6001
R14 VEE_CLP MID R_NOISELESS 1e3
R15 MID VCC_CLP R_NOISELESS 1e3
R16 N010 N009 R_NOISELESS 1e-3
R17 N029 N028 R_NOISELESS 1e-3
C5 MID N010 1e-15
C6 N029 MID 1e-15
R18 VOUT_S N046 R_NOISELESS 100
C7 VOUT_S MID 1e-9
G2 MID VCC_CLP N010 MID 1e-3
G3 MID VEE_CLP N029 MID 1e-3
XCL_AMP N003 N034 VIMON MID N013 N026 CLAMP_AMP_LO_TLV6001
V_ISCp N003 MID 13.5
V_ISCn N034 MID -12.5
R19 N034 MID R_NOISELESS 1e9
R20 N026 MID R_NOISELESS 1
C8 N027 MID 1e-15
R21 MID N013 R_NOISELESS 1
R22 MID N003 R_NOISELESS 1e9
C9 MID N014 1e-15
XCLAW_AMP VCC_CLP VEE_CLP VOUT_S MID N011 N024 CLAMP_AMP_LO_TLV6001
R23 VEE_CLP MID R_NOISELESS 1e9
R24 N024 MID R_NOISELESS 1
C10 N025 MID 1e-15
R25 MID N011 R_NOISELESS 1
R26 MID VCC_CLP R_NOISELESS 1e9
C11 MID N012 1e-15
XCL_SRC N014 N027 CL_CLAMP MID VCCS_LIM_4_TLV6001
XCLAW_SRC N012 N025 CLAW_CLAMP MID VCCS_LIM_3_TLV6001
R27 N011 N012 R_NOISELESS 1e-3
R28 N025 N024 R_NOISELESS 1e-3
R29 N013 N014 R_NOISELESS 1e-3
R30 N027 N026 R_NOISELESS 1e-3
R33 VIMON N045 R_NOISELESS 100
C13 VIMON MID 1e-9
C_DIFF ESDp ESDn 1e-12
C_CMn ESDn MID 5e-12
C_CMp MID ESDp 5e-12
I_Q VCC VEE 75e-6
I_B N036 MID 1e-12
I_OS N044 MID 1e-15
R34 IN+ ESDp R_NOISELESS 10e-3
R35 IN- ESDn R_NOISELESS 10e-3
R36 N030 MID R_NOISELESS 1
R37 N037 MID R_NOISELESS 1e9
R38 MID N022 R_NOISELESS 1
R39 MID N008 R_NOISELESS 1e9
XGR_AMP N008 N037 N021 MID N022 N030 CLAMP_AMP_HI_TLV6001
XGR_SRC N023 N031 CLAMP MID VCCS_LIM_GR_TLV6001
C17 MID N023 1e-15
C18 N031 MID 1e-15
V_GRn N037 MID -160
V_GRp N008 MID 160
R40 N022 N023 R_NOISELESS 1e-3
R41 N031 N030 R_NOISELESS 1e-3
R42 VSENSE N021 R_NOISELESS 1e-3
C19 MID N021 1e-15
R43 MID VSENSE R_NOISELESS 1e3
G5 N032 N033 N002 MID 1e-3
G8 MID CLAW_CLAMP N047 MID 1e-3
R45 MID CLAW_CLAMP R_NOISELESS 1e3
G9 MID CL_CLAMP CLAW_CLAMP MID 1e-3
R46 MID CL_CLAMP R_NOISELESS 1e3
R47 N054 VCLP R_NOISELESS 100
C24 MID VCLP 1e-9
E4 N054 MID CL_CLAMP MID 1
R52 MID ESDp R_NOISELESS 1e12
R53 ESDn MID R_NOISELESS 1e12
R58 N033 N032 R_NOISELESS 1e3
R59 N055 N056 R_NOISELESS 1e6
R60 N056 N057 R_NOISELESS 1e6
R67 N036 N035 R_NOISELESS 1e3
G15 MID VSENSE CLAMP MID 1e-3
V_ORp N020 VCLP 1.8
V_ORn N015 VCLP -1.8
E1 MID 0 N056 0 1
S8 N018 CLAMP CLAMP N018 OR_SW
S9 CLAMP N017 N017 CLAMP OR_SW
Xe_n N038 ESDp VNSE_TLV6001
Xi_nn ESDn MID FEMT_TLV6001
Xi_np N038 MID FEMT_TLV6001
XVCCS_LIMIT_1 N040 N044 MID N041 VCCS_LIM_1_TLV6001
XVCCS_LIMIT_2 N041 MID MID CLAMP VCCS_LIM_2_TLV6001
R44 N041 MID R_NOISELESS 1e6
R68 CLAMP MID R_NOISELESS 1e6
C20 CLAMP MID 84.3e-9
G7 MID N047 VSENSE MID 1e-6
R69 N047 MID R_NOISELESS 1e6
C25 N047 MID 5.3e-14
XOL_SENSE_TLV6001 MID N060 N059 N062 OL_SENSE_TLV6001
R31 N060 MID R_NOISELESS 1
R51 N060 SW_OL R_NOISELESS 100
C12 SW_OL MID 1e-12
H2 N058 MID V11 -1
H3 N061 MID V12 1
V11 N017 N016 0
V12 N018 N019 0
R77 N058 N059 R_NOISELESS 100
C28 N059 MID 1e-12
R78 N061 N062 R_NOISELESS 100
C29 N062 MID 1e-12
G14 MID N016 N015 MID 1
G16 MID N019 N020 MID 1
R75 N016 MID R_NOISELESS 1
R76 N019 MID R_NOISELESS 1
G17 0 VCC_B VCC 0 1
G18 0 VEE_B VEE 0 1
R79 VCC_B 0 R_NOISELESS 1
R80 VEE_B 0 R_NOISELESS 1
C27 N002 N001 21.22e-12
R81 N002 MID R_NOISELESS 5.64e3
R82 N002 N001 R_NOISELESS 1e8
G_adjust2 MID N001 ESDp MID 1.03
C14 N006 N007 13.26e-12
R48 N006 MID R_NOISELESS 2.82e3
R49 N006 N007 R_NOISELESS 1e8
G22 MID N007 VCC_B MID 998e-3
R88 N007 MID R_NOISELESS 1
C15 N005 N004 13.26e-12
R54 N005 MID R_NOISELESS 2.82e3
R55 N005 N004 R_NOISELESS 1e8
G4 MID N004 VEE_B MID 998e-3
R56 N004 MID R_NOISELESS 1
Rx N053 N052 R_NOISELESS 1e6
Rdummy N053 MID R_NOISELESS 1e5
G6 MID N048 CL_CLAMP N053 89.3
Rdc1 N048 MID R_NOISELESS 1
R32 N048 N049 R_NOISELESS 1e4
R50 N049 MID R_NOISELESS 2.65e3
G10 MID N050 N049 MID 4.77
C16 N049 N048 5.31e-6
R63 N050 MID R_NOISELESS 1
R64 N050 N051 R_NOISELESS 1e4
R65 N051 MID R_NOISELESS 10.01
C22 N051 N050 159e-15
R89 N001 MID R_NOISELESS 1
S2 VCC ESDn ESDn VCC ESD_SW
S3 VCC ESDp ESDp VCC ESD_SW
S4 ESDn VEE VEE ESDn ESD_SW
S5 ESDp VEE VEE ESDp ESD_SW
E2 N046 MID OUT MID 1
R10 MID N046 R_NOISELESS 1e9
H1 N045 MID V4 1e3
R11 MID N045 R_NOISELESS 1e9
S6 VCC OUT OUT VCC ESD_SW
S7 OUT VEE VEE OUT ESD_SW
S1 N049 N048 SW_OL MID OL_SW
XVCCS_LIM_ZO_TLV6001 N051 MID MID N052 VCCS_LIM_ZO_TLV6001
R57 N052 MID R_NOISELESS 1
.ends TLV6001
*
.SUBCKT VOS_DRIFT_TLV6001 VOS+ VOS-
.PARAM DC = 595.218e-6
.PARAM POL = 1
.PARAM DRIFT = 2.00E-06
E1 VOS+ VOS- VALUE={DC+POL*DRIFT*(TEMP-27)}
.ENDS
*
.subckt CLAMP_AMP_HI_TLV6001 VC+ VC- VIN COM VO+ VO-
.param G=10
GVo+ COM Vo+ Value = {IF(V(VIN,COM)>V(VC+,COM),((V(VIN,COM)-V(VC+,COM))*G),0)}
GVo- COM Vo- Value = {IF(V(VIN,COM)<V(VC-,COM),((V(VC-,COM)-V(VIN,COM))*G),0)}
.ends CLAMP_AMP_HI_TLV6001
*
.subckt FEMT_TLV6001 1 2
.PARAM NVRF=5
.PARAM RNVF={1.184*PWR(NVRF,2)}
E1 3 0 5 0 10
R1 5 0 {RNVF}
R2 5 0 {RNVF}
G1 1 2 3 0 1E-6
.ENDS
*
.subckt VCCS_EXT_LIM_TLV6001 VIN+ VIN- IOUT- IOUT+ VP+ VP-
.param Gain = 1
G1 IOUT+ IOUT- VALUE={LIMIT(Gain*V(VIN+,VIN-),V(VP-,VIN-), V(VP+,VIN-))}
.ends VCCS_EXT_LIM_TLV6001
*
.subckt VCCS_LIM_3_TLV6001 VC+ VC- IOUT+ IOUT-
.param Gain = 1
.param Ipos = 320e-3
.param Ineg = -320e-3
G1 IOUT+ IOUT- VALUE={LIMIT(Gain*V(VC+,VC-),Ineg,Ipos)}
.ends VCCS_LIM_3_TLV6001
*
.subckt VCCS_LIM_4_TLV6001 VC+ VC- IOUT+ IOUT-
.param Gain = 1
.param Ipos = 640e-3
.param Ineg = -640e-3
G1 IOUT+ IOUT- VALUE={LIMIT(Gain*V(VC+,VC-),Ineg,Ipos)}
.ends VCCS_LIM_4_TLV6001
*
.subckt VCCS_LIM_CLAWp_TLV6001 VC+ VC- IOUT+ IOUT-
G1 IOUT+ IOUT- TABLE {(V(VC+,VC-))} =
+(0, 0.663e-5)
+(4.78, 2.7e-4)
+(8.3, 5.02e-4)
+(11.3, 8.03e-4)
+(12.2, 9.18e-4)
+(13.5, 1.4e-3)
.ends VCCS_LIM_CLAWp_TLV6001
*
.subckt VCCS_LIM_CLAWn_TLV6001 VC+ VC- IOUT+ IOUT-
G1 IOUT+ IOUT- TABLE {(V(VC+,VC-))} =
+(0, 0.664e-5)
+(3.1, 1.77e-4)
+(6.1, 3.6e-4)
+(9.2, 5.67e-4)
+(11.2, 7.51e-4)
+(12.1, 8.9e-4)
+(12.5, 1.01e-3)
.ends VCCS_LIM_CLAWn_TLV6001
*
.subckt VCCS_LIM_IQ_TLV6001 VC+ VC- IOUT+ IOUT-
.param Gain = 1e-3
G1 IOUT+ IOUT- VALUE={IF( (V(VC+,VC-)<=0),0,Gain*V(VC+,VC-) )}
.ends VCCS_LIM_IQ_TLV6001
*
.subckt VNSE_TLV6001 1 2
.param FLW=1
.param NLF=134
.param NVR=25
.param GLF={PWR(FLW,0.25)*NLF/1164}
.param RNV={1.184*PWR(NVR,2)}
.model DVN D KF={PWR(FLW,0.5)/1E11} IS=1.0E-16
I1 0 7 10E-3
I2 0 8 10E-3
D1 7 0 DVN
D2 8 0 DVN
E1 3 6 7 8 {GLF}
R1 3 0 1E9
R2 3 0 1E9
R3 3 6 1E9
E2 6 4 5 0 10
R4 5 0 {RNV}
R5 5 0 {RNV}
R6 3 4 1E9
R7 4 0 1E9
E3 1 2 3 4 1
.ends VNSE_TLV6001
*
.subckt CLAMP_AMP_LO_TLV6001 VC+ VC- VIN COM VO+ VO-
.param G=1
GVo+ COM Vo+ Value = {IF(V(VIN,COM)>V(VC+,COM),((V(VIN,COM)-V(VC+,COM))*G),0)}
GVo- COM Vo- Value = {IF(V(VIN,COM)<V(VC-,COM),((V(VC-,COM)-V(VIN,COM))*G),0)}
.ends CLAMP_AMP_LO_TLV6001
*
.subckt VCCS_LIM_GR_TLV6001 VC+ VC- IOUT+ IOUT-
.param Gain = 1
.param Ipos =110e-3
.param Ineg = -110e-3
G1 IOUT+ IOUT- VALUE={LIMIT(Gain*V(VC+,VC-),Ineg,Ipos)}
.ends VCCS_LIM_GR_TLV6001
*
.subckt VCCS_LIM_1_TLV6001 VC+ VC- IOUT+ IOUT-
.param Gain = 1e-4
.param Ipos = .5
.param Ineg = -.5
G1 IOUT+ IOUT- VALUE={LIMIT(Gain*V(VC+,VC-),Ineg,Ipos)}
.ends VCCS_LIM_1_TLV6001
*
.subckt VCCS_LIM_2_TLV6001 VC+ VC- IOUT+ IOUT-
.param Gain = 71e-4
.param Ipos = 53.1e-3
.param Ineg = -53.1e-3
G1 IOUT+ IOUT- VALUE={LIMIT(Gain*V(VC+,VC-),Ineg,Ipos)}
.ends VCCS_LIM_2_TLV6001
*
.subckt OL_SENSE_TLV6001 1 2 3 4
GSW+ 1 2 Value = {IF((V(3,1)>10e-3 | V(4,1)>10e-3),1,0)}
.ends OL_SENSE_TLV6001
*
.subckt VCCS_LIM_ZO_TLV6001 VC+ VC- IOUT+ IOUT-
.param Gain = 1e3
.param Ipos =30e3
.param Ineg = -30e3
G1 IOUT+ IOUT- VALUE={LIMIT(Gain*V(VC+,VC-),Ineg,Ipos)}
.ends VCCS_LIM_ZO_TLV6001
*