Научная статья на тему 'Точная табличная модель компонентов  ИС для моделирования аналоговых ИС'

Точная табличная модель компонентов ИС для моделирования аналоговых ИС Текст научной статьи по специальности «Математика»

CC BY
83
16
i Надоели баннеры? Вы всегда можете отключить рекламу.
Область наук

Аннотация научной статьи по математике, автор научной работы — Белугин С. С., Кокин С. А.

В статье представлены особенности применения методов сплайн-интерполяции при реализации табличных моделей компонентов ИС на примере модели полевого транзистора. Выявлен и обоснован тот факт, что стандартные методы локальной сплайн-интерполяции не подходят для решения задачи получения значения таблично заданных функций между узлами таблицы. В модели важно получить точное значение не только таблично заданной функции, но и ее первых производных, чего не может обеспечить традиционный способ вычисления коэффициентов сплайна. Этого можно добиться увеличением условий интерполяции, а соответственно и коэффициентов интерполирующего многочлена – сплайна. Предложена новая форма записи квадратичного трехмерного сплайна и система уравнений для вычисления его коэффициентов. Выведенная система уравнений позволяет вычислять коэффициенты аналитическим способом, не прибегая к решению численными алгоритмами, вносящими определенную погрешность в решение. Использование предложенных условий интерполяции, позволяет добиться точности, приемлемой для задач схемотехнического моделирования аналоговых ИС.

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Accurate table model of IC components for analog IC simulation

The properties of spline-interpolation application in the course of component models realization (for example on MOSFET model) were observed in the article. Standard methods of local spline interpolation are not suitable for getting values of table functions and their derivatives between table nodes. It is important to obtain the accurate value not only for the function, but also for its first derivatives, which can not be reached by the traditional method of spline-coefficient obtaining. A new notation of quadratic three-dimensional spline and new equations system for its coefficients calculating was proposed. A new equations system allows calculating coefficients analytically without usage of numerical methods resulting in some errors. The usage of proposed interpolation conditions allows to obtain the accuracy acceptable for analog circuit schematic modeling tasks.

Текст научной работы на тему «Точная табличная модель компонентов ИС для моделирования аналоговых ИС»

Точная табличная модель компонентов ИС для моделирования аналоговых ИС

Белугин С.С. [email protected]), Кокин С.А.

ООО «Юник Ай Сиз» Введение

Непосредственное использование современных компонентных моделей полупроводниковых приборов, например BSIM3, BSIM4 [1,2], для схемотехнического (Spice) моделирования ограничивается вычислительными ресурсами. Альтернативой являются табличные модели компонентов интегральных схем (ИС) [3]. Такие модели состоят из многомерных массивов, в которых хранятся экспериментально полученные точки вольтамперных, вольтфарадных характеристик, и алгоритм их извлечения и обработки.

Известно, что точность табличной модели и гладкость, получаемых характеристик, зависит от алгоритма интерполяции характеристик между узлами таблицы и от числа ячеек таблицы. Как правило, табличные модели применяются для моделирования цифровых ИС, из-за недостаточно высокой точности описания характеристик. С другой стороны за счет своего табличного устройства обеспечивают высокую скорость вычисления значений характеристик по заданным воздействиям, что крайне необходимо для современных программ схемотехнического моделирования.

Точность таблично заданных функций теперь зависит от алгоритма интерполяции функций между узлами таблицы и от числа ячеек таблицы. При реализации алгоритма табличной организации функций модели следует отметить:

1). Требуется большой объем машинной памяти для хранения табличных данных.

2). Получаемые из таблиц характеристики элемента (транзистора) должны перекрывать весь диапазон изменения входных воздействий, необходимых при моделировании схемы.

3). Алгоритм интерполяции функций между узлами таблицы должен обеспечивать достаточную точность.

Особенности сплайн интерполяции моделей компонентов ИС

В дальнейшем для простоты ограничимся построением табличной модели, для вычисления статической ВАХ МОП-транзистора. В качестве исходной возьмем модель описанную в [1]. В общем случае выражение для тока канала записывается в виде:

Ids = F(Vds,Vbs,Vgs). (1)

