* NV6128_COMPLETE *$ **************************************************************************** * * NV6128 Spice Model * **************************************************************************** * * This simulation model uses typical parameter values and it is based on * a behavioral model. This model is supplied "as is" and the author * provides no warranties, either expressed or implied, with respect * to the operation and accuracy of the model within a customer circuit * or system. * **************************************************************************** * * NAVITAS SEMICONDUCTOR * Part Nr: NV6128 * Author: Akos Hodany * Date: 08/25/2020 * Model Type: SPICE (LTspice / Pspice compatible) * Model Version: v1.0 * * Revision notes: * * v1.0 - Initial version. Source: NV6119 v2.0 - Gate driver v3.0 * **************************************************************************** .SUBCKT NV6128 VCC PWM VDD DZ D S R1 N003 N001 5k C1 N002 N003 1n C2 N002 N001 100p R2 N002 VDD 300 G_B1 VCC DZ VALUE {max(500u*tanh((v(vcc,s)-v(dz,s)))*(0.65-0.35*tanh((v(dz,s)-5.6)*5)),0)} R4 N001 VDD 10k XU1 DZ N001 VCC N002 S S NV611x_OPA R7 VCC DZ 300k XU2 G PWM S VDD NV6128_DRV C3 VDD S 10p C5 PWM S 1p XU3 D G S NV6128_FET C4 DZ S 10p R3 VCC S 28k R6 G S 17k .ENDS nv6128 *$ .SUBCKT NV6128_FET D G S .PARAM Ipk=48.71 TCIPK=-0.003318519 Vpk0=2 dVpk=2 vpkalpha=0.7 P10=1 P1s=0.55 P1alpha=1 Alpha=0.35 TCA=0 TCVPK=+0.004 +TCP1S=-0.00305455 VTHX=1.4 TCVTH=+0.00271 NORMTEMP=25 RD0=38.80m RG=83.14m TCRD=0.008 TCP10=-0.004 IDRo1=1.85 +TCIDRc1=-0.004 Rs=0.55m IDRc1=11.37 IDRc2=5.57 C1=25 C2=2.5 C3=1.25 C4=329.6255 C5=43.5917 C6=135.828 C7=185 C8=362.5 G_G3 D2 D0 VALUE { V(D2,D0)/max(V(RDT, 0),1n) } E_ABM21 ILK 0 VALUE { (abs(V(DTEMP))*V(DTEMP)/10+1)*6.6m*max(abs(V(D0,S0))*V(D0,S0)/42250,0) } R_R101 0 N153327 10Meg E_ABM12 SUBTH 0 VALUE { tanh(3*V(G0,S0))*(0.5*(1+tanh(2.2*(V(G0,S0)-V(VTHT)))))**2 } G_G12 0 N165388 VALUE { 1n/1p*I(E_E102)/(V(cgd)+1m) } C_C3 0 N164635 1n E_ABM106 IDRVX 0 VALUE { V(IDRc1T)/(4*{IDRc2})+{IDRo1} } E_ABM22 CGS 0 VALUE { {C8}+ 0.5*({C7}- {C8})*(1+tanh(-1.5*(V(G0,S)-1.7))) } R_R2 D1 D3 0.1m E_ABM24 CDS 0 VALUE { {C5} + 0.5*({C6}- {C5})*(1+tanh(-0.02*(V(D3,S)-140))) + +0.5*({C4}- {C6})*(1+tanh(-0.09*(V(D3,S)-60))) } C_C4 0 N165388 1n E_ABM104 IDRC1T 0 VALUE { {IDRc1}*(1+V(DTEMP)*{TCIDRc1}) } R_R105 0 N164635 10Meg E_ABM2 DTEMP 0 VALUE { V(VTEMP)-{NORMTEMP} } L_L1 D D3 100p E_ABM101 IDRI1 0 VALUE { max(0,(-V(D1,S0)-{IDRo1})*V(IDRc1T)) } E_ABM9 PSI 0 VALUE { V(P1M)*V(VOVDRV) } R_R106 0 N165388 10Meg E_ABM14 ALPHAT 0 VALUE { {Alpha}*(1+V(DTEMP)*{TCA}) } R_R103 N164557 G0 100u E_ABM23 CGD 0 VALUE { {C3} + 0.5*({C2}- {C3})*(1+tanh(-0.01*(V(D3,G0)-70))) + +0.5*({C1}- {C2})*(1+tanh(-0.1*(V(D3,G0)-20))) } G_G1 D0 S0 VALUE { V(ID, 0) } E_ABM5 P10T 0 VALUE { {P10}*(1+V(DTEMP)*{TCP10}) } E_E100 DX S VALUE { V(N153327, 0) } E_ABM7 DP1T 0 VALUE { {P1S}*(1+V(DTEMP)*{TCP1S})-V(P10T) } E_ABM8 P1M 0 VALUE { V(P10T)+V(dP1T)*tanh({P1alpha}*abs(V(D0,S0))) } R_R6 D0 S0 100Meg E_ABM11 VTHT 0 VALUE { {VTHX}*(1+V(DTEMP)*{TCVTH}) } R_R104 N165310 G0 100u C_C2 0 N153327 1n E_ABM13 IPKT 0 VALUE { {IPK}*(1+V(DTEMP)*{TCIPK}) } R_R9 D0 D2 100 E_ABM15 ID 0 VALUE { V(IPKT)*(1+tanh(V(PSI)))*tanh(V(AlphaT)*V(D0,S0))*V(SUBTH) } E_ABM105 IDRO2 0 VALUE { -V(IDRc1T)/(4*{IDRc2})+{IDRo1} } E_E101 N164557 S VALUE { V(N164635, 0) } R_R4 0 S 100Meg E_ABM102 IDRI2 0 VALUE { (V(Vdsat)-V(IDRo2))*(V(Vdsat)-V(IDRo2))*{IDRc2} } R_R1 D3 D2 0.1m R_R3 S S0 {Rs} R_R5 G0 G {RG} E_E102 N165310 D3 VALUE { V(N165388, 0) } E_ABM1 VTEMP 0 VALUE { {TEMP} } E_ABM3 VPK 0 VALUE { {Vpk0}+({dVpk}*tanh( {vpkalpha}*abs(V(D0,S0))))*(1+V(DTEMP)*{TCVPK}) } R_R102 DX D3 100u E_ABM16 RDT 0 VALUE { {RD0}*(1+V(DTEMP)*{TCRD}) } R_R8 D D3 1 G_G100 D1 S0 VALUE { -max(V(IDRI1),V(IDRI2)) } G_G6 D0 S0 VALUE { max(V(ILK, 0),0)*1u } G_G10 0 N153327 VALUE { 1n/1p*I(E_E100)/(V(cds)+1m) } E_ABM4 VOVDRV 0 VALUE { V(G0,S0)-V(VPK) } G_G11 0 N164635 VALUE { 1n/1p*I(E_E101)/(V(cgs)+1m) } E_ABM103 VDSAT 0 VALUE { min(max(-V(D1,S0),V(IDRo2)),V(IDRvx)) } .ENDS NV6128_FET *$ .SUBCKT NV6128_DRV GDRV PWM SK VDD .PARAM IQDDL=270u UVLOHYS=0.6V UVLOREF=3.4V NORMTEMP=25 ILSMAX=5 GMVC=0.1 + GMTC=-0.001 IQDDTC=0.01 VITH=2.5V VITHTC=0.002 RDSONLS=0.19 VIHYS=0.6V + IQDDH=360u VITHMIN=2.15V VITHMAX=2.9V RDSONHS=1 IHSMAX=5 TD=7n R_R7 N1243601 VDD 1k X_U3 N124489 N09875 N16008 N124777 SK COMP_HYST_VAR3 PARAMS: VHIGH=8 + VLOW=1m VHYS={UVLOHYS} C_C2 SK VDDEN 1p V_V2 VREFCT SK 1 D_D2 SK OUT DBODY E_ABM2 CMULT 0 VALUE { (1+({GMVC}*(V(VDD,SK)-6.2)))*(1+{GMTC}*(V(VTEMP)- + {NORMTEMP})) } G_ABMI1 VDD SK VALUE { + max(tanh(max(V(VDD,SK),0))*(IQDDL+(IQDDH-IQDDL)*(1+tanh(5*V(PWM,SK)-5))/2)*(1+ + {IQDDTC}*(V(VTEMP)-{NORMTEMP})), 0) } R_R10 PRE N133592 1k V_V1 N09875 SK {UVLOREF} R_R6 N124489 VDD 50k R_R2 VDDEN N16008 1k R_R1 PWMC PWMCT 1.72k D_D3 N1243601 N124489 DBODY R_R5 OUT GDRV 1m G_G2 OUT SK VALUE { {ILSMAX}*tanh(V(OUT,SK)/ + ({ILSMAX}*{RDSONLS}))*0.5*(1-tanh(2.5*(V(PRE, SK)-1.5)))*V(CMULT) } C_C3 SK N124489 10p R_R4 SK OUT 10Meg G_G1 VDD OUT VALUE { {IHSMAX}*tanh((V(VDD,SK)-V(OUT,SK))/ + ({IHSMAX}*{RDSONHS}))*0.5*(1+tanh(2.5*(V(PRE, SK)-3.5)))*V(CMULT) } E_E2 EN SK VALUE { IF(V(VDDEN, SK)>2.5,5,0) } E_E1 N22346 SK VALUE { min(max({VITHMIN},(1+{VITHTC}*((V(VTEMP))- + {NORMTEMP}))*{VITH}), {VITHMAX}) } X_U2 PWMCT VREFCT N133592 EN SK COMP_HYST_VAR3 PARAMS: VHIGH=8 VLOW=0 + VHYS=100m X_U1 PWM N22346 PWMC EN SK COMP_HYST_VAR3 PARAMS: VHIGH=2 VLOW=0 VHYS= + {VIHYS} V_V3 N124777 SK 5 C_C5 SK PRE 0.92p C_C1 SK PWMCT {TD/1000} R_R3 SK VDD 10Meg E_ABM1 VTEMP 0 VALUE { {TEMP} } D_D1 OUT VDD DBODY .ENDS NV6128_DRV *$ .SUBCKT COMP_HYST_VAR3 NINV INV OUT VX VG params: VHIGH=5 VLOW=100m VHYS=50m Rvx VX VG 10Meg G_hl HiL VG Value { -min(V(VX,VG),{VHIGH}) } R_hl HiL VG 1 G_ll LoL VG Value { -min(V(VX,VG),{VLOW}) } R_ll LoL VG 1 G_Hyst HYST NINV Value { -{VHYS}/2*tanh(500*V(HYST,INV)) } G_Comp CompOut VG Value { -(V(LoL,VG) + (V(HiL,VG)-V(LoL,VG))*0.5*(tanh(500*V(HYST,INV))+1) ) } R_Comp CompOut VG 1 C_Comp Compout VG 100p R_Hsyt HYST NINV 1 RO CompOut OUT 100 .ENDS COMP_HYST_VAR3 *$ .SUBCKT NV611x_OPA INP INM VDD OUT VSS GNDA params: R0=1e5 C0=100n Ro=10 R1 GNDA q {R0} R2 GNDA inp 10Meg R3 GNDA inm 10Meg C1 q GNDA {C0} G1 GNDA q VALUE {V(inp,GNDA)-V(inm,GNDA)} E1 N001 GNDA VALUE {max(min(v(q,GNDA),v(vdd,GNDA)),v(vss,GNDA))} R4 N001 out {Ro} G2 vdd GNDA VALUE {max(V(N001,out)/{Ro},0)} G3 GNDA vss VALUE {max(-V(N001,out)/{Ro},0)} D1 q Vclp DBODY D2 Vclm q DBODY E2 Vclp GNDA VALUE {V(VDD,GNDA)} E3 GNDA Vclm VALUE {V(GNDA,VSS)} .ENDS NV611x_OPA *$ .model DBODY D(Is=30n N=1 Rs=0.1)