initial commit
This commit is contained in:
206
lib/sub/MAX40110.lib
Normal file
206
lib/sub/MAX40110.lib
Normal file
@@ -0,0 +1,206 @@
|
||||
* Copyright (c) 1998-2021 Analog Devices, Inc. All rights reserved.
|
||||
*
|
||||
.subckt MAX40110 1 2 3 4 5 6
|
||||
* CM / DM Input Parameters
|
||||
C2 1 4 1.25P
|
||||
C3 2 4 1.25P
|
||||
R19 1 4 2.00E12
|
||||
R20 2 4 2.00E12
|
||||
R21 1 2 575G
|
||||
C13 1 2 500E-15
|
||||
* Differential Stage
|
||||
GIVR 0 IVR 14 0 1m
|
||||
RIVR 0 IVR 1k Noiseless
|
||||
CIVR IVR 0 1.59f
|
||||
BCMPI 0 CMpi I=1m*(V(3)+{Vcm_max})
|
||||
RCMPI CMpi 0 1k Noiseless
|
||||
CCMPI CMpi 0 1n
|
||||
BCMNI 0 CMni I=1m*(V(4)+{Vcm_min})
|
||||
RCMNI CMni 0 1k Noiseless
|
||||
CCMNI CMni 0 1n
|
||||
GCMP 0 CMp CMpi 0 1k
|
||||
RCMP 0 CMp 1m Noiseless
|
||||
GCMN 0 CMn CMni 0 1k
|
||||
RCMN 0 CMn 1m Noiseless
|
||||
DIP CMp IVR DI
|
||||
DIN IVR CMn DI
|
||||
CIN IVR CMn 1f
|
||||
CIP IVR CMp 1f
|
||||
* Noise Stage
|
||||
I2 21 20 1.00
|
||||
D1 20 0 DN1
|
||||
D2 0 21 DN1
|
||||
I3 22 23 1N
|
||||
R10 22 0 1k
|
||||
R11 0 23 1k
|
||||
B_E1 71 14 I=(2.5U) + V(20) * 2.09 + V(21) * 2.09 + V(22) * 2.09 + V(23) * 2.09 + V(137) + V(118) + V(128)
|
||||
R_E1 71 14 1 Noiseless
|
||||
I8 0 70 DC 1
|
||||
R22 0 70 1 TC=1.01U
|
||||
B_E5 1 71 I=V(70)-1
|
||||
R_E5 1 71 1 Noiseless
|
||||
EG1 VIBIAS 0 62 0 1
|
||||
EG2 VIBIOS 0 63 0 1
|
||||
EB1 VIB1 0 VALUE { (V(VIBIAS)+V(VIBIOS)) /2 }
|
||||
EB2 VIB2 0 VALUE { (V(VIBIAS)-V(VIBIOS)) /2 }
|
||||
GB1 1 0 VIB1 0 1u
|
||||
GB2 2 0 VIB2 0 1u
|
||||
I6 0 62 DC 1uA
|
||||
VIB200 62A 62 DC 0.00
|
||||
R17 0 62A REXP 1.09648
|
||||
I7 0 63 DC 1uA
|
||||
V100 63A 63 DC 0
|
||||
R18 0 63A 1.00 TC=0.00,0.00
|
||||
R16 0 61 1 TC=1.29M,-1.43U
|
||||
G61 3 4 61 0 1
|
||||
G60 0 61 TABLE { V(3, 4) } ((0, 0)(1.00,750E-18)(1.8,670U)(2.65,700U)(3.3,730U)(4.4,755U)(5.5,780U))
|
||||
* CMRR/PSRR
|
||||
C130 137 130 {C1a_CMR}
|
||||
G130 0 130 1 0 {G1_CMR}
|
||||
R130A 130 0 1 Noiseless
|
||||
R130 137 130 {R1a_CMR} Noiseless
|
||||
R130B 137 0 {R2a_CMR} Noiseless
|
||||
C110 118 110 {C1a_PSRn}
|
||||
G110 0 110 3 0 {G1_PSRn}
|
||||
R110A 110 0 1 Noiseless
|
||||
R110 118 110 {R1a_PSRn} Noiseless
|
||||
R110B 118 0 {R2a_PSRn} Noiseless
|
||||
C120 128 120 {C1a_PSRn}
|
||||
G120 0 120 4 0 {G1_PSRn}
|
||||
R120A 120 0 1 Noiseless
|
||||
R120 128 120 {R1a_PSRn} Noiseless
|
||||
R120B 128 0 {R2a_PSRn} Noiseless
|
||||
* OP Amp Output Gain / Response
|
||||
G3A 0 30A IVR 2 1
|
||||
RG3A 30A 0 1
|
||||
G3 0 30 30A 0 1
|
||||
R3 30 0 1.00K
|
||||
G6 0 33 30 0 1m
|
||||
R6 33 0 1K
|
||||
R7 34 0 1K
|
||||
C7 34 0 {Cfp1}
|
||||
BSR 0 34 I=Uplim(Dnlim(V(33)*635m, {Isink},1m),{Isrc},1m)
|
||||
C_30 30 0 1f
|
||||
C_33 33 0 1f
|
||||
G8 0 37 34 0 1m
|
||||
R8 37 0 1K
|
||||
C8 37 0 5.89P
|
||||
G9 0 38 37 0 1m
|
||||
R9 39 0 1K
|
||||
L9 38 39 159N
|
||||
R_GRL9 38 39 {1/100U} Noiseless
|
||||
B_E9 0 35 I={1/Zo_dc}*V(38);+V(118)+V(128)+V(141)
|
||||
R_E9 0 35 {Zo_dc} Noiseless
|
||||
* Output Impedance / Saturation / Current Limit
|
||||
B1 0 N001 I=Uplim(Dnlim({G1_Zo}* V(35,57), {Izon}, 25m), {Izop}, 25m)
|
||||
R_B1 N001 0 1 Noiseless
|
||||
RX 57 N001 {Rx_Zo} Noiseless
|
||||
RDUMMY 57 0 {Rdummy_Zo} Noiseless
|
||||
R23 50 0 100MEG
|
||||
VR15 57 96 0
|
||||
R15X 57 96 1G
|
||||
F1 0 50 VR15 1
|
||||
C_CGD8 55 57 .1P
|
||||
C_CGD9 56 57 .1P
|
||||
E3 55 0 VALUE { 0.00 + V(3) * 1 + V(51) * -15.2M }
|
||||
E4 56 0 VALUE { 0.00 + V(4) * 1 + V(52) * -13.0M }
|
||||
R12 51 0 1k
|
||||
R13 52 0 1k
|
||||
GD12 50 51 VALUE={( IF( (V(50,51))>0,V(50,51)/0.002,V(50,51)/1E9 ) ) }
|
||||
GD13 50 52 VALUE={( IF( (V(50,52))>0,V(50,52)/1E9,V(50,52)/0.002 ) ) }
|
||||
G21 3 0 VALUE { 0 + V(51) * 1M }
|
||||
G22 0 4 VALUE { 0 + V(52) * -1M }
|
||||
R_96_5 96 5 1m
|
||||
S_D4 3 5 5 3 ESDO
|
||||
S_D3 5 4 4 5 ESDO
|
||||
* Shutdown
|
||||
V1000 1000A 0 1.45
|
||||
S1000 1003 0 1001 1000A SSHUT
|
||||
S1000X 30A 4X 1004 0 SSHUT2
|
||||
V1000X 0 4X 48.7
|
||||
V1001 1002 0 1
|
||||
S1001 5X 5 1004 0 SOUT
|
||||
C_S1001 5X 5 .1P
|
||||
S1002 61 0 1004 0 SCAP
|
||||
C1000 1004 0 100n IC=0
|
||||
R1000A 1004 0 1G
|
||||
E1000 1001 0 6 4 1
|
||||
SD1002 1004 1002 1004 1002 SDIODE
|
||||
SD1003 0 1004 0 1004 SDIODE
|
||||
G1000 1004 0 1002 1003 33.3M
|
||||
G1001 0 1004 1003 0 33.3M
|
||||
R1000 6 4 2.5MEG
|
||||
R1001 1002 1003 1k
|
||||
DOP Vsatp 57 DO
|
||||
COP 57 Vsatp 1f
|
||||
DON 57 Vsatn DO
|
||||
CON 57 Vsatn 1f
|
||||
GSATP 0 Vsatp 55 0 1k
|
||||
RSATP Vsatp 0 1m
|
||||
GSATN 0 Vsatn 56 0 1k
|
||||
RSATN Vsatn 0 1m
|
||||
CSATP Vsatp 0 1n
|
||||
CSATN Vsatn 0 1n
|
||||
DGP N007 34 DG
|
||||
DGN 34 N008 DG
|
||||
GRP 0 N007 GRpi 0 1k
|
||||
GRN 0 N008 GRni 0 1k
|
||||
RRP N007 0 1m Noiseless
|
||||
RRN N008 0 1m Noiseless
|
||||
RGRP GRpi 0 1k Noiseless
|
||||
RGRN GRni 0 1k Noiseless
|
||||
CGRN GRni 0 10p
|
||||
CGRP GRpi 0 10p
|
||||
CGP 34 N007 1f
|
||||
CGN 34 N008 1f
|
||||
BGRP 0 GRpi I=1m*({Zo_max}* {Iscp}+V(3))
|
||||
BGRN 0 GRni I=1m*({Zo_max}* {Iscn}+V(4))
|
||||
* Models
|
||||
.MODEL ESDO SW (Ron=50 Roff=1G Vt=0.5 Vh=-0.1 Vser=0.6 Ilimit=4m Lser=1n Noiseless)
|
||||
.MODEL SSHUT SW RON=1m ROFF=100MEG VT=0 VH=-10m
|
||||
.MODEL SSHUT2 SW RON=1m ROFF=1G VT=500m VH=-5m
|
||||
.MODEL SOUT SW RON=1G ROFF=1m VT=500m VH=-5m
|
||||
.MODEL SCAP SW RON=1.46m ROFF=1G VT=500m VH=-5m
|
||||
.MODEL SDIODE SW RON=10m ROFF=1G VT=0 VH=-5m
|
||||
.MODEL DO D(Vfwd=1k Vrev=0 Revepsilon=0.1 Ron=1m Noiseless)
|
||||
.MODEL DN1 D IS=1P KF=240P AF=1
|
||||
.MODEL DIDL2 D()
|
||||
.MODEL DG D(Vfwd=10k Vrev=0 Revepsilon=0.5 Noiseless Ron=1m)
|
||||
.MODEL DI D(Vfwd=1k Vrev=0 Revepsilon=0.1 Noiseless)
|
||||
.MODEL REXP RES TCE= 4.62816
|
||||
.param Vcm_min=-0.1 Vcm_max=0.1
|
||||
.param Zo_dc=100
|
||||
.param Cfp1=4.82u
|
||||
.param SRp=8 SRn=-8
|
||||
.param Isrc = {Cfp1 * SRp * 1Meg} Isink = {Cfp1 * SRn * 1Meg}
|
||||
.param beta_Zo=1.13
|
||||
.param Rx_Zo = {100 * Zo_max}
|
||||
.param Rdummy_Zo = {10 * Zo_max}
|
||||
.param G1_Zo={Rx_Zo/(Zo_dc*beta_Zo)}
|
||||
.param Zo_max={Zo_dc}
|
||||
.param Iscp=50m Iscn=-50m
|
||||
.param IZop={Rx_Zo*Iscp} IZon={Rx_Zo*Iscn}
|
||||
.param gain_CMR = {pow(10, (-Rej_dc_CMR/20))}
|
||||
.param C1a_CMR = {1 / (2 * pi * R1a_CMR * fz1_CMR)}
|
||||
.param R2a_CMR = {R1a_CMR/ ((2 * pi * fp1_CMR * C1a_CMR
|
||||
+* R1a_CMR) - 1)}
|
||||
.param actual1_CMR = {R2a_CMR / (R1a_CMR + R2a_CMR)}
|
||||
.param G1_CMR = {gain_CMR/actual1_CMR}
|
||||
.param G2_CMR = {1/actual1_CMR}
|
||||
.param Rej_dc_CMR=93
|
||||
.param R1a_CMR=1G
|
||||
.param fz1_CMR=1.2k
|
||||
.param fp1_CMR=300k
|
||||
.param gain_PSRn = {pow(10, (-Rej_dc_PSRn/20))}
|
||||
.param C1a_PSRn = {1 / (2 * pi * R1a_PSRn * fz1_PSRn)}
|
||||
.param R2a_PSRn = {R1a_PSRn/ ((2 * pi * fp1_PSRn * C1a_PSRn
|
||||
+* R1a_PSRn) - 1)}
|
||||
.param actual1_PSRn = {R2a_PSRn / (R1a_PSRn + R2a_PSRn)}
|
||||
.param G1_PSRn = {gain_PSRn/actual1_PSRn}
|
||||
.param G2_PSRn = {1/actual1_PSRn}
|
||||
.param Rej_dc_PSRn=93
|
||||
.param R1a_PSRn=1G
|
||||
.param fz1_PSRn=1.9k
|
||||
.param fp1_PSRn=10Meg
|
||||
*
|
||||
.ENDS MAX40110
|
||||
Reference in New Issue
Block a user