Ids - ток между стоком и истоком, Vgs - разность потенциалов затвора и истока, Vbs - разность потенциалов подложки и истока, Vds - разность потенциалов стока и истока. Сначала создается таблица значений функции (1) для дискретных значений переменных Vdsit VgSj и Vbsk. Она представляет собой трехмерный параллелепипед, разбитый по координатам Vds, Vgs и Vbs на ячейки ,Qj,k. Каждая из них ограничена диапазоном:

Vdst < Vds < Vdsi+1,

Vgsj < Vgs < Vgsj+1, (2)

Vbsk < Vbs < Vbsk+1.

Для получения значения тока Ids при произвольных значениях напряжений смещения Vds,Vgs,Vbs, отличных от значений, ограничивающих диапазон текущей ячейки, неизбежно возникает задача интерполяции данных. В случае нескольких переменных и достаточно большого числа точек, глобальная интерполяция, с точки зрения количества выполняемых машинных операций практически не приемлема. Для решения задач локальной интерполяции

зачастую применяется хорошо зарекомендовавший себя алгоритм, основанный на построении кусочно-полиномиальной функции - сплайна.

Рассмотрим сплайн интерполяцию кубическим трехмерным эрмитовым сплайном [4] применительно к таблично заданной функции (1). Таким сплайном называется функция ^з,з(х,у,г) = которая в каждом из параллелепипедов = [хи х1+1] х [у, у,+1] х [ги

21+1] (в нашем случае х=Уй8, y=Vgs, 2=¥Ья) имеет вид:

^ = Е а\(х - х()г * £ Ъ1г (У - УJ)Г * Е екг (2 - )г, (3)

г=0 г=0 г=0

г - текущий шаг по координате Vds, ] - текущий шаг по координате Vgs, к - текущий шаг по координате VЪs, аГ , ЪГ , е^ - коэффициенты сплайна. г=0,1,2,3. Переменные сплайна в текущей ячейке ограничены диапазоном значений (2).

Форма записи сплайна вида (3) содержит 12 неизвестных коэффициентов для каждой ячейки, которые необходимо предварительно вычислить, накладывая на сплайн условия интерполяции. Нам необходимо вычислить коэффициенты а1 г, Ъ1 г, екг. Используем тот факт, что при фиксированных значениях двух переменных сплайн Б3,3(х,у,г) и его первая производная по оставшейся переменной превращаются в одномерные эрмитовы кубические сплайны относительно третьей переменной. Поэтому:

Б,0SXз(xp,у,,2) = ^[£г0/(х,,у,,2);2], г = 0,1;р=г,г+1; д=Ц+1. (4)

Б -оператор дифференцирования. Формула (4) означает, что производная сплайна равна сплайну производной. Это обстоятельство освобождает нас от необходимости интерполировать функции проводимостей транзистора и его емкостей, поскольку они представляют собой производные функций токов и зарядов. И для получения их значений достаточно будет взять производную соответствующего сплайна в заданной точке.

Таким образом, с помощью (4) из (3) можно вывести четыре одномерных сплайна:

Slj]k = А0 + А1 * ^ - Vds1) + А2*^ - Vds1 )2 + А3* ^ - Vds1 )3 (5)

S\i1k = ^3[/(Vds,Vgs1 );Vds] - сплайн (4) при Vgs= VgSj и VЪs= VЪsk.

S2ijk = В0 + В1* ^ - Vdsi) + В2 * ^ - Vdsi )2 + В3* ^ - Vds1 )3 (6)

д д Sгj■k = Sз[f(Vds,Vgsj,Шк);Vds] = Sзз[—- ,Шк);Vds] - сплайн вида (4) от

дVgs ' дVgs

производной функции (1) при VgS= VgSj и УЪ1 = УЪ$ъ

S3,1к = С0 + С1 * ^ - VgSj) + С2* ^ - VgSj )2 + С3* ^ - VgSj )3 (7)

S3iJk = S33[f(Vdsi);Vgs]- сплайн (4) при Vds= Vdsi и УЪ1= VЪsk.

SAj]k = Б0 + Б1* ^ - Шк ) + Б2* (т - Шк )2 + Б3* ^ - Шк )3 (8)

S4ijk = S33[f(Vdsi,Vgsj^Ъ^РЪ1]- сплайн (4) при Vds= Vdsi и Vgs= VgSj.

Где А0, А], Л2, А3 - коэффициенты одномерного сплайна Slijk, а В0, В}, В2, В3; С0, С1, С2, С3 и

