目录
- 一、transform指令简介
- 二、transform指令的实现
- 1.cut指令
- 2.flip指令
- 3.rotate指令
- 4.stretch指令
- 5.translate指令
- 6.reflect指令
- 三、transform指令示例
一、transform指令简介
在Sentaurus中,如果需要对器件进行翻转、平移等操作,可以通过transform指令实现。transform指令可实现Reflection(镜像)、
Stretch(拉伸)、Rotation(旋转)、Translation(平移)、Cut(裁剪)等操作。
(1)Reflection操作可生成沿某一平面的镜面映射器件。
(2)Stretch可对器件的某一位置进行拉伸,使其拉伸指定长度。拉伸区域中的现有刻度将按拉伸量平移。
(3)Rotation可使器件沿某一轴旋转指定角度。应用变换旋转时,刻度也会旋转,并在x刻度、y刻度和z刻度之间正确转换。
(4)Translation指令可对器件沿x、y、z方向进行平移。
(5)Cut可使器件沿指定区域进行裁剪。
(6)flip可使器件进行翻转
二、transform指令的实现
在sentaurus Sprocess的手册中有对transform command的具体描述,实现代码如下。
1.cut指令
transform
cut [Adaptive] [location=<n>[<m>|<cm>|<um>|<nm>]
(left | right | front | back | up | down)]
[max= {
<n>[<m>|<cm>|<um>|<nm>]
<n>[<m>|<cm>|<um>|<nm>]
<n>[<m>|<cm>|<um>|<nm>]}
min= {
<n>[<m>|<cm>|<um>|<nm>]
<n>[<m>|<cm>|<um>|<nm>]
<n>[<m>|<cm>|<um>|<nm>]}]
[mesh.align] [remesh] |
cut指令有两种确定坐标的方式,一种是location,另一种是通过max和min确定切割范围。
使用location切割时需在(left | right | front | back | up | down)中选择一个,以在给出的坐标处指定一个轴对齐进行切割。指定up或者down的位置是x坐标;指定left或者right的位置是y坐标;指定front或者back的位置是z坐标。切除部分为指定位置的上下左右前后方会被切除。 location中不能使用带有最大和最小参数的位置。
使用max和min确定切割范围时,只需给出要留下区域的最大最小位置坐标即可。
2.flip指令
transform
flip [Adaptive] [location=<n>][<m>|<cm>|<um>|<nm>] |
flip指令可对器件进行翻转,在3D仿真中,flip指令沿z方向对器件进行翻转,翻转位置默认为器件的中间。
3.rotate指令
transfrom
rotate [Adaptive] [angle=<n> axis= "X" | "Y" | "Z"] |
rotate指令可对器件沿某一轴翻转指定角度。
4.stretch指令
transfrom
stretch [Adaptive] (left | right | front | back | up | down)
[length=<n>][<m>|<cm>|<um>|<nm>]
[location=<n>][<m>|<cm>|<um>|<nm>] [remesh] |
stretch可使器件指定位置拉伸指定长度。
5.translate指令
transfrom
translate= {
<n>[<m>|<cm>|<um>|<nm>]
<n>[<m>|<cm>|<um>|<nm>]
<n>[<m>|<cm>|<um>|<nm>]}
translate指令可使器件平移指定坐标。
6.reflect指令
transform
reflect [Adaptive] [keep.original] [merge.contacts]
(left | right | front | back | up | down) |
(ymin | ymax | zmin | zmax) |
reflect 指令生成镜像的器件,并通过keep.original选择是否要保存原有结构。
三、transform指令示例
生成一个厚度为3.5um的Silicon Substrate,在其上淀积厚度为0.2um的氧化层和0.6um的铝。此时Si表面的坐标为0,底部坐标是-3.5,整个器件表面的坐标为0.2+0.6=0.8um
1.对上述器件进行切割操作
transform cut min= {-0.4 0 0} max= {0.8 10 10}
指切割留下z从-0.8至0.4,x和y从0到10um
2.对上述器件进行翻转操作
transform flip location=[expr 0.5*($Tepi+0.2+0.6)]或
transform flip
以上两条语句均可实现对器件沿中心点的翻转,上述location计算了器件的中心点。
3.对上述器件进行平移操作
transform translate= {0.8 0 0}
前面提到器件的顶部为0.8um,上述语句将整个器件沿z轴向下平移了0.8um
4.对上述器件进行镜像操作
transform reflect down keep.original
将器件向下镜像,并保留原有部分。