Практическая работа 1-8 2022. Программа для работы в tcad под ос windows есть на кафедре (до 500 Мб). Есть версия под 2015 год
![]()
|
ПРАКТИЧЕСКИЕ РАБОТЫ ПО ДИСЦИПЛИНЕКВАНТОВАЯ МЕХАНИКА И СТАТИСТИЧЕСКАЯ ФИЗИКА Общая информацияПрограмма для работы в TCAD под ОС Windows есть на кафедре (до 500 Мб). Есть версия под 2015 год. Версия от 2018 года есть по ссылкам: https://goo.gl/fIUYnq https://majhar.wordpress.com/silvaco-tutorial/ Есть более новые версии программы, например у арабов (2019 год): https://downloadly.ir/software/engineering-specialized/silvaco-tcad/ Остальные версии смотрите в сети сами. ![]() Рис. 0. Ссылка на программу в сетиУстановка и присоединение ключ-файла должны выполняться строго по инструкции из прилагаемого pdf-файла. В используемой версии (рис. 1) нет блоков victory (process, device, stress), поэтому не все проекты для студентов магистерских программ будут работать в данной версии. Обязательно запоминайте придуманный вами пароль для входа в настройку лицензии (лучше устанавливать пароль 123). ![]() Рис. 1. Путь к программе в коневом каталоге ОС WindowsОсновное рабочее окно, в котором будет создаваться проект, запускается в папке «SedaTools» щелчком на ярлыке «DeckBuild». По щелчку открывается окно, состоящее из нескольких блоков: – область для написания кода структуры, – окно для выведения лог-файла во время расчёта, – окно, в котором будут выведены данные по рассчитываемым переменным, – окно, в котором выводится набор файлов рассчитанных структур и графиков, – область мониторинга ресурсов системы. Проверка работоспособности установленного ПО (рис. 2, 3): ![]() Рис. 2. Основное окно программы– File – Examples: – открывается окно с набором встроенных готовых проектов, в котором выбирается проект из блока Product – Athena; описание проекта видно при щелчке на названии; – выбираем «load»; ![]() Рис. 3. Путь запуска примеров расчёта моделей TCAD– в основном окне кода будет загружен текст проекта; обратите внимание на цветовые обозначения элементов текста: сиреневый (начинается со слова «go », используется всегда) – указание на решающий модуль (Athena, Atlas, DevEdit, Internal – кстати, на диске С в папке «C:\sedatools\lib» расположены папки с мануалами pdf по этим модулям, названия совпадают), розовый (начинается со слова «set », используется не во всех кодах) – задание переменной / переменных (в коде будут использованы ссылки со знаками ${ }), чёрный основной текст кода, синий – те самые ссылки на переменные, зеленый (начинается с знака «#») – это комментарии, то, что написано в них, никак не будет учитываться программой при расчёте, зелено-голубой – цифры, чёрный полужирный (начинается со слова «extract », используется не во всех кодах) – формула для расчёта или экстракции какого-то параметра структуры; – запуск кода на выполнение осуществляется щелчком на кнопке «play» (зеленый треугольник в верхнем левом углу); – при выполнении кода просчитываемая строка подсвечена желтым, а сам расчёт выводится в нижней части экрана (рис. 4): синий – текст кода команды, черный – сам лог расчёта, розовый – экстракция какого то значения командой «extract ». ![]() Рис. 4. Пример отображения окна при выполнении кода программыМодули TonyPlot и TonyPlot3D отвечают за вывод рассчитанных характеристик и структур – в версии под Windows могут выдавать ошибку загрузки. Методы запуска рассчитанных структур и графиков показаны на рис. 5 и 6. ![]() Рис. 5. Модули вывода на экран графических результатом моделирования в папке с программой![]() Рис. 6. Вывод графических данных непосредственно из кода программыКогда откроется окно графика (тип файла .log), его необходимо настроить для правильного отображения (рис. 7, 8). ПКМ на графике – Display – откроется окно настройки осей графика. По оси Х можно задать 1 переменную, по оси Y – несколько. Масштаб может быть линейным, логарифмическим, можно построить график в полярной системе координат. Масштабирование можно осуществлять мышью, тогда вверху слева появится область управления или через настройки графика. Можно открывать несколько графиков на одном (File – Open, внизу выбираем OverLay) или в соседних областях окна (File – Open, внизу выбираем Add). ![]() Рис. 7. Отображение графиков в программе![]() Рис. 8. Настройки отображения графиковПри работе со структурами (тип файла .str) нажимаем ПКМ и выбираем пункт Display, который позволяет настроить отображение сетки, контуров областей, материалов структуры, концентрации носителей заряда, границ p-n переходов, электродов (остальные настройки в рамках курса не понадобятся) – основные элементы управления приведены на рис. 9, 10. При активном параметре распределения носителей заряда (по умолчанию – распределение концентрации носителей заряда без деления по типу) для настройки различных распределений необходимо выбрать в окне настройки выпадающий список Define – Contours; откроется окно, в котором основным элементом будет выпадающий список Quantity, в котором выбираются требуемые распределения. ![]() Рис. 9. Первый шаг настройки отображения структур![]() Рис. 10. Второй шаг настройки отображения структурВАЖНО! Каждый проект необходимо сохранять в отдельную папку (если в одном задании делается несколько расчётов, то или каждый расчёт или должен находиться в своей папке, или вариации параметра будут заданы блоком «set» в коде). Чтобы код программы, написанный в ОС Windows, без проблем сохранялся и отображал нечитаемые символы, используйте англоязычные пути к файлу решаемой задачи. Комментарии в коде рекомендуется писать английскими символами или дублировать в файле типа «.docx», так как из исходного файла типа «.in» они часто «слетают», превращаясь в «#????????? ???». Файл «.in» можно открывать обычным Блокнотом или WordPadом. Файлы «.str» и «.log» открываются только в модуле TonyPlot (или TonyPlot 3D), поэтому для формирования отчёта по поставленной задаче требуется делать снимки экрана (printscreen) с отображенными графиками или структурами. Если программа под ОС Win не устанавливается на конкретный ПК, можно использовать вариант TCAD для виртуальной машины, который «весит» порядка 29 Гб. Папку с программой можно сохранить на флеш-карту (64 Гб) или внешний жесткий диск. Система, под которую программа устанавливается, должна иметь размерность 64 бита. Оперативная память – не меньше 4 Гб, половина из которых отдается под загрузку виртуального образа с системой. Оболочка VMWare (можно использовать WorkStation или Player) имеет размер порядка 50 Мб, рекомендуется использовать последнюю версию программы. Пароль на вход в систему на виртуальной машине: 12345. В системе открываем папку S.EDA Tools, запускаем ярлык DeckBuild (рис. 11). ![]() Рис. 11. Внешний вид окна программы, запущенного под виртуальной машинойЗеленый треугольник – запуск кода на выполнение. Путь «File – Examples» открывает каталог с примерами кода для различных структур. Путь «Home - ↑ - ↑ - opt – silvaco – lib – (папки)» дает выход на файлы с описанием модулей, содержащихся в TCAD. Нам нужны: Athena, Atlas, DeckBuild, TonyPlot, TonyPlot3D, VictoryProcess, VictoryDevice. Нужные файлы лежат в подпапках «docs» и содержат в названии «_users1». Практическая работа 1-2 |
|
log outf=tunnelSiDiode_reverse.log
solve name=anode vanode=-0.0 vstep=-0.01 vfinal=-0.05
solve name=anode vanode=-0.05 vstep=-0.05 vfinal=-0.2
solve name=anode vanode=-0.25 vstep=-0.05 vfinal=-0.5
log off
solve init
log outf=tunnelSiDiode_forward.log
solve name=anode vanode=0.0 vstep=0.005 vfinal=0.2
solve name=anode vanode=0.205 vstep=0.005 vfinal=0.35
solve name=anode vanode=0.375 vstep=0.025 vfinal=1.2
# загрузка информации по напряжениям на аноде
tonyplot -overlay tunnelSiDiode_forward.log tunnelSiDiode_reverse.log -set tunnelSiDiode.set
exit
![](531273_html_9a59ed378d752885.png)
Рис. 16. Прямая и обратная ветви ВАХ (чего?)
Практическая работа 7–8
РТД p-типа на SiGe
Задание:
Запустите код из данного файла. Изучите его структуру по словам. Получите графики, аналогичные указанным в описании примера в программе.
Корректно переведите описание структуры конденсатора, приведенного в пояснении к задаче (текст приведен ниже).
Используя разобранный на практике код, опишите порядок построения и моделирования прибора. Добавьте в отчёт получившиеся рисунки с описанием того, что на них отображено.
Найдите реально существующие аналогичные приборы (статьи в google, поисковый запрос лучше формировать на английском языке, в конце запроса «(пробел) pdf», чтобы в основном выгружались статьи).
Попробуйте изменить в сторону уменьшения и увеличения какой-либо параметр структуры. Опишите, что получилось.
Определите по коду, какой параметр отвечает за квантовые эффекты при моделировании структуры. Опишите его.
Корректно переведите и изучите блок, описывающий модель, использующую этот параметр (путь к файлу, на Ваших машинах может быть другим: C:\sedatools\lib\atlas\5.28.1.R\docs)
Оформите всю работу в виде отчёта по правилам стандарта ВГТУ. Распечатайте, подпишите и сдайте на проверку.
Графики и структуры на рисунках приведены в качестве подсказки того, что Вы должны получить на рисунках. Сами графики, выгруженные в программе, придется «донастраивать», подбирая оси, масштаб и т.д.
SiGe p-type Resonant Tunneling Diode
This example considers a p-type SiGe RTD with 2nm wide double Si barriers separated by a 2nm SiGe well. A two-band model is used for hole bandstructure. Band offsets and effective masses are set by DEV.HH, DEV.LH and MHH, MLH parametrs on the MATERIAL statment. The convergence criterium for the maximum change in potential is set by the QCRIT.NEGF parameter on the MODELS statement to 0.1 meV.
In order to solve for eigen energies and wavefunctions, we use NEGF.EIG paramater of the SOLVE and SAVE statement. NEGF.EIG can be switchedoff to save computation time if the information on eigen energies is not required. Use EIG.YMIN and EIG.YMAX parametrs on the models statement to choose only states localized in this region.
go atlas
# p-type SiGe RTD example 2nm-2nm-2nm double barrier,
mesh diag.flip
x.mesh loc=0.00 spac=0.01
x.mesh loc=0.01 spac=0.01
y.mesh loc=-0.072 spac=0.0005
y.mesh loc=-0.01 spac=0.0002
y.mesh loc=0.0 spac=0.0001
y.mesh loc=0.011 spac=0.0001
y.mesh loc=0.013 spac=0.0001
y.mesh loc=0.015 spac=0.0001
y.mesh loc=0.017 spac=0.0001
y.mesh loc=0.024 spac=0.0001
y.mesh loc=0.026 spac=0.0001
y.mesh loc=0.036 spac=0.0001
y.mesh loc=0.046 spac=0.0002
y.mesh loc=0.1 spac=0.0005
# Source and drain regions have to be specified as EQUIL.NEGF to impose quasi-equilibrium condition.
region num=1 name=SiGe material=Si y.max=-0.01 equil.negf
region num=2 name=SiGe material=Si x.comp=0.6 y.min= -0.01 y.max=0.011 equil.negf
region num=3 name=Si material=Si y.min=0.011 y.max=0.013
region num=4 name=SiGe material=Si x.comp=0.6 y.min=0.013 y.max=0.015
region num=5 name=Si material=Si y.min=0.015 y.max=0.017
region num=6 name=SiGe material=Si x.comp=0.6 y.min=0.017 y.max=0.024
region num=7 name=SiGe material=Si x.comp=0.6 y.min=0.024 y.max=0.036 equil.negf
region num=8 name=SiGe material=Si y.min=0.036 y.max=0.046 equil.negf
region num=9 name=SiGe material=Si y.min=0.046 equil.negf
elec num=1 name=emitter top
elec num=2 name=collector bottom
doping reg=1 uniform p.type conc=1e18
doping reg=8 uniform p.type conc=1e16
doping reg=9 uniform p.type conc=1e18
# Band off-sets: We declare the same material Si in all regions. Here we modify band off-sets and set effective masses. Regions with SiGe are given a name "SiGe", and regions with Si are given a name "Si".
# Holes: when NUM.BAND>1 on MODELS statement, use DEV.HH,DEV.LH and DEV.SO to set band off-sets when NUM.BAND=1, use DEV.ISO to set band off-set for isotropic band
# Electrons: when NUM.DIRECT=3 on MODELS statement, use DEC.C1,DEC.C2 and DEC.C3 to set band off-sets for each pair of valleys.
# when NUM.DIRECT=1, use DEC.ISO to set band off-set for isotropic band (in this example we compute only hole transport, while electrons are treated clasically)
# Valence Band off-sets (from the highest Ev of bulk Si)
material name=Si dev.so=-0.044
material name=SiGe dev.hh=0.32 dev.lh=0.26 dev.so=-0.044
# Conduction Band off-sets (from the lowest Ec of bulk Si)
material name=SiGe dec.iso=-0.01
# Holes: when NUM.BAND=1, 1 band is assumed with effective mass MV
# when NUM.BAND=2, 2 bans are assumed with effective masses MHH and MLH
# when NUM.BAND=3, 3 bans are assumed with effective masses MHH and MLH and MSO
# Electrons: when NUM.DIRECT=1, 1 band is assumed with effective mass MC
# when NUM.DIRECT=3, 3 bands are assumed with anisotropic effective masses.
# (ML,MT1,MT2) for band#1,
# (MT1,ML,MT2) for band#2,
# (MT1,MT2,ML) for band#3,
# (in this example we compute only hole transport, while electrons are treated clasically)
# Effective masses (taken from http://www.ioffe.ru/SVA/NSM/Semicond/SiGe)
material name=Si mc=0.3 mhh=0.49 mlh=0.16 mso=0.24
material name=SiGe mc=1.06 mhh=0.426 mlh=0.1132 mso=0.17
# To launch model, use N.NEGF_PL1D and/or P.NEGF_PL1D on the MODELS statement. This will solve 1D model in one slice and copy it to all other slices. If slices are not equivalent, use N.NEGF_PL and/or P.NEGF_PL, to solve 1D model for each slice. Energy grid size in the NEGF solver is regulated by ESIZE.NEGF on the MODELS statement (default is 2001). You may increase it up to 10000 for better convergence. To set broadening in quazi-equilibrium regions use ETA.NEGF (default is 0.0066 eV). Increase it to 0.01 eV for better convergence. Physically, the broadening corresponds to inelastic electron-phonon scatterin, and is necessary to fill emitter quazi-bound states.
# P.NEGF_PL1D - only holes are taken into account in transport calculation
# Take only light and heavy holes into account by setting NUM.BAND=2
# ESIZE.NEGF=20001 incerases the number of energy grid for better resolution
# QCRIT.NEGF=1e-4 - convergence criterium is 0.1 meV or less in update of potential
# Broadening in quasi-equilibrium regions is set by ETA.NEGF=0.0066
# When storing for eigen energies and wave functions , take only ehose localized between EIG.YMIN=0.008 and EIG.YMAX=0.017
models p.negf_pl1d esize.negf=20001 eta.negf=0.0066 num.band=2 eig.ymin=0.008 eig.ymax=0.017 qcrit.negf=1e-4
method carr=0
# Probes contain important information about Transmission and density of states versus energy. Also, you can output DENSVSE (carrier density spectrum) and CURDVSE (current density spectrum). Files will have names RTDSiGe_TranvsE_0.log, RTDSiGe_TranvsE_1.log etc. for each time you set NEGF.LOG on the SAVE statement. Setting X-location is not needed if you solve only one slice (N.NEGF_PL1D).
probe transmission filename="RTDSiGe_TranvsE_"
probe transmission band=1
probe transmission band=2
probe dosvse x=0 y=0.015
probe dosvse x=0 y=0.015 band=1
probe dosvse x=0 y=0.015 band=2
probe curdvse x=0 y=0.015
probe curdvse x=0 y=0.015 band=1
probe curdvse x=0 y=0.015 band=2
# ESIZEOUT.NEGF on the OUTPUT statement is the size of energy grid in the output file TranvsE_DB2_0.log. If you don't set it, it will be the same as ESIZE.NEGF on the MODELS statement.
output con.band val.band eigen=7
solve init
save outf=RTDSiGe_init.str negf.log negf.eig
log outf=RTDSiGe_IV.log
solve v2=0 name=collector vstep=-0.02 vfinal=-0.1
save outf=RTDSiGe_vm01.str negf.log negf.eig
solve name=collector vstep=-0.02 vfinal=-0.2
save outf=RTDSiGe_vm02.str negf.log negf.eig
solve name=collector vstep=-0.02 vfinal=-0.3
save outf=RTDSiGe_vm03.str negf.log negf.eig
solve name=collector vstep=-0.02 vfinal=-0.4
save outf=RTDSiGe_vm04.str negf.log negf.eig
solve name=collector vstep=-0.005 vfinal=-0.5
save outf=RTDSiGe_vm05.str negf.log negf.eig
solve name=collector vstep=-0.005 vfinal=-0.58
solve name=collector vstep=-0.005 vfinal=-0.6
save outf=RTDSiGe_vm06.str negf.log negf.eig
solve name=collector vstep=-0.005 vfinal=-0.7
save outf=RTDSiGe_vm07.str negf.log negf.eig
solve name=collector vstep=-0.005 vfinal=-0.8
save outf=RTDSiGe_vm08.str negf.log negf.eig
solve name=collector vstep=-0.005 vfinal=-0.9
save outf=RTDSiGe_vm09.str negf.log negf.eig
solve name=collector vstep=-0.005 vfinal=-1
save outf=RTDSiGe_vm1.str negf.log negf.eig
solve name=collector vstep=-0.01 vfinal=-2
save outf=RTDSiGe_vm2.str negf.log negf.eig
log off
tonyplot RTDSiGe_vm07.str -set RTDSiGe_fig1.set
tonyplot RTDSiGe_vm07.str -set RTDSiGe_fig2.set
tonyplot RTDSiGe_IV.log -set RTDSiGe_fig3.set
tonyplot RTDSiGe_TranvsE_7.log -set RTDSiGe_fig4.set
tonyplot RTDSiGe_TranvsE_7.log -set RTDSiGe_fig5.set
quit
![](531273_html_ff5bcb92b7c86b4b.png)
Рис. 17.
![](531273_html_77bd36506dfd74a9.png)
Рис. 18.
![](531273_html_17252e21bff48803.png)
![](531273_html_eea9aa65090ee17d.png)
Рис. 19. Подобрать структуру самостоятельно (!!!)
![](531273_html_abcfe93cd6110150.png)
Рис. 20.
![](531273_html_4ca51f3ded2ed95c.png)
Рис. 21.