Б0, Б1, Б2, Б3 - коэффициенты одномерных сплайнов S2ijk, S3ijk и S4ijk соответственно. Чтобы

вычислить эти коэффициенты, на каждый одномерный сплайн накладываем следующие условия интерполяции:

дх

т f (x), хг+1]

дх

Здесь х - переменная одномерного сплайна, фиксированные переменные. В случае (6) f (х) =

Sl[f (х), х1 ] = f (х1) Sl[f (х), х,.+1 ] = f (хг+1) f ( х), х. ]

= Я'( хг)

= f'( х.+1)

а Ях) = Я(х,у,г) дf ( x, У, ^ )

дх

где у,2 оставшиеся две ^ [Я(х), х] - один из сплайнов,

ск

ч С г ■

(10)

представленных в (5) - (8). После решения системы (9) для каждого одномерного сплайна находятся соответствующие ему коэффициенты. После подстановки их в (5) - (8) можно выделить 12 уравнений для 12 искомых коэффициентов а'г, Ъ1 г

а0 * Ъ0* с0 = А0 а1 * Ъ0* с0 = А1 а 2* Ъ0* с0 = А2 а3 * Ъ0* с0 = А3 Ъ1* с0 * а0 = В0 Ъ1* с0 * а1 = В1 а 2* Ъ1* с0 = В2 а0 * Ъ2 * с0 = С 2 а0 * Ъ3* с0 = С 3 а0 * Ъ0* с1 = Б1 а0 * Ъ0* с2 = Б2 а0 * Ъ0* с3 = Б3

Система (10) является нелинейной. Проведенные исследования показали, что применение метода Ньютона и прочих итерационных методов решения нелинейных систем в нашем случае крайне не желательно, поскольку решение зависит от удачного выбора начальных условий и может расходиться. Более того, на практике система (10) зачастую является вырожденной. Для нас важно гарантированно получить точное решение. Этого можно добиться только выводом аналитических формул для неизвестных системы (10). Для этого коэффициенты а0 и Ъ0 зададим равными 1, и после подстановки в (10) найдем остальные коэффициенты. Правильность решения от этого не пострадает, поскольку все 12 равенств в (10) будут выполняться. Систему (10) можно назвать условиями интерполяции, определяемыми расчетом одномерных сплайнов вида 5 - 8. В таком способе расчета коэффициентов возникает опасность деления на ноль. При А0=0 с0=0, а при определении остальных коэффициентов происходит деление на с0. Эту проблему можно избежать, проанализировав интерполируемую функцию.

Из (5) и (9) следует, что А0 = F(VdS',VЪsj,Vgsk). Функция канального тока такова, что точному нулю она равняется при Vds = 0, при этом Vgs и VЪs могут принимать любые значения. В этой точке при фиксированном и равном нулю Vds сплайны (7) и (8) тоже равны нулю, поскольку в общем случае они заменяют функцию канального тока. Тогда коэффициенты этих сплайнов С и Б можно обнулить. Для решения системы (10) в этом случае приравняем Ъ0 и с0 единице, тогда а0=0. Неизвестные коэффициенты, которые получаются посредством деления правых частей на а0, тоже можно обнулить, поскольку в правых частях этих уравнений стоят нулевые коэффициенты С и Б. На рис.1 представлена интерполяция функции канального тока.

A Ids, А

-

231 mv 253mv 276mv 299mv 322mv 345mv 368mv 391 mv VdS, V

□ spline Д Ids

Рис 1. Интерполяция канального тока сплайном вида (3) (увеличенный участок ВАХ)

На рис.1 видно, что сплайн не плотно прилегает к функции. Максимальная относительная погрешность сплайн-интерполяции достигает 3.1 %.

□ сМз/йУдз д сБрУпеМ'/у:::

Рис. 2. Производные сплайна и функции по Vgs.

На рис.2 показаны графики проводимостей. Гладкая линия - это аналитическая производная функции канального тока. Зубчатая линия - производная сплайна функции канального тока. Из проведенного эксперимента видно, что точность интерполяции функции приемлема. По крайней мере, ее можно улучшить, увеличив число ячеек. Но получаемая от сплайна производная значительно отличается от реальной, и это видно даже не вооруженным глазом. Для поставленной задачи такое решение не приемлемо. Поскольку производные тока являются важными величинами для схемотехнического моделирования. Можно конечно принять решение отдельно интерполировать каждую производную функции канального тока. Их всего три. Таким образом, количество таблиц, а соответственно и отводимой для них машинной памяти увеличится в 4 раза. Следовательно, можно сделать вывод, что стандартный способ определения коэффициентов сплайна для поставленной задачи не подходит. Он не может обеспечить высокую точность одновременно функции и ее трех частных производных без значительных затрат вычислительных ресурсов.

Вычисление коэффициентов

Проанализировав способ интерполяции, описанный выше, можно объяснить плохую точность по производным сплайна. Рассмотрим подробнее правые части уравнений в системе

(10). Они находятся посредством решения системы (9) для каждого одномерного сплайна. На примере сплайна (5) решим эту систему.

' А0 = f ^, VgSj ,Шк)

А0 + А1 * - Vdsi) + А2 * - Vdsi )2 + А3* - Vdsl )3 = f , Vgs , VЪsk)

