Can't Use TI PSpice Model with KiCAD

I’m trying to use a PSpice model I download from TI website CSD18510Q5B

However, I get a ton of errors from the simulator when trying to do any analysis (see below). I’ve also provided the .lib file from TI. When I use a PSpice model from Infineon, it works just fine (also provided). Is there an issue with the TI .lib file?

Background thread stopped with timeout = 0
Note: No compatibility mode selected!
Warning: redefinition of .subckt csd18510q5b, ignored
Circuit: KiCad schematic
Netlist line no. 0:
Undefined parameter [pwidth]
Netlist line no. 0:
Cannot compute substitute
Netlist line no. 0:
Undefined parameter [pwidth]
Netlist line no. 0:
Cannot compute substitute
Netlist line no. 0:
Undefined parameter [pwidth]
Netlist line no. 0:
Expression err: pwidth/2}
Netlist line no. 0:
Cannot compute substitute
Netlist line no. 0:
Undefined parameter [pwidth]
Netlist line no. 0:
Cannot compute substitute
Netlist line no. 0:
Undefined parameter [pwidth]
Netlist line no. 0:
Cannot compute substitute
Netlist line no. 0:
Undefined parameter [pwidth]
Netlist line no. 0:
Cannot compute substitute
Netlist line no. 0:
Undefined parameter [prgate]
Netlist line no. 0:
Cannot compute substitute
Netlist line no. 0:
Undefined parameter [pcjo]
Netlist line no. 0:
Cannot compute substitute
Netlist line no. 0:
Undefined parameter [ptrc1]
Netlist line no. 0:
Cannot compute substitute
Please check your input netlist.
Error: ngspice.dll cannot recover and awaits to be detached
Note: can't find the initialization file spinit.
******
** ngspice-39 shared library
** Creation Date: Feb 13 2023   06:17:03
******
Note: No compatibility mode selected!
Circuit: *
Warning: No job (tran, ac, op etc.) defined:
run simulation not started

TI File

* CSD1810Q5B
***********************************************************************
* (C) Copyright 2017 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: CSD1810Q5B
* Date: 06AUG2018
* Model Type: 
* Simulator: PSPICE
* Simulator Version: 16.2.0.p001
* EVM Order Number: 
* EVM Users Guide: 
* Datasheet: SLPS632 –MARCH 2017
* Model Version: Final 1.00
*
*****************************************************************************
* PSpice Model Editor - Version 16.6.0
*$
**********************************************************************
**********************************************************************
*                                                                    *
* CSD18510Q5B   -  PSpice Model for use with OrCAD/Allegro           *
*                                                                    *
**********************************************************************
* Characteristics:
*   Technology:  n-channel 40/20
*   Assembly:    QFN5x6
*
**********************************************************************
* Model History
*
*   Initial model.     gd 01/30/2017
*   Updated model,     gd 11/20/2017
*   
* SUBCKT Definition:  1=D  2=G  3=S
**********************************************************************
.SUBCKT csd18510q5b  1 2 3
.PARAM  ptrc1   7.11e-3  
.PARAM  ptrc2   2.34e-5
.PARAM  pAA	    10.856327
.PARAM  pwidth  {pAA/0.8*2}
.PARAM  perim   {2.1*pwidth}
.PARAM  perp    {1.01*pwidth}
.PARAM  pRgate  0.90
.PARAM  pCJO    62e-12
M1   10 11 12 12  NMOS	W={pwidth} L=0.65u  PD={0} PS={perim}
M2   12 11 12 20  PMOSd W={pwidth} L=0.067u PS={perp} PD={perp}
DDx  20  10  DD
DBD   8  7	 DBD	{pwidth/2}
RDB   8  7   8e10
CGD0  5  7	 0.5e-12
CGS0  5  8	 100e-12
CDS0 10 12	 {7.9e-12 * pwidth}
DGD  14 10	 DD	{pwidth}
DDG  14  5	 DD	{pwidth}
RDC  14  5   1e10
LGG   2  5	 1.7e-9
RGG   5 11	 {0.6 + pRgate}
RSB  12  9	 RTEMP 0.01e-3
RSS   9  8	 RTEMP 0.08e-3
RSP   8  6   0.07e-3
LSS   6  3	 0.40E-9
RDP   4  7	 0.02e-3
RDD   7 10   RTEMP 0.457e-3
LDD   1  4	 0.1E-9
*******************************************************************
.MODEL  NMOS   NMOS (    LEVEL  = 7             Version = 3.2
+ TNOM   = 27            LINT   = 0.060e-6      CAPMOD = 2
+ TOX    = 5.50e-8       NCH    = 1.330e17      NSUB   = 8.0e15
+ AGS    = 0.0           PVAG   = 0.0           VOFFCV = 0.3
+ U0     = 360		 VSAT   = 8.4e4
+ A0     = 2.2           A1     = 0.1           A2     = 1.0
+ UA     = 0.9e-9        UB     = 8e-19         VBM    = -10.0
+ UA1    = 3.3e-9        UB1    =-1e-19         UTE    = -0.60
+ KT1    = -0.91         KT2    = 0.022         KT1L   = 1.0e-10
+ DVT0   = 2.15          DVT1   = 0.54	      DVT2   = -0.033
+ ETA0   = 0.05          ETAB   = -0.07         XJ     = 3e-7
+ PDIBLC1= 0.50          PDIBLC2= 0.012         NLX    = 1.74e-7
+ PSCBE1 = 4.2e8         PSCBE2 = 2.5e-6        PCLM   = 1.3
+ VOFF   = -0.32         NFACTOR= 1.18          JS     = 0
+ DROUT  = 0.88          DSUB   = 0.90          DELTA  = 0.09
+ CJ     = 1e-18         CJSW   = 1e-18         CF     = 0
+ CGSO   = 25e-12        CGDO   = 15.2e-12        CGBO   = 0   )
*******************************************************************
.MODEL  PMOSd   PMOS (   LEVEL  = 3
+ TNOM   = 27            VTO    = -5            IS     = 1.0e-18
+ TOX    = 5.5e-8        NSUB   = 1e16
+ CJ     = 1e-18         CJSW   = 1e-18 
+ CGSO   = 1e-18         CGDO   = 1e-18         CGBO   = 0  )
*******************************************************************
.MODEL DBD D (CJO=550e-12 VJ=0.99 M=1.14 FC=0.5 TT=3e-09 TNOM=27
+  IS=5.7e-12 N=1.055 RS=7.8e-3 TRS1=3.5e-3 TRS2=-1.0e-6 XTI=3.2 
+  BV=42 TBV1=8.4e-4 TBV2=-2.3e-6 NR=3.3 ISR=2.35e-10)
*******************************************************************
.MODEL DD  D (CJO={2*pCJO} VJ=0.78 M=1.68 IS=1e-15 RS=10 TNOM=27 
+  FC=0.90 )
*******************************************************************
.MODEL RTEMP RES (TC1={ptrc1} TC2={ptrc2})
*******************************************************************
.ENDS csd18510q5b
*
*$

