
前言
在初学sentaurus的时候,仿真出错是一件太正常而且揪心的事。swb的格子变红,就表示这一步仿真出错了。

那么,怎么才能快速定位错误?
误区
很常见的一个错误是红色的“gjob exits with status * ”,其中*可能是1,也可能是是其他数字。

很多同学误认为这是某个神秘的错误,不知所措。
其实,这句话仅仅是仿真软件运行结束(exits)时返回的状态信息(status),并不代表具体的错误。在计算机的可执行程序中,例如windows的exe程序,在程序退出时,会向系统发送一个数字,用该数字告诉系统退出时的状态。一般情况,返回0,表示程序运行正常,返回大于0的数,表示发生错误。
在sentaurus中也是如此,大家可以观察node内.job文件的最后一行,如果仿真顺利完成:
gjob exits with status 0
如果发生错误,就会是其他数字。
注:也可能是gsub,不同的进程而已。
程序运行过程
一般情况下,一个project的一个node的运行顺序如下
- 预处理(preprocess),检查swb变量定义和语法、生成各个node的仿真文件;
- 仿真工具运行语法检查,检查语法错误;
- 仿真工具开始逐条运行;
- 仿真结束。
不同阶段的错误会以不同的方式呈现。
找错误
运行结束后,会在node文件下生成多个文件,用于指示运行状态,请大家在下述文件中寻找错误的线索:
- 预处理错误
在需要运行node上运行preprocess(鼠标右键,或者ctrl+p键),弹出preprocess的窗口,如果最后出现STATUS:OK,表示预处理正常,否则显示错误。

- .out文件,仿真工具运行(指sdevice、sprocess等工具)后的输出文件,指示在程序运行过程中发生的错误或者不收敛的情况;


- .err文件,专门用来指示错误的文件,如果为空,再去其他文件中找线索;
- .log文件,仿真工具运行的日志文件,与.out文件类似,但是包含各条命令的运行输出(在sde中),在sde中找.log或者.out文件即可,会显示运行错误;
- .job文件,指示仿真工程的信息、仿真工具的运行状态,涉及仿真进程启动和退出的错误在这里显示;
1、大家好,我准备了一场live,讲述Sentaurus TCAD的入门方法和使用技巧,欢迎收听!
如何快速入门Sentaurus TCAD半导体器件仿真www.zhihu.com
2、欢迎关注公众号“半导体器件”,微信搜索SentaurusTCAD(中间无空格),定期发布器件设计和仿真技巧,大家一起交流学习;
3、欢迎关注知乎专栏:
Sentaurus TCAD 数值模拟zhuanlan.zhihu.com
知乎原创,未经允许,请勿转载