Sentaurus TCAD学习之Sde

  • 分析IGBT例子中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倍增加
*/

Sentaurus TCAD学习相关推荐

  1. Sentaurus TCAD学习之SVISUAL

    Sentaurus TCAD学习之SVISUAL 分析Plot_BV代码 分析Plot_BV代码 /* 符号"*"和"#"均可以表示注释, 但是注意" ...

  2. ssh 远程登录_C.4 彻底解决-新版本Sentaurus TCAD的SSH远程登录问题!!!

    前言 之前,关于使用SSH和Xserver远程访问svisual无法绘图的问题,写了一篇文章,通过cygwin的Xserver配置MIT-SHM插件的方式解决了这个问题.原文链接如下: 懒小木:C.3 ...

  3. Synopsys Sentaurus TCAD系列教程之-Tcl《3》

    Tool command language(Tcl) 3. 其它有用的Tcl命令 TCAD Sentaurus工具引入更高级的Tcl命令 3.1文件输入和输出 使用open函数打开文件: set FI ...

  4. Synopsys Sentaurus TCAD系列教程之--CMOS_180nm 解析

    CMOS_180nm 解析 #headerfset Type @Domain@ icwb filename= "CMOSInv180_lyt.mac" scale= 1e-3fse ...

  5. Synopsys Sentaurus TCAD系列教程之-Tcl《2》

    Tool command language(Tcl) 2.基础 介绍对使用TCAD sentaurus工具最有用的基本Tcl命令 (本章节中用到的所有示例,请参考上一部门<1>的内容) 2 ...

  6. Synopsys Sentaurus TCAD系列教程之-- Svisual《一》看图工具

    Svisual Svisual作为独立的模块,可以实现Inspect对于节点.plt曲线的查看,也可以实现TecplotSV的.tdr看图功能,还可以进行自动化操作. 当作看图工具使用 - 当作一维曲 ...

  7. Synopsys Sentaurus TCAD系列教程之--Sde概述

    Sde 方便处理rule check相关的问题.同时也能让使用者进一步了解器件结构.掺杂和引线等基本操作.Sde用于搭建结构,重新优化网格,提供.mesh文件供后面Sdevice仿真,主要包含以下几部 ...

  8. Synopsys Sentaurus TCAD系列教程之--Sprocess(2DGS) 解析

    2DGS 解析 math coord.ucs #读取和写入ucs(unified coordinate system统一坐标系, x在竖直方向,y在水平方向)中的文件line x location= ...

  9. Synopsys Sentaurus TCAD系列教程之--Sdevice(SmallMOS_2D3D) 解析

    Sdevice(SmallMOS_2D3D) 解析 File {* input files:Grid= "@tdr"* output files:Plot= "@tdrd ...

  10. Synopsys Sentaurus TCAD系列教程之--Svisual(SmallMOS_2D3D) 解析

    Svisual(SmallMOS_2D3D) 解析 #setdep @node|sdevice@ load_library extractset N @node|sdevice@ set COLORS ...

最新文章

  1. ssh免密登录linux服务器
  2. 氪纪2015| 虚拟与现实的距离——听听从业者的声音【中篇】
  3. ABAP 标准培训教程 BC400 学习笔记之四:ABAP 编程语言的数据类型
  4. 数据库无法保存中文的解决
  5. POJ 1986 Distance Queries(LCA)
  6. 模板:容斥优化多重方案背包
  7. module.js:549 throw err;
  8. python根据字典绘制条形图_使用 Bokeh 为你的 Python 绘图添加交互性 | Linux 中国
  9. java对象--多态的好处
  10. html5输入框点击后消除高光,请问(VR渲染)光域网的灯光怎么把“高光”去掉?...
  11. jdk17稳定版来了,jdk8还能香多久?
  12. 为什么谐振时电抗为0_44kVA/44kV变频串联谐振耐压试验装置
  13. php 通过AES加密/解密 bin2hex/hex2bin转换
  14. 前端技术文档及工具汇总
  15. 微信开放平台应用申请流程优化公告
  16. springboot接口接参注解详解 controller @Valid
  17. 实战技法 - 短线操盘 (3)
  18. OrCAD学习笔记1
  19. SIGSEGV (Segmentation fault)
  20. 关于中断的分类和优先级(优先级由高到低排序)

热门文章

  1. 485芯片RO 口收不到信号问题分析
  2. java 判断pc还是手机_Java判断验证访问是手机端还是PC电脑端
  3. 微信小程序UI组件 开发框架 实用库 经典demo
  4. python编写自动更换ip工具的代码
  5. 大屏可视化Axure效果图数据管理后台设计PSD样图HTML静态模板(共5771份,27.8G,附件中为网盘链接)
  6. 20190818 思维导图简易教程
  7. 端到端语音识别技术预研与实践
  8. 修改mysql密码后wordpress_修改数据库密码后,wordpress网站打不开
  9. SSM框架整合+案例
  10. CAD electrical简易教程(一)