Infineon File:

*****************************************************************
* INFINEON Power Transistors                                    *
* PSPICE Library for                                            *
*       OptiMOS 34V                                             *
* n-channel Transistors                                         *
* Version 210513                                                *
*                                                               *
*****************************************************************
*                                                               *
* The Simulation Model is subject to change without notice. In  *
* addition, models can be a useful tool in evaluating device    *
* performance, they cannot reflect the accurate device          *
* performance under all conditions, nor are they intended to    *
* replace bread boarding for final verification. Infineon       *
* therefore does not assume any warranty or liability           *
* whatsoever arising from their use. Infineon does not assume   *
* any warranty or liability for the values and functions of the *
* Simulation Model.                                             *
* The methods and results of the Simulation Model are to the    *
* best of our knowledge                                         *
* correct. However, the user is fully responsible to verify and *
* validate these results under the operating conditions and in  *
* the environment of its application. Infineon will not bear    *
* the responsibility arising out of or in connection with any   *
* malfunction of the Simulation Models.                         *
* Models provided by Infineon are not warranted by Infineon as  *
* completely and comprehensively representing all the           *
* specifications and operating characteristics of the           *
* semiconductor products to which these models relate. The      *
* models describe the characteristics of typical devices. In    *
* all cases, the current data sheet information for a given     *
* device is the conclusive design guideline and the only actual * 
* performance specification.                                    *
*                                                               *
*                                                               *
* This library contains models of the following INFINEON        *
* transistors:                                                  *
*                                                               *

