Sentaurus仿真

用SDEVICE跑一个基本NMOS的电学特性时,发现NMOS三极的电势跟代码里设置的电位不一样。求答疑解惑

器件代码
; Reinitializing SDE
(sde:clear)
; set coordinate system up direction
(sde:set-process-up-direction "+z")

(sdegeo:set-default-boolean "ABA")
; Setting parameters
; - lateral
(define Lg 0.5) ; [um] Gate length
(define Lsp 0.375) ; [um] Spacer length(SD)
(define Lreox 0.01) ; [um] Spacer length
(define Ltot (+ Lg (* 2 Lsp) 0.8) )
(define w 1 ) ; [um] Lateral extend total
(define LTO 0.2)

; - layers
(define Hsub 1.0) ; [um] Substrate thickness
(define Hepi 1.0) ; [um] Substrate thickness
(define Hbn 1.0) ; [um] Substrate thickness
(define Tox 4.38e-3) ; [um] Gate oxide thickness
(define Hpol 0.2) ; [um] Poly gate thickness

; Derived quantities
(define Xmax (/ Ltot 2.0))
(define Xg (/ Lg 2.0))
(define Xsp (+ Xg Lreox)) ;real length of gate

(define Zsub (+ Hsub Hepi Hbn))
(define Yw (/ w 2))
(define Lcont (- Xmax Xsp)) ;

; Creating cuboid regions
(sdegeo:create-cuboid (position (* Xmax -1) (* Yw -1) 0) (position Xmax Yw -1.0)
"Silicon" "SubsSilicon")

(sdegeo:create-cuboid (position (* Xsp -1) (* Yw -1) 0) (position Xsp Yw Tox)
"Oxide" "GateOxide")

;(sdegeo:create-cuboid (position (* Xmax -1) (- Yw 0.2) 0) (position Xmax (- Yw 0.1) -0.2) "Oxide" "TrenchOxide_Right")

;(sdegeo:create-cuboid (position (* Xmax -1) (+ (* Yw -1) 0.2) 0) (position Xmax (+ (* Yw -1) 0.1) -0.2) "Oxide" "TrenchOxide_Left")

(sdegeo:create-cuboid (position (* Xsp -1) (* Yw -1) Tox) (position Xsp Yw 0.1)
"PolySi" "PolyGate")

; Poly Reoxidation
(sdegeo:set-default-boolean "BAB")
(sdegeo:create-cuboid (position (* Xsp -1) (* Yw -1) 0) (position (+ (* Xsp -1) -0.005) Yw 0.1)
"Oxide" "PolyReOxide1")

(sdegeo:create-cuboid (position Xsp (* Yw -1) 0) (position (+ Xsp 0.005) Yw 0.1)
"Oxide" "PolyReOxide2")

; Ni Spacers
(sdegeo:create-cuboid (position (+ Xsp 0.005) (* Yw -1) 0) (position (+ Xsp 0.105) Yw 0.08)
"Nitride" "NiSpacer")

; Ni Spacers
(sdegeo:create-cuboid (position (* (+ Xsp 0.005) -1) (* Yw -1) 0) (position (* (+ Xsp 0.105) -1) Yw 0.08)
"Nitride" "NiSpacer")

;(sde:define-parameter "fillet-radius" 0.03 0.0 0.0 )

;(sdegeo:fillet
;(list (car (find-vertex-id (position (+ Xsp 0.005) (* Yw -1) 0)))
; (car (find-vertex-id (position (+ Xsp 0.005) Yw 0.08))) ) fillet-radius)

;(sdegeo:fillet
;(list (car (find-vertex-id (position (* (+ Xsp 0.005) -1) (* Yw -1) 0)))
; (car (find-vertex-id (position (* (+ Xsp 0.015) -1) Yw 0.08)))) fillet-radius)

; Contact definitions
(sdegeo:set-contact (find-face-id (position 0 0 -1) ) "substrate")
(sdegeo:set-contact (find-face-id (position 0 0 0.1)) "gate")

(define SOURCE
(sdegeo:create-cuboid (position (+ Xsp 0.055) (* Yw -1) 0) (position (+ Xsp 0.055 Lsp) Yw 0.05)
"Metal" "Source"))
(sdegeo:set-contact SOURCE "source" "remove")

(define DRAIN
(sdegeo:create-cuboid (position (* (+ Xsp 0.055) -1) (* Yw -1) 0) (position (* (+ Xsp 0.055 Lsp) -1) Yw 0.05)
"Metal" "Drain"))
(sdegeo:set-contact DRAIN "drain" "remove")

; Constant doping profile definions
(sdedr:define-constant-profile "Const.Bulk" "BoronActiveConcentration" 1e16)
(sdedr:define-constant-profile-region "PlaceCD.Bulk"
"Const.Bulk" "SubsSilicon")

(sdedr:define-constant-profile "Const.Poly" "ArsenicActiveConcentration" 1e19)
(sdedr:define-constant-profile-region "PlaceCD.Poly"
"Const.Poly" "PolyGate")