А1 =

дf ^, VgSj ,Шк)

дVds

д/ ,Шк)

А1 + 2* А2 * (Vdsi+\ - Vdsi) + 3* А3* - Vdsг )2 =

дVds

Из решения видно, что А0 отвечает за равенство сплайна и функции в точке (Vdsi,VgSj,УЪ1к),

А1 отвечает за равенство производной сплайна по Vds и производной функции по Vds в точке (Vdsi,VgSj,УЪ1к), А2 косвенно отвечает за равенство производных в конечной точке отрезка

(Vdsi+\,Vgsj,УЪ1к) по координате Vds, и А3 отвечает за оставшееся условие интерполяции, то

есть за равенство функции и сплайна в конечной точке отрезка (Vdsi+\,Vgs1■ ,УЪзк) . По аналогии

такие же выводы можно сделать и для коэффициентов В, С, Б.

В системе (10) нет уравнений для коэффициентов В3, С0, С1, Б0. Следовательно, не будет выполняться равенство производной функции по Vgs и производной сплайна в точке (Vdsi+\,Vgsj,УЪ>1к) . Отсюда и следуют сильные расхождения графиков производных функции и

сплайна. Проблему можно решить удачным выбором уравнений в (10), но следует отметить, что уравнений всего 12 и какие то из условий учесть все равно не получится.

Определимся с необходимым количеством выполняемых условий для обеспечения достаточной точности интерполяции функции и её производных. В текущей ячейке известны значения функции и её производных по всем трем координатам в восьми точках, ограничивающих ячейку. Из рисунка 1 видно, что наличие в системе уравнений для всех 4 коэффициентов А обеспечило хорошую точность интерполяции функции по координате Vds. Отсюда следует вывод, что наличие всех 32 коэффициентов А,В,С и Б в системе (10) позволит обеспечить достаточную точность интерполяции функции и ее первых производных. Так как на концах отрезка по одной из координат сплайн и функция точно равны и равны тангенсы углов наклона касательных к ним, сплайн будет максимально «прижиматься» к функции на всех промежуточных значениях отрезка, тем самым, обеспечивая и приближение своей производной к производной функции. Если обеспечить такие условия на всех отрезках, ограничивающих ячейку, то точность интерполяции значительно увеличится.

Для этого необходимо наличие еще 20 уравнений в системе (10), рассчитанной всего на 12 неизвестных коэффициентов сплайна (3). Естественно, что 12 неизвестных не смогут обеспечить одновременное выполнение 32 уравнений.

Для обеспечения выполнения всех 32 условий можно воспользоваться раскрытием скобок в кубическом трехмерном сплайне, тогда получится 64 неизвестных коэффициента. Потребуется изыскание дополнительных условий интерполяции - условий равенства вторых производных сплайна и функции и т.д. Дополнительные условия хоть и повышают точность, но при этом значительно усложняют задачу, увеличивая вычислительные затраты для расчета коэффициентов сплайна. Поэтому, предложенный способ повышения точности интерполяции рекомендуется применять только для задач, где требуется высокая точность интерполяции функции и ее производных до второго порядка включительно. Например, для современных средств радиочастотного анализа такая величина, как вторая производная функции канального тока, имеет важное физическое значение. Для задач временной верификации схем достаточно высокой точности интерполяции функции и ее первых производных. Такая точность вполне может быть обеспечена квадратичным трехмерным сплайном, коэффициенты которого рассчитываются новым способом, описанным ниже.

