gmid表达式
dc仿真结束后Outputs-setup
![](https://img-blog.csdnimg.cn/img_convert/71fcc2ed80f691dd11918e9ce272976c.png)
输出名称 点击open
![](https://img-blog.csdnimg.cn/img_convert/38e163c536e81a3b15d7266686f09d7b.png)
打开计算器 Tools-Browser
![](https://img-blog.csdnimg.cn/img_convert/a8c672ffef62fa5d60d77c038ce5b747.png)
在dcdc里面找到gmoverid
![](https://img-blog.csdnimg.cn/img_convert/66771028021730671172fb38d2170397.png)
右击calculate
![](https://img-blog.csdnimg.cn/img_convert/888f16fa2fe913d418da3a629a50d6fc.png)
此时gmoverid表达式已经出现在计算器里面,
![](https://img-blog.csdnimg.cn/img_convert/4b9a23e0d6e9008960457f24a5543d6d.png)
在下图中选择Get Expression获得这个表达式,点击add添加,gmid表达式就添加好了。
![](https://img-blog.csdnimg.cn/img_convert/34950bed182f06fd4ac0b85629a8ab73.png)
ft表达式
下面添加ft表达式,ft=gm/(2πcgg)
清除刚才计算器里面的内容,同样的方法,首先在dcdc里面找到gm的值右击calculate,再在dcdc里面找到cgg右击calculate,此时计算器里面的是cgg表达式,在表达式最后面输入*6.28
![](https://img-blog.csdnimg.cn/img_convert/1a2092918d048545edde8de85f785e0c.png)
再选择计算器里面的除号即可得到ft表达式
![](https://img-blog.csdnimg.cn/img_convert/ea1344c57cd3e9d720ea589341c5df6f.png)
Get Expression,add
![](https://img-blog.csdnimg.cn/img_convert/561331dcef4b1b11fd4ae1a1d02ecaa6.png)
本征增益表达式
下面添加本征增益的表达式gmro=gm/gds
选择gm,选择gds,除号。
![](https://img-blog.csdnimg.cn/img_convert/2889758d0f6d6ba297c14bfc9a3e3476.png)
![](https://img-blog.csdnimg.cn/img_convert/070856490b2031e9b1f3123adfbf382d.png)
电流密度
id/w曲线
上述相同的方法先找到id
![](https://img-blog.csdnimg.cn/img_convert/ad67f64250bb61475c9d0c03609f49d0.png)
w在element-info文件夹里面,右击放在计算器里面,按除号,可以得到id/w的值
![](https://img-blog.csdnimg.cn/img_convert/ef2822411ba438e61daf34251be286df.png)
![](https://img-blog.csdnimg.cn/img_convert/1764b6e38ba89e046c5b2af2ef776a5d.png)
所有的公式编辑好之后,最好保存下来,这样下次用的时候直接load就行了。
画图
接下来画图,两个两个曲线画,先选gmid和ft曲线图
![](https://img-blog.csdnimg.cn/img_convert/2e26298815a01c49a9a50e3a1dd5a3f2.png)
画出来是下图这样,但是gmid曲线是以gmid为横坐标的,所以要修改一下
![](https://img-blog.csdnimg.cn/img_convert/35208295efb559414ed1f0ba8dd66ace.png)
点击坐标的vgs,把plot vs里面的vgs换成gmid
![](https://img-blog.csdnimg.cn/img_convert/de44e79a6bb7309f25bde67b7861c7a4.png)
这样就是横坐标为gmid,纵坐标为ft的曲线图。
![](https://img-blog.csdnimg.cn/img_convert/c7602bdccc80d02b30570b367b23f7d9.png)
同理可以画出gmid-gmro,以及gmid-idw曲线。
对沟道长度进行参数扫描
把所有的曲线都设置成plot
![](https://img-blog.csdnimg.cn/img_convert/160ce1ea3d53952d4561e10842c0935a.png)
ADE-Tools-参数扫描
![](https://img-blog.csdnimg.cn/img_convert/301576068c2d6c5bd9062fa5b6d00a46.png)
保存为ocn脚本,tool-save script
![](https://img-blog.csdnimg.cn/img_convert/35693ab1c3a7f9fd7e5a70140d82f894.png)
OK保存
![](https://img-blog.csdnimg.cn/img_convert/a08f1f086efc22ca45aa982a2116329d.png)
需要对脚本进行修改
![](https://img-blog.csdnimg.cn/img_convert/8d40e91eb6190bb9388f3279014305a5.png)
首先把所有plot语句删除,再添加新的窗口,定义xy曲线,三幅图像。
修改前
paramRun()
gmid = getData("NM0:gmoverid" ?resultsDir "/home/simulation/gmid/spectre/schematic/" ?result "dc-dc")
plot( gmid ?expr '( "gmid" ) )
ft = (getData("NM0:gm" ?resultsDir "/home/simulation/gmid/spectre/schematic/" ?result "dc-dc") / (getData("NM0:cgg" ?resultsDir "/home/simulation/gmid/spectre/schematic/" ?result "dc-dc") * 6.28))
plot( ft ?expr '( "ft" ) )
gmro = (getData("NM0:gm" ?resultsDir "/home/simulation/gmid/spectre/schematic/" ?result "dc-dc") / getData("NM0:gds" ?resultsDir "/home/simulation/gmid/spectre/schematic/" ?result "dc-dc"))
plot( gmro ?expr '( "gmro" ) )
IDoverW = (getData("NM0:id" ?resultsDir "/home/simulation/gmid/spectre/schematic/" ?result "dc-dc") / (pv "/NM0" "w" ?resultsDir "/home/simulation/gmid/spectre/schematic/" ?result "element-info"))
plot( IDoverW ?expr '( "IDoverW" ) )
![](https://img-blog.csdnimg.cn/img_convert/a36418a63e12c0123a339170e64a1e08.png)
修改后
paramRun()
gmid = getData("NM0:gmoverid" ?resultsDir "/home/simulation/gmid/spectre/schematic/" ?result "dc-dc")
ft = (getData("NM0:gm" ?resultsDir "/home/simulation/gmid/spectre/schematic/" ?result "dc-dc") / (getData("NM0:cgg" ?resultsDir "/home/simulation/gmid/spectre/schematic/" ?result "dc-dc") * 6.28))
gmro = (getData("NM0:gm" ?resultsDir "/home/simulation/gmid/spectre/schematic/" ?result "dc-dc") / getData("NM0:gds" ?resultsDir "/home/simulation/gmid/spectre/schematic/" ?result "dc-dc"))
IDoverW = (getData("NM0:id" ?resultsDir "/home/simulation/gmid/spectre/schematic/" ?result "dc-dc") / (pv "/NM0" "w" ?resultsDir "/home/simulation/gmid/spectre/schematic/" ?result "element-info"))
newWindow()
ocnYvsYplot(?wavex gmid ?wavey ft)
addSubwindow()
ocnYvsYplot(?wavex gmid ?wavey gmro)
addSubwindow()
ocnYvsYplot(?wavex gmid ?wavey IDoverW)
![](https://img-blog.csdnimg.cn/img_convert/178a8e06cd81094a0f7e9bbf3d107bea.png)
保存
运行ocn脚本,不需要ADE了,在icfb里面,load刚才的ocn脚本
![](https://img-blog.csdnimg.cn/img_convert/cc77e5de89f31c7d834306ac39274f69.png)
![](https://img-blog.csdnimg.cn/img_convert/85065000a92e4cfc03f8e1dfb6c69e9f.png)