关于Sentaurus的日常(三)

看到了小木虫的sentaurus教程

开场一句“大家好,我是西安电子科技大学的芦宾......”

友军啊...

;----------------------------------------------------------------------
; Setting parameters
; - lateral
(define Ltot 1.0)   ; [um] Lateral extend total 
(define Lg   0.2)   ; [um] Gate length

; - layers
(define Hgate 40e-4)
(define Hsd  0.05)
(define Hepi 1.5)     ; [um] EPI thickness
;----------------------------------------------------------------------
; Derived quantities
(define Xmax (/ Ltot 2.0))
(define Xg   (/ Lg   2.0))

(define Ygate Hgate)
(define Ysd (+ Ygate Hsd))
(define Yepi (+ Ygate Hepi))                        
;*************************************************************************
; Overlap resolution: New replaces Old                
(sdegeo:set-default-boolean "ABA")
;****************************************************************************
; Creating epi
(sdegeo:create-rectangle 
  (position (* Xmax -1.0) Yepi  0.0 ) 
  (position    Xmax       Ygate 0.0 ) 
  "Silicon" "region_1"
)
 
; Creating  oxide layer
(sdegeo:create-rectangle 
  (position (* Xg -1.0) Ygate 0.0 ) 
  (position    Xg        0.0  0.0 ) 
  "SiO2" "region_2"
)

;---------------------------------------------------------------------
;----------------------------------------------------------------------
; Contact declarations
(sdegeo:define-contact-set "source" 
  4.0  (color:rgb 1.0 0.0 0.0 ) "##")

(sdegeo:define-contact-set "drain" 
  4.0  (color:rgb 0.0 1.0 0.0 ) "##")

(sdegeo:define-contact-set "gate" 
  4.0  (color:rgb 0.0 0.0 1.0 ) "##")

(sdegeo:define-contact-set "substrate"
  4.0  (color:rgb 0.0 1.0 1.0 ) "##")
;----------------------------------------------------------------------
; Contact settings
(sdegeo:define-2d-contact 
 (find-edge-id (position (* (+ Xmax Xg) -0.5)  Ygate  0.0))
 "source" )

(sdegeo:define-2d-contact 
 (find-edge-id (position (* (+ Xmax Xg) 0.5) Ygate 0.0))
 "drain")

(sdegeo:define-2d-contact 
 (find-edge-id (position 0.0 0.0 0.0))
 "gate")

(sdegeo:define-2d-contact 
 (find-edge-id (position 0.0 Yepi 0.0))
 "substrate")

; Separating lumps
(sde:assign-material-and-region-names "all")

;***********************************************************************

; Setting region names
(sde:add-material 
  (find-body-id (position  0.0 (* 0.5 (+ Yepi Ygate))  0.0)) 
  "Silicon" "R.epi")

(sde:add-material 
  (find-body-id (position  0.0 (* 0.5 Ygate) 0.0)) 
  "SiO2"    "R.gate")
;----------------------------------------------------------------------
;----------------------------------------------------------------------
; Profiles:
; - EPI
(sdedr:define-constant-profile "Const.SiEpi" 
 "BoronActiveConcentration" 5e17 )
(sdedr:define-constant-profile-region  "PlaceCD.SiEpi" 
 "Const.SiEpi" "R.epi" )

; Source/Drain base line definitions
(sdedr:define-refinement-window "BaseLine.Source" "Line"  
 (position (* Xmax -1.0) 0.0 0.0)  
 (position (* Xg  -1.0)  0.0 0.0) )
(sdedr:define-refinement-window "BaseLine.Drain" "Line"  
 (position Xg   0.0 0.0)  
 (position Xmax 0.0 0.0) )

; Source/Drain implant definition
(sdedr:define-gaussian-profile "Impl.SDprof"
 "PhosphorusActiveConcentration" 
 "PeakPos" Ygate  "PeakVal" 5e20
 "ValueAtDepth" 1e18 "Depth" Ysd
 "Gauss"  "Factor" 0.4
)

; Source/Drain implants
(sdedr:define-analytical-profile-placement "Impl.Source" 
 "Impl.SDprof" "BaseLine.Source" "Positive" "NoReplace" "Eval")
(sdedr:define-analytical-profile-placement "Impl.Drain" 
 "Impl.SDprof" "BaseLine.Drain" "Positive" "NoReplace" "Eval")

;----------------------------------------------------------------------
; Meshing Strategy:
; EPI
(sdedr:define-refinement-size "Ref.SiEpi" 
  0.1   0.1
  0.1   0.1)
(sdedr:define-refinement-region "RefPlace.SiEpi" 
 "Ref.SiEpi" "R.epi" )

; Channel Multibox
(sdedr:define-refinement-window "MBWindow.Channel" 
 "Rectangle"  
 (position (* Xg -1.0)   Ysd   0.0) 
 (position        Xg     Ygate  0.0) )
(sdedr:define-multibox-size "MBSize.Channel" 
  0.05  0.01
  0.05  0.01
  1.0          1.35 )
(sdedr:define-multibox-placement "MBPlace.Channel" 
 "MBSize.Channel" "MBWindow.Channel" )
;------------------------------------------------------------------

;Build mesh
;(system:command " snmesh soifet_msh")
(sde:build-mesh "mesh" "-F tdr" "n1_msh")
;save the data to the file.

一个MOS器件的例子,sde。

器件掺杂主要分三步:定义掺杂,定义区域,结合。

网格的定义:定义网格,定义区域,结合。网格定义需要根据具体情况,完成运算精度与时间的统筹兼顾。

大佬说要经常看看运行的文件n1_des.err和n1_des.log。前者是记录语法错误的,后者是监控运行过程的。便于发现问题及时修改。

原文地址:https://www.cnblogs.com/kraken7/p/8526053.html