2039

В соответствии с определением, приведенным в [4] и по аналогии с выражением (3) квадратичный трехмерный сплайн имеет вид:

= £ ^ (^ - )' * £ Ъ\^ - )" * £ Л (уЪг - УЪгк )" , (11)

г=0 г=0 г=0

г - текущий шаг по координате Vds, / - текущий шаг по координате Vgs, к - текущий шаг по координате VЪs, аГ , ЪГ , сгк - коэффициенты сплайна. г=0,1,2. Переменные сплайна ограничены условиями (2). В такой форме записи сплайна содержится 9 неизвестных коэффициентов, которые необходимо вычислить, составив систему уравнений из условий интерполяции. Понятно, что для выполнения 32 условий их явно не достаточно. В связи с этим предлагается, раскрыв скобки в (11), привести сплайн к формуле содержащей 27 неизвестных коэффициентов.

О , , 2 , , 2, 2, 2, 22,

Л 2 3/к = с0 + с1 • у + с2 ■ у + с3 ■ х + с4 • ху + с5 ■ ху + с6 ■ х + с7 ■ х у + с8 ■ х у + с9 ■ г +

2 2 2 2 2 2 2 с10 ■ уг + с11 ■ у г + с12 ■ хг + с13 ■ хуг + с14 ■ ху г + с15 ■ х г + с16 ■ х уг + с17 ■ х у г + с18 ■ 2 +

2, 2 2, 2, 2, 2 2, 2 2, 2 2 2, 22 с19 ■ уг + с20 ■ у г + с21 ■ хг + с22 ■ хуг + с23 ■ х г + с24 ■ х уг + с25 ■ х у г + с26 ■ ху г

Здесь: х = Vds - Vdsi, у = Vgs - Vgsj, г = VЪs - VЪsk.

К положительным свойствам такой формы записи сплайна относится большое число неизвестных коэффициентов, для которых можно подобрать соответствующие условия интерполяции. Конечно, 32 уравнения составить не удастся. Но, если исследовать все возможные способы расчета 27 коэффициентов, можно найти подходящий способ, обеспечивающий точность приемлемую для задач схемотехнического проектирования.

К отрицательным свойствам сплайна (12) следует отнести большие затраты памяти для хранения коэффициентов и процессорного времени для вычисления самого сплайна по сравнению со сплайном вида (3). Процессорные затраты можно сократить уменьшением числа машинных операций для расчета формулы (12). Это достигается с помощью простейших математических преобразований формулы, таких как, например вынесение за скобки общего члена некоторого числа произведений. Затраты памяти тоже можно сократить. Для этого следует модернизировать алгоритм организации данных табличной модели и доступа к ним в машинной памяти. В современных условиях постоянного удешевления машинной памяти приоритетной становится задача повышения точности за счет увеличения числа коэффициентов сплайна.

После проведенных исследований были найдены уравнения, подходящие для вычисления 27 коэффициентов в (12). Более того, подобранные уравнения позволяют определять неизвестные систем аналитическим способом, не прибегая к различным алгоритмам решения СЛАУ, вносящим дополнительную погрешность в решение. Погрешность определения неизвестных коэффициентов благодаря такому подходу соизмеряется с погрешностью машинного округления, возникающей при делении в алгебраических выражениях. Из этих уравнений составляются следующие четыре системы:

с^Оф, vgs], уЪг )

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

с4 =--

дvdsдvgs

, , 2 д, ^^ )

с4 ■ ку+с5 ■ ку =--с3

4 ' 5 дус1г 3 (13)

, , 2 ^^г+и,уЪгк)

с4 ■ кх+с7 ■ пх =--с,

4 / ^ 1

дvgs

с4 ■ кхку+ с5 ■ ПхПу + с7 ■ кх^ку+с8 ■ к^ку1 = /(уС^+1, vgs/+1, уЪгк ) - с0 - с1 ■ ку- с2 ■ ку1 - с3 ■ кх- с6 ■ кх2

