* (C) Copyright Efficient Power Conversion Corporation. All rights reserved. ***************************************************************************** * Version History: * 1.00: 12/16/2022 - Initial Model Creation .subckt EPC2305 gatein drainin sourcein .param si={aWg} so={aWg} sr={aWg} .param aWg={Wg*1E-3} Wg=2194000 A1={2.013e-02*aWg} k2=1.852e+00 k3=9.000e-02 rpara=1.495e-03 + rpara_s_factor=2.759e-01 aITc=3.574e-03 arTc=-5.320e-03 k2Tc=5.509e-04 + x0_0=2.926e+00 x0_0_TC=-1.849e-03 x0_1=-1.000e-01 x0_1_TC=-1.000e-02 + dgs1=4.3e-07 dgs2=2.6e-13 dgs3=0.8 dgs4=0.23 + ags1={1.229e-12*si} ags2={5.314e-13*si} ags3=1.667e+00 ags4=1.484e-01 + ags5={0.000e+00*si} ags6=7.480e+01 ags7=1.055e+01 + agd1={1.926e-15*sr} agd2={8.963e-14*sr} agd3=-7.089e+00 agd4=2.894e+00 + agd5={8.760e-15*sr} agd6=-3.816e+01 agd7=1.807e+01 agd8={0.000e+00*sr} + agd9=-3.326e+01 agd10=8.900e-01 + asd1={3.250e-13*so} asd2={4.394e-13*so} asd3=-1.135e+01 asd4=9.166e-01 + asd5={3.844e-13*so} asd6=-1.514e+01 asd7=7.223e+00 asd8={1.500e-13*so} + asd9=-8.125e+01 asd10=1.181e+01 + rg_value=0.5 rd drainin drain ((1-rpara_s_factor)*rpara*(1-arTc*(Temp-25))) rs sourcein source (rpara_s_factor*rpara*(1-arTc*(Temp-25))) rg gatein gate (rg_value) *Large resistors to aid convergence rcsdconv drain source (100000Meg/aWg) rcgsconv gate source (100000Meg/aWg) rcgdconv gate drain (100000Meg/aWg) gswitch drain source cur='if(v(drain,source)>0, + (A1*(1-aITc*(Temp-25))*log(1.0+exp((v(gate,source)-(k2*(1-k2Tc*(Temp-25))))/k3))* + v(drain,source)/(1 + (x0_0*(1-x0_0_TC*(Temp-25))+x0_1*(1-x0_1_TC*(Temp-25))*v(gate,source))*v(drain,source)) ), + (-A1*(1-aITc*(Temp-25))*log(1.0+exp((v(gate,drain)-(k2*(1-k2Tc*(Temp-25))))/k3))* + v(source,drain)/(1 + (x0_0*(1-x0_0_TC*(Temp-25))+x0_1*(1-x0_1_TC*(Temp-25))*v(gate,drain))*v(source,drain)) ) ) ' ggsdiode gate source cur='if( v(gate,source) < 10, + 0.125*aWg/1077*(dgs1*(exp((v(gate,source))/dgs3)-1)+dgs2*(exp((v(gate,source))/dgs4)-1)), + 0.125*aWg/1077*(dgs1*(exp((10)/dgs3)-1)+dgs2*(exp((10)/dgs4)-1)) )' ggddiode gate drain cur='if( v(gate,drain) < 10, + 0.125*aWg/1077*(dgs1*(exp((v(gate,drain))/dgs3)-1)+dgs2*(exp((v(gate,drain))/dgs4)-1)), + 0.125*aWg/1077*(dgs1*(exp((10)/dgs3)-1)+dgs2*(exp((10)/dgs4)-1)) )' cgs gate source ags1 gcgs gate source chg='0.5*ags2*ags4*log(1+exp((v(gate,source)-ags3)/ags4))+ + ags5*ags7*log(1+exp((v(source,drain)-ags6)/ags7))' cgd gate drain agd1 gcgd gate drain chg='0.5*ags2*ags4*log(1+exp((v(gate,drain)-ags3)/ags4))+ + agd2*agd4*log(1+exp((v(gate,drain)-agd3)/agd4))+ + agd5*agd7*log(1+exp((v(gate,drain)-agd6)/agd7))+ + agd8*agd10*log(1+exp((v(gate,drain)-agd9)/agd10))' csd source drain asd1 gcsd source drain chg='asd2*asd4*log(1+exp((v(source,drain)-asd3)/asd4))+ + asd5*asd7*log(1+exp((v(source,drain)-asd6)/asd7))+ + asd8*asd10*log(1+exp((v(source,drain)-asd9)/asd10))' .ends