close

Вход

Забыли?

вход по аккаунту

?

1201.Системы автоматизированного проектирования полупроводниковых компонентов радиоэлектронных схем

код для вставкиСкачать
Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»
ФЕДЕРАЛЬНОЕ АГЕНТСТВО ПО ОБРАЗОВАНИЮ
ГОСУДАРСТВЕННОЕ ОБРАЗОВАТЕЛЬНОЕ
УЧРЕЖДЕНИЕ
ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ
«ВОРОНЕЖСКИЙ ГОСУДАРСТВЕННЫЙ
УНИВЕРСИТЕТ»
СИСТЕМЫ АВТОМАТИЗИРОВАННОГО
ПРОЕКТИРОВАНИЯ
ПОЛУПРОВОДНИКОВЫХ
КОМПОНЕНТОВ
РАДИОЭЛЕКТРОННЫХ СХЕМ.
CROSSLIGHT APSYS
Учебное пособие
Издательско-полиграфический центр
Воронежского государственного университета
2009
Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»
Утверждено научно-методическим советом физического факультета 17 сентября 2009 г., протокол № 8
Авторы: А.М. Бобрешов, И.С. Коровченко, М.П. Ряполов, Г.К. Усков
Резензент канд. физ.-мат. наук, доц. Ю.Э. Корчагин
Учебное пособие подготовлено на кафедре электроники физического факультета Воронежского госуниверситета.
Рассматриваются математический аппарат, применяемый в системах автоматизированного проектирования (САПР) для моделирования работы полупроводниковых приборов, и интерфейс САПР Crosslight Apsys. Подробно
описывается процесс создания проекта в САПР Crosslight Apsys для проведения расчётов и анализа результатов моделирования полупроводниковых
приборов.
Рекомендуется для магистров и специалистов старших курсов д/о и в/о.
Для специальности 010801 − Радиофизика и электроника
2
Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»
Содержание
Введение....................................................................................................... 4
1. Теоретические основы моделирования полупроводниковых
приборов в САПР Crosslight APSYS ........................................................ 4
1.1. Физические модели, применяемые
в пакете Crosslight APSYS, и его возможности ............................... 4
1.2. Теория полупроводников, используемая пакетом APSYS ..... 6
1.3. Численные методы, используемые
в САПР Crosslight APSYS ................................................................ 12
2. Среда проектирования Crosslight APSYS ......................................... 16
2.1. Интерфейс и работа с модулем SimuApsys ........................... 16
2.2. Интерфейс и работа с модулем LayerBuilder ......................... 18
2.3. Интерфейс и работа с модулем GeoEditor ............................. 19
2.4. Интерфейс и работа с модулем CrosslightView ................... 20
3. Процедуры проектирования и основные файлы проекта ............... 22
3.1. Синтаксис layer файла .............................................................. 25
3.2. Синтаксис geo файла ................................................................ 26
3.3. Синтаксис sol файла .................................................................. 28
3.4. Работа с результатами расчета с помощью файлов .plt ....... 29
Список литературы .................................................................................. 33
3
Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»
ВВЕДЕНИЕ
Современные системы автоматизированного проектирования (САПР)
позволяют не только моделировать работу полупроводниковых устройств,
но и наблюдать множество физических процессов, в большей мере варьировать параметры эксперимента, получать более полные результаты и, в конечном счёте, дают больше возможностей для понимания и объяснения результатов, полученных экспериментально. Одной из таких современных
систем является САПР APSYS компании Crosslight Software Inc. Достоинствами этой САПР являются эффективный алгоритм расчетов, подробная
документация, гибкая система входных и выходных данных, удобные средства подробного анализа результатов.
В данном пособии рассматриваются САПР APSYS 2007 фирмы Crosslight, некоторые основные теоретические модели, использующиеся в этой
среде при расчете, даются рекомендации по применению данного пакета
при расчете полупроводниковых приборов. Методическое пособие является
первым серии учебных материалов, посвященных данному пакету программ, и описывает основные принципы работы программы и процесса проектирования.
1. ТЕОРЕТИЧЕСКИЕ ОСНОВЫ МОДЕЛИРОВАНИЯ
ПОЛУПРОВОДНИКОВЫХ
ПРИБОРОВ В САПР CROSSLIGHT APSYS
1.1. Физические модели, применяемые
в пакетеCrosslight APSYS, и его возможности
Прежде чем рассмотреть основные физические модели, применяемые в
системе автоматизированного проектирования Crosslight APSYS, рассмотрим кратко основные возможности, которыми она обладает [1]. САПР Crosslight APSYS позволяет проводить полное двумерное моделирование с использованием независимых решений уравнения Пуассона, уравнений непрерывности электронного и дырочного тока, уравнений переноса энергии
носителей, уравнений теплообмена, а также скалярного волнового уравнения для световодов, например, волноводного фотодетектора. В системе APSYS используются следующие физические модели:
– диффузионно-дрейфовая модель;
– гидродинамические модели для горячих носителей заряда с полевой
и/или энергетической зависимостью подвижности;
– уравнения теплопроводности с изменяемыми тепловыми граничными
условиями и произвольными температурными зависимостями параметров;
4
Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»
– модель термоэлектронной эмиссии для переноса носителей через
ступенчатый или резкий гетеропереход или потенциальную яму;
– модель ударной ионизации с полевой или энергетической зависимостью коэффициентов ионизации;
– модели внутризонного туннелирования через потенциальный барьер
и туннелирования через зону;
– модели ловушек на глубоких уровнях и эффектов, связанных с ними,
в полуизолирующих и изолирующих материалах;
– модель ионизации Пула-Френкеля в электрическом поле при наличии
неоднородностей в составных материалах;
– моделирование низкотемпературных процессов при температурах до
77 K и ниже;
– поддержка моделей большого числа материалов, среди которых
кремний, GaAs, AlGaAs, SiGe, InGaAsP и др.
Основной моделью, используемой при моделировании устройств в
САПР Crosslight APSYS, является диффузионно-дрейфовая. Все используемые в пакете модели позволяют реализовывать с помощью пакета расчет:
– вольт-амперных характеристик исследуемого полупроводникового
прибора;
– двумерного распределения электрического потенциала и напряженности поля и тока;
– двумерных распределений концентраций электронов и дырок;
– двумерного распределения тока горячих носителей в рамках гидродинамической модели;
– двумерного распределения температуры кристаллической решетки в
рамках модели теплового переноса;
– энергетических зонных диаграмм при различных напряжениях на
контактах прибора;
– высокочастотных S- и Y-параметров устройств при малосигнальных
воздействиях;
– структуру энергетических уровней квантовых ям при помощи valence
mixing model для квантовых приборов
– двумерных распределений захваченных носителей на глубокие уровни в полупроводнике и их концентраций;
– двумерного распределения оптического поля для фотоприборов и
фотодетекторов;
– спектр спонтанной эмиссии носителей как функцию тока для светодиодов;
– все вышеперечисленные характеристики как функции времени и
температуры окружающей среды.
5
Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»
1.2. Теория полупроводников, используемая пакетом APSYS
Основными уравнениями, описывающими полупроводниковые устройства, являются уравнения Пуассона (1), уравнений непрерывности для электронов (2) и дырок (3) и кинетические уравнения Больцмана для электронов
и дырок (4) и (5):
⎛ε ε
⎞
− ∇⎜⎜ 0 dc ∇V ⎟⎟ = −n + p + N D (1 − f D ) − N A f A + ∑ N tj (δ i − f tj ) ,
(1)
j
⎝ q
⎠
∂f
∂n
∇ ⋅ J n − ∑ Rntj − Rsp − Rst − Rau + Gopt (t ) =
+ ND D ,
(2)
∂t
∂t
j
∂f
∂p
∇ ⋅ J p + ∑ R tjp + Rsp + Rst + Rau − Gopt (t ) = − + N A A ,
(3)
∂t
∂t
j
⎛ E −F ⎞
n0 = N C exp⎜ − c
(4)
⎟,
kT ⎠
⎝
⎛ E −F ⎞
p0 = Nν exp⎜ − ν
(5)
⎟,
kT ⎠
⎝
где q – заряд электрона, ε 0 – электрическая постоянная; ε dc – относительная
диэлектрическая проницаемость полупроводникового кристалла; n, p, NA,
ND, Ntj – концентрации свободных электронов, дырок, ионизированных акцепторов, доноров и j-го глубокого уровня соответственно; fA, fD, ftj – заселенность мелких акцепторов, доноров и j-го глубокого уровня соответственно; δ i – константа, которая принимает значение 1 для глубоких доноров
и 0 для глубоких акцепторов; Jn, Jp – плотности токов электронов и дырок;
Rntj , R ptj – скорости рекомбинаций электронов и дырок в единице объема через j-й глубокий уровень; Rsp – скорость спонтанной рекомбинации в единице объема; Rst – скорость вынужденной рекомбинации в единице объема;
Rau – скорость оже-рекомбинации в единице объема, если она учитывается
при расчетах; Gopt – скорость генерации носителей в единице объема, стимулированной оптическим излучением; n0, p0 – концентрация равновесных
электронов и дырок; N c , Nν – эффективная плотность состояний в зоне
проводимости и в валентной зоне; Ec , Eν – энергии, соответствующие дну
зоны проводимости и потолку валентной зоны; F – уровень Ферми; k – постоянная Больцмана; T – термодинамическая температура. Эти уравнения
определяют вольтамперные характеристики полупроводникового устройства.
При моделировании в САПР Crosslight APSYS возможно использование ещё двух моделей для описания распределений носителей по энергиям
w и температурам. Не следует путать температуру носителей с температурой ионной решётки. Распределений носителей по энергиям показывает,
насколько распределение носителей отклоняется от распределения Ферми –
6
Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»
Дирака. Такая модель называется ещё гидродинамической. В САПР APSYS
используется вариант этой модели, разработанный Азовым [2]. Для простоты будем рассматривать только уравнения для горячих электронов. Соответствующие уравнения для дырок полностью аналогичны.
∇ ⋅ S + Rn w − ∇Ec ⋅ J n +
n( w − w0 )
τw
+
∂ (nw)
= 0,
∂t
5
10
S = − J n w − μ n nw∇w.
3
9
(6)
(7)
Здесь w – полная энергия электрона, w0 = 3kT/2 – энергия электрона в
состоянии теплового равновесия с решёткой, S – интенсивность потока
энергии электронов, а τw – время релаксации энергии.
Главной задачей при моделировании процессов является независимое
решение этих уравнений относительно электростатического потенциала V,
концентраций электронов и дырок n и p, а также энергий электронов и дырок Wn и Wp, соответственно. Из теории физики полупроводниковых устройств известно, что плотности потока носителей тока Jn и Jp из уравнений
(2) и (3) могут быть записаны как функции концентрации носителей и квазиуровней Ферми [16]:
J n = nμ n ∇E fn ,
(8)
J p = pμ p ∇E fp ,
(9)
где µn и µp – подвижности электронов и дырок, соответственно. Для удобства будем использовать плотность потока носителей вместо плотности тока
и наоборот, не смотря на то, что они различаются на величину элементарного заряда. В гидродинамической модели выражение для электронного
(дырочного) тока выглядит иначе:
2
⎧
⎫
J n = μ n ⎨− n∇[ψ + χ + γ n ] + ∇(nw) − nw∇ ln(mn )⎬ .
3
⎩
⎭
(10)
Граничные условия для уравнений (1)–(3) могут быть реализованы как
омические контакты, контакты с барьером Шоттки, неймановские (отражающие) границы, элементы с сосредоточенными параметрами и контакты,
управляемые током. Граничные условия на уравнения для горячих электронов здесь накладываются на температуру носителей у контактов.
Для учета процессов генерации-рекомбинации носителей заряда, в
том числе и в присутствии глубоких уровней (ловушек), используется модель рекомбинации носителей Шокли – Рида – Холла, описываемая соотношениями:
(18)
Rntj = c nj nN tj (1 − f tj ) − cnj n1 j N tj f tj , R tjp = c pj pN tj f tj − c pj p1 j N tj (1 − f tj ) ,
где n1j – концентрация электронов в случае совпадения квазиуровня Ферми
с энергетическим уровнем Etj j-го глубокого уровня, p1j концентрация для
дырок в аналогичных условиях. Для переходного процесса справедливо
следующее уравнение, описывающее динамику заполнения ловушек [3]:
7
Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»
N tj
∂f tj
∂t
= Rntj − R tjp
(19)
Коэффициенты захвата носителей сnj и cpj можно выразить через сечение захвата с помощью соотношений:
cnj = σ nj
8kT
,
πmn
(20)
c pj = σ pj
8kT
.
πm p
(21)
Зная концентрацию ловушек Ntj, сечения захвата для электронов σ nj и
дырок σ pj и энергетические уровни ловушек Etj, из (18) и (19) можно получить выражение для степени ионизации глубоких уровней в установившемся состоянии:
f tj =
cnj n + c pj p
cnj (n + n1 j ) + c pj ( p + p1 j )
.
(22)
При моделировании происходящих во времени процессов заселённость
глубоких уровней является функцией времени, зависящей от сечения захвата и локальной концентрации носителей. В этом случае состояние глубоких
уровней ищется для каждого шага во времени из (18).
Концентрация электронов и дырок в полупроводнике, входящая в
уравнения (1)–(3) подчиняется статистике Ферми – Дирака и может быть
описана выражениями [4]:
⎛ E fn − EC ⎞
⎟⎟ ,
n = N C F1 / 2 ⎜⎜
kt
⎝
⎠
⎛ Ev − E fp ⎞
⎟⎟ ,
p = N v F1 / 2 ⎜⎜
kt
⎝
⎠
(23)
(24)
где F1/2 – интеграл Ферми порядка ½.
На границе гетероперехода образуется квантовая потенциальная
яма, приводящая к образованию тонкого слоя двумерного электронного газа. Для учета этого явления в формулах распределения концентрации (23),
(22) необходимо внести слагаемое, характеризующее плотность носителей в
яме. Построение модели концентрации носителей в симметричной яме исходит из использования приближения плоских зон при отсутствии внешнего электрического поля (это ситуация наблюдается в состоянии равновесия). При небольшом локальном изменении потенциала, можно продолжить
использование приближения плоских зон, если ввести небольшую поправку
в энергетический уровень локализованных состояний (рис. 1а). Для упрощения расчетов в этом случае считается, что все электроны сосредоточены
в области потенциальной ямы и их концентрация может быть найдена, используя локальный уровень Ферми и уровень локализованных состояний. В
этом случае концентрацию носителей в яме можно рассчитать по формуле:
8
Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»
n 2 D ( x, y ) =
1
dW
∑ρ
j
0
j
⎛
⎛ E fn ( x, y ) − E j ( x, y ) ⎞ ⎞
⎟⎟ ⎟ в яме,
kT ln⎜⎜1 + exp⎜⎜
⎟
kT
⎝
⎠⎠
⎝
(25)
n2 D ( x, y) = 0 вне её,
где dW – ширина ямы, ρ 0j – двумерная плотность состояний. Индекс j пробегает по всем локализованным состояниям. Уровень Ферми (Efn) и уровень
локализованных (Ej) состояний зависят от координаты. Изменение Ej следует за изменением потенциала, так же как и граница зоны проводимости.
Аналогичные рассуждения можно провести и для дырок.
Рис. 1. Схема модели распределения носителей в квантовой яме
для модели с приближением плоских зон (а) и нахождения
самосопряжённого решения (б)
Когда потенциальная яма находится в сильном электрическом поле,
она будет смещаться в сторону (рис 1б). Это смещение приводит к сильным
изменениям токов, что способно сильно повлиять на характеристики приборов. В таком случае вместо выражения (25) для описания концентрации
электронов в яме следует использовать следующее выражение:
9
Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»
⎛
⎛ E fn ( x, y ) − E j
n2 D ( x, y ) = ∑ g nj ( y ) ρ 0j kT ln⎜⎜1 + exp⎜⎜
kT
j
⎝
⎝
⎞⎞
⎟⎟ ⎟ ,
⎟
⎠⎠
(26)
где gnj(у) – волновая функция электрона при расположении ямы параллельно оси х. Уровень локализованных состояний Ej больше не является функцией координаты и постоянен внутри ямы. Для реализации этой модели необходимо значительно большее количество вычислительных ресурсов, так
как плотность носителей зависит от глобальной функции gnj(у) и необходимо обновлять волновую функцию и уровень локализованных состояний при
изменении напряжения на контактах прибора.
– Получение полностью самосопряжённого решения достигается с помощью нескольких итераций:
– В состоянии равновесия потенциал ищется, исходя из модели плоских зон, и концентрация носителей рассчитывается с помощью соотношения (25). Таким образом, получается начальное распределение потенциалов
и концентрации носителей.
– В состоянии равновесия ищется потенциал, используя для концентрации носителей соотношение (26). В результате получается новое распределение потенциала и концентрации носителей.
– Шаг 2 повторяется до получения численного согласования плотности
носителей и распределения потенциалов.
– После нахождения решения для состояния равновесия методом итераций изменяется напряжение, подаваемое на прибор, и повторяются шаги
2–3. В качестве начального решения используется решение для состояния
равновесия.
Рассмотрим модели ударной ионизации (УИ), используемые в САПР
Crosslight APSYS. Ударная ионизация выражается в генерации электроннодырочных пар в обратносмещённом p-n переходе или в толще полупроводниковой структуры. Для описания УИ в пакете можно выбрать одну из двух
моделей: модель Бараффа (Baraff) или модель Чиновета (Chynoweth). В общем случае УИ носителей может быть определена следующим выражением
для скорости генерации носителей [5]:
G = α n nvn + α p pv p ,
(27)
где αn – коэффициент ионизации электронами, определяемый как количество электронно-дырочных пар, сгенерированных электроном на единице
пройденного пути. αp похожим образом определяется для дырок. И αn, и αp
сильно зависят от величины электрического поля. Уравнение (27) достаточно сложно применить в диффузионно-дрейфовой модели, поскольку она не
связана со скоростью напрямую. Поскольку ударная ионизация происходит
только в областях с высокой напряжённостью электрического поля, где
наибольший вклад вносят дрейфовые слагаемые, Селбергером (Selberherr)
было предложено вместо nv использовать величину J/q для упрощения [6]:
10
Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»
G = αnJn q +α p J p q .
(28)
Вопрос выбора значений αn и αp остаётся открытым. Обычно для расчета УИ используется модель Чиновета [7]. Коэффициенты, стоящие в (28)
выражаются следующим образом:
α = α n∞ exp[− (Ecn E )] ,
(29)
где Ecn и E – критическая напряженность поля и напряженность действующего поля, соответственно. Это выражение впоследствии было записано в
обобщенном виде [6]:
(30)
α = α n∞ exp[− (Ecn E )κ ] .
Однако данная теория не рассматривает температурных зависимостей
УИ. Схожие выражения можно записать и для дырок. Как правило, эти
формулы верны в определённых пределах значений напряжённости электрического поля, и для моделирования всего диапазона его значений требуется знать несколько наборов параметров. При использовании модели Чиновета, необходимо указать α n∞ (коэффициент ионизации в электрическом
поле бесконечно большой напряжённости), Ecn (критическую напряженность поля), а также κn (показатель поля) для электронов и аналогичные параметры для дырок. Для GaAs набор параметров модели Чиновета при разных температурах представлен в [8].
Другая теория УИ носит название трехпараметрической теории Бараффа. Она учитывает температурные зависимости УИ носителей. Формула
для коэффициентов α в рамках данной теории была получена Кроуеллом
(Crowell) и Зи (Sze):
αλ = exp[g (r , x )] ,
(31)
при этом
n
(
)
g (r , x ) = 11.5r 2 − 1.17r + 3.9 × 10 −4 x 2 +
+ (46r 2 − 11.9r + 1.75 ×10 −2 ) x − 757r 2 + 75.5r + 1.92,
(32)
где
r = < E p > El ,
(33)
(34)
x = E l qFλ .
< Ep > – энергия оптического фонона, λ – рассеяние оптического фонона на длине свободного пробега, El – энергия ионизации, для которой была
получена следующая формула [9]:
E l = 3E g 2 .
(35)
Температурная зависимость < Ep > и λ рассчитывается соответственно
по следующим выражениям:
⎛ Ep ⎞
⎟,
< E p >= E p tanh ⎜⎜
⎟
2
kT
⎝
⎠
⎛ Ep ⎞
⎟.
λ = λ 0 tanh⎜⎜
⎟
⎝ 2kT ⎠
(36)
(37)
11
Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»
Конкретные значения этих параметров для обеих моделей могут быть
взяты из работ по соответствующим исследованиям, но в САПР APSYS по
умолчанию предусмотрен и набор значений этих параметров для кремния.
Подробно все теоретические модели, используемые в APSYS, описаны в
[10].
1.3. Численные методы, используемые в САПР Crosslight APSYS
Рассмотрим теперь некоторые численные методы, используемые САПР
APSYS при решении диффузионно-дрейфовых уравнений на дискретизированной дву- или трёхмерной сетке с конечными размерами ячеек. Будем
рассматривать только двумерный случай, имея в виду, что трёхмерная сетка
может быть представлена как множество плоскостей со специально подобранными соединениями ячеек на границах между ними.
Все программные модули САПР Crosslight APSYS используют решения диффузионно-дрейфовых уравнений. И поскольку основное время расчёта уходит на решение именно этих уравнений, мы сосредоточим своё
внимание именно на численных методах решения диффузионно-дрейфовых
уравнений.
Первые три дифференциальных уравнения в частных производных (1)–
(3) описывают электрические процессы, протекающие в полупроводниковых структурах. Уравнение Пуассона (1) определяет электростатический
потенциал а уравнения непрерывности для электронов и дырок (2)–(3) –
концентрации носителей заряда. Эти дифференциальные уравнения дискретизируются, как показано в следующем пункте. В результате получается
связанная система нелинейных уравнений. Поэтому не существует метода
решить эти уравнения одним прямым шагом. Вместо этого, решения необходимо получать нелинейным итерационным путём, начиная с некоторого
выбранного приближения. Методы решения и выбор начального приближения обсуждаются ниже.
Чтобы при помощи ЭВМ решить уравнения, описывающие электрические процессы в устройствах, их необходимо дискретизировать на некоторой сетке. Другими словами, непрерывные функции уравнений в частных
производных заменяются наборами их значений в узлах сетки, а дифференциальные операторы заменяются подходящими разностными операторами.
Теперь вместо того, чтобы искать четыре неизвестные функции (потенциал,
концентрации электронов и дырок и энергию электронов или дырок), достаточно отыскать 3N или 4N штук неизвестных, в зависимости от выбора
модели, где N – число узлов сетки.
Ключевым для дискретизации дифференциальных операторов на треугольной сетке общего вида является т.н. метод блоков [11]. Каждое уравнение интегрируется по площади небольшого полигона, включающего каждый узел, в результате чего получается 4N нелинейных алгебраических
12
Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»
уравнений относительно потенциала, концентраций и амплитуды волны.
Интегрирование приравнивает суммарный поток через полигон к источникам и стокам внутри него, поэтому сохранение тока и заряда автоматически
соблюдается в получаемом решении. Соответствующие интегралы вычисляются с переходом от одного треугольника к другому, что обеспечивает
простой и элегантный метод работы со сложными поверхностями и граничными условиями. В таких случаях интеграл просто замещается суммой подынтегральных выражений, вычисленных в узле и перемноженных с площадью поверхности вокруг него.
Для уравнений непрерывности потоки носителей заряда должны быть
тщательно и точно определены классические разностные схемы в этом случае модифицируются, как впервые было показано Шарфеттером и Гуммелем в 1969 г. С точки же зрения пользователя, дискретизация происходит в
автоматическом режиме, не требующем вмешательства.
Обсудим кратко численные методы решения дифференциально-дрейфовых уравнений, применяемые в САПР Crosslight APSYS. В методе Ньютона учитывается взаимосвязь между переменными, и в то же время все переменные могут менять своё значение на каждой итерации. Благодаря этим
двум свойствам, алгоритм Ньютона весьма устойчив, а время на решение
практически не зависит от величины подаваемых напряжений. Базовым является алгоритм Ньютона – Рафсона, обобщённый на случай единственного
уравнения. Уравнения (1)–(3) могут быть записаны в следующем виде.
(31)
Fv j (V j1 , E fnj1 , E fpj1 ) = 0 ,
(32)
Fnj (V j1 , E fnj1 , E fpj1 ) = 0 ,
(33)
F pj (V j1 , E fnj1 , E fpj1 ) = 0 ,
где j пробегает значения от 1 до N, а j1 включает само j и окружающие его
узлы сетки. Всего уравнений (31)–(33) 3N штук, чего достаточно для нахождения 3N переменных: (V 1 , E 1fn , E 1fp ,V 2 , E 2fn , E 2fp ,…,V N , E fnN , E fpN ).
Как только уравнения будут приведены к надлежащему виду, для их
решения используются стандартные операции метода Ньютона, среди которых – расчёт матрицы Якоби для линеаризации уравнений (31)–(33), решение полученных в результате линеаризованных уравнений (в т.ч. LUфакторизация матрицы) и, наконец, нелинейное итерирование для получения окончательного ответа. Поскольку матрица Якоби – разреженная, для
ускорения расчётов применяются соответствующие методы.
Существенно более быстрым является метод Ньютона-Ричардсона, в
котором матрица Якоби разлагается на множители только при необходимости. Если такой необходимости нет, применяются итеративный метод с использованием предыдущего разложения. При разумном числе множителей
разложения на предыдущем шаге этот итеративный метод работает с внушительной скоростью. Часто при использовании метода Ньютона – Ричардсона достаточно разложить якобиан на множители лишь один или два
13
Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»
раза на один отсчёт напряжений на контактах, в то время как в классическом методе Ньютона разложение необходимо проделать 20–30 раз. Решение о пересчёте разложения принимается на основе значения пошагового
снижения наибольшей ошибки как остатков после вычитания в уравнении,
так и разностей переменных.
Важным шагом метода Ньютона является выбор начального приближения. При моделировании САПР APSYS использует несколько типов начальных приближений. Одним из них является простое предположение о
зарядовой нейтральности, позволяющее найти первые (равновесные) напряжения на контактах. Для волнового уравнения начальным приближением является дельта-функция в центре активной области. Это первая ступень
моделирования любого устройства. Любое дальнейшее решение при ненулевых напряжениях на контактах требует начального приближения того или
иного типа, полученного путём модификации одного или двух предыдущих
решений. Если известно только предыдущее решение, то текущее решение
используется в качестве начального приближения, модифицированного выставлением напряжений на контактах. Так же поступают при решении волнового уравнения. Если же известны два предыдущих решения с двумя разными напряжениями на контактах, то появляется возможность получить
лучшее начальное приближение путём интерполирования этих решений на
текущее в соответствии с двумя предыдущими значениями напряжений на
контактах и текущими значениями. Схема подачи напряжений на контакты
представлена на рис. 2.
Рис. 2. Блок-схема последовательности действий в процессе моделирования
14
Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»
Как и в любом методе Ньютона, сходимость сильно зависит от правильного выбора начального приближения. В принципе, нелинейное итерирование в этом методе всегда сходится, если начальное приближение достаточно близко к решению – чем ближе, тем меньше нелинейных итераций
необходимо для достижения сходимости. САПР APSYS берёт во внимание
этот факт и применяет адаптивный метод для контроля величины шага прикладываемого напряжения после того, как предыдущее решение сошлось.
Главное преимущество метода – высокая устойчивость. Как только все
уравнения дискретизированны, исходя из значений в предыдущий отсчёт
времени, решение в настоящий момент является равновесным решением,
что даёт возможность линеаризовать дискретизированные уравнения и
пользоваться методом Ньютона для их решения.
При моделировании работы полупроводниковых устройств большое
значение имеет правильный выбор сетки. Число узлов в сетке (N) непосредственно влияет на время расчёта, в котором число арифметических операций, необходимых для нахождения решения, пропорционально Np, где p
обычно лежит в пределах от 1,5 до 2. Поскольку различные части устройства могут проявлять самые разные электрические и оптические свойства, как
правило, необходимо сгустить сетку в одних областях и проредить в других. Желательно по мере возможности не позволять более густой сетке покрывать области, не нуждающиеся в этом, чтобы обеспечить разумное время расчёта. В САПР Crosslight APSYS используется относительно несложный алгоритм генерации и сгущения сетки, описанный ниже.
Первым шагом при создании сетки является определение границ областей и структуры в целом для каждого материала. Для описания любого
устройства САПР APSYS использует треугольники или тетраэдры в качестве базовых ячеек. Кроме того, края любого полигона могут быть изогнуты
для получения требуемой формы. Следующим шагом после определения
границ при генерировании сетки является проведение линий параллельно
краям полигонов (рис. 3). Таким способом получаются малые тетраэдры,
которые могут быть представлены как треугольники, которые, в свою очередь, являются основными элементами в методе сгущения сетки.
Рис. 3. Реализация основной операции при генерировании сетки.
Линии вдоль d2 используются для сгущения сетки вблизи центра полигона
15
Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»
Другой базовой операцией является удвоение плотности сетки в некоторой области, как показано, например, на рис. 3. Удвоение совершается проведением новой линии между уже имеющимися. Повторяя операцию, можно вручную сгенерировать сетку с любым распределением плотностей сетки.
2. СРЕДА ПРОЕКТИРОВАНИЯ CROSSLIGHT APSYS
2.1. Интерфейс и работа с модулем SimuApsys
Основной утилитой с графическим пользовательским интерфейсом в
пакете CrossLight Apsys является SimuApsys. Она выполняет функции менеджера проекта, позволяет вручную редактировать его файлы, открывать,
если это необходимо, другие утилиты пакета и управлять процессом моделирования. Окно программы (рис. 4) разделено на четыре области: область
№1, где показывается структура проекта, входные и выходные данные; область №2, где отображаются выбранные файлы проекта с возможностью их
редактирования; область №3, где показывается ход процесса моделирования, а также отчет о произведенных операциях; область №4, в которой выводятся подсказки. Отображением всех указанных областей можно управлять из пункта «View» главного меню программы. Кроме этого в главном
меню находятся и другие пункты. Пункт меню «File» позволяет производить различные операции с файлами проекта (создавать, сохранять, открывать и закрывать уже имеющиеся проекты, импортировать и распечатывать
отдельные файлы проекта, а также переключаться между проектами, если
их открыто несколько). «Edit» соответствует обычному меню текстового
редактора и позволяет производить операции с буфером обмена, поиск в
пределах открытого для редактирования файла, запускать мастер редактирования команд («Wizard»). Для этого необходимо выделить в редактируемом файле команду и выбрать этот подпункт меню либо нажать клавиши
Ctrl+W. Окно мастера команд представлено на рис. 5, в котором слева вверху находится список команд, справа опции команды, а внизу её полное описание. Пункт главного меню «Action» позволяет: запускать другие приложения пакета для редактирования различных файлов проекта («Setup
device»); редактировать макросы материалов (в которых заложены их параметры) и файл высокочастотных характеристик моделируемого прибора
(«Physical Property»); запускать моделирование и редактировать .sol файл
проекта («Main Simulation»); анализировать результаты моделирования
(«View Result»); создавать и запускать пакетные файлы (для создания списка команд моделирования); останавливать моделирование («Terminate»).
Пункт главного меню «Project» служит для управления файлами проекта, а
«Windows» для работы с окнами программы. В пункте «Help» можно воспользоваться описанием различных примеров, справкой по работе с программой и командам файлов проекта.
16
Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»
Рис. 4. Внешний вид программы SimuApsys
Рис. 5. Мастер создания и редактирования команд
Файлы проекта можно редактировать вручную с помощью двойного
щелчка мыши по его имени или, для некоторых, через правый щелчок мы17
Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»
ши на имени выбрать программу с графическим интерфейсом. Так же через
контекстное меню можно сгенерировать .geo файл из .layer, файл с сеткой
(.mesh), запустить расчёт (из .sol файла) и посмотреть результаты (с помощью .plt файла).
2.2. Интерфейс и работа с модулем LayerBuilder
Для построения модели удобно воспользоваться утилитой LayerBuilder, внешний вид которой показан на (рис. 6.) Для добавления новой колонки или слоя можно воспользоваться меню Column/Layer соответственно или
кнопками на панели. Для изменения свойств слоя или колонки можно воспользоваться командой Properties из контекстного меню. Опции, доступные
при создании и последующем редактировании не отличаются и включают:
толщину слоя и ширину колонки, разбиение сетки для слоя и колонки, материал, легирование и свойства примесей и расположение контактов.
При редактировании модели в LayerBuilder после создания колонки все
слои в ней будут иметь одинаковую ширину и такое же разбиение сетки
(будет описано в третьем разделе) в колонке. Аналогично для слоёв – один
слой из разных колонок будет иметь одинаковую высоту и разбиение сетки
во всей модели. Подробное описание каждого из свойств доступно в справке к программе.
Рис. 6. Внешний вид программы LayerBuilder
18
Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»
Рис. 7. Окно Properties для слоя в редакторе LayerBuilder
2.3. Интерфейс и работа с модулем GeoEditor
GeoEditor (рис. 8) аналогично LayerBuilder позволяет построить модель
исследуемой структуры с заданием типов материалов и легирования различных её частей. Однако возможности GeoEditor для формирования сложных геометрических структур значительно шире. Кроме прямоугольных областей, он позволяет использовать многоугольники произвольной формы, в
том числе с границами в виде дуг. Редактирование производится либо через
кнопки, расположенные на панели (создать новый прямоугольник, создать
полигон произвольной формы, задать разбиение сетки во всей модели, переместить один из узлов многоугольника, масштабировать или повернуть
объект), либо с помощью мастера создания полигонов, в котором можно
редактировать различные параметры областей структуры. В мастере доступен выбор материалов, который должен соответствовать материалу полигона, а также изменение концентраций примеси и области, в которой она расположена в данном материале. Возможно изменение профиля легирования,
который может иметь в качестве задающей функцию гаусса, интеграл вероятности или резкий профиль.
19
Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»
Рис. 8. Внешний вид программы GeoEditor
2.4. Интерфейс и работа с модулем CrosslightView
CrosslightView используется для просмотра результатов моделирования и построения графиков. Внешний вид программы представлен на
(рис. 9). В выпадающем списке панели инструментов можно выбрать, график какой величины будет выведен на экран. Панель ниже управляет видом
графика – контурный или в виде цветных областей, показываются ли контакты и сетка, представление в виде поверхности. Боковая панель позволяет
построить распределение величины вдоль сечения или в выбранной области, поменять детальность графика, изменить угол вида для трёхмерных
графиков и вернуть параметры вида к значениям по умолчанию.
Рис. 9. Внешний вид программы CrossLightView
20
Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»
После выбора .std файла, данные из которого будут использоваться для
построения графиков, можно выбрать величину и настройки вида графика.
Для выбора величины используется выпадающий список горизонтальной
панели инструментов. Панель ниже и сбоку управляет видом и детальностью графика:
– включает отображение трёхмерной структуры в виде цветных контуров;
– двумерное изображение в виде контуров;
– двумерное изображение в виде цветных областей;
– показать линии тока для трёхмерных структур;
– показывать границы материалов;
– показывать сетку;
– показывать контакты;
– отобразить двумерный график в виде трёхмерной поверхности (как
цветное полотно);
– отобразить двумерный график в виде трёхмерной поверхности (как
сетка);
– показать линии тока для двумерных структур;
– задаёт плотность отображения линий тока для двумерных структур;
– строит графики зависимости параметров от расположения по оси Z
при исследовании трёхмерных структур;
– строит графики зависимости различных параметров друг от друга;
– показать отчёт, построенный с помощью .plt файла;
– отобразить несколько графиков одновременно;
– построение анимации;
– совмещение нескольких графиков на одном. В отличии от предыдущего случая производится совмещение графиков в одних координатных осях;
– закрывает все открытые файлы данных и построенные графики;
– берёт сечение графика;
– свободное вращение (только для трёхмерных графиков);
21
Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»
– сдвиг графика в окне (полезно при приближении, когда весь график
не помещается на экране);
– масштабирование графика;
– сброс всех настроек вида к значениям по умолчанию;
– зафиксировать шкалу (необходимо при построении и сравнении нескольких графиков, в которых максимальные значения величин отличаются, и автоматически для каждого из них выбираются различные границы
отображения);
– выбор прямоугольного региона для отображения;
– использовать весь цветовой диапазон для шкалы значений;
– использовать перспективную проекцию (только для отображения трёхмерных структур);
– использовать параллельную проекцию (только для отображения трёхмерных структур);
– задаёт разрешение графика, его цвет, угол поворота и расположение
камеры для трёхмерных графиков;
– задаёт метод построения графиков, связывающих различные параметры;
– задаёт размер текста в подписях;
– показывает оси;
– показывает шкалу цветов, используемых на графике;
– показывает легенду с информацией об исходных данных и графике;
– задаёт настройки изображения заднего фона;
– задаёт цвет заднего фона и осей.
3. ПРОЦЕДУРЫ ПРОЕКТИРОВАНИЯ
И ОСНОВНЫЕ ФАЙЛЫ ПРОЕКТА
Проводимые в пакете расчёты описываются в нескольких файлах проекта. Основными являются файлы с расширениями .layer, .sol и .plt. Они определяют геометрию исследуемой структуры; материалы и распределение в
них примесей; сетку, по которой ведётся расчёт; последовательность расчёта
и его параметры; генерируют отчёт по результатам моделирования. Пользователь может самостоятельно составить каждый из этих файлов в текстовом
редакторе или воспользоваться входящими в состав пакета программами с
22
Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»
графическим интерфейсом. В зависимости от задач и детализации исследуемых структур в проекте могут создаваться дополнительные файлы.
Структура файлов проекта показана на (рис 10). Основные файлы –
layer, sol и plt. В большинстве случаев задаваемые через них параметры
полностью описывают необходимую структуру и последовательность решения, хотя для описания каких-либо специфических особенностей может
потребоваться ручное редактирование других проектных файлов.
– .layer содержит описание исследуемой структуры – геометрию, материалы, распределение примесей. Из него автоматически генерируются .geo,
.mater, .doping и .mplt файлы.
– .geo содержат описание геометрии исследуемой структуры. Из него
генерируется .mesh файл.
– .doping содержит распределение концентраций и свойства примесей в
исследуемой структуре.
– .mater содержит описание свойств материалов исследуемой структуры.
– .mesh, .doping и .mater используют формат данных, применяемый в
качестве входных данных программой численного расчёта.
– .mplt используется для визуализации сетки, по которой будет вестись
расчёт.
– .gain содержит дополнительные данные для предпросмотра спектра
оптического усиления, спектра спонтанного излучения, подуровни в квантовой яме или другие физические свойства, что может быть использовано
для проведения предварительных расчётов до полного моделирования.
– .out выходные файлы с результатами моделирования (могут иметь
расширение .out_0001, .out_0002 и т.д.). Используются в качестве входных
данных .plt файлами.
– .std вспомогательные файлы с результатами расчёта, используемые
утилитой CrosslightView.
– .plt содержат описание построения отчёта о моделировании в виде
различных графиков. Использует GNUPlot для построения графиков, что
позволяет получить результат в виде векторных (postscript) или растровых
картинок (bmp).
Рис. 10. Структура файлов проекта
23
Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»
Поскольку основные части программы работают с файлами .layer, .sol
и .plt, можно вручную редактировать каждый из этих файлов. Возможно
написание проекта с нуля, на основе имеющихся примеров с необходимыми
поправками или использую специальные утилиты. Прямой подход предпочтительней для использования всех возможностей программы, но требует
большего времени на изучение всех необходимых команд, используемых во
входных файлах. Использование специальных утилит, особенно с графическим пользовательским интерфейсом, ускоряет процесс обучения и использования пакета для моделирования простых структур.
Для создания моделируемой структуры можно использовать консольную утилиту setuplayer, генерирующую .layer файл. .sol и .plt можно создать
с помощью консольной утилиты setupapsys. Утилиты с графическим пользовательским интерфейсом объединены в единую среду SimuApsys, позволяющую управлять всем проектом, редактировать файлы вручную или вызывать для этого дополнительные программы, проводить расчёт и анализ
результатов.
При ручном редактировании файлов необходимо знать, что длина
строки не может быть более 80 символов. Если все аргументы используемой команды занимают больше места, нужно использовать перенос строки
с помощью &&. Для добавления комментариев в файлы проекта используется символ $ в начале строки. Если понадобится изменение файлов внешними программами, надо обратить внимание, что Apsys использует в конце
строк перенос строки по unix стандарту, что поддерживается не всеми текстовыми редакторами в windows.
Первый шаг в подготовке моделирования – описание геометрии устройства, его материалов и распределения примесей. На основании этой информации получается сетка, используемая в алгоритме расчёта, и промежуточные файлы с описанием свойств материалов. Сама сетка хранится в файле .msh в виде списка номеров и координат узлов. Для получения сетки используется .geo файл, содержащий всю необходимую информацию о геометрии полупроводниковой структуры. .geo файл является наиболее гибким
и многофункциональным инструментом для описания геометрических данных при анализе методом конечных элементов и позволяет описать практически любую структуру. Но .geo файл использует абсолютные координаты
и сложные команды для создания полигонов, что не всегда необходимо.
Например, для полевых транзисторов, содержащих только несколько параллельных слоёв полупроводника. В таких случаях имеется смысл воспользоваться утилитой layer, позволяющей генерировать .geo файлы с использованием более простого синтаксиса.
24
Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»
3.1. Синтаксис layer файла
При описании структуры в layer файле (листинг 1) предполагается, что
её можно представить в виде одного или нескольких параллельных слоёв,
поделенных на несколько столбцов.
Первая команда layer файла begin_layer, последняя end_layer. Между
ними содержится описание слоёв и столбцов моделируемой структуры.
Столбцы определяются с помощью команды column и одинаковы для
всех слоёв. В качестве параметров необходимо указать номер столбца (column_num=X), ширину столбца в микрометрах (w=0.5), количество линий
сетки в колонке (mesh_num=3) и распределение линий сетки (r=1.0). При
r=1 линии сетки распределены равномерно, при r>1 линии сетки расположены с большей плотностью около левой границе колонки, при r<1 около
правой границы. При отрицательных значениях r<–1 линии сетки располагаются с большей плотностью вблизи центра столбца, при r>–1 у его границ. Изменение плотности линий сетки позволяет увеличить точность расчёта в выбранных областях, что позволит как более детально наблюдать исследуемые процессы, так и улучшить сходимость при расчётах. Для увеличения плотности сетки вблизи границы можно добавить параметр xp1=1 для
левой границы и/или xp2=1 для правой.
Слои определяются командой layer. Для слой необходимо указать
толщину в микрометрах (d=1), количество линий сетки (n=5) и распределение сетки (r=1.0), дополнительные точки на границе слоя (xp1 и xp2). Параметры и возможные значения при описании слоёв аналогичны используемым при описании столбца.
Материал задаётся для каждого слоя с помощью команды layer_mater,
после чего указывается тип материала с помощью macro_name; номер колонки, для которой будет применён материал, с помощью column_number и
параметры материала, зависящие от его типа.
Листинг 1
begin_layer
column column_num=1 w=1. mesh_num=2 r=1.
bottom_contact column_num=1 from=0 to=1. contact_num=1
layer_mater macro_name=si column_num=1
layer d=1. n=15 r=0.9 n_doping1=1.5e24
layer_mater macro_name=si column_num=1
layer d=0.2480 n=32 r=0.8 n_doping1=1.e2
layer_mater macro_name=si column_num=1
layer d=0.0039 n=15 r=1. p_doping1=2.9e24 &&
gaussian_tail=0.0001
layer_mater macro_name=si column_num=1
25
Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»
layer d=0.0480 n=32 r=1.2 n_doping1=1.e2
layer_mater macro_name=si column_num=1
layer d=1. n=15 r=1.1 n_doping1=4.e24
$
top_contact column_num=1 from=0 to=1. contact_num=2
end_layer
3.2. Синтаксис geo файла
Сетка генерируется двумя группами команд (листинг 2). Первая ограничена begin_geometry и end_geometry. В ней содержатся команды point и
polygon – базовые элементы для построения любых структур. При описании многоугольника его вершины указываются в порядке обхода против
часовой стрелки. До описания структуру имеет смысл построить её схему с
подписями для каждой точки и многоугольника. Контакты, через которые
будет прикладываться внешнее напряжение, описываются с помощью команды boundary_х, где х – номер контакта. Для контакта указывается граница полигона, на котором он находится и его положение, если он меньше,
этой границы. Непрямые границы можно получить, используя команду
edge_curve. Для каждого многоугольника надо указать материал. При этом
использовать два и более материалов для одного многоугольника не допускается, для каждого материала описывается своя область. Если у одного материала есть две области с различным легированием, то они должны определяться как разные многоугольники.
Вторая группа команд ограничена begin_meshgen и end_meshgen. В
неё входят команды put_mesh, double_mesh и multi_double. Основная команда, используемая в этом разделе, – put_mesh. Она описывает сетку
вдоль одной из границ многоугольника, при этом линии сетки автоматически проходят через границы с другими многоугольниками и для них не обязательно указывать put_mesh ещё раз. Дополнительно можно использовать
команду double_mesh для удвоения плотности сетки в определённой области многоугольника. Параметры extra_point_1 и extra_point_2 используются для добавления дополнительных линий сетки вблизи резких гетеропереходов. В пакете Crosslight Apsys ширина перехода определяется минимальным шагом сетки на границе раздела. Далее приведён пример .geo фала,
описывающего структуру из предыдущего примера.
Листинг 2
begin_geometry
point label=a01 xy=[ 0.000000E+00 0.000000E+00 ]
point label=a02 xy=[ 0.000000E+00 0.100000E+01 ]
26
Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»
point label=a03 xy=[ 0.000000E+00 0.124800E+01 ]
point label=a04 xy=[ 0.000000E+00 0.125190E+01 ]
point label=a05 xy=[ 0.000000E+00 0.129990E+01 ]
point label=a06 xy=[ 0.000000E+00 0.229990E+01 ]
$
point label=b01 xy=[ 0.100000E+01 0.000000E+00 ]
point label=b02 xy=[ 0.100000E+01 0.100000E+01 ]
point label=b03 xy=[ 0.100000E+01 0.124800E+01 ]
point label=b04 xy=[ 0.100000E+01 0.125190E+01 ]
point label=b05 xy=[ 0.100000E+01 0.129990E+01 ]
point label=b06 xy=[ 0.100000E+01 0.229990E+01 ]
$
polygon name=p01 4_points=[ a01 b01 b02 a02 ] &&
material=1 boundary_1=[ a01 b01 ] &&
limits_1=[ 0.000000E+00 0.100000E+01 ]
polygon name=p02 4_points=[ a02 b02 b03 a03 ] &&
material=1
polygon name=p03 4_points=[ a03 b03 b04 a04 ] &&
material=1
polygon name=p04 4_points=[ a04 b04 b05 a05 ] &&
material=1
polygon name=p05 4_points=[ a05 b05 b06 a06 ] &&
material=1 boundary_2=[ b06 a06 ] &&
limits_2=[ 0.000000E+00 0.100000E+01 ]
end_geometry
begin_meshgen
put_mesh polygon=p01 edge=[ b01 b02 ] &&
point_from= 0.000000E+00 point_to= 0.100000E+01 &&
number= 15 ratio= 0.900000E+00
put_mesh polygon=p02 edge=[ b02 b03 ] &&
point_from= 0.000000E+00 point_to= 0.248000E+00 &&
number= 32 ratio= 0.800000E+00
put_mesh polygon=p03 edge=[ b03 b04 ] &&
point_from= 0.000000E+00 point_to= 0.390000E-02 &&
number= 15 ratio= 0.100000E+01
put_mesh polygon=p04 edge=[ b04 b05 ] &&
point_from= 0.000000E+00 point_to= 0.480000E-01 &&
number= 32 ratio= 0.120000E+01
put_mesh polygon=p05 edge=[ b05 b06 ] &&
point_from= 0.000000E+00 point_to= 0.100000E+01 &&
number= 15 ratio= 0.110000E+01
put_mesh polygon=p01 edge=[ a01 b01 ] &&
27
Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»
point_from= 0.000000E+00 point_to= 0.100000E+01 &&
number= 2 ratio= 0.100000E+01
$
mesh_output mesh_outfile=camel.msh order=yes
end_meshgen
Неправильное построение сетки для расчёта является самой частой
причиной невозможности получения правильного решения. Самым простым способом улучшения сходимости является использование мелкой сетки во всех областях, но это потребует слишком больших вычислительных
мощностей. Кроме того, в пакете Crosslight Apsys максимальное число точек в сетке ограничено и при его превышении расчёт будет невозможен.
Частая сетка необходима только вблизи переходов и областей, в которых
количество носителей резко меняется. Если решение не сходится, имеет
смысл обратить внимание на подобные области, использовать refine_mesh
и повторить расчёт.
3.3. Синтаксис sol файла
Файл .sol содержит настройки программы, определяющие входные и
выходные данные для моделирования, последовательность решения. Содержащиеся в нём команды заключаются между директивами begin в начале файла и end в конце.
С помощью load_mesh загружается сетка, по которой производится
расчёт. output задаёт файлы, в которые будут сохраняться результаты для
дальнейшей обработки. Если имена выходных файлов и файлов сетки отличаются от имени .sol файла, то на проведении расчётов это не скажется, но
затруднит работы с некоторыми модулями программы. Поэтому рекомендуется использовать одинаковые имена для всех файлов в проекте, меняя
только расширения в зависимости от их типов.
Далее в настройки расчёта указывается информация о легировании и
материалах с помощью директивы include.
После этого можно указать дополнительные параметры для решения
системы уравнений, описывающих процессы в полупроводнике или сразу
перейти к моделированию подготовленной структуры.
Для моделирования используется две команды – equilibrium и scan.
equilibrium ищет решение при нулевом напряжении на контактах, scan
прикладывает напряжение/ток для нахождения стационарных состояний
или изменяет время для исследования переходных процессов. Перед каждой
из этих команд можно указать параметры метода решения системы уравнений с помощью newton_par. Чаще всего указывается максимальный шаг с
помощью damping_step; точность с помощью var_tol и res_tol; максималь28
Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»
ное количество шагов max_iter, после которых считается что решение при
текущем шаге не сходится и происходит попытка нахождения решения при
меньшем шаге; opt_iter – оптимальное количество шагов, необходимое для
нахождения решения (используется для автоматического выбора длины шага с целью увеличения скорости решения); максимальное количество шагов,
при которых ошибка не уменьшается и делается попытка решения с меньшим шагом, – stop_iter (имеет смысл делать меньше, чем max_iter, для ускорения расчёта); для изменения количества информации, записываемой в
файл журнала о ходе решения – print_flag. Далее приведён пример sol файла:
Листинг 3
begin
load_mesh mesh_inf=camel.msh
include file=camel.doping
include file=camel.mater
output sol_outf=camel.out
more_output ac_data=yes
newton_par damping_step=5. var_tol=1.e-9 res_tol=1.e-9 &&
max_iter=100 opt_iter=15 stop_iter=50 print_flag=3
equilibrium
newton_par damping_step=1. var_tol=1.e-4 res_tol=1.e-5 &&
max_iter=30 opt_iter=15 stop_iter=15 print_flag=3 &&
change_variable=yes
scan var=voltage_1 value_to=1.5 print_step=2.2 &&
init_step=0.2 min_step=1.e-5 max_step=0.05
end
3.4. Работа с результатами расчета с помощью файлов .plt
Все результатов расчетов в APSYS записываются и сохраняются в
файлы, имя которых определяется после оператора output в файле с расширением .sol. Возможны два варианта выходных файлов. Один из них – файлы с расширением .out, которые использовались в более ранних версиях
программы; и с расширением .std, являющиеся основными в пакете APSYS
2007. Имя файлов, в которых содержится результат сохраняется, а расширение меняется по следующей маске: *.std#### или *.out####. Вместо знаков ‘####’ подставляется номер расчетной точки. Например, результаты
первой расчетной точки будут зафиксированы в файле с расширением
*.std0001 или *.out0001.
Все выходные данные делятся на два класса: «bias data» – данные, которые включают в себя изменения параметров полупроводниковой струк29
Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»
туры при изменении напряжения и тока на контактах моделируемого прибора или интенсивности светового излучения, действующего на полупроводник; «structural data» – данные, включающие в себя пространственные
зависимости различных характеристик от координат двумерной структуры
прибора (потенциал, концентрация носителей заряда, распределение токов,
спектр оптической проводимости и пр.). Пакет сохраняет на диск основные
характеристики полупроводника. Для экономии дискового пространства остальные параметры рассчитываются из основных характеристик, что не
уменьшает точности проводимого моделирования. Некоторые специфические параметры, такие как УИ, туннелирование, характеристики взаимодействия светового поля и полупроводника, высокочастотные параметры и др.
сохраняются в выходных данных только, если специально указать это соответствующими командами в файле с расширением .sol.
Данные bias data сохраняются на диск в файл с расширением .sol.msg с
определенным в файле .sol шагом. Анализируя этот файл можно определить, как изменяются напряжение и ток на контактах моделируемого прибора при изменении режима работы или в течение времени. Данный способ
используется для анализа данных в «ручном» режиме. Пример этого выходного файла для прибора с четырьмя контактами представлен в листинге 4.
Листинг 4
2007 10
31
15
30
51
Data set #
1 printed at
Voltage: (Volt) 0.0000E+00 0.0000E+00 0.0000E+00 0.0000E+00
Current: (A/m) 0.0000E+00 0.0000E+00 0.0000E+00 0.0000E+00
……
Data set #
4 printed at
Time:(Sec.) 0.1000E-11
Voltage: (Volt) 0.0000E+00 -0.1500E+01 0.2000E+01 0.0000E+00
Current: (A/m) -0.1971E+03 0.4304E+03 -0.1858E+03 -0.4743E+02
Числа, стоящие в заголовке файла указывают год, месяц, число, час,
минуты и секунды соответственно; Data set # указывает номер расчетной
точки; Voltage: (Volt) показывает напряжение на соответствующем контакте
в Вольтах (номер столбца определен номером контакта, который определяется в файле с расширением .); Current: (A/m) – ток на соответствующем
контакте в А/м (данная размерность определяет плотность тока, который
проходит перпендикулярно одномерной поверхности длинной в метр, такая
величина используется в выходных данных, поскольку применяется двумерное моделирование, а ток не должен зависеть от конструктивных параметров структуры); Time: (Sec.) – используется, если моделирование происходит во временной области, и указывает на временное положение отсчета.
30
Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»
Если решение сошлось в данной расчетной точке, то соответствующий
выходной файл можно использовать для анализа. Причем анализировать его
можно сразу, до окончания моделирования, как только он будет сохранен
на диск.
Для анализа кроме утилиты CrosslightView, описанной выше, можно
использовать возможности самой среды проектирования с помощью файлов
.plt. Утилита применяется в основном для детального анализа структурных
параметров модели прибора (structural data). Анализ с помощью файлов .plt
позволяет формировать файл результатов моделирования в формате
PostScript (.ps), в котором можно вывести кроме структурных данных, ещё и
их изменение со временем или при меняющихся условиях: температуре, напряжениях или токах на контактах, световом поле и т.д. Такой подход оказывается предпочтительным, не зависит от операционной системы и облегчает работу научного коллектива. Пример файла .plt представлен в листинге
5 [10].
Листинг 5
begin_pstprc
plot_data plot_device=postscript
$ ---- построить одномерный график распределения энергетических
зон
$ ---- (band) полупроводниковой структуры в сечении вдоль yкоординаты
$ ---- от 0 до 2.3, а по x-координате 0.5.
get_data main_input=camel.sol sol_inf=camel.out &&
xy_data=(1 1)
plot_1d variable=band from=(0.5 0.0) to=(0.5, 2.3)
$ ---- построить график для распределения энергетических зон и проекции
$ ---- вектора тока электронов на ось y (elec_curr_y) в том же сечении
get_data main_input=camel.sol sol_inf=camel.out &&
xy_data=(9 9)
plot_1d variable=band from=(0.5 0.0) to=(0.5, 2.3)
plot_1d variable=elec_curr_y from=(0.5 0.0) to=(0.5, 2.3)
$ ---- построить график зависимости тока на первом контакте (total
$ ---- _curr_1) от меняющегося напряжения на нем же (voltage_1).
get_data main_input=camel.sol sol_inf=camel.out &&
scan_data=(1 9)
plot_scan scan_var=voltage_1 variable=total_curr_1 scanline=2
$ ---- вывод графиков с высокочастотными характеристиками: емкостью
31
Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»
$ ---- (capacitance_1) и проводимостью (capacitance_1) контакта номер 1
get_data main_input=camel.sol sol_inf=camel.out &&
xy_data=(9 9)
ac_voltage log_freq1=1 log_freq2=10 contact_num=1
plot_ac_curr variable=capacitance_1
plot_ac_curr variable=conductance_1
ac_voltage current_distr=yes log_freq1=1 log_freq2=1
plot_1d_ac_curr variable=elec_curr_y imag_part=no from=(0.5 0.) to=(0.5
2.3)
$ ---- Графики зависимостей емкости (capacitance_1) и проводимости
(ca
$ ---- pacitance_1) от напряжения на контакте 1 при частоте 1 МГц.
$ ---- Первая расчетная точка представляет собой начальное решение в
$ ---- отсутствии полей и прочих воздействий, поэтому строить график
$ ---- необходимо начиная со второй точки
get_data main_input=camel.sol sol_inf=camel.out &&
scan_data=(2 9)
ac_voltage log_freq1=6 log_freq2=7 contact_num=1 &&
freq_point=2 versus_bias=yes scanline=2
set_plot scan_var=voltage_1
plot_ac_curr variable=capacitance_1
plot_ac_curr variable=conductance_1
end_pstprc
В файле .plt указывается его начало и конец (begin_pstprc и
end_pstprc, соответственно). С помощью команды plot_data задается тип
выходного файла. В версии для Windows этот тип всегда определен следующим образом: plot_device=postscript. Параметр main_input указывает,
какой файл расчета использовался при моделировании. Команда get_data
используется для указания файлов, из которых необходимо извлечь данные.
Параметр xy_data указывает, из каких файлов нужно извлекать структурные данные, а scan_data – данные для построения зависимостей от изменяющихся полей и других внешних условий. При этом в скобках указываются номера расчетных точек. Для построения графиков в выходном файле
.ps можно использовать команды plot_1d, plot_2d, plot_3d, plot_ac_curr,
ac_voltage, plot_ac_parameters и plot_scan для вывода интересуемых характеристик полупроводниковой структуры. Полный список параметров
полупроводниковой структуры, которые можно посмотреть для проведения
анализа результатов, а также все настройки графиков и команд находятся во
встроенной справке к программе или мастере формирования команды.
32
Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»
СПИСОК ЛИТЕРАТУРЫ
1. APSYS User’s Manual Version 2005.11 1st Edition [Text] / Crosslight
Software Inc, 2005. – 494 p.
2. Azo E.M. Energy transport numerical simulation of graded AlGaAs/GaAs
heterojunction bipolar transistors [Text] / E.M. Azoff [et al.] // IEEE Trans. ED. –
1989. –V. 36. – P. 609–616.
3. Смит Р.А. Полупроводники [Текст] / Р.А. Смит ; пер. с англ. под ред.
Н.А. Пенина. – М. : Мир, 1982. – 558 с.
4. Питер Ю. Основы физики полупроводников [Текст] / Ю. Питер ;
пер. с англ. И.И. Решениной ; под ред. Б.П. Захарченко. – М. : Физматлит,
2002. – 560 с.
5. Sze S. M. Physics of semiconductor devices. Second Edition / S. Sze. – A
Wiley-Interscience Publication, 1981. – 442 p.
6. Selberherr S. Analysis and simulation of semiconductor devices [Text] /
S. Selberherr. – Wien ; New York : Springer. – Verlag, 1984. – 320 p.
7. Chynoweth A. G. Ionization rates for electron and holes in silicon [Text] /
A. G. Chynoweth // Phys. Rev. – 1958. – V. 109. – P. 1537.
8. Groves C. Temperature Dependence of Impact Ionization in GaAs [Text] /
C. Groves [et al.] // IEEE Trans. – 2003. – V. 50–10. – P. 2027–2031.
9. Crowell C. R. [Text] / C. R. Crowell and S. M. Sze // Appl. Phys. Lett. –
1966. – V. 9. – № 6. – P. 242–244.
10. Crosslight Software General Description [Text] / Crosslight Software
Inc, 2005. – 420 p.
11. Varga R. S. Matrix iterative analysis [Text] / R. S. Varga. – New Jersey:
Prentice – Hall Inc., 1962. – 358 p.
33
Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»
Учебное издание
Бобрешов Анатолий Михайлович,
Коровченко Игорь Сергеевич,
Ряполов Михаил Павлович,
Усков Григорий Константинович
СИСТЕМЫ АВТОМАТИЗИРОВАННОГО
ПРОЕКТИРОВАНИЯ
ПОЛУПРОВОДНИКОВЫХ
КОМПОНЕНТОВ
РАДИОЭЛЕКТРОННЫХ СХЕМ.
CROSSLIGHT APSYS
Учебное пособие
Подписано в печать 18.11.2009. Формат 60×84/16. Усл. печ. л. 2,0.
Тираж 40 экз. Заказ 1866.
Издательско-полиграфический центр
Воронежского государственного университета.
394000, г. Воронеж, пл. им. Ленина, 10. Тел. (факс) +7 (4732) 598-026
http://www.ppc.vsu.ru; e-mail: pp_center@ppc.vsu.ru
Отпечатано в типографии Издательско-полиграфического центра
Воронежского государственного университета.
394000, г. Воронеж, ул. Пушкинская, 3
34
1/--страниц
Пожаловаться на содержимое документа