Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология Образование Политология Производство Психология Стандартизация Технологии |
Основные команды программы DIOS
В данном разделе приведены основные команды DIOS в порядке их использования в командном файле с описанием важнейших параметров. Интерпретатор DIOS не чувствителен к регистру, т.е. diffuse и DiFFuSe – это одно и то же. Практически все команды можно сокращать, и при описании минимальное сокращение будет выделено заглавными буквами (DIFFuse – можно сократить diff). DIOS считает комментариями строки, начинающиеся со знаков! и #. Как и все программы ISE TCAD, интерпретатор DIOS абсолютно не воспринимает русский алфавит.
TITLE(‘name_command_file’) – заголовок командного файла. Эта команда должна быть первой в командном файле. Пример: Title(‘nmos transistor’) LOAD(file=’имя_файла’) – данная команда применяется для загрузки ранее смоделированной структуры. Пример: load(file=’test’)
GRID(x=(xmin, xmax), y=(ymin, ymax), nx=number) – определение прямоугольной области моделирования. Здесь xmin, xmax, ymin, ymax – координаты левой, правой, нижней и верхней границ области моделирования, по умолчанию в микронах. DIOS использует следующую систему координат: ось Х направлена слева направо, ось Y направлена снизу вверх. Параметр nx задает количество ячеек начальной расчетной сетки. Вместо него можно использовать параметр dx, определяющий максимальный размер ячейки вдоль оси х. Можно также использовать аналогичные параметры ny и dy. Примеры: Grid(x=(0, 50), y=(-100, 0), nx=10) Grid(x=(-10, 10), y=(-200, 5), dx=50nm) SUBStrate(ORIentation=100, ELEMent=тип_примеси, CONCentration = концентрация_примеси, ysubs=number) – определение свойств кремниевой подложки: ORIentation задает кристаллографическую ориентацию подложки 100, 110 или 111; ELEMent – тип легирующей примеси подложки (B, P, Sb, As и др.); CONCentration – концентрация легирующей примеси в подложке (по умолчанию в см-3), при этом вместо концентрации примеси можно задать удельное сопротивление rho (по умолчанию в Ом·см); ysubs – задает координату y верхней границы подложки. Примеры: SUBStrate(ORIentation=100, ELEMent=B, CONCentration=1.43e15, ysubs=0.0) SUBStrate(ORIentation=110, ELEMent=P, rho=10, ysubs=5.0) REPLace(Control(NGRAphic=number)) – одно из возможных применений команды Control. С помощью этой команды, имеющей большое количество параметров, осуществляется управление ходом моделирования, например, адаптацией расчетной сетки. Параметры Control задаются с помощью команды Replace в любой точке командного файла после команды Title. В приведенном виде команда запускает графический режим работы DIOS. Параметр NGRAphic задает число шагов, через которое содержимое графического окна будет обновляться. Для наглядности целесообразно выбрать ngra=1.
GRAPHic(…, Plot) – команда открывает графическое окно DIOS. Если не использовать эту команду, графическое окно все же будет запущено автоматически при условии, что была задана команда Replace(Control(NGRAphic=number)). Параметр Plot, обновляющий содержимое графического окна, обязательный, без него команда не будет работать. Основные параметры: SPEcies – задание типа примеси, распределение концентрации которой будет отображаться; Triangle=On/Off – включение/выключение отображения сетки; SCale(XLeft, XRight, YBottom, YTop) – определение размеров прямоугольной области просмотра; Zscale – задает список значений для изолиний в графическом окне. Примеры: Graphic(SCale(XLeft=0.1, XR=0.2, YTop=0, YBot=-1), Plot) Graphic(Zscale=(1e15, 1e16, 1e17, 1e18), SPec(BTot), Plot) Graphic(Triangle=on, Plot) Comment('фраза') – задание нового заголовка графического окна. Эту команду удобно использовать для комментирования хода моделирования.
Break – приостановка расчета. Возобновление осуществляется кнопкой Go графического окна.
IMPLantation(ELEMent=тип_примеси, ENergy=number, Dose=number) – команда для моделирования ионной имплантации. Обязательные параметры: ELEMent – определяет тип примеси, используемой для легирования; ENergy – задание энергии имплантируемых ионов (по умолчанию в кэВ); Dose – доза имплантации (по умолчанию см-2, для использования дозы в мкКл/см2 используется выражение number/1.6e-19). Дополнительно используются следующие параметры: Tilt – наклон пучка ионов относительно перпендикуляра к поверхности подложки (по умолчанию 7 градусов); ROTation – угол поворота подложки при HALO-имплантации, т.е. при вращении подложки относительно оси, перпендикулярной поверхности подложки. Имплантация при этом производится наклонным пучком; FUNCtion –функция распределения концентрации имплантированных ионов в главном направлении перпендикулярно поверхности подложки. Наиболее часто используемые функции распределения примесей: Gauss – гауссиана (по умолчанию); GK – гауссиана с нелинейным экспоненциальным хвостом; PEarson – распределение Пирсон IV; P4S – распределение Пирсон IV с линейным экспоненциальным хвостом; P4К – распределение Пирсон IV с нелинейным экспоненциальным хвостом; CrystalTrim – распределение, рассчитанное по методу Монте-Карло. LateralFunction – функция распределения концентрации имплантированных ионов в латеральном направлении (параллельно поверхности подложки), можно использовать только две функции – Gauss (по умолчанию) и PEarson. Примеры: implantation(element=B, dose=1e15, energy=60) impl(elem=P, dose=100/1.6e-19, en=90, tilt=0, func=pe, lateralfunction=pe) Возможно глобальное задание параметров имплантации, например: impl: (func=p4k, lateralfunction=pe). При этом для всех нижеследующих команд имплантации будут использоваться заданные параметры как параметры по умолчанию, если в команде не заданы явно другие параметры;
DIFFusion(TEmperature=number, Time=number) – данная команда используется для моделирования всех высокотемпературных операций: диффузии примесей, окисления, эпитаксии. Основные параметры: TEmperature – температура операции, по умолчанию в градусах Цельсия, возможно задание начальной и конечной температуры (temp1, temp2) или списка температур через заданные интервалы времени (temp1, ..., tempN); Time – время операции, по умолчанию в минутах, а также возможно задание списка интервалов времени (t1, t2, ..., t(N-1)); TempRate – скорость изменения температуры (в К/мин); ATMOsphere – определение атмосферы, в которой проводится операция; чаще всего используются: N2 – инертная атмосфера (по умолчанию); H2O – окисление во влажном кислороде; О2 – окисление в сухом кислороде; НСL – окисление с добавкой хлороводорода (используется совместно с Н2О или О2); EPI – эпитаксиальное наращивание; Flow – при использовании потока газов (по умолчанию в л/мин); Concentration – определение концентрации примеси в газе при моделировании диффузии из газовой фазы или в эпитаксиальном слое при моделировании эпитаксиального наращивания; ELEMent – определение типа примеси при эпитаксиальном наращивании или диффузии; GrowthRate – скорость наращивания эпитаксиального слоя (в нм/мин); ModDiff – задание модели диффузии: PairDiffusion, SemiCoupled, LooselyCoupled, Equilibrium, Conventional; модели перечислены в порядке уменьшения количества учитываемых эффектов и ухудшения точности. Возможно также задание моделей кластеризации бора и фосфора: Si: (B: (ModClust=Equilibrium)), Si: (P: (ModClust=Equilibrium)). Здесь Equilibrium – это одна из моделей кластеризации, удовлетворительная по точности и затратам времени на расчет. Аналогично параметрам команды IMPLantation моделирования ионной имплантации, можно задать глобальные параметры команды diffusion: diff: (moddiff=pairdiffusion, Si: (B: (ModClust=Equilibrium)), Si: (P: (ModClust=Equilibrium)))
Примеры использования команды diffusion: diff(temperature=1000, time=10) diff(te=900degC, time=35s, atmo=H2O) diff(time=(10, 20, 5), te=(900, 950, 1100, 1000), flow(H2O=1, HCL=2)) diff(time=20, te=(1000, 1100), moddiff=semicoupled) diff(time=20, atmo=epi, growthrate=300, te=1190, elem=B, conc=2e15) MASK(MATerial=тип_материала, THickness=number, XLeft=number, XRight=number) – команда для моделирования фотолитографии. В качестве материала маски обычно задается фоторезист (resist), хотя можно использовать и другие материалы. Слой материала маски толщиной THickness наносится между координатами XLeft и XRight (все по умолчанию в микронах). Возможны также некоторые другие параметры. Например: mask(material=resist, thickness=2, xleft=0, xright=10) mask(mat=Al, th=1000nm, xl=-10, xr=2.5) MASK(MATerial=POLY, ELEM=P, CONC=3e19, THick=180, XLeft=0.2, XRight=0.4)
DEPOsit(MATerial=тип_материала, THickness=number) – команда моделирования осаждения какого-либо материала. Основные параметры: MATerial – тип осаждаемого материала: Si, po (поликремний), ni (или Si3N4), ox (или SiO2), Al и др.; THickness – толщина осаждаемого материала, по умолчанию в мкм; ELEMent – тип примеси, которой легирован осаждаемый материал; CONCentration – концентрация примеси в осаждаемом материале. Примеры: deposit(material=ox, thickness=3) depo(material=al, thickness=1000nm) depo(material=po, thickness=450nm, elem=P, conc=1.23e18) ETCHing(MATerial=тип_материала) – команда моделирования травления. По умолчанию травление изотропное. Травится слой, контактирующий с газовой фазой. Если не указана толщина удаляемого слоя, то удаляется весь заданный материал, контактирующий с газовой фазой. Основные параметры: MATerial – материал, который будет травиться; REmove – толщина стравливаемого слоя, по умолчанию в мкм; STOP – указание границы раздела, при достижении которой на каком-либо участке поверхности травление останавливается (sigas, siox и др.); Rate – задание типа и скорости травления (по умолчанию скорость травления в нм/мин); тип – изотропное или анизотропное (ISOtropic или ANISOtropic). Примеры: etching(material=resist) etch(mat=ox, stop=(siox), rate(anisotropic=100)) etch(mat=al, remove=400nm, rate(aniso=100, iso=10)) REFLECT(…) – данная команда используется для отражения структуры относительно заданной плоскости. Обычно используется для получения полной структуры в случае моделирования половины симметричной структуры. Основные параметры: reflect – задание х-координаты вертикальной плоскости отражения (по умолчанию в мкм); WINdow – задание новых координат левой, правой, верхней и нижней (left, right, top, bottom) границ области моделирования, т.е. обрезка области моделирования. Примеры: reflect(reflect=0.0) reflect(window(left=-4)) reflect(window(left=-10, right=20, top=15, bottom=-2)) 1D(….) – команда для сохранения одномерных профилей распределения концентраций примесей. Основные параметры: file – имя файла, в котором сохраняется профиль; format – формат сохраняемого файла (по умолчанию с расширением *.plx); SPEcies – список примесей, для которых будет сохранен концентрационный профиль (названия примесей как в графическом окне); XSECTion – координата оси х, через которую будет проведено вертикальное сечение; YSECTion – координата оси у, через которую будет проведено горизонтальное сечение; FACtor – множитель, определяющий направление и размерность шкалы координатной оси одномерного профиля (удобно использовать -1); RS – расчет слоевых сопротивлений пересекаемых сечением слоев. Результат при этом запишется в файл протокола, для просмотра в GENESISe – view output. Примеры: 1d(file=gate, species(netactive), ysection(7.9), factor=-1) 1d(file=test, format=plt, spe(pactive, bactive), xsect(5.0), fac=-1) 1d(rs=on, xsect(0.0))
SAVE(file=имя_файла) – команда для сохранения полученной в результате моделирования структуры. По умолчанию, если не указан формат сохранения, результаты сохраняются в файл с расширением *_dio.dmp – это собственный формат DIOS. Файлы в этом формате можно использовать для дальнейшего моделирования в DIOS. По умолчанию файлы сжимаются с помощью архиватора gzip, поэтому обычно добавляется расширение *.gz. Чтобы использовать рассчитанную виртуальную структуру для моделирования электрофизических и других параметров, ее нужно сохранить в формате MDRAW:
save(file=structure, type=mdraw, species(……), contacts( contact1(name=con1, x1, y1), ......
contactN(name=conN, xN, yN))) Здесь: type – определяет формат сохранения; species – указывает, для каких примесей распределения концентраций будут включены в сохраняемую структуру; contacts – задание контактных областей путем перечисления с указанием названий контактов и координат любой точки в пределах материала контакта. Для использования нижней границы подложки в качестве контакта вместо задания координат используется location=bottom.
В качестве имени файла лучше всего использовать стандартное имя из GENESISe n@node@, которое обозначает номер узла в GENESISe. При сохранении в формате MDRAW создаются 4 файла: *_mdr.cmd – простейший командный файл для MDRAW; *_mdr.bnd – описание границ областей; *_dio.grd[.gz] – файл, содержащий расчетную сетку DIOS; *_dio.dat[.gz] – распределение примесей, привязанное к расчетной сетке. Примеры: save(file=final_structure) Save(File='n@node@', Type=Mdraw, speсies(netactive, bactive, pactive), Contacts( contact1(name='gate', 13.25, 8.5) contact2(name='drain', 20.0, 8.0) contact3(name='source', 0.0, 8.0) contact4(name='substrate', location=bottom) ) )
Файл *.dmp можно просмотреть только с помощью DIOS, а пару файлов *.grd + *.dat можно просмотреть в TECPLOT. При этом нужно учитывать, что в TECPLOT используется система координат, в которой ось Y направлена вниз.
Пример командного файла DIOS Ниже приведен пример командного файла DIOS для моделирования планарной технологии создания n-MOS транзистора (рис. 15): а) выращивание тонкого подзатворного окисла в сухом кислороде; б) осаждение поликремния; в) формирование затворной маски с помощью фотолитографии; г) анизотропное травление поликремния с последующим удалением фоторезиста; д) ионное легирование примесью n-типа для создания истоковой, стоковой области и легирования поликремния; е) диффузионная разгонка имплантированной примеси; ж) нанесение защитных слоев SiO2, Si3N4 и др.; з) формирование с помощью фотолитографии маски для контактных окон; и) вскрытие контактных окон и удаление фоторезиста; к) формирование контактов.
Рис. 15. Структура простейшего нормально закрытого n-MOS транзистора.
Title('n-MOS')
! --------------------------------------------------------- ! ---Моделируется правая половина симметричной структуры---
! Определение исходной подложки заданием прямоугольной! области: grid(x=(0.0, 4.0) y=(-10.0, 0.0), nx=10)
! Задание свойств кремниевой подложки: substrate (orientation=100, element=B, conc=1e15, ysubs=0.0) ! ---------------------------------------------------------
! Запуск графического окна с установкой частоты! перерисовки: Replace(Control(ngra=1)) graph(triangle=off, plot)
! Задание глобальных моделей имплантации и диффузии: implantation: (function=p4, lateralfunction=pe) diffusion: (moddiff=equilibrium, Si: (B: (ModClust=Equilibrium)), Si: (P: (ModClust=Equilibrium)))
! ***** Начало моделирования технологических процессов **
! Имплантация бора: implant(element=B, dose=3e12, energy=20keV, tilt=0)
comment('Gate oxidation')
! Выращивание подзатворного окисла с одновременной! разгонкой бора: diffusion(time=10, temperature=1100, atmosphere=O2)
comment('Polysilicon gate deposition')
! Осаждение поликремния: deposit(material=po, thickness=1000nm)
comment('Poly gate pattern')
! Создание маски с помощью фотолитографии для травления! поликремния: mask(material=resist, thickness=1000nm, xleft=0, xright=0.7)
comment('Poly gate etch')
! Травление незакрытого маской поликремния: etching(material=po, stop=oxgas, rate(anisotropic=100))
! Удаление фоторезиста: etching(material=resist)
comment('Poly oxidation')
! Окисление поликремния: diffusion(time=15, temperature=1100, atmosphere=O2)
comment('Phosphorus implantation for source and drain regions')
! Фотолитографическое создание маски для имплантации! фосфора при создании истокой области: mask(material=resist, thickness=1000nm, xleft=0.0, xright=1.2)
! Имплантация фосфора: implant(element=P, dose=1000/1.6e-13, energy=50keV, tilt=0)
! Удаление фоторезиста: etching(material=resist)
comment('Diffuse of phosphorus')
! Диффузионная разгонка фосфора в окислительной атмосфере: diffusion(time=2, temperature=1100, atmosphere=O2)
comment('N+ implantation and activation of phosphorus') graphic(plot)
! Легирование поликремния и подгонка границы истоковой! области, то есть самосовмещение затвора и истока: implant(element=P, dose=500/1.6e-13, energy=50keV, tilt=0)
! Диффузия фосфора: diffusion(time=3, temperature=1000, atmosphere=O2)
comment('Nitride spacer')
! Осаждение защитного слоя из нитрида кремния: deposit(material=si3n4, thickness=700nm)
! Анизотропное травление нитрида для формирования! нитридного спейсера: etching(material=si3n4, stop=oxgas, rate(anisotropic=100), over=10)
comment('Contact windows')
! Формирование маски для вскрытия контактных окон: mask(material=resist, thickness=1000nm, xleft=0.65, xright=2.35)
! Вскрытие контактных окон путем травления оксида кремния: etching(material=ox, remove=200nm, rate(anisotropic=100))
etching(material=resist)
comment('Deposit Al')
! Напыление алюминия: deposit(material=al, thickness=1000nm)
comment('Contacts')
! Создание маски для получения контактов: mask(material=resist, thickness=1000nm, xleft=0.0, xright=0.85) mask(material=resist, thickness=1000nm, xleft=2.2, xright=4.0)
! Травление алюминия: etch(material=al, remove=1600nm, rate(anisotropic=100, isotropic=10))
etch(material=resist)
comment('Full device structure')
! Отражение относительно вертикальной оси симметрии для! получения полной структуры: Reflect(Reflect=0.0)
! ***Завершение моделирования технологических процессов***
Comment('Saving final structure')
! Сохранение одномерных сечений: 1d(file=x_channel, spe(netactive), ysect(-0.05), fac=-1) 1d(file=y_channel, spe(netactive), xsect(0.0), fac=-1) 1d(file=source, spe(netactive), xsect(2.0), fac=-1)
! Сохранение готовой структуры в разных форматах: save(file='n@node@_final') Save(File='n@node@', Type=mdraw, spe(netactive, total, btotal, bactive, ptotal, pactive), Contacts( contact1(name='gate', 0.0, 1.5) contact2(name='source', -3.0, 0.5) contact3(name='drain', 3.0, 0.5) contact4(name='substrate', location=bottom) ) ) end
Полученная в результате моделирования структура показана на рисунке 16.
Рис. 16. Структура рассчитанного в DIOS n-MOS транзистора.
|
Последнее изменение этой страницы: 2017-05-05; Просмотров: 718; Нарушение авторского права страницы