2040

С\0

д ^) дvgSдvЪs

, , 2 )

С10 • Иу+ С,, • Иу —----С9

10 ^ 11 У ^ 9 (14)

, , _2 ^ ,vЪsk+\) С10 • С19 • Иг —----С\

10 19 1

дvgs

С10 • кук2+ Сп • Иу^Ит+С19 • ПуПТ + С20 • Иу^И/ = /(vds,vgs^■+\,vЪsk+\)-С0 -С\ • Пу-С2 • ПуУ -С9 • Иг-С18 • ИтУ

д(vds, , )

С\2 ="

дvdsдvЪs

• И+ • их2 =д/ ^^ ^, ^ ) -Сл ^ • ИХ + Сл с • И^х — Сп

12 15 дЪ 9 (15)

, , 2 , ^, С\2 • Пт+ С2\ •Пт =-Т-:--С3

дvds

С12 • ИхПт+ С15 • П:Х'Пт+С21 • ИхПТ + С23 • ИхуПТ — /vgsj,vЪsk+\)-С0 -С3 • Их-с6 • ПхХ -С9 • Иг-С18 • Иг2

(16)

= д/ , , ^к) с =

13 дvdsдvgsдvЪs 13 дvdsдvgsдvЪs

И И 2 д/ , ^к ) с\3 • ИУ + с\4 • ИУ =-я.^я.и--с\2

дvdsдvЪs

2 д/ (vdsi+\ ,vgsJ,^) с13 • Их + с16 • Их ——

дvgsдvЪs

д/(va

с13 • Иг + с22 • Ит —

дvdsдvgs

с13 • ИхИу + с14 • ИхИу2 + с16 • ИхгИу + с17 • Их2Иу2 — д/(-^^ Я ^-*_) - с9 - с10 • Иу - сп • Иу2 - с12 • Их - с15 • Их2

дvЪ-

2 2 2 2 д/ (vdsi+\, ута,, vЪsk+\) 2 2

с13 • ИхИг + с16 • Их Иг + с22 • ИхИг + с24 • Их Иг —--С\ - с4 • Их - с7 • Их - с10 • Ит - с19 • Ит

дvgs

с13 • ИуИг + с14 • Иу2 Иг + с22 • ИуИг2 + с26 • Иу2 Иг2 — д/(-i' ^ 1+\'-ки2 - с3 - с4 • Иу - с5 • Иу2 - с12 • Ит - с21 • Ит 2

дvds

с13 • ИхИуИг + с14 • ИхИу2Иг + с16 • Их2 ИуИг + с22 • ИхИуИг2 + с17 • Их2 Иу2Иг + с24 • Их2 ИуИг2 + с26 • ИхИу2 Иг2 + + с25 • Их2 Иу2 Иг2 — /(vds¡+\, vgSj+\, vЪsk+\) - с0 - С\ • Иу - с2 • Иу2 - с3 • Их - с4 • ИхИу - с5 • ИхИу2 - с6 • Их2 -

- с7 • Их2Иу - с8 • Их2Иу2 - с9 • Ит - с10 • ИуИт - сп • Иу2Иг - с12 • ИхИг - с15 • Их2Иг - с18 • Ит2 - с19 • ИуИт2 - с20 • Иу2Ит2 -

- с21 • ИхИт2 - с23 • Их2Ит2

Вместо линейно зависимых уравнений равенства производных сплайна и функции по одной координате использованы условия равенства смешанных производных сплайна и функции по двум координатам в определенных точках. С помощью смешанной производной сплайна максимально приближенной к аналогичной производной функции в начальных точках ячейки сплайну будет задано направление, приближающее его поверхность к поверхности трехмерной функции, которую он интерполирует.

2041

SEI»-98uA

0.9v □ Spline Д Ids

1 Ids, А

-*

1J3v Vds, V

Рис.3 Интерполяция сплайном (12) с новым способом расчета коэффициентов. Максимальная

погрешность 0.7%.

SELss ЗЭ.Эи

L--dlds/dVgs, 1/Ohm .......

а)

1,35v 1,40v □ dldsIdVgs д dSpllne/dVgs

1 .SOv 1,85v

Vds, V

6.94u 6.92u -■

SELss

1 dlds/dVds, 1/Ohm

б).

