Sentaurus TCAD学习之SDE

Sentaurus TCAD学习之Sde

分析IGBT例子中SDE代码

; Using DF-ISE coordinate system for structure generation
//使用DF-ISE坐标系生成结构
(sde:set-process-up-direction "+z")

;----------------------------------------------------------------------
; Structure definition (结构定义)
;----------------------------------------------------------------------;

(sdegeo:set-default-boolean "BAB")
//表示新的区域不会覆盖之前旧的区域
(sdegeo:create-polygon (list
  (position 2.0 0.0 0)
  (position 2.1 3.13 0)
  (position 2.7 3.13 0)
  (position 2.8 0.0 0)
  (position 2.0 0.0 0))
  "PolySi" "R.PolyGate")
//多边形区域画法,画一个梯形,表示多晶硅

多晶硅

(sdegeo:fillet-2d (find-vertex-id (position 2.1 3.13 0)) 0.2)
(sdegeo:fillet-2d (find-vertex-id (position 2.7 3.13 0)) 0.2)
//对棱角进行圆润化处理,在画出的多晶硅梯形下边角两处进行曲线化

边角曲线化

(sdegeo:create-polygon (list
  (position 1.98 0.00 0)
  (position 2.08 3.22 0)
  (position 2.72 3.22 0)
  (position 2.82 0.00 0)
  (position 1.98 0.00 0))
  "Oxide" "R.Gox")
/*
填充氧化物,根据之前定义的"BAB",新的区域不会覆盖之前的区域
该区域为氧化物,比之前定义的多晶硅区域稍大,起到隔离作用
*/

氧化物

(sdegeo:fillet-2d (find-vertex-id (position 2.08 3.22 0)) 0.2)
(sdegeo:fillet-2d (find-vertex-id (position 2.72 3.22 0)) 0.2)
//同样对下边角两处进行曲线化处理

氧化物边角曲线化

(sdegeo:create-polygon (list
  (position 2.00  0.02 0)
  (position 1.50  0.02 0)
  (position 1.30  0.22 0)
  (position 0.00  0.22 0)
  (position 0.00 -0.18 0)
  (position 1.30 -0.18 0)
  (position 1.50  0.00 0)
  (position 2.00  0.00 0)
  (position 2.00  0.02 0))
  "Oxide" "R.LOCOS")
//定义氧化物区域
(sdegeo:fillet-2d (find-vertex-id (position 1.3  0.22 0)) 0.15)
(sdegeo:fillet-2d (find-vertex-id (position 1.3 -0.18 0)) 0.15)
//对标记位置处进行曲线化

多晶硅与氧化物

(define xmin 0.0)
(define ymin 0.0)
(define xmax 4.8)
(define ymax 70.0)
//定义x,y方向的最小值
//定义x,y方向的最大值
(sdegeo:create-rectangle
  (position 2.8 -0.3 0.0 )  (position 3.1 0.0 0.0 ) "Oxide"  "R.Spacer" )
//定义氧化物的矩形区域
(sdegeo:create-rectangle
  (position 0.0  0.0 0.0 )  (position 2.8 -0.3 0.0 ) "PolySi"  "R.PolyCont" )
//定义多晶硅的矩形区域
(sdegeo:create-rectangle
  (position 0.0  0.0 0.0 )  (position xmax ymax 0.0 ) "Silicon" "R.Si" )
//定义硅的矩形区域

全图
局部图

(sdegeo:define-contact-set "Emitter"   4  (color:rgb 1 0 0 ) "##" )
(sdegeo:define-contact-set "Collector" 4  (color:rgb 1 0 0 ) "##" )
(sdegeo:define-contact-set "Gate"      4  (color:rgb 1 0 0 ) "##" )
//定义电极:名称,边缘厚度,颜色
(sdegeo:define-2d-contact (find-edge-id (position 3.5  0.0 0.0)) "Emitter")
(sdegeo:define-2d-contact (find-edge-id (position 3.5 ymax 0.0)) "Collector")
(sdegeo:define-2d-contact (find-edge-id (position 1.0 -0.3 0.0)) "Gate")
//在想要定义电极的地方边缘取一个点

