AG体育大家好,我准备了一场live,讲述Sentaurus Tcad的入门方法和使用技巧,并且还有三个小时的直播视频,欢迎大家收听!
Sentaurus TCAD是一款半导体器件仿真软件.........具体就不展开解释了,想必搜索到这个页面的兄弟姐妹们都已经对它有了初步的了解。然而,Sentaurus TCAD(下面简称“TCAD”)的安装则是初学者遇到的第一个难题。TCAD没有Windows安装包(这不同于“silvaco”),只能在linux系统中安装和使用。对linux系统的不熟悉、TCAD安装的繁琐以及各种稀奇古怪的错误往往导致安装的失败,使初学者在最初接触TCAD的时候就非常受挫。经过博士期间几年的实践,我总结出一种比较简洁快速的安装方法,供各位参考。为了支持正版,本文不讨论TCAD的license文件的生成,关于license破解教程,建议大家去问度娘,那里会有比较详细的介绍,一般情况下不会有太大问题,我也会教大家如何验证license生成的是否是正确的。请大家支持正版(虽然正版的价格很感人.....)
你可能是微电子专业的,对linux系统比较陌生AG体育,那么,这一节我将介绍在整个安装过程中你所需要的linux知识,如果你有相关经验,可以跳过这部分。
linux系统与大家熟知的windows系统有较大的不同。首先,在我们常用的Windows中,C盘一般默认是系统盘,存放系统文件,其他的D盘、E盘、F盘等,可以用来存放个人安装的软件、资料和视频等。在我们直观的印象中,似乎他们都是独立的盘!好像我的硬盘有四五个!
然而,在linux中,所有的硬盘空间都给了一个文件夹,直观的理解,就是所有的文件都放到一个文件夹下面了,这个最牛逼的文件夹叫根目录(/)。你可能会纳闷,放到一个文件夹下面,系统文件和用户文件不就都弄混了吗?在这个文件夹下面又细分出了各种各样的文件,用来区分文件的用途。比如,/boot文件夹,是启动相关的系统文件;/bin文件夹中是系统的可执行文件;/home文件夹则是用来存储用户文件;/usr文件则是用来存储用户应用程序;/etc用来存储系统的配置文件等等。
那么,你可能又问了,用文件夹的这种方式组织文件,会不会出问题啊,比如不小心删了,不小心格式化了,不小心改名字了,不小心....。为了防止这种事情发生,linux中另外一个重要的内容就是权限管理AG体育。也就是说,你普通用户只能更改你自己的文件,系统文件,配置文件以及其他用户的文件,你可以看,但是想改,没门!有了权限管理,那么就可以保证系统关键部位不被破坏了。
此外,我们还需要了解,linux是一个多用户系统,多个用户可以同时登录并共享服务器的计算资源,例如,张三、李四、王五等登录到服务器上。那么,系统会给每一个用户建立一个个人目录,以用户名命名。不同用户的个人目录在/home下平等地存在着,例如张三的个人目录是 /home/zhang3,王五的个人目录是/home/wang5等等。每个用户都可以调用系统中的仿真软件,但是只能将仿真的相关资料存在自己的目录下,并且不能够进入其他用户的个人目录中。举个栗子,如果将根目录(/)比作为家的话,那么张三的卧室(/home/zhang3)和王五的卧室(/home/wang5)是私有的,张三只对自己的卧室有权限管理,不能进入王五的卧室。那么系统文件,包括安装的仿真软件,就好比是客厅里的水果刀,张三和王五都有权使用,但是不能私自更改(比如把水果刀给掰弯了,贴个贴画等等)。
ok,你现在理解了普通用户的权限范围了(张三,王五),那么,在普通用户之外,还有一个牛逼闪闪的用户,它叫root用户,是具有最大权限的用户。借用上个例子,root用户就好比是房东或者家长,他可以对整个家进行各种各样随心所欲改变,甚至把整个家都炸了(把系统文件删掉)。他可以查看任何人的卧室(个人文件),他可以删掉用户,修改用户密码。因此,我们在下面的安装中,将使用root账户来安装软件,以供普通用户可以登录使用。
我向大家推荐Redhat 5.5的桌面版系统,这个系统比较稳定,而且安装的时候问题比较少,几乎没有问题!因此,强烈推荐这个版本的linux。强烈推荐新手安装这个版本的linux,问题最少了!!!节约非常多的时间!!
最近,有一些同学使用比较新的电脑安装TCAD,redhat5.5无法安装,在这里,再推荐一个CentOS 7的系统,安装流程与本教程一致,细节差别请见另外一个教程(Sentaurus TCAD安装之CentOS7系统)---更新于2018-04-07
TCAD可以安装在虚拟机或者单独的服务器上。至于虚拟机的软件,在这里就不多介绍了AG体育AG体育,推荐使用vmware软件。
打开并登陆linux以后,在桌面空白处右键,选择open terminal,即可打开一个终端,linux的使用,基本都是靠终端中输入命令来实现的。因此,下面将简单介绍常用的命令,供大家参考。#号后面为注释
我们即将安装H_2013.03版本的软件,该软件的安装文件主要由以下部分构成:
程序会识别目录下的安装文件,然后选择H_2013.03(TCAD的版本号),点next!
与安装Sentaurus TCAD类似,只不过在选择时,选择scl选项:
在设定安装目录的时候,写入SCL的安装目录:一般采用/usr/synopsys/SCL
Ok,如果两个软件的安装过程中均没有报错的话, 那就完成了软件主体的安装!
首先解释一下环境变量是神马意思,所谓的环境变量其实就是一个程序所在目录的清单。通俗的来解释一下这个概念,假如说房东(管理员)在家(linux系统)中放置了一把新的水果刀(软件),如果不告诉每个用户这个水果刀在哪里,那么张三、王五根本就没办法使用这个水果刀,因为他们不知道在哪里。如果他们真的想要使用,就必须要要把家翻一遍(查找)才能找到。另一种情况,假如房东在放置水果刀的时候,给用户列了一个清单(环境变量),这个清单里写了水果刀的位置,那么每一个用户都可以很轻易的找到并使用这个水果刀(软件)。这就是环境变量的作用。假如,我们希望启动一个程序myprogram,它的目录是在/usr目录下,那我们可以按照如下方式运行它:
这个命令完整地告诉了系统你想启动的文件在哪里,系统可以找到。但是这样的效率比较低,每次运行都要把目录输入一遍,十分繁琐!如果目录非常长,那么久更麻烦了!
为了解决这个问题,我们可以将/usr目录加入到环境变量PATH中,使用命令:
PATH是系统的环境变量,每次运行某个命令时,系统会在PATH中列出的环境变量中寻找该命令,如果找到了,就运行!
环境变量配置完以后,在任何位置打开终端输入myprogram即可运行文件了,而不需要输入前面的路径名。
因此,为了让系统知道我们安装的TCAD软件的位置,我们需要修改系统的环境变量。与此同时,我们还希望每次用户登陆的时候,就已经把环境变量修改好了。因此,我们需要修改/etc/bashrc文件,这个文件修改需要使用root权限。依次运行如下命令:
每个用户每次登录时,都会先执行/etc/bashrc文件中的命令,那么就可以保证每个用户都正确配置了环境变量。
为了支持正版,本教程不涉及license文件的生成,大家可以去网上查找相关的教程。在生成license的过程中,你需要用到hostid和hostname这两个量,可以用如下命令获得:
首先,验证你的license是否是正确的,官方提供了一个验证工具,可以用如下命令:
ok,上一步license验证正确AG体育,那么接下来就应该启动license服务了!
第一种:license服务启动成功,你会看到一大串的输出,然后有一句 valid SSS feature found(如下图所示)
这说明lmgrd已经启动了,如果你现在无法启动软件(使用swb命令),那么说明你的license服务是有问题的,比较常遇到的问题是路径错误,license文件格式错误等等。那么你就需要纠正错误,然后重启license服务了,见下一小节“license服务重启”。
可能你的license没有启动成功,在你修改了相关错误(例如路径错了,名字错了等)以后,你需要重启license服务。
然后,再使用lmgrd命令启动license服务。如果你依然遇到tcp端口占用的错误,那么不必着急,等待三五分钟重试即可!端口的释放需要一定的时间!
Ok,至此为止,你已经安装好了TCAD软件,并且正确地启动了license服务!但是,如果你重启一下电脑,重新进入系统时,swb还是无法使用的, 仍然需要运行lmgrd启动license服务。为了下次启动时,license服务能够随着系统启动而开启,我们修改/etc/rc.local文件如下:
尤其要主意的是:lmgrd前面的路径不可以省略,因为在linux启动,运行上述代码时,环境变量还未配置!
到目前为止,你已经完成了所有的sentaurus TCAD软件的安装和配置,你可以在命令行中运行:
这个选择的STDB是什么呢?它是SentaurusTCAD为了方便管理仿真文件而设定的环境变量,告诉TCAD软件默认的用户目录是什么。那么怎么设置呢?在前面的环境变量设置中,最后一行是:
这个就是把STDB设置成每个用户目录下的STDB文件夹(HOME是系统自带的环境变量,代表当前用户的个人目录)。既然我们已经设置了STDB环境变量,为什么刚才还要我们选呢?这是因为在用户目录下,并没有发现STDB的文件夹。为了解决这个问题,我们在个人目录下新建一个文件夹,名为STDB:
OK,关闭软件,再次打开,就没有选择STDB目录的对话框了~以后所有的仿真project都存在STDB目录下了。
经过几年的努力,终于博士毕业,也即将进入工作岗位。博士期间从事过多年的服务器维护和仿真工作,在使用过程中,遇到过很多问题,经过摸索和网络上热心人的帮助,我逐渐把这些问题解决并且积累了很多经验,也摸索出许多便捷的仿真方法。然而,今后的工作中将不再涉及器件仿真,这些经验都将随着时间而逐渐淡化、遗忘。在此,我将这些经验总结下来,以供大家参考。时间有限,仓促难范,但是也尽我所能将各个细节写清楚,如果你发现有什么错误,希望批评指正。如果大家遇到了本文没有提到的问题,可以在留言区提问,我会不定期回答!