; Analytic doping profile definions
(sdedr:define-refeval-window "BaseLine.Source" "Rectangle"
(position Xg (* Yw -1) 0.0) (position (+ Xg Lsp Lsp) Yw 0.0) )

(sdedr:define-refeval-window "BaseLine.Drain" "Rectangle"
(position (* Xg -1) (* Yw -1) 0.0) (position (* (+ Xg Lsp Lsp) -1) Yw 0.0) )

(sdedr:define-gaussian-profile "Gauss.SourceDrain"
"ArsenicActiveConcentration" "PeakPos" 0.0 "PeakVal" 1e18
"ValueAtDepth" 1e15 "Depth" 0.19 "Gauss" "Factor" 0.8)

(sdedr:define-analytical-profile-placement "PlaceAP.Source"
"Gauss.SourceDrain" "BaseLine.Source" "Both" "NoReplace" "Eval")

(sdedr:define-analytical-profile-placement "PlaceAP.Drain"
"Gauss.SourceDrain" "BaseLine.Drain" "Both" "NoReplace" "Eval")

; Meshing strategies
(sdedr:define-refeval-window "RefWin.Global" "Cuboid"
(position -0.25 -0.2 -1.0) (position 0.25 0.2 0.1))

(sdedr:define-refinement-size "RefDef.Global"
0.1 0.1 0.1
0.05 0.05 0.05 )

(sdedr:define-refinement-placement "Place.Global"
"RefDef.Global" "RefWin.Global" )

(sdedr:define-refeval-window "RefWin.Active" "Cuboid"
(position -0.25 -0.2 -0.15) (position 0.25 0.2 0.0))

(sdedr:define-refinement-size "RefDef.Active"
0.025 0.025 0.025
0.0125 0.0125 0.0125 )

(sdedr:define-refinement-placement "Place.Active"
"RefDef.Active" "RefWin.Active")

; Multiboxes
(sdedr:define-refeval-window "RefWin.Channel"
"Cuboid" (position -0.12 -0.1 -0.05) (position 0.12 0.1 0))

(sdedr:define-multibox-size "RefDefMB.Channel"
0.1 0.1 0.01
0.05 0.05 0.001
1 1 -1.5 )

(sdedr:define-multibox-placement "PlaceMB.Channel"
"RefDefMB.Channel" "RefWin.Channel" )

; Meshing structure
(sde:build-mesh "n@node@")

SDEVISS代码
*MOSFET 3d

  • define electrode
    Electrode{
    { Name="source" Voltage=0.0 }
    { Name="drain" Voltage=0 }
    { Name="gate" Voltage=0.0 Barrier=-0.55 }
    { Name="substrate" Voltage=0.0 }

         }
    
  • input files and output files
    File{
    Grid = "@tdr@" * replace file by dafault
    Plot = "@tdrdat@"
    Current = "@plot@"
    Output = "@log@"
    Param = "@parameter@"

    }
    

    Physics{ * used physics model
    AreaFactor=5
    Mobility( DopingDep HighFieldSaturation Enormal )
    EffectiveIntrinsicDensity( oldSlotboom )

    HeavyIon (

     length=3  * the length of particle track
     time=5e-12
     direction=(0,0,-1)
     location=(0.42,0,0)
     wt_hi=0.05
     let_f=@LET@
     Gaussian
     Picocoulomb
    

    )

       }
    

Plot{ * papameter to solve
eDensity hDensity
eCurrent hCurrent
ElectricField eEnormal hEnormal

Potential Doping SpaceCharge
SRH Auger 
AvalancheGeneration
eMobility hMobility
DonorConcentration AcceptorConcentration
Doping
eVelocity hVelocity

HeavyIonchargeDensity
}

Math{
Method=ILS
Number_of_threads=4
Extrapolate
RelErrControl
Digits=4
Notdamped=50
Iterations=12
Transient=BE
Method=Blocked
SubMethod=ParDiSo
}

Solve{
Coupled(Iterations=100){ Poisson }
Coupled{ Poisson Electron Hole Contact Circuit }

 Quasistationary( 
 InitialStep=1e-3 Increment=1.35 
  MinStep=1e-5 MaxStep=0.05 
  Goal{ name="drain" Voltage= 0.3 } 
               )
 {Coupled{ Poisson Electron Hole }}

NewCurrentPrefix="GVDI"
Quasistationary (
InitialStep=1e-2 Increment=1.35
MinStep=1e-5 MaxStep=0.1
Goal{ name="gate" Voltage= 1 }
)
{Coupled{ Poisson Electron Hole }}

Quasistationary(
InitialStep=1e-3 Increment=1.35
MinStep=1e-5 MaxStep=0.05
Goal{ name="gate" Voltage= 0.6 }
)
{Coupled{ Poisson Electron Hole }}

NewCurrentPrefix="DVDI"
Quasistationary (
InitialStep=1e-2 Increment=1.35
MinStep=1e-5 MaxStep=0.1
Goal{ name="drain" Voltage= 1 }
)
{Coupled{ Poisson Electron Hole }}
}