.subckt xcnwvc c0 c1 b w=5 l=0.5 vm=1
+ wc='w*1' lc='l*1'

** Corner Parameters
*.param cnwvc_tox=41.6503
*.param cnwvc_cdepmult=1
*.param cnwvc_cintmult=1
*.param cnwvc_vt1=0.3333
*.param cnwvc_vt2=0.2380952
*.param cnwvc_vtr=0.16
*.param cnwvc_dwc=0.0    $ in microns each side
*.param cnwvc_dlc=0.0    $ in microns each side
*.param cnwvc_dld=0.0    $ in microns each side

*Geometry Parameters
.param
+cnwvc_ldiff=0.15
+wd='wc+2*cnwvc_dwc'
+ld='lc+2*cnwvc_dlc'
+ldd='0.018+2*cnwvc_dld'
+dwr=-0.02
+dwp=-0.5
+dlr=0.02
+wl='(wd-2*dwr)/(ld-2*dlr)'
+wlwdiff='((0.5*(ld-2*dlr))+cnwvc_ldiff)/(2*(wd-2*dwr))'

*Mismatch Parameters
+xcnwvc_cmin_slope_l=1.1e-16
+xcnwvc_cmin_slope_w=1.5e-16
+xcnwvc_cmin_slope_wl=3.5e-16
+xcnwvc_cmax_slope_l=7.0e-16
+xcnwvc_cmax_slope_w=7.0e-16
+xcnwvc_cmax_slope_wl=1.5e-15

** Capacitance Model Parameters
.param cnwvc_slope1=0.21875
.param cnwvc_slope2=0.125
.param
+cm0='5.571e-16*cnwvc_cintmult'
+cm1=4.775e-16 dev/gauss='xcnwvc_cmin_slope_l/sqrt(2*ld*vm)'
+cm2=2.019e-16 dev/gauss='xcnwvc_cmin_slope_w/sqrt(2*wd*vm)'
+cm3='6.529e-16*cnwvc_cdepmult' dev/gauss='xcnwvc_cmin_slope_wl*cnwvc_cdepmult/sqrt(2*ld*wd*vm)'
+cx0=6.261e-16 
+cx1=5.75e-16 dev/gauss='xcnwvc_cmax_slope_l/sqrt(2*ld*vm)'
+cx2=1.712e-16 dev/gauss='xcnwvc_cmax_slope_w/sqrt(2*wd*vm)'
+cx3='8.854e-14*3.9/cnwvc_tox' dev/gauss='xcnwvc_cmax_slope_wl/sqrt(2*wd*ld*vm)'

.param cmin='cm0+cm1*ld+cm2*wd+cm3*wd*(ld-ldd)+cx3*wd*ldd' 
.param cmax='cx0+cx1*ld+cx2*wd+cx3*wd*ld' 
.param cval1='0.5*(cmax+cmin)'
.param cval2='0.5*(cmax-cmin)'

*cg c0 p2 c='(cval1+cval2*(1/1.9)*(tanh((v(c0)-v(c1)-cnwvc_vt1)/cnwvc_slope1)+0.9*tanh((v(c0)-v(c1)-cnwvc_vt2)/cnwvc_slope2)))*vm'

*c3 and c4 are the tuning capacitors 
*c3 c0 b c=0.15e-15
*c4 c1 b c=0.15e-15  

** Resistance Model Parameters
.param con_sp=0.17
.param cnwvc_k=12                $contacts on both sides
.param cnwvc_n1=0.1              $fitting parameter for r
.param cnwvc_n2=0.28             $fitting parameter for r
.param apoly=1.15
.param apolyc=1
.param acon=1
.param anwell=1
.param bnwell=0.6
.param cnwell=2
.param n_pocon='max((lc-0.14)/(2*con_sp),1)'        $numbers of poly contact
.param n_con='(wc-2*0.06+con_sp)/(2*con_sp)'        $numbers of contacts

