1、 第二篇 半导体工艺及器件仿真软件Silvaco操作指南 主要介绍了半导体器件及工艺仿真软件Silvaco的基本使用。书中通过例程引导学习工艺仿真模块Athena和器件仿真模块Atlas,通过这两部分的学习可以使学习人员深入了解半导体物理的基本知识,半导体工艺的流程,以及晶体管原理的基本原理,设计过程,器件的特性。对于学习集成电路的制备及后道工序有一定的帮助。 第一章 SILVACO软件介绍 25 1.1程序启动 25 1.2 选择一个应用程序例子 26 1.3 工艺模拟 28 1.3.1 运行一次模拟 28 1.3.2 渐进学习模拟 28 1.3.3 绘制结构 28
2、 1.3.4 使用Tonyplot进行绘图 29 1.3.5 修正绘图的外观 29 1.3.6 缩放及在图上进行平移 30 1.3.7 打印图形 31 1.4 使用History功能 31 1.5 明确存贮状态 32 1.6创建用于比较的两个结构文件 32 1.6.1 存贮文件创建 32 1.6.2 文件交叠 33 1.7 运行MOS工艺程序的第二部分 35 1.7.1 `Stop At' 功能 35 1.7.2 使用Tonyplot用于2-D结构 36 1.7.3 使用Tonyplot来制备一轮廓图 37 1.7.4 产生交互式图例 38 1.8 工艺参数的抽取
3、 39 1.8.1 源漏结深 40 1.8.2 器件阈值电压 40 1.8.3 电导及偏压曲线 40 1.8.4 一些薄层电阻 42 1.8.5 沟道表面掺杂浓度 42 1.9 器件模拟 44 1.9.1 器件模拟界面工艺 44 1.9.2 建立器件模拟 44 1.9.3 执行器件模拟 45 1.9.4 抽取器件参数 45 第二章 电阻仿真及阻值抽取 46 第三章 扩散二极管仿真 56 2.1 硼扩散 56 2.2 进行mesh的实验 61 2.3 绘制杂质掺杂轮廓曲线 62 2.4 查看抽取结果 63 第四章 NMOS电学特性仿真 65 3.1 NMOS例
4、子加载 65 3.2 Tonyplot操作 66 3.3 查看电学仿真结果 70 第五章 工艺流程的横断面观察 73 4.1初始化衬底 73 4.2 氧化层屏蔽 73 4.3 NWELL 注入 74 4.4 PWELL 注入 74 4.5 场氧化层生长 75 4.6 阱推进 76 第一章 Silvaco软件介绍 本章将介绍下面两个VWF(虚拟wafer制备)交互工具的基本使用: · Deckbuild:VWF运行时控制应用程序。这是唯一一个从系统命令行由用户启动的程序。 · Tonyplot:VWF可视化应用程序。 VWF交互工具还包括版图到工艺的界面程序
5、MaskViews, 器件原型及编辑程序 DevEdit,局部优化程序Optimizer 以及统计分析的SPAYN工具。但本章不介绍这部分内容。VWF核心工具是以下两个仿真器: · Athena, Silvaco的高级一维和二维工艺仿真器。 · Atlas, Silvaco的通用及标准组件的一,二,三级器件仿真器。 VWF核心工具还包括器件特性的UTMOS应用及SmartSpice电路仿真。 本章将学习: 1. 使用 Athena进行一个简单LDD MOS器件仿真和相关参数的抽取(如栅氧化层厚)。 2. 使用Atlas进行LDD MOS器件仿真,产生一个Id/Vgs 曲线并
6、从这条曲线中进行器件参数Vt,Beta和Theta 的抽取。 1.1程序启动 要启动Deckbuild程序,在系统命令行中输入 deckbuild & 几秒钟后Deckbuild窗口显示出来。在Deckbuild启动后,你会看到如下的窗口(版本及目录名可能不相同): Deckbuild程序窗口组成如下: 1. 上面的文本窗口区用来保持仿真器的输入。 2. 下面的tty 区显示仿真器的输出。 Athena 仿真是缺省启动的。你会看到,在这个区中有一短的Athena文件头输出,指出你可用的许可产品。之后跟随Athena提示符。 ATHENA> 3. 在窗口上部是软
7、件控制菜单的集合。 4. 在文本区及tty区之前是仿真器控制按钮的集合。 下一步是创建一个设计,可以从草图创建,或者选择一个应用例子进行修改。输入的程序显示在上面的文本区中,而且执行时使用仿真控制按钮就会它传到下面的tty区。 1.2 选择一个应用程序例子 Deckbuild 包括大量的仿真例子可以用于仿真。这个练习使用其中之一。当Deckbuild启动后,examples menu会被激活。在 Deckbuild的`Main Control'菜单有一个选择项称为`Examples ...' 如下显示: 可移动鼠标到`Main Control'上,按下鼠标右键。在按下鼠标右键时
8、main control 菜单显示出来。当鼠标右键按下后,移动光标选择`Examples ...'菜单选项。然后,放开鼠标。几秒钟内例子目录的窗口就会显示出来,如下图。 这个练习使用例子中的MOS1目录。如果你正在运行Deckbuild,你可以双击选择MOS1目录或从 `Section' 菜单中选择它。 例子是MOS2,称为`mos1ex02.in'.你可以通过鼠标或使用 `Sub Section'菜单选择它。描述这个例子的文本会显示出来,应该花几分钟来阅读例子文档。点击`Load Example'按钮来加载输入文件到Deckbuild的文本编辑区,同时也把这个例子拷贝到你的当前工作
9、目录。 1.3 工艺模拟 这个练习主要进行一个LDD MOS晶体管的仿真。主要有以下练习: 1. 运行一次模拟 2. 创建两个结构文件用于比较 3. 运行MOS工艺模拟的前半部分 4. 产生交互式图例 5. 抽取一些工艺参数 1.3.1 运行一次模拟 可以通过使用在Deckbuild文本区及tty区的实时控制按钮来交互式运行模拟。控制按钮如下所示: 通过使用这个控制面板,可以使用以下方法来运行模拟: 1. next: `Step at a time', 交互式模拟控制 2. stop: 运行到一个stop点, (参考以后的练习。 3. run
10、 使用控制面板中的Run来运行整个输入的设计(deck). 1.3.2 渐进学习模拟 开始时,LDD MOS器件将一步一步地仿真。这样允许在进行时可以有交互式检查。可以使用history机构,向后跟踪改正设计中的错误。在最初的仿真输入设计时,这种交互式一次一步的执行方法可以得到仿真更为精细的控制,且在设计中会更早地检测到错误,也是输入设计程序所推荐的。 要一步一次地执行,从Deckbuild控制面板中选择`next'按钮。这个按钮每一次会从文本区发送一个单独的输入设计行到当前运行的模拟器。在下面的tyy 的Deckbuild区的模拟器提示符上显示了输入的设计行。 在文本编辑区的
11、光标从上一行向下移动,而且在控制面板上显示的当前行数会更新(标志是`Line')。使用 `next' 按钮, 很可能要移动到模拟器前,而这些步骤会花费一些时间去执行。模拟器会试图`catchup' 行数,之后等待下一个模拟命令被发送。模拟器正在执行的行总是反色的显示。 这一阶段模拟将会连到栅氧化层步gate oxidation step (line 47)。gate oxidation step 已经简化为一个单独的扩散步,之后紧跟一个参数抽取行来抽取氧化层厚度: extract name="gateox" thickness oxide mat.occno=1 x.val=0.05
12、 抽取命令是Deckbuild的一个强力工具,允许在仿真进确定器件的各种特性。extract 语句确定了栅氧化层厚度。本练习中后面会有高级的抽取工具的例子,其特征会详细解释。 进行仿真直到gate oxide thickness抽取行通过(line 50). 1.3.3 绘制结构 当工艺模拟完成了栅氧化层厚度抽取后,点击文本区的某一处(Deckbuild上部)。这会取消报告输入行及光标位置的选定。光标符号显示为一个单独的三角形。 Note:不选择文本是很重要的,因为在Tonyplot启动时,它会试图解释任何选定文本作为一个文件名,并在读它时产生错误信息。 为了运行Tonypl
13、ot, 使用Deckbuild中的 `Tools' 下拉菜单下的`Plot' 项中的`Plot Structure'。 这将导致Deckbuild启动Tonyplot,加载当前模拟的结构并绘制它。Deckbuild也将显示它正在启动Tonyplot的情况,如信息为 `Plotting ...'显示在tty区的右下角。一旦Tonyplot启动,它会显示一个 `Welcome'窗口,可通过选择OK来确认,且模型结构会显示出来。 1.3.4 使用Tonyplot进行绘图 Tonyplot显示一掺杂的剖面材料结构。尽管这只是二维的工艺模拟,到目前为止结构仍然是完全平面的。Athena 模
14、型器以一维模式自动运行来节省CPU 时间,并直到结构是非平面的。 Tonyplot绘图如下图: 1.3.5 修正绘图的外观 为开始修正绘图的外观,需要选择`Plot'下的`Display': Display窗口的显示: 这个窗口包含各项控制图的外观的选项。包括 · 在滚动栏中有按名字排列的掺杂种类或所列的绘图功能。为绘制一个种类/功能,简单地从列表中选择,`Phosphorus'族在最上面。 · 格点是否在图上显示. · 是否在不同区域及材料之间的界面使用线和/或不同的颜色用于不同的区域 · 图形在数据点和/或有连接的数据点是否有符号显示. 当点
15、击`Apply' 按钮后,在显示窗中做的变化就反映在绘图中。`Reset' 按钮将对状态进行重新设定控制。完成时可以使用`Dismiss'按钮来去除窗口。 1.3.6 缩放及在图上进行平移 图上细小的区域可以通过缩放来进行检察。使用Tonyplot可选择一个矩形来进行。比如下面的图形就放大显示了氧化层中的掺杂浓度: 在缩放了图上的一个区域后,在窗口上的左上角显示一个zoom/pan box。八个方向箭头的任何一个都可以平移图形。若要返回原来样子,选择钻石样的在方框中间的标志即可。 1.3.7 打印图形 点击`Print'按钮送一个硬拷贝直接到你的缺省打印机。你的VWF系统管理器可
16、以告诉你在哪里打印。 1.4 使用History功能 Deckbuild的history 功能强有力,允许在交互模拟进行中改正进行中的变化而不必再次从草图到模拟。这个工具允许输入设计向后移动,可通过前面的一个模拟命令行及`initializing' 模拟器回到那一点。 在完成模拟后,状态文件自动存到当前工作目录。有意义的模拟步骤是一些器件的结构或掺杂浓度,比如,注入,刻蚀等的仿真。无意义的步骤是一些简单地询问模型器的信息,比如写结构文件或抽取参数。history 文件命名为`.historynn.str',此处 nn是一个序号,并存贮为一个标准结构文件。在 Athena 执行时,你可
17、能看到在ATHENA>命令行上的save命令,如: struct outfile=.history09.str 只要自创建历史文件后命令行没有添加,Deckbuild将记住哪个文件与每一输入设计行配合。 再次初始化模拟器到前面模拟的`Well Drive'步,双击或三次点击 diffusion 行的`Well Drive'. 使其如下亮显: 当这行文本亮显后,在左击Deckbuild 控制面板下的`init' 按钮。这将重置模拟行位置为这一Well Drive扩散步的结束,允许你作一修改或变化下面及再模拟。改变Well Drive时间从 220 到200,新的一行将如下:
18、 diffus time=200 temp=1200 nitro press=1 `next'按钮应该可以使用来模拟新的工艺流程。继续这个练习,将再次继续仿真直到gate oxidation阶段. 1.5 明确存贮状态 `init'按钮允许直接移到设计中的前面某一行。要使用这个re-initialization 特征,必须保存一个标准结构文件在有兴趣的行上,或者作为一个history file 或作为一个用户定义标准结构文件保存,在模拟过程中可以使用下面的命令: struct outfile=bpsg_dep.str (标准结构文件应使用`.str' 作为文件扩展名。)
19、比如在一个扩散或Monte Carlo模拟步骤,推荐使用struct 命令。当history files 在模拟中保存时,允许自动再初始化后到一个特殊的步骤,它们是瞬态的,且会失去或变的无效。依赖于re-initialize 使用的机构: 1. 使用标准结构文件。 2. 使用历史文件。 `init' 按钮是不相同的。初始化一保存的标准结构文件,保存结构文件名应该在文本编辑窗中选定 。比如,下面的图形显示文件`vtadjust.str' 就是在文本编辑窗中。 在此处选择 `init'按钮将导致模拟器被再次初始化到文件被存的此点。而且,在输入文件中的当前的执行点,将被设定到选定的
20、文件点的后面。此行 init infile=vtadjust.str 可以在tty 区中看到, 是当init按钮选定后的执行命令。 使用历史文件的Re-initialization是在 History section中. 使用明确用户Standard Structure file保存功能,我们可以调查Tonyplot的允许在同一工艺流程中两个不同的点的比较。 1.6创建用于比较的两个结构文件 1.6.1 存贮文件创建 在这部分中将使用Tonyplot创建两个结构文件用于比较。对于这个例子,调整注入工艺步骤前后的Vt结构文件进行比较。我们将通过启动输入设计来开始。我们不必再
21、次做设计的完全模拟到 gate oxidation 工艺步(在一个更为现实的模型中,可能花更长的一段时间),所以我们将在做修改之前,从history到初始化到此点,就是gate oxidation 之前。选择下面的文本并按`init'来再次初始化到牺牲的氧化层带处,如下所示: 现在我们处在修改输入设计的位置是在此点之后。下面的两条语句指明在Vt调整来注入的前后存贮两个Standard Structure files: · struct outf=gateoxide.str · struct outf=vtimplant.str 可以通过在正确的行上直接输入到文本编辑窗中:
22、 现在这次模拟可以继续直到在poly沉积前的这行。这样将模型两个附加的行,从而在牺牲的氧化带之后启动。为了这样做,选择next 按钮几次直到下面一行: struct outf=vtimplant.str 被执行。 在此处,两个Standard Structure files被存到你当前的工作目录,名字如下: · gateoxide.str · vtimplant.str 1.6.2 文件交叠 两个 structure files存贮后,它们可以被加载到Tonyplot中并被交叠以进行比较。 Tonyplot 允许达128 图加载到一个进程。这些图中的任何一个均可
23、轻易的交叠。若加载文件到Tonyplot,从`File'中下拉菜单中选择`Load Structure ...' 项。这将创建一个可能被加载的文件菜单: 如果一直跟着练习,两个文件(gateoxide.str and vtimplant.str) 应该存在你的当前目录中,且显示可能被加载进Tonyplot 中文件中。显示在Tonyplot屏中的每一个图均可选择。如果一个图被选定,将会被一个的白色框围绕,如下图所示: 图的选定及取消可通过点击鼠标的中间键来控制。在此阶段,你会试图选定及取消图,作为一个简单的练习。现在交叠两个图: · 选定两个图。 · 然后选择Tonypl
24、ot的`View'菜单下的`Make overlay'项. 在此之后,第三个交叠的图会出现。 1.7 运行MOS工艺程序的第二部分 在观察完栅氧化步骤后,就可以仿真到输入文件的最后一部分。工艺模拟的后半部分将花费更多的CPU时间,在多晶硅刻蚀后结构变为非平面时。在工艺流程中Athena 会自动的转换到2-D 模拟方式。这一次不再用 `next' 按钮,我们用stop功能来使模拟到兴趣点。 1.7.1 `Stop At' 功能 stop定义了命令流中的一个位置,此处模拟器会停止。如果run 按钮或cont 按钮被选定,模拟器将执行下去到stop点并等待。在Deckbuild
25、文本编辑区,选定/亮显几个你想中断的行的字符,在此处的输入行中aluminum 选定了。 从模拟器面板中选择`stop'按钮会在这行设定一个停止。`stop:' 行将在面板上显示也会更新来表明相应的行号。一个停止点可通过`clear'按钮清除。 既然一个stop点已经设定了,选择`cont'按钮。当模拟器运行时你应查看一下Athena执行的命令及产生的信息。 这将使得Deckbuild发送给Athena 命令行来预设stop点,之后在此步骤前暂停模拟。按 next 按钮几次以确保模拟器在定义了stop点后会直接包括金属刻蚀步骤。在poly 刻蚀点,结构为非平面。注意模拟现在要
26、做更多的工作,工艺显著地变慢。这里的命令对工艺工程师而言更直接和直觉,下面的几行做一些解释: depo poly thick=0.2 divi=10 这个命令定义了沉积多晶硅为0.2um厚,且在此厚度中包括10个格点层。 etch poly left p1.x=0.35 这个命令定义多晶硅在X方向上的位置,从这里被向左去除。这个命令还定义了晶体管一半的长度,将反映右侧的轴来制备整个器件。 method fermi compress 这个命令打开了基本物理模型,用于氧化及扩散步骤。所有下面的步骤会使用这些模型。(这些模型对在任何情况下对Athena 都是缺省的,且仅在本例
27、中用于解释。请见Athena 参考手册) 在next命令后,仿真到达所定义的点,并且Deckbuild 窗看上去如下: 1.7.2 使用Tonyplot用于2-D结构 从Deckbuild启动Tonyplot使用当前结构。同一维结构时一样,如取消任何一个选定的文本,并且用Tools中的Plot项。一旦Tonyplot被激活,将缺省地显示2-D的工艺模拟材料结构。 Tonyplot在二维结构中有观察杂质浓度的方法: · 杂质或溶剂的二维轮廓线。这是在Tonyplot 被激活时从一个二维结构中缺省产生的。更详细的资料可参见contour plots. · 杂质或溶剂的
28、一维的轮廓在结构中沿一条线。可见cutline plots. 这个练习中,净掺杂图将首先被定义,之后在轮廓线上的一些轮廓线会被研究。 1.7.3 使用Tonyplot来制备一轮廓图 要创建一轮廓图,从Tonyplot`Plot'下拉菜单中选择`Display'项。这个行为将激活2-D 显示控制弹出窗,如下所示: 在这个弹出窗中在按Apply前选择下列图标: 确定绘图范围。为缺省使能。 用以不同着色绘制材料,这是缺省的。 显示净掺杂的轮廓。 绘制器件的结. 再次在图标上点击鼠标左键。在`Define'菜单中选择`Contours'菜单,如下所示: 这将
29、激活轮廓控制弹出窗,如下所示: 如上图所示,轮廓将只显示硅材料区域(在材料列表上选择)且使用着色配置`Rainbow 30'来画轮廓。在轮廓定义完成后,按`Apply'。 1.7.4 产生交互式图例 当显示了二维轮廓图,可以通过器件产生任何沿一条线的一维轮廓一个掺杂的数据。作为一个例子,我们通过LDD掺杂的磷看一下水平掺杂轮廓。若如此做,可从Tonyplot中的Tools下拉菜单中选择`Cutline'项。这将创建图例窗口,如下显示: 从弹出的窗口中选择垂直的选项,然后用鼠标画一垂直线到两维的轮廓图,如下所示: 这会形成第二个绘图窗,来显示一维掺杂轮廓。在cutl
30、ine控制弹出窗中,选 `Shift position...'按钮,之后点击水平箭头。这样就形成了cutline围绕轮廓图被移动到感兴趣的精确位置。Cutline只会沿被选择的轮廓图移动。 1.8 工艺参数的抽取 LDD MOS 晶体管的工艺模拟,在此阶段就完成了。在继续进行器件模拟之前,使用Deckbuild的extract功能把一些工艺参数抽取出来了。因为extract是VWF的核心部分,在参数优化及其它先进特征中均可找到。 器件参数的抽取包括在器件模拟的抽取部分。在继续进行参数抽取前,需要想一下模拟的结构,本例中参数有以下几个: 1. source/drain 结深
31、 2. 器件阈值电压 3. 方块电阻 4. 沟道表面的掺杂浓度 1.8.1 源漏结深 本例中第一个抽取的参数是源漏结深。为正确抽取结深,需要下列信息: · 指定名字给抽取参数。本例中为`nxj'. · 要抽取的参数名字,本例中为结深,名字是`xj'. · 包含结的材料。本例中,材料是Silicon。更复杂的模拟中,可能要创建不同材料的堆层结构,每一个均包括结。 · 已经说明我们对硅材料的结有兴趣,我们,总之,必须说明我们对哪些堆层感兴趣。对于此种结构,只有一个硅层,且指定层发生数是可选的。. · 结深Xj会从源/漏区体内到区边的0变化。为抽取正确的结党值,必须使用
32、在源/漏区体内的一个点。本例中,使用在源/漏区内距 0.1 um远。可以上图看到,这个值会产生源/漏区的结深。 · 与堆材料的位置相似,在更复杂的结构中,在材料层中可能超过一个结。比如,在N衬底上的一个P阱中的一个n+ 源/漏区, 在通过源漏区处,有两个结。本结构中,仅有一个结。指定结的数量或本例中发生的是可选。 结深的抽取语句如下(在一行中): extract name="nxj" xj silicon mat.occno=1 x.val=0.1 junc.occno=1 当抽取执行这条语句时,它显示的计算结深值: nxj=0.0987025 um from top of
33、 first Silicon layer X.val=0.1 这个信息也写入你当前工作目录的文件 `results.final'中。在模拟完成后,你可以通过简单的打印`results.final文件来回顾一下抽取值。 1.8.2 器件阈值电压 在不严格的计算中,一维阈值电压可以轻易地从定义的结构中抽取。对于这个抽取语句,我们需要说明: · 指定抽取参数名为`n1dvt':N类型,一维阈值电压。 · 参数名将被抽取。本例中阈值电压,参数为`1dvt'。 · 器件类型,本例中为n-type transistor. · 偏压(`vb') 被设定为0V. · 捕获电压,Q
34、ss, 设定为1e10. · 对于阈值电压,我们必须指定一个位于器件沟道内的点。这里,在模拟器件的右手边处的一点被选定。(x=0.49). 使用阈值电压的抽取语句是: extract name="n1dvt" 1dvt ntype vb=0.0 qss=1e10 x.val=0.49 语句产生一个结果 n1dvt=0.671481 V X.val=0.49 也保存在`results.final'文件中. 1.8.3 电导及偏压曲线 下一抽取例子是电导及偏压曲线。本例更多地涉及了前面两项,它要示两条抽取语句:第一条是建立偏压条件,第二条是抽取电导曲线。当启动抽取时,
35、要求多条抽取语句,抽取系统必须告诉你没有完成,而且更多的信息需要提供。可以通过一个start, continue 和 done机构取得: extract start ... extract cont ... extract cont ... extract done ... 按要求,一些`extract cont'语句需要使用,本例中,为0。 多晶的电导是在一维线上通过栅经电压从0到2V进行抽取。第一个抽取语句定义了多晶上的偏压条件及抽取开始语句。我们必须在一行上选择多晶硅栅材料, (x=0.45)且使用偏压条件从0到2V,阶进为 0.2V: extract start m
36、aterial="Polysilicon" mat.occno=1 \ bias=0.0 bias.step=0.2 bias.stop=2 x.val=0.45 注意在行末使用连续字符(`\'),从而允许语句超过一行。 一旦偏压条件被指定,电导曲线可以被抽取。不象前面两个例子,只抽取一个单个的值,比如,结深,这里我们抽取一条值的曲线。指定抽取一条曲线的语法是 curve(x-axis, y-axis) 这里的 x-axis指定所加的偏压,而y-axis是一维 n-type 电导,指定为 1dn.电导。然而我们必须通过指定材料来限制所使用的电导,本例中为硅。在一通常结构中,可
37、能超过一层的硅,使得我们的目的更明确。我们可以规定我们对材料硅的第一发生事件有兴趣,且器件中硅的第一区域使用`mat.occno=1 and `region.occno=1'. 我们希望抽取的曲线的规格是: curve(bias, 1dn.conduct material="Silicon" mat.occno=1 region.occno=1) 注意,因为在这个结构中仅有一个Silicon区,这可能被简化为 curve(bias, 1dn.conduct material="Silicon") 在抽取一个值时,如Vt, 抽取系统在tty区显示了值,并登记值到文件中`resul
38、ts.final',但是,在抽取一条曲线时,用户必须指定曲线在哪里保存,并使用`outfile=value' 作为抽取语句的一部分。对于电导曲线,抽取曲线保存在文件`extract.dat'.最后的电导曲线抽取语句是: extract done name="sheet cond v bias" curve(bias,1dn.conduct material="Silicon" mat.occno=1 region.occno=1) outfile="extract.dat" 电导曲线通过选择`outfile' 并激发Tonyplot来绘制。 1.8.4 一些薄层电阻 1. n
39、 源/漏薄层电阻 n++ source/drain 的电阻抽取与结深的抽取语句相似: · 指定名字给抽取参数。在本例中,参数命名为 `n++ sheet rho'. · 要抽取的参数名字被指定。对于结深,我们用`xj' ,而薄片电阻用`sheet.res'. · 包括N++区的材料名字。此处是Silicon. · 要清楚我们有正确的材料层,我们可以指定材料的发生数及区的发生数。因为只有一个硅层在结构中,这不需在本例中给出这个信息。然后,结构多时要求这个信息。 · 最后,我们必须告诉抽取系统n++ 区的位置,并给出位置点(这里我们取x=0.05). 薄片电阻的抽取语
40、句是: extract name="n++ sheet rho" sheet.res material="Silicon" mat.occno=1 x.val=0.05 region.occno=1 当抽取执行这条语句时,它将显示所计算的薄片电阻的值: n++ sheet rho=39.9388 ohm/square X.val=0.05 这个信息也写进你当前工作目录的文件`results.final'中。 2. LDD在间隔层下的薄片电阻 为抽取氧化层下薄片电阻,我们简单地移动兴趣点到间隔层下。可参考 structure simulated ,值0.3是合理的。我们命名
41、抽取电阻为`ldd sheet rho': extract name="ldd sheet rho" sheet.res material="Silicon" mat.occno=1 x.val=0.3 region.occno=1 抽取值在执行后显示为: ldd sheet rho=2771.32 ohm/square X.val=0.3 1.8.5 沟道表面掺杂浓度 最后的抽取参数是沟道的净掺杂表面杂质浓度。在本例中,我们指定结深`xj'作为抽取目标,而薄处电阻指定为 `sheet.res'.对于表面浓度,我们必须指定`surf.conc'作为抽取目标,但它也必须增加杂质
42、的名字: `impurity="Net Doping"'. 另外,在沟道内的一个点必须给定,位置为`x.val=0.45'.净掺杂沟道表面浓度的全抽取语句是: extract name="chan surf conc" surf.conc impurity="Net Doping" material="Silicon" mat.occno=1 x.val=0.45 抽取沟道表面浓度在执行后显示为: chan surf conc=2.78719e+16 atoms/cm3 X.val=0.45 这也写进文件`results.final'中。 1.9 器件模拟 在练习中的
43、这个阶段,LDD MOS晶体管的过程模拟已经完成了,现在可以移到器件模拟处。本例中一个简单的Id/Vgs 曲线,Vds为3.3V的晶体管进行模拟。在模拟完成后,抽取相关的器件参数 Vt,Beta及Theta。 1.9.1 器件模拟界面工艺 按对称考虑,工艺模拟是在器件的一半上。对于器件模拟整个器件需要简单的右侧结构的反映,比如以栅为中心对称的轴。对称轴的探索是极普通的使用方法,可减少相应的计算时间。考虑这些, Athena 提供了`structure'语句,用来构建所使用的整个结构。 在这个例子中,结构必须是它的右手侧: structure mirror right 对于整个MO
44、S器件,源,栅,漏及衬底电极可以使用电极语句定义,其中包括材料 Polysilicon 和Aluminum: electrode name=gate x=0.5 y=0.1 electrode name=source x=0.1 electrode name=drain x=0.9 electrode name=substrate backside 本例中把输入文件保存为`mos1ex02_0.str'.如果你正在模拟结构,同时阅读练习,你应该模拟,使用Tonyplot 绘图显示应如下所示: 最后自动界面语句是, go atlas 导致Athena 退出,而At
45、las启动Athena定义的最后的结构文件。 1.9.2 建立器件模拟 器件模拟的第一个任务是执行通用的Atlas 设立.在LDD MOSFET的例子中,这些设置是: 1. Atlas 使用的通用物理模拟的定义,本例中,通用模拟是: o 使用通用目的的迁移率模型,包括浓度,温度,并联及反向的场关系。这个模型在Atlas 中命名为`cvt'. o 使用SRH 复合模型 (`srh'). o 只需要两种载流子电子和空穴的解(`numcarr=2'). Atlas有能力解达6种`carriers'. 除此之处,Deckbuild 的tty区的状态信息的显示是通过虚拟pseu
46、do-model模型`print'使能的。 可使用`models'来选取: `models cvt srh print numcarr=2' 2. 定义栅接触到n型的多晶硅:`contact name=gate n.poly'. 这定义了与栅配合的功函数。 3. 定义Silicon/Oxide 界面的固定电荷: `interface qf=3e10' 1.9.3 执行器件模拟 LDD MOSFET 现在准备器件模拟。本例中,一个Id/Vgs曲线通过0.1V 的Vds 进行模拟。这个器件模拟开始是对漏使用0.1V. 由于器件模拟的本质,这必须从零偏压状态开始应用。执行的第一个模拟
47、是漏极偏压从0V 到 0.1V,每步为0.025V的一步。 注意:先执行零偏压是很重要的。 一旦漏极偏压被应用,Id/Vgs 曲线就可模拟了。在模拟中使用的模拟器语句同用于漏极偏压的语句相似: solve vgate=0 vstep=0.25 vfinal=3.0 name=gate 但是,这条语句是同`log' 语句相连,保存模拟曲线文件到文件`mos1ex02_1.log'. 当模拟执行时,这个文件使用TonyPlot绘制。由TonyPlot显示的图如下所示: 1.9.4 抽取器件参数 从模拟中抽取的器件参数是Vt, Beta 和 Theta. 这些参数抽取的语句
48、看上去更让人畏惧,但是在使用Atlas时它们可以从DeckBuild 的`extract'菜单是自动产生。对于更多的抽取方面的信息,可参考Extract chapter in the VWF Interactive Tools manual. 这些语句将产生下列值: nvt=0.600884 nbeta=0.000313849 ntheta=0.116587 第二章 电阻仿真及阻值抽取 Athena 是一个2-D工艺仿真器。软件可以模拟制备微电子电路中的扩散,氧化,注入,刻蚀及沉积工艺。这个练习将向你展示如何从草图开始创建一个相关工艺以及向你展示格点密度将怎样影响你的仿真
49、精度及速度性能。本章将让你通过硼(B)扩散到n型衬底制备一个二极管的来介绍Athena工艺仿真软件。它也包括抽取薄片电阻及结深。网格的不同则有不同的仿真时间及精度。 登录到你的UNIX工作站 输入deckbuild –an & 来启动软件,如图2。 图2: 启动软件 Deckbuild 应如图3所示。这是用来写代码控制你仿真的地方。 它是一个解释器,不是一个编译器。 我们需要为仿真定义一个2-D空间。在本例中,它是一个10-micron乘10-micron 的矩形。 图 3: Deckbuild 右击Deckbuild上的command菜单。将显示如图4一个选择窗口。
50、右击网格定义则一个弹出菜单将如图5所示出来。 图4: 建立2-D 网格 图 5: 设定左边界 点击insert来输入已经选择的点。你的弹出菜单应如图6所示: 图6:建立右边界. 在Location中输入10 microns 并点击insert如图7. 图7: 完成X方向长度设定 为Y方向的网格重复同样的过程如图8,9,10: Figure 8: 设定上边界. Figure 9: 设定下边界. Figure 10: 完成Y方向设定。 点击图10的write按钮,就把数据写入到athena中了。运行deck如图11所示. Figure 11