*   OptiMOS 34V                                                 *
*    BSC0908NS     BSC0909NS     BSZ0909NS                      *
*                                                               *
*****************************************************************
* thermal nodes of level 3 models:                              *
*                                                               *
*  .SUBCKT BSC010NE2LS drain gate source Tj Tcase               *
*  Tj :    potential=temperature (in °C) at junction (typically *
*          not connected)                                       *
*  Tcase : node where the boundary contition - external heat    *
*          sinks etc - have to be connected (ideal heat sink    *
*          can be modeled by using a voltage source stating the *
*          ambient temperature in °C between Tcase and ground.  *
*                                                               *
*****************************************************************

.SUBCKT S4_34_h_var dd g s0 Tj PARAMS: a=1 dVth=0 dR=0 dgfs=0 Inn=1 Unn=1 Rmax=1
+gmin=1 Rs=1 Rp=1 dC=0 Rm=1u

.PARAM  Fm=0.2       Fn=0.5
.PARAM  c=1.5125     Vth0=2.73   auth=2.35m
.PARAM  UT=100m      ab=20m      lB=-23       UB=39.4

.PARAM  b0=164       p0=7.71     p1=-33m      p2=54u

.PARAM  Rd=6.15m     nmu=3.21    Tref=298     T0=273       lnIsj=-25.6
.PARAM  ndi=1.1      Rdi=2.19m   nmu2=0.55    ta=3n        td=20n
.PARAM  Rf=0.722     nmu3=1.38

.PARAM  f1=210p      f2=680p     f3=950p      U0=12       nc=2    nd=1.3
.PARAM  g1=0.15      bb=1        remp=0.01p   f2r=400p
.PARAM  kbq=85.8u

.PARAM  Vmin=2.33     Vmax=3.13    dCmax=0.33
.PARAM  Vth={Vth0+(Vmax-Vth0)*limit(dVth,0,1)-(Vmin-Vth0)*limit(dVth,-1,0)}
.PARAM  q0={b0*((T0/Tref)**nmu3)*a}
.PARAM  q1={(Unn-Inn*Rs-Vth0)*q0}
.PARAM  q2={(Fm*SQRT(0.4)-c)*Inn*q0}
.PARAM  Rlim={(q1+2*q2*Rmax-SQRT(q1**2+4*q2))/(2*q2)}
.PARAM  dRd={Rd/a+if(dVth==0,limit(dR,0,1)*max(Rlim-Rd/a-Rs-Rp,0),0)}
.PARAM  bm={c/((1/gmin-Rs)**2*Inn*a*(T0/Tref)**nmu3)}
.PARAM  bet={b0+(b0-bm)*if(dR==0,if(dVth==0,limit(dgfs,-1,0),0),0)}
.PARAM  dC1={1+dCmax*limit(dC,0,1)}
.PARAM  dC2={1+1.5*dCmax*limit(dC,0,1)}

.PARAM  Cox={f1*a*dC2}
.PARAM  Cox1={remp*SQRT(a)*dC2}
.PARAM  Cds0={(f2*a+f2r*SQRT(a))*dC1}
.PARAM  Cgs0={f3*a*dC1}
.PARAM  dRdi={Rdi/a}

.FUNC  I0(Uee,p,pp,z1)  {if(Uee>pp,(Uee-c*z1)*z1,p*(pp-p)/c*exp((Uee-pp)/p))}
.FUNC  Ig(Uds,T,p,Uee)  {bet*(T0/T)**nmu3*I0(Uee,p,min(2*p,p+c*Uds),min(Uds,Uee/(2*c)))}
.FUNC J(d,g,T,da,s) 
+ {a*(s*(Ig(da,T,(p0+(p1+p2*T)*T)*kbq*T,g-Vth+auth*(T-Tref)+Fm*da**Fn+1*limit(-d,0,1))+exp(min(lB+(da-UB-ab*(T-Tref))/UT,25))))}

.FUNC  Idiode(Usd,Tj,Iss) {exp(min(log(Iss)+Usd/(ndi*kbq*Tj),7))-Iss}
.FUNC  Idiod(Usd,Tj)      {a*Idiode(Usd,Tj,exp(min(lnIsj+(Tj/Tref-1)*1.12/(ndi*kbq*Tj),7))*(Tj/Tref)**3)}

E_Edg     d   ox  VALUE {max(V(d,g),-bb)-(1/(g1*(1-nc))*((1/(1+g1*max(V(d,g)+bb,0)))**(nc-1)-(1/(1+g1*bb))**(nc-1)))}
C_Cdg    ox    g  {Cox}
Vx        d   ox1 0
C_Cdg1   ox1   g  {Cox1}

E_Eds     d edep  VALUE {(V(d,s)-I(V_sense3)/Cds0)}
C_Cds  edep    s  {Cds0}

C_Cgs   g    s   {Cgs0}

G_chan    d    s VALUE={J(V(d,s),V(g,s),T0+limit(V(Tj),-200,300),abs(V(d,s)),sgn(V(d,s)))}
G_RMos   d1    d  VALUE={V(d1,d)/(Rf*dRd+(1-Rf)*dRd*((limit(V(Tj),-200,999)+T0)/Tref)**nmu)}
V_sense  dd   d1  0
G_diode   s   d3  VALUE={Idiod(V(s,d3),T0+limit(V(Tj),-200,499))}
G_Rdio   d2   d1  VALUE={V(d2,d1)/(dRdi*((limit(V(Tj),-200,999)+T0)/Tref)**nmu2)}
V_sense2 d2   d3  0

L_L001    a    c  {td/(ta+td)}
R_R001    a    b  {1/ta}
V_sense3  c    0  0
E_E001    b    0  VALUE {I(V_sense2)}
E_E002    e    0  VALUE {Cds0*1/(1-nd)*U0**nd*(limit(U0+V(d1,s),0,2*UB))**(1-nd)}
R_R002    e    c  1
R_R003    a    0  500Meg

R1        g    s  1G
Rd01      d    s  500Meg
Rd02     d2    s  500Meg
Rd03     d1    d  1k

Rmet      s    s0 {Rm}

G_TH      0   Tj  VALUE =
+{(LIMIT(I(V_sense2)*V(d1,s)+(V(s,s0)**2)/Rm+(I(V_sense)-I(V_sense2))*V(d1,d)+
+(I(V_sense)-I(V_sense2)-I(E_Edg)-I(Vx)-I(E_Eds))*V(d,s),-10k,100k))}

.ENDS

*********

.SUBCKT S4_34_h_var1 dd g s0 Tj PARAMS: a=1 dVth=0 dR=0 dgfs=0 Inn=1 Unn=1 Rmax=1
+gmin=1 Rs=1 Rp=1 dC=0 Rm=1u

.PARAM  Fm=0.2       Fn=0.5
.PARAM  c=1.5125     Vth0=2.73   auth=2.35m
.PARAM  UT=100m      ab=20m      lB=-23       UB=39.4

.PARAM  b0=164       p0=7.71     p1=-33m      p2=54u

.PARAM  Rd=6.15m     nmu=3.21    Tref=298     T0=273       lnIsj=-25.6
.PARAM  ndi=1.1      Rdi=2.19m   nmu2=0.55    ta=3n        td=20n
.PARAM  Rf=0.722     nmu3=1.38

.PARAM  f1=210p      f2=680p     f3=950p      U0=12       nc=2    nd=1.3
.PARAM  g1=0.15      bb=1        remp=0.01p   f2r=400p
.PARAM  kbq=85.8u

.PARAM  Vmin=2.33     Vmax=3.13    dCmax=0.33
.PARAM  Vth={Vth0+(Vmax-Vth0)*limit(dVth,0,1)-(Vmin-Vth0)*limit(dVth,-1,0)}
.PARAM  q0={b0*((T0/Tref)**nmu3)*a}
.PARAM  q1={(Unn-Inn*Rs-Vth0)*q0}
.PARAM  q2={(Fm*SQRT(0.4)-c)*Inn*q0}
.PARAM  Rlim={(q1+2*q2*Rmax-SQRT(q1**2+4*q2))/(2*q2)}
.PARAM  dRd={Rd/a+if(dVth==0,limit(dR,0,1)*max(Rlim-Rd/a-Rs-Rp,0),0)}
.PARAM  bm={c/((1/gmin-Rs)**2*Inn*a*(T0/Tref)**nmu3)}
.PARAM  bet={b0+(b0-bm)*if(dR==0,if(dVth==0,limit(dgfs,-1,0),0),0)}
.PARAM  dC1={1+dCmax*limit(dC,0,1)}
.PARAM  dC2={1+1.5*dCmax*limit(dC,0,1)}

.PARAM  Cox={f1*a*dC2}
.PARAM  Cox1={remp*SQRT(a)*dC2}
.PARAM  Cds0={(f2*a+f2r*SQRT(a))*dC1}
.PARAM  Cgs0={f3*a*dC1}
.PARAM  dRdi={Rdi/a}

.FUNC  I0(Uee,p,pp,z1)  {if(Uee>pp,(Uee-c*z1)*z1,p*(pp-p)/c*exp((Uee-pp)/p))}
.FUNC  Ig(Uds,T,p,Uee)  {bet*(T0/T)**nmu3*I0(Uee,p,min(2*p,p+c*Uds),min(Uds,Uee/(2*c)))}
.FUNC  J(d,g,T,da) 
+ {a*(sgn(d)*Ig(da,T,(p0+(p1+p2*T)*T)*kbq*T,g-Vth+auth*(T-Tref)+Fm*da**Fn+1*limit(-d,0,1)))}

E_Edg     d   ox  VALUE {max(V(d,g),-bb)-(1/(g1*(1-nc))*((1/(1+g1*max(V(d,g)+bb,0)))**(nc-1)-(1/(1+g1*bb))**(nc-1)))}
C_Cdg    ox   g   {Cox}
C_Cdg1   d    g   {Cox1}

E_Eds    d    edep  VALUE {V(d,s)-1/(1-nd)*U0*((limit(1+V(d,s)/U0,0,2*UB))**(1-nd)-1)}
C_Cds  edep    s  {Cds0*0.99}

Dbody s dd dbody
.model dbody D (BV= {UB},CJO ={Cds0/100},TT ={ta},IS ={a*exp(lnIsj)} m={0.3} RS={dRdi} )

C_Cgs   g    s   {Cgs0}

G_chan    d    s VALUE={J(V(d,s),V(g,s),T0+limit(V(Tj),-200,300),abs(V(d,s)))}
G_RMos   dd    d  VALUE={V(dd,d)/(Rf*dRd+(1-Rf)*dRd*((limit(V(Tj),-200,999)+T0)/Tref)**nmu)}

R1        g    s  1G
Rd01      d    s  500Meg
Rd03     dd    d  1k
Rd04     g     d  500Meg

Rmet      s    s0 {Rm}  TC=4m

Rx Tj 0 1k

.ENDS

*********

.SUBCKT S4_34_m_var dd g s0 Tj PARAMS: a=1 dVth=0 dR=0 dgfs=0 Inn=1 Unn=1 Rmax=1
+gmin=1 Rs=1 Rp=1 dC=0 Rm=1u

.PARAM  Fm=0.15      Fn=0.5      al=0.5
.PARAM  c=2.04       Vth0=2.355  auth=2.485m
.PARAM  UT=100m      ab=20m      lB=-23       UB=39.9

.PARAM  b0=229       p0=5.803     p1=-21.2m   p2=35.5u

.PARAM  Rd=6.3m      nmu=3.05    Tref=298     T0=273       lnIsj=-25.727
.PARAM  ndi=1.113    Rdi=2.1m    nmu2=0.70    ta=3n        td=20n
.PARAM  Rf=0.675     nmu3=1.5

.PARAM  f1=280p      f2=680p     f3=1.15n     U0=12        nc=2    nd=1.3
.PARAM  g1=0.15      bb=1        remp=0.01p   f2r=400p
.PARAM  kbq=85.8u

.PARAM  Vmin=1.855     Vmax=2.855    dCmax=0.33
.PARAM  Vth={Vth0+(Vmax-Vth0)*limit(dVth,0,1)-(Vmin-Vth0)*limit(dVth,-1,0)}
.PARAM  q0={b0*((T0/Tref)**nmu3)*a}
.PARAM  q1={(Unn-Inn*Rs-Vth0)*q0}
.PARAM  q2={(Fm*SQRT(0.4)-c)*Inn*q0}
.PARAM  Rlim={(q1+2*q2*Rmax-SQRT(q1**2+4*q2))/(2*q2)}
.PARAM  dRd={Rd/a+if(dVth==0,limit(dR,0,1)*max(Rlim-Rd/a-Rs-Rp,0),0)}
.PARAM  bm={c/((1/gmin-Rs)**2*Inn*a*(T0/Tref)**nmu3)}
.PARAM  bet={b0+(b0-bm)*if(dR==0,if(dVth==0,limit(dgfs,-1,0),0),0)}
.PARAM  dC1={1+dCmax*limit(dC,0,1)}
.PARAM  dC2={1+1.5*dCmax*limit(dC,0,1)}

.PARAM  Cox={f1*a*dC2}
.PARAM  Cox1={remp*SQRT(a)*dC2}
.PARAM  Cds0={(f2*a+f2r*SQRT(a))*dC1}
.PARAM  Cgs0={f3*a*dC1}
.PARAM  dRdi={Rdi/a}

.FUNC  I0(Uee,p,pp,z1)  {if(Uee>pp,(Uee-c*z1)*z1,p*(pp-p)/c*exp((Uee-pp)/p))}
.FUNC  Ig(Uds,T,p,Uee)  {bet*(T0/T)**nmu3*I0(Uee,p,min(2*p,p+c*Uds),min(Uds,Uee/(2*c)))}
.FUNC J(d,g,T,da,s) 
+ {a*(s*(Ig(da,T,(p0+(p1+p2*T)*T)*kbq*T,g-Vth+auth*(T-Tref)+Fm*da**Fn+1*limit(-d,0,1))+exp(min(lB+(abs(d)-UB-ab*(T-Tref))/UT,25))))}

.FUNC  Idiode(Usd,Tj,Iss) {exp(min(log(Iss)+Usd/(ndi*kbq*Tj),7))-Iss}
.FUNC  Idiod(Usd,Tj)      {a*Idiode(Usd,Tj,exp(min(lnIsj+(Tj/Tref-1)*1.12/(ndi*kbq*Tj),7))*(Tj/Tref)**3)}

E_Edg     d   ox  VALUE {max(V(d,g),-bb)-(1/(g1*(1-nc))*((1/(1+g1*max(V(d,g)+bb,0)))**(nc-1)-(1/(1+g1*bb))**(nc-1)))}
C_Cdg    ox    g  {Cox}
Vx        d   ox1 0
C_Cdg1   ox1   g  {Cox1}

E_Eds     d edep  VALUE {(V(d,s)-I(V_sense3)/Cds0)}
C_Cds  edep    s  {Cds0}

C_Cgs   g    s   {Cgs0}

G_chan    d    s VALUE={J(V(d,s),V(g,s),T0+limit(V(Tj),-200,300),(SQRT(1+4*al*abs(V(d,s)))-1)/2/al,sgn(V(d,s)))}
G_RMos   d1    d  VALUE={V(d1,d)/(Rf*dRd+(1-Rf)*dRd*((limit(V(Tj),-200,999)+T0)/Tref)**nmu)}
V_sense  dd   d1  0
G_diode   s   d3  VALUE={Idiod(V(s,d3),T0+limit(V(Tj),-200,499))}
G_Rdio   d2   d1  VALUE={V(d2,d1)/(dRdi*((limit(V(Tj),-200,999)+T0)/Tref)**nmu2)}
V_sense2 d2   d3  0

L_L001    a    c  {td/(ta+td)}
R_R001    a    b  {1/ta}
V_sense3  c    0  0
E_E001    b    0  VALUE {I(V_sense2)}
E_E002    e    0  VALUE {Cds0*1/(1-nd)*U0**nd*(limit(U0+V(d1,s),0,2*UB))**(1-nd)}
R_R002    e    c  1
R_R003    a    0  500Meg

R1        g    s  1G
Rd01      d    s  500Meg
Rd02     d2    s  500Meg
Rd03     d1    d  1k

Rmet      s    s0 {Rm}

G_TH      0   Tj  VALUE =
+{(LIMIT(I(V_sense2)*V(d1,s)+(V(s,s0)**2)/Rm+(I(V_sense)-I(V_sense2))*V(d1,d)+
+(I(V_sense)-I(V_sense2)-I(E_Edg)-I(Vx)-I(E_Eds))*V(d,s),-10k,100k))}

.ENDS

*********

.SUBCKT S4_34_m_var1 dd g s0 Tj PARAMS: a=1 dVth=0 dR=0 dgfs=0 Inn=1 Unn=1 Rmax=1
+gmin=1 Rs=1 Rp=1 dC=0 Rm=1u

.PARAM  Fm=0.15      Fn=0.5      al=0.5
.PARAM  c=2.04       Vth0=2.355  auth=2.485m
.PARAM  UT=100m      ab=20m      lB=-23       UB=39.9

.PARAM  b0=229       p0=5.803     p1=-21.2m   p2=35.5u

.PARAM  Rd=6.3m      nmu=3.05    Tref=298     T0=273       lnIsj=-25.727
.PARAM  ndi=1.113    Rdi=2.1m    nmu2=0.70    ta=3n        td=20n
.PARAM  Rf=0.675     nmu3=1.5

.PARAM  f1=280p      f2=680p     f3=1.15n     U0=12        nc=2    nd=1.3
.PARAM  g1=0.15      bb=1        remp=0.01p   f2r=400p
.PARAM  kbq=85.8u

.PARAM  Vmin=1.855     Vmax=2.855    dCmax=0.33
.PARAM  Vth={Vth0+(Vmax-Vth0)*limit(dVth,0,1)-(Vmin-Vth0)*limit(dVth,-1,0)}
.PARAM  q0={b0*((T0/Tref)**nmu3)*a}
.PARAM  q1={(Unn-Inn*Rs-Vth0)*q0}
.PARAM  q2={(Fm*SQRT(0.4)-c)*Inn*q0}
.PARAM  Rlim={(q1+2*q2*Rmax-SQRT(q1**2+4*q2))/(2*q2)}
.PARAM  dRd={Rd/a+if(dVth==0,limit(dR,0,1)*max(Rlim-Rd/a-Rs-Rp,0),0)}
.PARAM  bm={c/((1/gmin-Rs)**2*Inn*a*(T0/Tref)**nmu3)}
.PARAM  bet={b0+(b0-bm)*if(dR==0,if(dVth==0,limit(dgfs,-1,0),0),0)}
.PARAM  dC1={1+dCmax*limit(dC,0,1)}
.PARAM  dC2={1+1.5*dCmax*limit(dC,0,1)}

.PARAM  Cox={f1*a*dC2}
.PARAM  Cox1={remp*SQRT(a)*dC2}
.PARAM  Cds0={(f2*a+f2r*SQRT(a))*dC1}
.PARAM  Cgs0={f3*a*dC1}
.PARAM  dRdi={Rdi/a}

.FUNC  I0(Uee,p,pp,z1)  {if(Uee>pp,(Uee-c*z1)*z1,p*(pp-p)/c*exp((Uee-pp)/p))}
.FUNC  Ig(Uds,T,p,Uee)  {bet*(T0/T)**nmu3*I0(Uee,p,min(2*p,p+c*Uds),min(Uds,Uee/(2*c)))}
.FUNC  J(d,g,T,da) 
+ {a*(sgn(d)*Ig(da,T,(p0+(p1+p2*T)*T)*kbq*T,g-Vth+auth*(T-Tref)+Fm*da**Fn+1*limit(-d,0,1)))}

E_Edg     d   ox  VALUE {max(V(d,g),-bb)-(1/(g1*(1-nc))*((1/(1+g1*max(V(d,g)+bb,0)))**(nc-1)-(1/(1+g1*bb))**(nc-1)))}
C_Cdg    ox   g   {Cox}
C_Cdg1   d    g   {Cox1}

E_Eds    d    edep  VALUE {V(d,s)-1/(1-nd)*U0*((limit(1+V(d,s)/U0,0,2*UB))**(1-nd)-1)}
C_Cds  edep    s  {Cds0*0.99}

Dbody s dd dbody
.model dbody D (BV= {UB},CJO ={Cds0/100},TT ={ta},IS ={a*exp(lnIsj)} m={0.3} RS={dRdi} )

C_Cgs   g    s   {Cgs0}

G_chan    d    s VALUE={J(V(d,s),V(g,s),T0+limit(V(Tj),-200,300),(SQRT(1+4*al*abs(V(d,s)))-1)/2/al)}
G_RMos   dd    d  VALUE={V(dd,d)/(Rf*dRd+(1-Rf)*dRd*((limit(V(Tj),-200,999)+T0)/Tref)**nmu)}

R1        g    s  1G
Rd01      d    s  500Meg
Rd03     dd    d  1k
Rd04     g     d  500Meg

Rmet      s    s0 {Rm}  TC=4m

Rx Tj 0 1k

.ENDS

*********

.SUBCKT BSC0908NS drain gate source Tj Tcase PARAMS: dVth=0 dRdson=0 dgfs=0 dC=0 Zthtype=0 Ls=0.3n Ld=1n Lg=3n

.PARAM Rs=449u      Rg=3         Rd=50u       Rm=210u
.PARAM Inn=30       Unn=10       Rmax=8m      gmin=27

.PARAM act=1.13



X1  d1 g s Tj S4_34_h_var PARAMS: a={act} dVth={dVth} dR={dRdson} dgfs={dgfs} Inn={Inn} Unn={Unn} 
                                        +Rmax={Rmax} gmin={gmin} Rs={Rs} Rp={Rd} dC={dC} Rm={Rm}
Rg    g1     g    {Rg}   
Lg    gate   g1   {Lg*if(dgfs==99,0,1)}
Gs    s1     s    VALUE={V(s1,s)/(Rs*(1+(limit(V(Tj),-200,999)-25)*4m)-Rm)}
Rsa   s1     s    1Meg
Ls    source s1   {Ls*if(dgfs==99,0,1)}
Rda   d1     d2   {Rd}
Ld    drain  d2   {Ld*if(dgfs==99,0,1)}
Rsb   source s1    10
Rga   gate   g1    10
Rdb   drain  d2    10




Rth1  Tj      t1              {23.29m+limit(Zthtype,0,1)*8.62m}
Rth2  t1      t2              {283.61m+limit(Zthtype,0,1)*104.96m}
Rth3  t2      t3              {971.74m+limit(Zthtype,0,1)*397.75m}
Rth4  t3      t4              {1.29+limit(Zthtype,0,1)*418.31m}
Rth5  t4      Tcase           {529.89m+limit(Zthtype,0,1)*171.83m}
Cth1  Tj      0               7.866u
Cth2  t1      0               49.331u
Cth3  t2      0               367.399u
Cth4  t3      0               199.127u
Cth5  t4      0               666.043m
Cth6  Tcase   0               30m

.ENDS

**********

.SUBCKT BSZ0909NS drain gate source Tj Tcase PARAMS: dVth=0 dRdson=0 dgfs=0 dC=0 Zthtype=0 Ls=0.3n Ld=1n Lg=3n

.PARAM Rs=935u      Rg=3         Rd=50u       Rm=520u
.PARAM Inn=20       Unn=4.5      Rmax=15m     gmin=18
.PARAM RRf=498m     Rrbond=23m   Rtb=7.4      g2=964m
.PARAM act=0.825

.FUNC   Pb(I,dT,Rb)  {Rb/(2*Rtb)*(I-limit(dT/(max(I,1n)*Rb)+RRf*I*g2,0,I))**2}

X1  d1 g s Tj S4_34_m_var PARAMS: a={act} dVth={dVth} dR={dRdson} dgfs={dgfs} Inn={Inn} Unn={Unn} 
                                        +Rmax={Rmax} gmin={gmin} Rs={Rs} Rp={Rd} dC={dC} Rm={Rm}
Rg    g1     g    {Rg}   
Lg    gate   g1   {Lg*if(dgfs==99,0,1)}
Gs    s1     s    VALUE={V(s1,s)/(Rs*(1+(limit(V(Tj),-200,999)-25)*4m)-Rm)}
Rsa   s1     s    1Meg
Ls    source s1   {Ls*if(dgfs==99,0,1)}
Rda   d1     d2   {Rd}
Ld    drain  d2   {Ld*if(dgfs==99,0,1)}
Rsb   source s1    10
Rga   gate   g1    10
Rdb   drain  d2    10

G_TH  0    Tb  VALUE =  {Pb(abs(I(Ls)),V(Tj,Tcase),Rrbond*(1+(limit((V(Tb)+V(Tj))/2,-200,999)-25)*4m))}
Cthb  Tb      0               1.71m
Rthb  Tb      Tj              {Rtb} 
Rth1  Tj      t1              {31.9m+limit(Zthtype,0,1)*11.81m}
Rth2  t1      t2              {379.09m+limit(Zthtype,0,1)*140.29m}**********

.SUBCKT BSC0909NS drain gate source Tj Tcase PARAMS: dVth=0 dRdson=0 dgfs=0 dC=0 Zthtype=0 Ls=0.3n Ld=1n Lg=3n

.PARAM Rs=414u      Rg=3         Rd=50u       Rm=222u
.PARAM Inn=20       Unn=4.5      Rmax=11.8m   gmin=20.45

.PARAM act=0.979



X1  d1 g s Tj S4_34_m_var PARAMS: a={act} dVth={dVth} dR={dRdson} dgfs={dgfs} Inn={Inn} Unn={Unn} 
                                        +Rmax={Rmax} gmin={gmin} Rs={Rs} Rp={Rd} dC={dC} Rm={Rm}
Rg    g1     g    {Rg}   
Lg    gate   g1   {Lg*if(dgfs==99,0,1)}
Gs    s1     s    VALUE={V(s1,s)/(Rs*(1+(limit(V(Tj),-200,999)-25)*4m)-Rm)}
Rsa   s1     s    1Meg
Ls    source s1   {Ls*if(dgfs==99,0,1)}
Rda   d1     d2   {Rd}
Ld    drain  d2   {Ld*if(dgfs==99,0,1)}
Rsb   source s1    10
Rga   gate   g1    10
Rdb   drain  d2    10




Rth1  Tj      t1              {26.89m+limit(Zthtype,0,1)*9.95m}
Rth2  t1      t2              {323.87m+limit(Zthtype,0,1)*119.86m}
Rth3  t2      t3              {1.12+limit(Zthtype,0,1)*463.25m}
Rth4  t3      t4              {1.49+limit(Zthtype,0,1)*387.27m}
Rth5  t4      Tcase           {522.98m+limit(Zthtype,0,1)*135.93m}
Cth1  Tj      0               6.815u
Cth2  t1      0               43.198u
Cth3  t2      0               318.113u
Cth4  t3      0               172.518u
Cth5  t4      0               3m
Cth6  Tcase   0               30m

.ENDS
Rth3  t2      t3              {1.31+limit(Zthtype,0,1)*545.6m}
Rth4  t3      t4              {1.78+limit(Zthtype,0,1)*310.74m}
Rth5  t4      Tcase           {502.8m+limit(Zthtype,0,1)*87.77m}
Cth1  Tj      0               5.743u
Cth2  t1      0               36.906u
Cth3  t2      0               275.087u
Cth4  t3      0               145.381u
Cth5  t4      0               3m
Cth6  Tcase   0               10m

.ENDS



**********

.SUBCKT BSC0908NS_L1 drain gate source PARAMS: dVth=0 dRdson=0 dgfs=0 dC=0 Ls=0.3n Ld=1n Lg=3n

.PARAM Rs=449u      Rg=3         Rd=50u       Rm=210u
.PARAM Inn=30       Unn=10       Rmax=8m      gmin=27
.PARAM act=1.13

X1  d1 g s Tj S4_34_h_var1 PARAMS: a={act} dVth={dVth} dR={dRdson} dgfs={dgfs} Inn={Inn} Unn={Unn} 
                                        +Rmax={Rmax} gmin={gmin} Rs={Rs} Rp={Rd} dC={dC} Rm={Rm}
Rg    g1     g    {Rg}   
Lg    gate   g1   {Lg*if(dgfs==99,0,1)}
Gs    s1     s    VALUE={V(s1,s)/(Rs*(1+(limit(V(Tj),-200,999)-25)*4m)-Rm)}
Rsa   s1     s    1Meg
Ls    source s1   {Ls*if(dgfs==99,0,1)}
Rda   d1     d2   {Rd}
Ld    drain  d2   {Ld*if(dgfs==99,0,1)}

E1    Tj     w      VALUE={TEMP}
R1    w      0      1u

Rs  source s1 5
Rd  drain  d1 5

.ENDS

**********

.SUBCKT BSZ0909NS_L1 drain gate source PARAMS: dVth=0 dRdson=0 dgfs=0 dC=0 Ls=0.3n Ld=1n Lg=3n

.PARAM Rs=935u      Rg=3         Rd=50u       Rm=520u
.PARAM Inn=20       Unn=4.5      Rmax=15m     gmin=18
.PARAM act=0.825

X1  d1 g s Tj S4_34_m_var1 PARAMS: a={act} dVth={dVth} dR={dRdson} dgfs={dgfs} Inn={Inn} Unn={Unn} 
                                        +Rmax={Rmax} gmin={gmin} Rs={Rs} Rp={Rd} dC={dC} Rm={Rm}
Rg    g1     g    {Rg}   
Lg    gate   g1   {Lg*if(dgfs==99,0,1)}
Gs    s1     s    VALUE={V(s1,s)/(Rs*(1+(limit(V(Tj),-200,999)-25)*4m)-Rm)}
Rsa   s1     s    1Meg
Ls    source s1   {Ls*if(dgfs==99,0,1)}
Rda   d1     d2   {Rd}
Ld    drain  d2   {Ld*if(dgfs==99,0,1)}

E1    Tj     w      VALUE={TEMP}
R1    w      0      1u

Rs  source s1 5
Rd  drain  d1 5

.ENDS

**********

.SUBCKT BSC0909NS_L1 drain gate source PARAMS: dVth=0 dRdson=0 dgfs=0 dC=0 Ls=0.3n Ld=1n Lg=3n

.PARAM Rs=414u      Rg=3         Rd=50u       Rm=222u
.PARAM Inn=20       Unn=4.5      Rmax=11.8m   gmin=20.45
.PARAM act=0.979

X1  d1 g s Tj S4_34_m_var1 PARAMS: a={act} dVth={dVth} dR={dRdson} dgfs={dgfs} Inn={Inn} Unn={Unn} 
                                        +Rmax={Rmax} gmin={gmin} Rs={Rs} Rp={Rd} dC={dC} Rm={Rm}
Rg    g1     g    {Rg}   
Lg    gate   g1   {Lg*if(dgfs==99,0,1)}
Gs    s1     s    VALUE={V(s1,s)/(Rs*(1+(limit(V(Tj),-200,999)-25)*4m)-Rm)}
Rsa   s1     s    1Meg
Ls    source s1   {Ls*if(dgfs==99,0,1)}
Rda   d1     d2   {Rd}
Ld    drain  d2   {Ld*if(dgfs==99,0,1)}

E1    Tj     w      VALUE={TEMP}
R1    w      0      1u

Rs  source s1 5
Rd  drain  d1 5

.ENDS

**********

.SUBCKT BSC0908NS_L0  drain  gate  source

Lg     gate  g1    3n
Ld     drain d1    1n
Ls     source s1   0.3n
Rs      s1    s2   449u
Rs1    source s1 5
Rd1    drain  d1 5

Rg     g1    g2     3
M1      d2    g2    s2    s2    DMOS    L=1u   W=1u
.MODEL DMOS NMOS ( KP= 120  VTO=2.62  THETA=0  VMAX=1.5e5  ETA=0.015  LEVEL=3)
Rd     d1    d2    5.49m TC=7m

Dbd     s2    d2    Dbt
.MODEL     Dbt    D(BV=38   M=0.3  CJO=1.19n  VJ=0.9V)
Dbody   s2   21    DBODY
.MODEL DBODY  D(IS=8.6p  N=1.1  RS=0.44u  EG=1.12  TT=3n)
Rdiode  d1  21    1.94m TC=10m

.MODEL   sw    NMOS(VTO=0  KP=10   LEVEL=1)
Maux      g2   c    a    a   sw
Maux2     b    d    g2    g2   sw
Eaux      c    a    d2    g2   1
Eaux2     d    g2   d2    g2   -1
Cox       b    d2   0.24n
.MODEL     DGD    D(M=0.6   CJO=0.24n   VJ=0.5)
Rpar      b    d2   1Meg
Dgd       a    d2   DGD
Rpar2     d2   a    10Meg
Cgs     g2    s2    0.98n

.ENDS  BSC0908NS_L0

******

.SUBCKT BSZ0909NS_L0  drain  gate  source

Lg     gate  g1    3n
Ld     drain d1    1n
Ls     source s1   0.3n
Rs      s1    s2   935u
Rs1    source s1 5
Rd1    drain  d1 5

Rg     g1    g2     3
M1      d2    g2    s2    s2    DMOS    L=1u   W=1u
.MODEL DMOS NMOS ( KP= 110  VTO=2.55  THETA=0  VMAX=1.5e5  ETA=0.011  LEVEL=3)
Rd     d1    d2    7.08m TC=7m

Dbd     s2    d2    Dbt
.MODEL     Dbt    D(BV=38   M=0.3  CJO=0.92n  VJ=0.9V)
Dbody   s2   21    DBODY
.MODEL DBODY  D(IS=5.8p  N=1.11  RS=0.61u  EG=1.12  TT=3n)
Rdiode  d1  21    2.55m TC=10m

.MODEL   sw    NMOS(VTO=0  KP=10   LEVEL=1)
Maux      g2   c    a    a   sw
Maux2     b    d    g2    g2   sw
Eaux      c    a    d2    g2   1
Eaux2     d    g2   d2    g2   -1
Cox       b    d2   0.23n
.MODEL     DGD    D(M=0.6   CJO=0.23n   VJ=0.5)
Rpar      b    d2   1Meg
Dgd       a    d2   DGD
Rpar2     d2   a    10Meg
Cgs     g2    s2    0.95n

.ENDS  BSZ0909NS_L0

******

.SUBCKT BSC0909NS_L0  drain  gate  source

Lg     gate  g1    3n
Ld     drain d1    1n
Ls     source s1   0.3n
Rs      s1    s2   414u
Rs1    source s1 5
Rd1    drain  d1 5

Rg     g1    g2     3
M1      d2    g2    s2    s2    DMOS    L=1u   W=1u
.MODEL DMOS NMOS ( KP= 132  VTO=2.55  THETA=0  VMAX=1.5e5  ETA=0.011  LEVEL=3)
Rd     d1    d2    5.97m TC=7m

Dbd     s2    d2    Dbt
.MODEL     Dbt    D(BV=38   M=0.3  CJO=1.06n  VJ=0.9V)
Dbody   s2   21    DBODY
.MODEL DBODY  D(IS=6.9p  N=1.11  RS=0.51u  EG=1.12  TT=3n)
Rdiode  d1  21    2.15m TC=10m

.MODEL   sw    NMOS(VTO=0  KP=10   LEVEL=1)
Maux      g2   c    a    a   sw
Maux2     b    d    g2    g2   sw
Eaux      c    a    d2    g2   1
Eaux2     d    g2   d2    g2   -1
Cox       b    d2   0.27n
.MODEL     DGD    D(M=0.6   CJO=0.27n   VJ=0.5)
Rpar      b    d2   1Meg
Dgd       a    d2   DGD
Rpar2     d2   a    10Meg
Cgs     g2    s2    1.13n

.ENDS  BSC0909NS_L0

******

That’s the cause of your problem.

Inspect → Simulator → Sim Command → Compatibility Mode: PSpice and LTSpice

Same issue even after selecting that compatibility mode:

Note: Compatibility modes selected: ps lt a
Circuit: KiCad schematic
Netlist line no. 0:
Undefined parameter [pwidth]
Netlist line no. 0:
Cannot compute substitute
Netlist line no. 0:
Undefined parameter [pwidth]
Netlist line no. 0:
Cannot compute substitute
Netlist line no. 0:
Undefined parameter [pwidth]
Netlist line no. 0:
Expression err: pwidth/2}
Netlist line no. 0:
Cannot compute substitute
Netlist line no. 0:
Undefined parameter [pwidth]
Netlist line no. 0:
Cannot compute substitute
Netlist line no. 0:
Undefined parameter [pwidth]
Netlist line no. 0:
Cannot compute substitute
Netlist line no. 0:
Undefined parameter [pwidth]
Netlist line no. 0:
Cannot compute substitute
Netlist line no. 0:
Undefined parameter [prgate]
Netlist line no. 0:
Cannot compute substitute
Netlist line no. 0:
Undefined parameter [pcjo]
Netlist line no. 0:
Cannot compute substitute
Netlist line no. 0:
Undefined parameter [ptrc1]
Netlist line no. 0:
Cannot compute substitute
Please check your input netlist.
Error: ngspice.dll cannot recover and awaits to be detached
Note: can't find the initialization file spinit.
******
** ngspice-39 shared library
** Creation Date: Feb 13 2023   06:17:03
******
Note: No compatibility mode selected!
Circuit: *
Warning: No job (tran, ac, op etc.) defined:
run simulation not started
~~~

Indeed some modifications to the model are required (see attached).
TI-CSD18510Q5B-ng.7z (1.8 KB)

ngspice reports some warnings, they may be ignored.

1 Like

Why did all of that need to be changed? Is there some reference I can look at in the future to know what needs to be modified? Is it a different version of PSpice that’s not supported?

PSPICE compatibility is an ongoing business. If a user detects an incompatibility, we try to add a fix to the compatibility processor in ngspice.

You have the PSPICE manual and the ngspice manual, several hundes of pages each. It is practically not possible to foresee all the tiny incompatibilities. We have caught most of them, but others still remain and need to be detected and then treated.

And then we have some special cases as seen here:

.PARAM < <name> = <value> >*
.PARAM < <name> = { <expression> } >*

is what the PSPICE manual says (see the equal sign).

`.PARAM  ptrc1   7.11e-3`

is what the TI people do (equal sign missing). Obviously PSPICE can handle this deviation from their own manual (unfortunately I cannot test this). But how to detect this deviation, except for some (negative) user experience?

Btw.: The diode issue
TI:

DGD  14 10	 DD	{pwidth}

ngspice:

DGD  14 10	 DD	area = {pwidth}

is already handled in ngspice, when flag ps is set, no need to change this in the TI model.

1 Like