.param cnwvc_a='apoly*rp1*wl/cnwvc_k+apolyc*rcp1/n_pocon+acon*rcn/n_con+anwell*rnw*wlwdiff'
.param cnwvc_b1='bnwell*rnw*wlwdiff'
.param cnwvc_c='cnwell*rnw*((0.5*(ld-2*dlr))+cnwvc_ldiff)/(2*(wd-2*dwp))'

*rg p2 c1 r='(cnwvc_a+cnwvc_b1*(0.5*tanh((v(c0)-v(c1)-cnwvc_vtr)/cnwvc_n1)+0.5)+20*cnwvc_c*(0.5*tanh((v(c0)-v(c1)-cnwvc_vtr)/cnwvc_n1)+0.5)*exp(-abs((v(c0)-v(c1)-cnwvc_vtr)/cnwvc_n2)))/vm' tc1=3e-3 tc2=0

***Verilog A Model Call HERE
     .use_veriloga xcnwvc.ai
     .model xcnwvc_va macro lang=veriloga
     Yvaractor xcnwvc_va c0 c1 b generic: w=w l=l vm=vm cnwvc_tox=cnwvc_tox cnwvc_cdepmult=cnwvc_cdepmult cnwvc_cintmult=cnwvc_cintmult cnwvc_vt1=cnwvc_vt1 cnwvc_vt2=cnwvc_vt2 cnwvc_vtr=cnwvc_vtr cnwvc_dwc=cnwvc_dwc cnwvc_dlc=cnwvc_dlc cnwvc_dld=cnwvc_dld rp1=rp1 rcn=rcn rcp1=rcp1 rnw=rnw cm0=cm0 cm1=cm1 cm2=cm2 cm3=cm3 cx0=cx0 cx1=cx1 cx2=cx2 cx3=cx3


.ends xcnwvc
***************************************************************************************
.subckt xcnwvc2 c0 c1 b w=5 l=0.5 vm=1
+ wc='w*1' lc='l*1'

** Corner Parameters
*.param cnwvc2_tox=41.7642
*.param cnwvc2_cdepmult=1
*.param cnwvc2_cintmult=1
*.param cnwvc2_vt1=0.2
*.param cnwvc2_vt2=0.33
*.param cnwvc2_vtr=0.14
*.param cnwvc2_dwc=0.0    $ in microns each side
*.param cnwvc2_dlc=0.0    $ in microns each side
*.param cnwvc2_dld=0.0    $ in microns each side
*
*Geometry Parameters
.param
+cnwvc_ldiff=0.15
+wd='wc+2*cnwvc2_dwc'
+ld='lc+2*cnwvc2_dlc'
+ldd='0.015+2*cnwvc2_dld'
+dwr=0.00
+dwp=0.0
+dlr=0.03
+wl='(wd-2*dwr)/(ld-2*dlr)'
+wlwdiff='((0.5*(ld-2*dlr))+cnwvc_ldiff)/(2*(wd-2*dwr))'

*Mismatch Parameters
+xcnwvc2_cmin_slope_l=2.4e-16
+xcnwvc2_cmin_slope_w=1.0e-16
+xcnwvc2_cmin_slope_wl=4.0e-16
+xcnwvc2_cmax_slope_l=3.0e-16
+xcnwvc2_cmax_slope_w=7.0e-16
+xcnwvc2_cmax_slope_wl=1.0e-15