672mv 675mv

о dSpllneidVds д dldsidVds

696mv Vds, V

2042

Л /ПНт______

559mv 570mv 585mv BOOmv 61Smv 630mv 64Smv 660mv 67Smv 690mv 705mv

g^ □ dSplineidVbs idltisMVbs VdS, V

Рис.4 Интерполяция производных.

а) По Vgs с максимальной погрешностью 0.1%.

б) По Vds с максимальной погрешностью 0.23%.

в) По Vbs с максимальной погрешностью 0.27%.

Оценивая относительную погрешность интерполяции производных и функции можно сказать, что полученный сплайн вполне может быть использован вместо функции канального тока, а его производные вместо производных ВАХ.

Оценим теперь выигрыш в вычислительной производительности для программы моделирования при использовании вместо функции канального тока сплайна, интерполирующего ее в некотором диапазоне. Для эксперимента была создана таблица со значениями Ids = F(Vds,Vbs,Vgs) и ее производных, необходимых для расчета коэффициентов сплайна. Таблица однородно разбита на 1200 ячеек с шагом разбиения по Vds и Vgs - 0.1В, по Vbs 1В и покрывает диапазон:

0В < Vds < 4В, 1В < Vgs < 4В, 0В < Vbs < 1В.

В каждой ячейке таблицы были вычислены коэффициенты сплайна (12) по системам (13) - (16). Сплайн, рассчитываемый по полученным коэффициентам, использовался в программе моделирования AVOCAD вместо функции канального тока. И для эксперимента было проведено моделирование ВАХ транзистора на диапазоне, покрываемом заданной таблицей.

С помощью программы «Intel® Vtune™ Performance Analyzer 6.0» произведены замеры среднего времени, затраченного процессором на вычисление функции канального тока и ее производных. Для оригинальной функции Ids = F(Vds,Vbs,Vgs) это время составило 0,010663 мксек. Для сплайна - 0,001178 мксек. Таким образом, использование сплайна вместо функции канального тока позволило сократить время вычисления ВАХ в 9.05 раз. Результаты по оценкам точности представлены на рис.3, 4.

Выводы

Для повышения производительности схемотехнического моделирования аналоговых ИС можно использовать табличные модели компонентов (транзисторов). В такой модели вместо дорогостоящих, с точки зрения вычислений, формул для определения значений токов и производных, оказывается, удобно хранить их табличные значения в узлах многомерной сетки с алгоритмом локальной сплайн-интерполяции. Проведенные исследования показали, что стандартные способы локальной сплайн-интерполяции не подходят для решения поставленной задачи. В модели важно получить точное значение не только таблично заданной функции, но и ее первых производных. Этого можно добиться увеличением условий интерполяции, а соответственно и коэффициентов интерполирующего многочлена - сплайна. Условия интерполяции можно выбрать такими, что одновременно:

2043

- повышается точность интерполяции

- реально существует возможность получения точных значений коэффициентов. Существует группа условий, которая позволяет найти коэффициенты аналитическим способом, не прибегая к решению СЛАУ численными алгоритмами. Использование уравнений (13) - (16) позволяет добиться приемлемой, для задач схемотехнического моделирования, точности интерполяции.

Литература

1. Cheng Y., Ни С. "MOSFET modeling & BSIM3 user's guide." -Kluwer Academic Publishers,1999.

2. Weidong Liu, Xiaodong Jin, Kanyu M. Cao, Chenming Hu "BSIM4.0.0 MOSFET Model -User's Manual." http://www-device.eecs.berkeley.edu/bsim3/~bsim4.html 2001.

3. D. Nadezhin, S. Gavrilov, A. Glebov, Y. Egorov, V. Zolotov, D. Blaauw, R. Panda, M. Becer, A. Ardelea3, A. Patel "SOI transistor model for fast transient simulation" ICCAD'03, November 1113, 2003, San Jose, California, USA.

4. Ю.С.Завьялов, Б.И.Квасов, В.Л.Мирошниченко "Методы сплайн-функций." -М.:Наука, 1980, 352с.

i Надоели баннеры? Вы всегда можете отключить рекламу.