* LMH5401 ***************************************************************************** * (C) Copyright 2012 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. ***************************************************************************** * ** Released by: WEBENCH(R) Design Center, Texas Instruments Inc. * Part: LMH5401 * Date: 10/20/2013 * Model Type: All In One * Simulator: TINA9 * Simulator Version: 9.3.50.40 * EVM Order Number: N/A * EVM Users Guide: N/A * Datasheet: SBOS710 - October 2014 * * Model Version: 1.2 * ***************************************************************************** * * Updates: * * Version 1.0 : Release to Web * Version 1.1 : Add internal input resistance * Version 1.2 : Rev CM output connections. Add current noise * ***************************************************************************** * Notes: * The model meets the following specs for 5V operation, G = 4V/V: * 1. Turn-on and turn-off time delay * 2. Slew Rate * 3. CMRR vs frequency * 4. Input and output common-mode range * 5. Input voltage noise * 6. Output voltage swing and output current * 7. Quiescent current for active and power-down modes * 8. Output common-mode bandwidth, gain and offset * 9. HD2, HD3 vs frequency * 10 HD2, HD3 vs. VICM and VOCM * Note: * The model HD2 & HD3 are 4dB-8dB better than the actual device for f < 50MHz * The model may not conform to published specs for 3.3V operation ***************************************************************************** * *$ .SUBCKT LMH5401 OUTP OUTN FBP FBN INP INN CM PD VCC VEE GND X_U17 U3_OUTP U3_OUTN LIMITER_INP LIMITER_INN VMID VCC VEE IOUTP IOUTN + LIMITER G_G2 VMID VEE IOUTN VMID 1 R_R20 OUTPINT OUTP 10 E_E8 OUT 0 OUTPINT OUTNINT 1 X_U30 GBW_INP LIM_INP VCC VEE VMID IN_LIM G_G10 DIST_OUTN DIST_OUTP N1047668 N1047660 0.13 X_S2 SHDN VMID N17901 N15575 DEV_SCH_S2 E_E6 N15575 CM_OUT U2_OUTP U2_OUTN 1 G_G11 DIST_OUTN DIST_OUTP N1056358 N1055868 0.1 X_U16 U2_OUTP U2_OUTN LIMITER_INP LIMITER_INN VMID VCC VEE IOUTP IOUTN + LIMITER X_U25 CM_OUT VMID N65800 CMCALC SHDN VMID CM_CL_GAIN X_H1 N17901 OUTPINT IOUTP VMID DEV_SCH_H1 X_U18 N459295 LIM_INP vnse R_R29 0 N1047728 2 G_G8 DIST_OUTN DIST_OUTP N1056062 N1056052 1 E_E9 N72619 VMID CMINT VMID 1 X_U22 LIMITER_INN VMID N837077 VMID VCC VEE VMID VCN_OUT VC_OUT + SOFT_LIM_OUTPUT X_U28 N109210 N109423 N1047668 N1047660 N1056358 N1055868 P2P P2N ERR_1 + ERR_2 ERR_3 VMID ERR R_R12 FBP OUTPINT 25 R_R30 0 N1047706 2 R_R16 N109210 N109423 1k C_C15 P2N P2P 15p C_C16 VMID N436166 400f R45 VMID N436166 2300 R_R41 N1047706 N1047728 4 R_R27 N1056358 N1055958 1 E_E1 VMID 0 VCC N00961 0.5 V_V3 N891663 N436166 0.25mVdc R_R31 0 N1056062 2 *E_E3 CMCALC VMID OUTP N07972 0.5 E_E3 CMCALC VMID OUTPINT N07972 0.5 R_R33 CNTRL_OUT COMP_IN 1k X_U21 LIMITER_INP VMID N826132 VMID VCC VEE VMID VCN_OUT VC_OUT + SOFT_LIM_OUTPUT C_C10 N1047668 N1047728 125p C_C18 N459295 N436166 100f X_U24 CNTRL_OUT INP INN VCC VEE VMID PD GND CONTROL R_R28 N1055868 N1055882 1 R_R10 N72619 N65800 500 C_C17 N459295 VMID 400f R46 N459295 VMID 2300 G_G1 VCC VMID IOUTP VMID 1 R_R32 0 N1056052 2 TC=0,0 E_E2 N00961 0 0 VEE 1 C_C11 N1047660 N1047706 125p X_U29 GBW_INN LIM_INN VCC VEE VMID IN_LIM R_R15 VEE PD 200k C_C9 N1055882 N1055958 8n *X_U23 N891663 N459295 femt X_U123 VMID N891663 femt X_U223 N459295 VMID femt E_E13 N837077 VMID DIST_OUTN N805589 1 X_U12 GBW_OUTP GBW_OUTN GBW_INP GBW_INN SHDN VMID GBW_SLEW_FDA X_U26 INN INP ERR_1 VCC VEE VMID CM1_MON C_C12 N1056358 N1056062 40p C_C8 N1047868 N1047716 4.5n E_E12 N798182 VMID VMID CM_OUT 1 V_VCN_OUT VCN_OUT VMID 0.01Vdc R_R36 P2N P2P 2 R_R19 DIST_OUTN DIST_OUTP 2 E_E14 N805589 VMID VMID CM_OUT 1 E_E7 CM_OUT N15690 U3_OUTP U3_OUTN 1 C_C13 N1055868 N1056052 40p C_C1 VMID CMINT 1f R_R34 INN N436166 1 R_R35 INP N459295 1 V_VCMoff CM CMINT 27mVdc X_H2 N18027 OUTNINT IOUTN VMID DEV_SCH_H2 V_VC_OUT VC_OUT VMID 1.5Vdc G_G7 DIST_OUTN DIST_OUTP N1047728 N1047706 1 *E_E4 N07972 VMID VMID OUTN 1 E_E4 N07972 VMID VMID OUTNINT 1 R_R14 FBN OUTNINT 25 G_G9 P2P P2N GBW_OUTP GBW_OUTN -1 G_G4 DIST_OUTN DIST_OUTP N1055958 N1055882 1 R_R18 VMID DIST_OUTP 1 E_E11 N826132 VMID DIST_OUTP N798182 1 C_C4 0 N1047716 9n I_I2 N459295 VMID DC 65.7uAdc R_R25 N1047668 N1047716 1 C_C6 0 N1055958 16n I_I1 N891663 VMID DC 66.3uAdc R_R37 VMID P2P 1 V_V1 N501608 VMID 0.5 X_U27 OUTP OUTN ERR_2 ERR_3 VCC VEE VMID CM2_MON G_G3 DIST_OUTN DIST_OUTP N1047716 N1047868 1 X_S1 SHDN VMID VCC VEE DEV_SCH_S1 X_U14 SHDN COMP_IN N501608 VMID COMPARATOR C_C14 VMID COMP_IN 12p C_C7 N1055882 0 16n R_R26 N1047660 N1047868 1 R_R1 VMID CMINT 119k C_C2 VMID N65800 0.1p C_C5 N1047868 0 9n R_R44 N1056052 N1056062 4 G_G5 DIST_OUTP DIST_OUTN P2P P2N -1 R_R17 DIST_OUTN VMID 1 X_S3 SHDN VMID N18027 N15690 DEV_SCH_S3 R_R21 OUTNINT OUTN 10 R_R38 P2N VMID 1 E_E10 LIM_INN VMID N891663 VMID 1.0005 .ENDS *$ * .subckt DEV_SCH_S2 1 2 3 4 S_S2 3 4 1 2 _S2 RS_S2 1 2 1G .MODEL _S2 VSWITCH Roff=1e6 Ron=1.0 Voff=0.2V Von=0.8V .ends DEV_SCH_S2 *$ * .subckt DEV_SCH_H1 1 2 3 4 H_H1 3 4 VH_H1 1 VH_H1 1 2 0V .ends DEV_SCH_H1 *$ * .subckt DEV_SCH_H2 1 2 3 4 H_H2 3 4 VH_H2 -1 VH_H2 1 2 0V .ends DEV_SCH_H2 *$ * .subckt DEV_SCH_S1 1 2 3 4 S_S1 3 4 1 2 _S1 RS_S1 1 2 1G .MODEL _S1 VSWITCH Roff=1700 Ron=90 Voff=0.2V Von=0.8V .ends DEV_SCH_S1 *$ * .subckt DEV_SCH_S3 1 2 3 4 S_S3 3 4 1 2 _S3 RS_S3 1 2 1G .MODEL _S3 VSWITCH Roff=1e6 Ron=1.0 Voff=0.2V Von=0.8V .ends DEV_SCH_S3 *$ .SUBCKT VNSE 1 2 .PARAM NLF = 9.5 .PARAM FLW = 100 .PARAM NVR = 1.3 .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 C1 1 0 1E-15 C2 2 0 1E-15 C3 1 2 1E-15 .ENDS *$ .SUBCKT FEMT 1 2 .PARAM NLFF = 2500 .PARAM FLWF = 50e3 .PARAM NVRF = 2900 .PARAM GLFF={PWR(FLWF,0.25)*NLFF/1164} .PARAM RNVF={1.184*PWR(NVRF,2)} .MODEL DVNF D KF={PWR(FLWF,0.5)/1E11} IS=1.0E-16 I1 0 7 10E-3 I2 0 8 10E-3 D1 7 0 DVNF D2 8 0 DVNF E1 3 6 7 8 {GLFF} R1 3 0 1E9 R2 3 0 1E9 R3 3 6 1E9 E2 6 4 5 0 10 R4 5 0 {RNVF} R5 5 0 {RNVF} R6 3 4 1E9 R7 4 0 1E9 G1 1 2 3 4 1E-6 C1 1 0 1E-15 C2 2 0 1E-15 C3 1 2 1E-15 .ENDS *$ * .SUBCKT IN_LIM OUT IN VCC VEE GNDF .PARAM V1 = 1.2 .PARAM V2 = 0.2 EMAX NMAX GNDF VALUE = {V(VCC,GNDF) - V1} EMIN NMIN GNDF VALUE = {V(VEE,GNDF) - V2} EOUT OUT GNDF VALUE = {MAX(MIN(V(IN,GNDF),V(NMAX,GNDF)),V(NMIN,GNDF))} .ENDS *$ * .SUBCKT LIMITER OUTP OUTN INP INN GNDF VCC VEE VCP VCN .PARAM VHRP0 = 1 .PARAM VHRN0 = -1 .PARAM GAIN = 0.5 .PARAM ROUT = 100 .PARAM V_ISC = 0.1 .PARAM V_IOUT1 = 0.06 .PARAM ROS = 5 EZ1 NZ1 GNDF VALUE = {V(VCC,GNDF)} EZ2 NZ2 GNDF VALUE = {V(VCC,GNDF)-VHRP0} EHRK NHRK GNDF VALUE = {((V(VCC,GNDF)-VHRP0)/(V_ISC-V_IOUT1))-ROS} EHRP VHRP GNDF VALUE = {MAX(MIN(VHRP0+(V(VCP,GNDF)-V_IOUT1)*V(NHRK,GNDF),V(VCC,GNDF)),VHRP0)} EHRN VHRN GNDF VALUE = {MAX(MIN(VHRN0+(V(VCN,GNDF)+V_IOUT1)*V(NHRK,GNDF),VHRN0),V(VEE,GNDF))} EUL NUL GNDF VALUE = {V(VCC,GNDF) - V(VHRP,GNDF)} ELL NLL GNDF VALUE = {V(VEE,GNDF) - V(VHRN,GNDF)} RVCP_TERM VCP GNDF 1k RVCN_TERM VCN GNDF 1k EOUT OUTP OUTN VALUE = {MIN(MAX(GAIN*V(INP,INN),V(NLL,GNDF)),V(NUL,GNDF))} ROUT1+ OUTP GNDF {ROUT} ROUT1- OUTN GNDF {ROUT} .ENDS *$ * .SUBCKT CM_CL_GAIN OUTP OUTN INP INN SHDN GNDF .PARAM GAIN = 1e4 E1 OUTP OUTN VALUE = {GAIN*V(INP,INN)*V(SHDN,GNDF)} .ENDS *$ * * .SUBCKT SOFT_LIM_OUTPUT OUTP OUTN INP INN VCC VEE GNDF VCN VC1 .PARAM NORDER = 5 .PARAM GAIN = 1 ** VCN is the headroom to mimic the CLAW curve ** VC1 is the first threshold that begins limiting. It marks the point ** where distortion increases dramatically for increasing output swing *EHR N_HR GNDF VALUE = {V(VCC,VCN)} EVC1 N_VC1 GNDF VALUE = {V(VC1,GNDF)} EHR N_OMAX GNDF VALUE = {V(VCC,VCN)} EDV N_DV GNDF VALUE = {(2/(NORDER-2))*(V(N_OMAX,GNDF)/GAIN - V(VC1,GNDF))} EIN N_IN GNDF VALUE = {V(INP,INN)} EV1 N_V1 GNDF VALUE = {V(VC1,GNDF)} EV2 N_V2 GNDF VALUE = {V(VC1,GNDF) + V(N_DV,GNDF)} EV3 N_V3 GNDF VALUE = {V(VC1,GNDF) + 2*V(N_DV,GNDF)} EV4 N_V4 GNDF VALUE = {V(VC1,GNDF) + 3*V(N_DV,GNDF)} EV5 N_V5 GNDF VALUE = {V(VC1,GNDF) + 4*V(N_DV,GNDF)} EG1 N_G1 GNDF VALUE = {GAIN} EG2 N_G2 GNDF VALUE = {0.75*GAIN} EG3 N_G3 GNDF VALUE = {0.50*GAIN} EG4 N_G4 GNDF VALUE = {0.25*GAIN} EG5 N_G5 GNDF VALUE = {0*GAIN} EB1 N_B1 GNDF VALUE = {0} EB2 N_B2 GNDF VALUE = {V(N_B1,GNDF) + 1*(GAIN/(NORDER-1)) + *(V(N_V5,GNDF) - NORDER*V(N_DV,GNDF) + 1*V(N_DV,GNDF))} EB3 N_B3 GNDF VALUE = {V(N_B1,GNDF) + 2*(GAIN/(NORDER-1)) + *(V(N_V5,GNDF) - NORDER*V(N_DV,GNDF) + 1.5*V(N_DV,GNDF))} EB4 N_B4 GNDF VALUE = {V(N_B1,GNDF) + 3*(GAIN/(NORDER-1)) + *(V(N_V5,GNDF) - NORDER*V(N_DV,GNDF) + 2*V(N_DV,GNDF))} EB5 N_B5 GNDF VALUE = {V(N_B1,GNDF) + 4*(GAIN/(NORDER-1)) + *(V(N_V5,GNDF) - NORDER*V(N_DV,GNDF) + 2.5*V(N_DV,GNDF))} E1U N_1U GNDF VALUE = {V(N_G1,GNDF)*V(N_IN,GNDF)} E2U N_2U GNDF VALUE = {V(N_G2,GNDF)*V(N_IN,GNDF) + V(N_B2,GNDF)} E3U N_3U GNDF VALUE = {V(N_G3,GNDF)*V(N_IN,GNDF) + V(N_B3,GNDF)} E4U N_4U GNDF VALUE = {V(N_G4,GNDF)*V(N_IN,GNDF) + V(N_B4,GNDF)} E5U N_5U GNDF VALUE = {V(N_G5,GNDF)*V(N_IN,GNDF) + V(N_B5,GNDF)} E2L N_2L GNDF VALUE = {V(N_G2,GNDF)*V(N_IN,GNDF) - V(N_B2,GNDF)} E3L N_3L GNDF VALUE = {V(N_G3,GNDF)*V(N_IN,GNDF) - V(N_B3,GNDF)} E4L N_4L GNDF VALUE = {V(N_G4,GNDF)*V(N_IN,GNDF) - V(N_B4,GNDF)} E5L N_5L GNDF VALUE = {V(N_G5,GNDF)*V(N_IN,GNDF) - V(N_B5,GNDF)} EX1 N_X1 GNDF VALUE = {MIN(MAX(V(N_1U,GNDF),V(N_2L,GNDF)),V(N_2U,GNDF))} EX2 N_X2 GNDF VALUE = {MIN(MAX(V(N_X1,GNDF),V(N_3L,GNDF)),V(N_3U,GNDF))} EX3 N_X3 GNDF VALUE = {MIN(MAX(V(N_X2,GNDF),V(N_4L,GNDF)),V(N_4U,GNDF))} EX4 OUTP OUTN VALUE = {MIN(MAX(V(N_X3,GNDF),V(N_5L,GNDF)),V(N_5U,GNDF))} ROUTP OUTP GNDF 100 ROUTN OUTN GNDF 100 ROUTD OUTP OUTN 200 .ENDS *$ ** .SUBCKT ERR OUT1P OUT1N OUT2P OUT2N OUT3P OUT3N INP INN IN1 IN2 IN3 GNDF .PARAM a0 = 0 .PARAM a1 = 1 .PARAM a2 = {0.00115} .PARAM a3 = {0.005} .PARAM LL = -1000 .PARAM UL = 1000 Eid DIFF_IN 0 VALUE = {V(INP) - V(INN)} EIN1 N1 0 VALUE = {V(IN1,GNDF)} EIN2 N2 0 VALUE = {V(IN2,GNDF)} EIN3 N3 0 VALUE = {V(IN3,GNDF)} E1 OUT1P OUT1N VALUE = {MAX(MIN(a1*V(DIFF_IN),UL),LL)} E2 OUT2P OUT2N VALUE = {MAX(MIN(a2*V(N1)*V(N2)*PWR(V(DIFF_IN),2),UL),LL)} E3 OUT3P OUT3N VALUE = {MAX(MIN(a3*V(N1)*V(N3)*PWRS(V(DIFF_IN),3),UL),LL)} RE1+ OUT1P 0 100 RE1- 0 OUT1N 100 RE1d OUT1P OUT1N 200 RE2+ OUT2P 0 100 RE2- 0 OUT2N 100 RE2d OUT2P OUT2N 200 RE3+ OUT3P 0 100 RE3- 0 OUT3N 100 RE3d OUT3P OUT3N 200 .ENDS *$ ** .SUBCKT CONTROL OUT INP INN VCC VEE GNDF PD GND .PARAM VS_MAX = 5.5 .PARAM VIH = 0.5 .PARAM VIL = 0.5 .PARAM VIMID = 1.1 **** EVSTEST NVSTEST GNDF VALUE = {IF(V(VCC,VEE) > VS_MAX,0,1)} EVICM NVICM GNDF VALUE = {0.5*(V(INP,GNDF)+V(INN,GNDF))} EVICMMAXTEST NVICMMAXTEST GNDF VALUE = {IF(V(NVICM,GNDF) > V(VCC,GNDF)+VIH,0,1)} EVICMMINTEST NVICMMINTEST GNDF VALUE = {IF(V(NVICM,GNDF) < V(VEE,GNDF)-VIL,0,1)} * for this version, PD is inverted and ref’d to ground, not VEE * EPD NPD GNDF VALUE = {1 - MAX(MIN(1000*(V(PD,GND)-VIMID),1),0)} EOUT OUT GNDF VALUE = {V(NVSTEST,GNDF)*V(NVICMMAXTEST,GNDF) +*V(NVICMMINTEST,GNDF)*V(NPD,GNDF)} .ENDS *$ ** * * .SUBCKT GBW_SLEW_FDA OUTP OUTN INP INN SHDN GNDF .PARAM Aol = 57 .PARAM GBW = 14e9 .PARAM SRP = 20e9 .PARAM SRN = 20e9 .PARAM IT = 0.001 .PARAM PI = 3.141592 .PARAM IP = {IT*MAX(1,SRP/SRN)} .PARAM IN = {IT*MIN(-1,-SRN/SRP)} .PARAM CC = {IT*MAX(1/SRP,1/SRN)} .PARAM FP = {GBW/PWR(10,AOL/20)} .PARAM RC = {1/(2*PI*CC*FP)} .PARAM GC = {PWR(10,AOL/20)/RC} * Loading the VO pin with an external resistor will change the AOL. G1p GNDF OUTP VALUE = {MAX(MIN(GC*V(SHDN,GNDF)*V(INP,INN),IP),IN)} G1n OUTN GNDF VALUE = {MAX(MIN(GC*V(SHDN,GNDF)*V(INP,INN),IP),IN)} RG1p OUTP GNDF {0.5*RC} Cg1dp OUTP GNDF {2*CC} RG1n OUTN GNDF {0.5*RC} Cg1dn OUTN GNDF {2*CC} .ENDS *$ * .SUBCKT CM1_MON IN1 IN2 OUT VCC VEE GNDF .PARAM VOS = -0.5 .PARAM VMH = 1400 .PARAM VML = -1400 .PARAM VDH = 0.55 .PARAM VDL = -0.55 EC NC GNDF VALUE = {0.5*(V(IN1,GNDF)+V(IN2,GNDF)) - VOS} EBL NBL 0 VALUE = {-VML*(V(VEE,GNDF)- VDL)} EBH NBH 0 VALUE = {-VMH*(V(VCC,GNDF)- VDH)} EL1 NLL GNDF VALUE = {VML*V(NC,GNDF) + V(NBL)} EL2 NLH GNDF VALUE = {VMH*V(NC,GNDF) + V(NBH)} EO1 OUT GNDF VALUE = {MAX(MAX(V(NLL,GNDF),V(NLH,GNDF)),1)} .ENDS *$ * .SUBCKT CM2_MON IN1 IN2 OUT2 OUT3 VCC VEE GNDF .PARAM VOS = 0 .PARAM VM2H = 114.3 .PARAM VM2L = -30.91 .PARAM VD2H = 1.45 .PARAM VD2L = -1.55 .PARAM VM3H = 100 .PARAM VM3L = -100 .PARAM VD3 = 1.8 EB2H NB2H 0 VALUE = {-VM2H*(V(VCC,GNDF)-VD2H)} EB2L NB2L 0 VALUE = {-VM2L*(V(VEE,GNDF)-VD2L)} EB3H NB3H 0 VALUE = {-VM3H*(V(VCC,GNDF)-VD3)} EB3L NB3L 0 VALUE = {-VM3H*(V(VCC,GNDF)-VD3)} EC NC GNDF VALUE = {0.5*(V(IN1,GNDF)+V(IN2,GNDF)) - VOS} EH2 NH2 GNDF VALUE = {VM2H*V(NC,GNDF) + V(NB2H)} EL2 NL2 GNDF VALUE = {VM2L*V(NC,GNDF) + V(NB2L)} EH3 NH3 GNDF VALUE = {VM3H*V(NC,GNDF) + V(NB3H)} EL3 NL3 GNDF VALUE = {VM3L*V(NC,GNDF) + V(NB3L)} EO2 OUT2 GNDF VALUE = {MAX(MAX(V(NH2,GNDF),V(NL2,GNDF)),1)} EO3 OUT3 GNDF VALUE = {MAX(MAX(V(NH3,GNDF),V(NL3,GNDF)),1)} .ENDS *$ * .SUBCKT COMPARATOR OUT IN REF GNDF .PARAM VOUT_MAX = 1 .PARAM VOUT_MIN = 0 .PARAM GAIN = 1e4 EOUT OUT GNDF VALUE = {MAX(MIN(GAIN*V(IN,REF),VOUT_MAX),VOUT_MIN)} .ENDS *$