* Copyright (c) 1998-2022 Analog Devices, Inc. All rights reserved. * .subckt MAX40023 1 2 3 4 5 6 C1 Clamp MID {Cfp1} B1 MID Clamp I=Uplim(Dnlim({Avo2/1Meg}* V(Avo1,MID), {Isink}, 5m), {Isrc}, 5m) G2 0 Vcc_Int N028 0 1 G3 0 Vee_Int N030 0 1k R6 Vcc_Int 0 1 Noiseless R7 Vee_Int 0 1m Noiseless Cinp MID Inp1 {Ccm} Cinn Inn1 MID {Ccm} Cdiff Inp1 Inn1 {Cdiff} Rinn Inn1 MID {Rcm} Noiseless Rinp MID Inp1 {Rcm} Noiseless G14 MID Inn2 Inn1 MID 1m R43 MID Inn2 1k Noiseless C12 Inn2 MID 1f C14 Vcc_Int 0 1n C15 Vee_Int 0 1n S3 3 N009 N009 3 ESDI S4 3 Inn2 Inn2 3 ESDI S5 N009 4 4 N009 ESDI S6 Inn2 4 4 Inn2 ESDI R1 Inp1 1 {Rser} Noiseless R2 Inn1 2 {Rser} Noiseless Rdiff Inp1 Inn1 {Rdiff} Noiseless S1 3 5 5 3 ESDO S2 5 4 4 5 ESDO G21 N017 N016 N022 MID 1m R59 N017 N016 1k Noiseless C27 N022 N021 {C1a_PSRp} G22 MID N021 Vcc_Int MID {G1_PSRp} R60 N021 MID 1 Noiseless R61 N022 N021 {R1a_PSRp} Noiseless R62 N022 MID {R2a_PSRp} Noiseless G26 MID N016 N012 MID 1k R72 MID N016 1m Noiseless G27 MID Inp2 N017 MID 1m R73 MID Inp2 1k Noiseless C30 N002 N001 {C1a_CMR} R58 N001 MID 1 Noiseless R74 N002 N001 {R1a_CMR} Noiseless R77 N002 MID {R2a_CMR} Noiseless G31 MID N001 Inp1 MID {G1_CMR} G32 N011 N012 N005 MID 1m R82 N012 N011 1k Noiseless G33 MID N009 Inp1 MID 1k R83 MID N009 1m Noiseless C32 N009 MID 1p R134 N010 N009 1k Noiseless B12 N009 N010 I=1m*({Vos+Drift* (Temp-27)}) R135 N011 N010 1k Noiseless C19 5 MID 2f DGP N024 Clamp DG DGN Clamp N025 DG G28 MID N024 GRpi MID 1k G41 MID N025 GRni MID 1k R14 N024 MID 1m Noiseless R37 N025 MID 1m Noiseless R42 GRpi MID 1k Noiseless R48 GRni MID 1k Noiseless C10 GRni MID 10p C11 GRpi MID 10p C18 Clamp N024 1f C24 Clamp N025 1f DOP Vsatp N013 DO DON N013 Vsatn DO G48 MID Vsatp Satp MID 1k R11 Vsatp MID 1m G49 MID Vsatn Satn MID 1k R49 Vsatn MID 1m C56 N013 Vsatp 1f C57 N013 Vsatn 1f C59 Vsatp MID 1n C60 Vsatn MID 1n C61 Avo1 MID 1e-18 G4 N010 N011 E_n MID 1m R45 Satp 3 1k C4 Satp 3 1n R46 Satn 4 1k C21 Satn 4 1n I2 Inn1 MID {Ib-Ios} B2 Inp1 MID I=If(Temp>=41.58, {Iba}+Temp*{Ibb}+ {Ibc}*Temp**2+ {Ibd}*Temp**3, 100f) G7 MID Avo1 Inp2 Inn2 100µ DOI N013 5 LIM COI 5 N013 1p C8 MID 1 1f R24 N018 MID 1Meg Noiseless G5 MID N018 Clamp MID 1µ C13 N018 MID {Cfp2} G20 MID N013 N007 MID {1/Zo_dc} R18 N028 3 10m Noiseless R20 N030 4 10m Noiseless I3 MID GRpi {GR} I4 GRni MID {GR} A1 N028 N030 MID MID MID MID Vsmin MID SCHMITT Vt={Vsmin-80m} Trise={2*ENTon} A2 3 4 MID MID MID Vsmax MID MID SCHMITT Vt={Vsmax} Trise={2*ENTon} Vh=0 A3 Vsmin MID _SHDN MID Vsmax MID EN MID AND Trise=10n Biq N028 N030 I=IF(V(EN,MID)>0.5, {Iq_on},{Iq_off}) C5 EN MID 10p Rpar=1G C9 Vsmin MID 10p Rpar=1G C16 Vsmax MID 10p Rpar=1G C17 _SHDN MID 10p Rpar=1G A4 N032 MID MID MID MID MID _SHDN MID SCHMITT Vt=0.5 Vh=0.2 Trise={2*ENTonsd} C26 6 MID 1p Rpar=18Meg B4 MID N032 I=1m*(V(6,4)/ (V(3,4)+1m)) Rpar=1k Cpar=10p S7 MID Avo1 EN MID ENA S8 MID Clamp EN MID ENA S9 MID N013 EN MID ENZ R33 N007 N006 {R2x_Avo} Noiseless R51 N006 N008 {R1x_Avo} Noiseless Rx2 N019 N008 {Rx_Avo} Noiseless Cx2 N019 MID {Cx_Avo} G16 MID N007 N019 N006 1Meg R52 MID N007 1 Noiseless R53 N008 MID 1 Noiseless G29 MID N008 N018 MID 1 R21 N003 N004 {R1b_CMR} Noiseless R22 N004 MID {R2b_CMR} Noiseless G6 MID N005 N004 MID {G2_CMR} C23 N004 N003 {C1b_CMR} R23 N003 MID 1 Noiseless G8 MID N003 N002 MID 1 R29 N005 MID 1 Noiseless A5 MID Inp1 MID MID MID MID MID MID OTA G=0 In={In} A6 MID Inn1 MID MID MID MID MID MID OTA G=0 In={In} A7 MID MID MID MID MID MID E_n MID OTA G=10u Iout=1m Vhigh=1k Vlow=-1k En=Table(freq, 0.1, 1n, 1, 100n, 1.03, 129n, 1.97, 100n, 2.62, 86.3n, 5.1, 67.5n, 10.8, 59.6n, 19.8, 49.3n, 30.6, 49n, 43.6, 45.8n, 109, 41.2n, 238, 38.9n, 467, 33.7n, 775, 31.8n, 2.01k, 31.8n, 6.44k, 29.8n, 17k, 31.6n, 21.2k, 33.1n, 29.9k, 39.6n, 47.2k, 56.2n) R4 E_n MID 100k Noiseless R5 N026 Vcc_Int 1Meg Noiseless R8 N026 Vee_Int 1Meg Noiseless C2 N026 0 1 E1 MID 0 N026 0 1 R9 MID 0 1Meg Noiseless C6 MID 0 1n I1 Satp 3 11.3µ I5 4 Satn 11.3µ B3 N028 N030 I=I(DOI) D1 CMp Inp2 DO D2 Inp2 CMn DO I6 3 CMp {1k*Vcm_max} R3 3 CMp 1m C3 3 CMp 1n I7 4 CMn {1k*Vcm_min} R10 4 CMn 1m C20 4 CMn 1n C22 2 MID 1f .param Vos=109u Drift=1u .param Ib=0.1p Ios=0.5p .param Iba=-966f Ibb=-238f .param Ibc=-6.6e-17 Ibd=1.54e-16 .param Vcm_min=-0.1 Vcm_max=-0.1 .param Iscp=10m Iscn={-Iscp} .param Iq_on=17u Iq_off=55n .param Vsmin=1.6 Vsmax=4 .param ENTon=50u ENTonsd=30u .param In=10f .model LIM D(Vfwd=1n Vrev=1n Ron=1m Roff=1m Ilimit={Iscp} Revilimit={-Iscn} Epsilon=1u Noiseless) .model DO D(Vfwd=1k Vrev=0 Revepsilon=0.1 Ron=1m Noiseless) .model DG D(Vfwd=8k Vrev=0 Revepsilon=0.5 Ron=1m Noiseless) .model ENA SW(Ron=1Meg Roff=1u Vt=500m Vh=-100m Noiseless) .model ENZ SW(Ron={Zo_dc} Roff=1u Vt=500m Vh=-100m Noiseless) .model ESDI SW(Ron=50 Roff=1T Vt=0.5 Vh=-0.1 Vser=0.1 Noiseless) .model ESDO SW(Ron=50 Roff=1G Vt=0.5 Vh=-0.1 Vser=0.6 Ilimit=4m Lser=1n Noiseless) .param gain_PSRp = {pow(10, (-Rej_dc_PSRp/20))} .param C1a_PSRp = {1 / (2 * pi * R1a_PSRp * fz1_PSRp)} .param R2a_PSRp = {R1a_PSRp/ ((2 * pi * fp1_PSRp * C1a_PSRp +* R1a_PSRp) - 1)} .param actual1_PSRp = {R2a_PSRp / (R1a_PSRp + R2a_PSRp)} .param G1_PSRp = {gain_PSRp/actual1_PSRp} .param Rej_dc_PSRp=100 .param R1a_PSRp=100k .param fz1_PSRp=2 .param fp1_PSRp=100k .param Avo=113.32 .param SRp=65m SRn=-33m .param fp1=0.4 fp2=150k .param Rser=110m .param Ccm=1p Rcm=15T .param Cdiff=1f Rdiff=1T .param Avo2_dB = {Avo-40+1} .param Avo2 = {pwr(10, (Avo2_dB)/20)} .param Cfp1={1 / (2 * pi * fp1 * 1Meg)} .param Cfp2={1 / (2 * pi * fp2 * 1Meg)} .param Isrc = {Cfp1 * SRp * 1Meg} Isink = {Cfp1 * SRn * 1Meg} .param Zo_dc=1k .param Rx_Avo=1k .param R2x_Avo=10k .param fpx_Avo=99G .param fzx_Avo=200k .param Cx_Avo={1/(2*pi*Rx_Avo*fpx_Avo)} .param R1x_Avo={(fzx_Avo*R2x_Avo)/fpx_Avo} .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 Rej_dc_CMR=91.5 .param R1a_CMR=100Meg .param fz1_CMR=30 .param fp1_CMR=1.4k .param R1b_CMR=1Meg .param fz2_CMR=21k .param fp2_CMR=65k .param C1b_CMR={1 / (2 * pi * R1b_CMR * fz2_CMR)} .param R2b_CMR = {R1b_CMR/ ((2 * pi * fp2_CMR * C1b_CMR +* R1b_CMR) - 1)} .param actual2_CMR = {R2b_CMR / (R1b_CMR + R2b_CMR)} .param G2_CMR= {1/actual2_CMR} .param GR=15m .ends MAX40023