;----------------------------------------------------------------------
; Profiles
;----------------------------------------------------------------------;
; - Substrate

(sdedr:define-constant-profile "Const.Substrate"
 "PhosphorusActiveConcentration" 1e+15 )
(sdedr:define-constant-profile-material "PlaceCD.Substrate"
 "Const.Substrate" "Silicon" )
//定义衬底的磷浓度为1*10^15,衬底材料为硅
(sdedr:define-constant-profile "Const.PolyGate"
 "PhosphorusActiveConcentration" 1e+21 )
(sdedr:define-constant-profile-material "PlaceCD.PolyGate"
 "Const.PolyGate" "PolySi" )
//定义栅的磷浓度为1*10^21,栅的材料为多晶硅

磷的浓度

(sdedr:define-refeval-window "BaseLine.pbody" "Line"
 (position 3.0 0.0 0.0)
 (position 5.0 0.0 0.0) )
//定义基准线,掺杂方式为线性掺杂
(sdedr:define-gaussian-profile "Impl.pbodyprof"
 "BoronActiveConcentration"
 "PeakPos" 0.1  "PeakVal" 1e20
 "ValueAtDepth" 1e17  "Depth" 2
 "Erf"  "Length" 0.1)
(sdedr:define-analytical-profile-placement "Impl.pbody"
 "Impl.pbodyprof" "BaseLine.pbody" "Positive" "NoReplace" "Eval")
/*
掺杂类型为高斯掺杂,掺杂元素为硼元素
掺杂浓度的最大值与基准线的距离为0.1
最大浓度是1*10^20
最小浓度是1*10^17
扩散深度为2um
横向扩散长度是0.1um
向正方向扩散
*/
(sdedr:define-refeval-window "BaseLine.nplus" "Line"
 (position 3.0 0.0 0.0)
 (position 3.7 0.0 0.0) )
//定义基准线,掺杂方式为线性掺杂
(sdedr:define-gaussian-profile "Impl.nplusprof"
 "ArsenicActiveConcentration"
 "PeakPos" 0.0  "PeakVal" 1e21
 "ValueAtDepth" 1e17  "Depth" 0.5
 "Erf"  "Length" 0.1)
(sdedr:define-analytical-profile-placement "Impl.nplus"
 "Impl.nplusprof" "BaseLine.nplus" "Positive" "NoReplace" "Eval")
 /*
掺杂类型为高斯掺杂,掺杂元素为砷元素
掺杂浓度的最大值与基准线的距离为0
最大浓度是1*10^21
最小浓度是1*10^17
扩散深度为0.5um
横向扩散长度是0.1um
向正方向扩散
*/

硼元素浓度
砷元素浓度

(sdedr:define-refeval-window "BaseLine.fieldstop" "Line"
 (position 0.0 70.0 0.0)
 (position 5.0 70.0 0.0) )
//定义基准线,掺杂方式为线性掺杂
(sdedr:define-gaussian-profile "Impl.fieldstopprof"
 "ArsenicActiveConcentration"
 "PeakPos" 0.0  "PeakVal" 1e19
 "ValueAtDepth" 1e15  "Depth" 3.0
 "Erf"  "Length" 0.1)
(sdedr:define-analytical-profile-placement "Impl.fieldstop"
 "Impl.fieldstopprof" "BaseLine.fieldstop" "Negative" "NoReplace" "Eval")
/*
掺杂类型为高斯掺杂,掺杂元素为砷元素
掺杂浓度的最大值与基准线的距离为0
最大浓度是1*10^19
最小浓度是1*10^15
扩散深度为3um
横向扩散长度是0.1um
向反方向扩散
*/
(sdedr:define-refeval-window "BaseLine.collector" "Line"
 (position 0.0 70.0 0.0)
 (position 5.0 70.0 0.0) )
//定义基准线,掺杂方式为线性掺杂
(sdedr:define-gaussian-profile "Impl.collectorprof"
 "BoronActiveConcentration"
 "PeakPos" 0.1  "PeakVal" 1e20
 "ValueAtDepth" 1e17  "Depth" 0.5
 "Erf"  "Length" 0.1)