** Capacitance Model Parameters
.param cnwvc_slope1=0.15
.param cnwvc_slope2=0.35
.param
+cm0='5.828e-16*cnwvc2_cintmult' 
+cm1=4.596e-16 dev/gauss='xcnwvc2_cmin_slope_l/sqrt(2*ld*vm)'
+cm2=1.614e-16 dev/gauss='xcnwvc2_cmin_slope_w/sqrt(2*wd*vm)'
+cm3='1.541e-15*cnwvc2_cdepmult' dev/gauss='xcnwvc2_cmin_slope_wl**cnwvc2_cdepmult/sqrt(2*ld*wd*vm)'
+cx0=6.778e-16
+cx1=6.461e-16 dev/gauss='xcnwvc2_cmax_slope_l/sqrt(2*ld*vm)'
+cx2=1.517e-16 dev/gauss='xcnwvc2_cmax_slope_w/sqrt(2*wd*vm)'
+cx3='8.854e-14*3.9/cnwvc2_tox' dev/gauss='xcnwvc2_cmax_slope_wl/sqrt(2*ld*wd*vm)'

.param cmin='cm0+cm1*ld+cm2*wd+cm3*wd*(ld-ldd)+cx3*wd*ldd'
.param cmax='cx0+cx1*ld+cx2*wd+cx3*wd*ld'
.param cval1='0.5*(cmax+cmin)'
.param cval2='0.5*(cmax-cmin)'

*cg c0 p2 c='(cval1+cval2*(1/1.9)*(tanh((v(c0)-v(c1)-cnwvc2_vt1)/cnwvc_slope1)+0.9*tanh((v(c0)-v(c1)-cnwvc2_vt2)/cnwvc_slope2)))*vm'

*c3 and c4 are the tuning capacitors 
*c3 c0 b c=0.15e-15
*c4 c1 b c=0.15e-15  

** Resistance Model Parameters
.param con_sp=0.17
.param cnwvc_k=12                $contacts on both sides
.param cnwvc_n1=0.2              $fitting parameter for r
.param cnwvc_n2=0.35             $fitting parameter for r
.param apoly=1.1
.param apolyc=1.1
.param acon=1
.param anwell=1
.param bnwell=0.5
.param cnwell=0.3
.param n_pocon='max((lc-0.14)/(2*con_sp),1)'        $numbers of poly contact
.param n_con='(wc-2*0.06+con_sp)/(2*con_sp)'        $numbers of contacts

.param cnwvc_a='apoly*rp1*wl/cnwvc_k+apolyc*rcp1/n_pocon+acon*rcn/n_con+anwell*rnw*wlwdiff'
.param cnwvc_b1='bnwell*rnw*cnwvc_ldiff/(2*(wd-2*dwr))'
.param cnwvc_c='cnwell*rnw*cnwvc_ldiff/(2*(wd-2*dwp))'

*rg p2 c1 r='(cnwvc_a+cnwvc_b1*(0.5*tanh((v(c0)-v(c1)-cnwvc2_vtr)/cnwvc_n1)+0.5)+20*cnwvc_c*(0.5*tanh((v(c0)-v(c1)-cnwvc2_vtr)/cnwvc_n1)+0.5)*exp(-abs((v(c0)-v(c1)-cnwvc2_vtr)/cnwvc_n2)))/vm' tc1=3e-3 tc2=0

***Verilog A Model Call HERE
     .use_veriloga xcnwvc.ai
     .model xcnwvc2_va macro lang=veriloga
     Yvaractor xcnwvc2_va c0 c1 b generic: w=w l=l vm=vm cnwvc2_tox=cnwvc2_tox cnwvc2_cdepmult=cnwvc2_cdepmult cnwvc2_cintmult=cnwvc2_cintmult cnwvc2_vt1=cnwvc2_vt1 cnwvc2_vt2=cnwvc2_vt2 cnwvc2_vtr=cnwvc2_vtr cnwvc2_dwc=cnwvc2_dwc cnwvc2_dlc=cnwvc2_dlc cnwvc2_dld=cnwvc2_dld rp1=rp1 rcn=rcn rcp1=rcp1 rnw=rnw cm0=cm0 cm1=cm1 cm2=cm2 cm3=cm3 cx0=cx0 cx1=cx1 cx2=cx2 cx3=cx3

.ends xcnwvc2
***************************************************************************************