(sdedr:define-analytical-profile-placement "Impl.collector"
 "Impl.collectorprof" "BaseLine.collector" "Negative" "NoReplace" "Eval")
/*
掺杂类型为高斯掺杂,掺杂元素为硼元素
掺杂浓度的最大值与基准线的距离为0.1
最大浓度是1*10^20
最小浓度是1*10^17
扩散深度为0.5um
横向扩散长度是0.1um
向反方向扩散
*/

砷元素浓度
硼元素浓度
;----------------------------------------------------------------------
; Meshing
;----------------------------------------------------------------------;

(define ds 1)
(sdedr:define-refinement-size "global" (/ 2.5 ds) (/ 10.0 ds) (/ 2.5 ds) 0.1 0.1 0.1 )
//在size中,三个括号和三个0.1表示Xmax Ymax Zmax Xmin Ymin Zmin
(sdedr:define-refeval-window "global" "Rectangle"  (position -1e5 -1e5 0)  (position 1e5 1e5 0) )
(sdedr:define-refinement-placement "global" "global" (list "window" "global" ) )
//list把后面的内容都当做一个元素
(sdedr:define-refinement-size "active_domain" 2.0 5.0 0.5 0.02 0.02 0.05 )
(sdedr:define-refinement-material "active_domain" "active_domain" "Silicon")
(sdedr:define-refinement-function "active_domain" "DopingConcentration" "MaxTransDiff" 1)
(sdedr:define-refinement-function "active_domain" "MaxLenInt" "R.Si" "emitter" 0.002 2 "UseRegionNames")
(sdedr:define-refinement-function "active_domain" "MaxLenInt" "R.Si" "thermo_left" 0.025 2 "UseRegionNames")
(sdedr:define-refinement-function "active_domain" "MaxLenInt" "R.Si" "thermo_right" 0.025 2 "UseRegionNames")
//Defines定义了被使用在Placements部分的精化参数和概要文件定义的集合
//Function按浓度变化;Placement施加网格策略
/*
MaxTransDiff:在元素的顶点处计算剖面的转换值的最大差值。
如果差值大于Value且边长足够大,则元素被细化。

MaxLenInt:这个函数在接口处产生精化。
*/

(sdedr:define-refeval-window "active" "Rectangle"  (position xmin ymin 0.0)  (position xmax ymax 0.0) )
(sdedr:define-refinement-size "active" 1.0 5.0 1.0 0.03 0.02 0.5)
(sdedr:define-refinement-placement "active" "active" "active")
(sdedr:define-refinement-function "active" "DopingConcentration" "MaxTransDiff" 1)

;; Trench Bottom
//沟槽底部
(sdedr:define-refeval-window "RW.TrBot" "Rectangle" (position 1.0 1.8 0.0 ) (position 3.0 4.0 0.0 ))
(sdedr:define-refinement-size "Ref.TrBot" 0.1  0.5 0.05 0.05)
(sdedr:define-refinement-function "Ref.TrBot" "DopingConcentration" "MaxTransDiff" 1)
(sdedr:define-refinement-placement "RefPlace.TrBot" "Ref.TrBot" "RW.TrBot" )

砷元素浓度
砷元素浓度
硼元素浓度
硼元素浓度
掺杂浓度
磷元素浓度

(define nlevels 10)
(define factor 1.5)
//定义nlevels为10,定义factor为1.5

(sdedr:offset-block "material" "Silicon"  "maxlevel" nlevels)
//maxlevel表示在Si中创建10层网格
(sdedr:offset-interface "region" "R.Si" "R.Gox" "hlocal" 0.0015 "factor" factor)
//hlocal表示氧化硅界面处的网格间距为1.5nm
(sdedr:offset-interface "region" "R.Gox" "R.PolyGate" "hlocal" 0.01 "factor" factor)
(sdedr:offset-interface "region" "R.Gox" "R.Si" "hlocal" 0.003 "factor" factor)
/*
定义栅氧中的网格间距,在氧化物-多晶硅界面设置为10nm
在氧化物-硅界面设置设置3nm
Factor定义网格层的网格间距按1.5倍增加
*/

网格设置

评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Eren-Yu

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值