автореферат диссертации по информатике, вычислительной технике и управлению, 05.13.12, диссертация на тему:Разработка и исследование алгоритмов компиляционного формирования и решения математических моделей ИС на этапе схемотехнического проектирования

кандидата технических наук
Булах, Дмитрий Александрович
город
Москва
год
2010
специальность ВАК РФ
05.13.12
Диссертация по информатике, вычислительной технике и управлению на тему «Разработка и исследование алгоритмов компиляционного формирования и решения математических моделей ИС на этапе схемотехнического проектирования»

Автореферат диссертации по теме "Разработка и исследование алгоритмов компиляционного формирования и решения математических моделей ИС на этапе схемотехнического проектирования"

004ь

На правах рукописи

БУЛАХ ДМИТРИЙ АЛЕКСАНДРОВИЧ

РАЗРАБОТКА И ИССЛЕДОВАНИЕ АЛГОРИТМОВ КОМПИЛЯЦИОННОГО ФОРМИРОВАНИЯ И РЕШЕНИЯ

МАТЕМАТИЧЕСКИХ МОДЕЛЕЙ ИС НА ЭТАПЕ СХЕМОТЕХНИЧЕСКОГО ПРОЕКТИРОВАНИЯ

Специальность: 05.13.12 - системы автоматизации проектирования

АВТОРЕФЕРАТ диссертации на соискание ученой степени кандидата технических наук

2 8.0КТ 2010

Москва-2010г.

004611552

Работа выполнена на кафедре проектирования и конструирования интегральных микросхем Московского государственного института электронной техники (технического университета)

Научный руководитель: Официальные оппоненты:

д.т.н., профессор Казённов Г.Г.

д.т.н., профессор Соколов А.Г.

К.Т.Н.,

Макаров С.В.

Ведущая организация:

ОАО «Ангстрем»

Защита диссертации состоится «2<Г» И1

201 на

заседании диссертационного совета Д212.134.01 при Московском государственном институте электронной техники: 124498 Москва, Зеленоград, МИЭТ.

С диссертацией можно ознакомиться в библиотеке Московского государственного института электронной техники.

Автореферат разослан »_

201^ г.

Ученый секретарь д.т.н., профессор

Крупкина Т.Ю.

Общая характеристика работы.

Аннотация.

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

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

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

Актуальность темы.

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

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

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

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

Разработанные в диссертационной работе методы и алгоритмы формирования математических моделей ИС и их решения призваны решить обе поставленные задачи.

Цель работы.

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

Для достижения поставленной цели необходимо решить следующие научно-технические задачи:

1. провести исследование существующих методов и алгоритмов формирования и решения математических моделей ИС;

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

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

4. предложить алгоритм реализации задачи получения аналитических выражений в явном виде для вычисления корня СЛАУ;

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

6. реализовать разработанные алгоритмы в виде комплекса программ, выполняющего моделирование ИС во временной области;

7. провести практическую апробацию результатов работы.

Научная новизна работы.

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

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

3. Разработан быстродействующий алгоритм получения аналитических выражений в явном виде для решения математической модели ИС, базирующийся на решении СЛАУ с применением точных методов.

4. Разработанный алгоритм позволяет получить выражения для вычисления корней СЛАУ в таком виде, который делает возможным распараллеливание процесса решения математической модели, что позволяет значительно повысить скорость вычислений.

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

Методы исследования.

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

Достоверность полученных результатов подтверждается используемым математическим аппаратом, экспериментальным тестированием и промышленной эксплуатацией разработанного программного обеспечения в процессе разработки базовых матричных кристаллов на ОАО «Ангстрем».

Личный вклад автора.

Основными из полученных автором результатов являются:

1. решение задачи ускорения процесса формирования математических моделей схем за счёт записи выражений математических моделей в явном виде;

2. разработка быстродействующего алгоритма получения точного решения СЛАУ в виде аналитических выражений, пригодного для использования в современных программах моделирования;

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

4. разработка программного обеспечения для реализации предлагаемых алгоритмов.

Практическая значимость работы.

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

оперативной памяти, что приводит к возможности моделировать схемы, содержащие большее число схемотехнических элементов.

Внедрение результатов.

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

Реализация результатов работы.

Результаты работы в виде программных модулей для программы моделирования схем на этапе схемотехнического проектирования внедрены в учебный процесс МИЭТ, а также в процесс проектирования библиотеки базовых матричных кристаллов на ОАО «Ангстрем», что подтверждается актами внедрения.

Представляются к защите.

1. Алгоритм компиляционного формирования математических моделей ИС на этапе схемотехнического проектирования, основанный на процедуре генерации исходного программного кода на языке программирования высокого уровня С++, описывающего процесс формирования математических моделей схем в виде аналитических выражений.

2. Быстродействующий алгоритм получения решения математических моделей ИС в виде аналитических выражений, базирующийся на аналитическом решении СЛАУ.

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

Апробация результатов работы.

Результаты диссертационной работы докладывались и обсуждались на следующих конференциях:

XI Всероссийская межвузовская научно-техническая конференция студентов и аспирантов, Москва, Зеленоград, 21-22 апреля 2004 г. ХП Всероссийская межвузовская научно-техническая конференция студентов и аспирантов, Москва, Зеленоград, 19-21 апреля 2005 г. ХП1 Всероссийская межвузовская научно-техническая конференция студентов и аспирантов, Москва, Зеленоград, 19-21 апреля 2006 г.

XVI Всероссийская межвузовская научно-техническая конференция студентов и аспирантов. Москва, Зеленоград, 22-24 апреля 2009 г.

Публикации.

Основные результаты диссертационной работы опубликованы в двух научных статьях и четырёх докладах в трудах научно-технических конференций.

Структура и объём работы.

Диссертационная работа состоит из введения, четырёх глав, заключения, двух приложений, содержащих акты внедрения результатов работы, перечня поддерживаемых моделей элементов и списка использованных литературных источников, содержащего 64 наименования.

Содержание работы.

Во введении раскрывается проблематика диссертации и обосновывается её актуальность.

В первой главе приводятся основные определения и описывается математический аппарат, используемый при решении задачи моделирования ИС на этапе схемотехнического проектирования. Также приводятся обзор методов формирования и решения математических моделей (ММ) ИС.

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

Рассмотрим более подробно работу программ моделирования на этих этапах и алгоритмы, заложенные в основе моделирования схем во временной области.

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

После выбора методов формирования ММ схемы и её решения, выполняются второй и третий этапы работы схемы, на которых происходит непосредственно машинное формирование системы уравнений в виде СЛАУ и её решение. С точки зрения вычислительных затрат, наиболее ресурсоёмкими являются именно эти два этапа,

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

Для схем, содержащих только линейные элементы, ММ представляется системой линейных алгебраических уравнений и формируется в соответствии с МУП:

уф = У ^

>

где J - вектор токов, <р - вектор неизвестных потенциалов, У -матрица узловых проводимостей, определяемая в виде (2):

хг а/ 0(р

Поскольку в общем виде ММ схемы описывается не СЛАУ, а системой интегро-дифференциальных уравнений, в процессе формирования ММ схемы используются математические методы для алгебраизации и линеаризации систем уравнений для приведения ММ к виду (1). В данной работе в качестве таковых использовались неявный метод Эйлера с переменным шагом и метод Ньютона.

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

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

Общая схема процесса формирования ММ ИС, реализуемая в большинстве существующих программ моделирования, схематично показана на рисунке 1. При формировании матрицы узловых проводимостей вида (2) в соответствии со схемой, изображённой на рисунке 1, выделяется несколько задач, на решение которых направлены работы по созданию методов ускорения процесса формирования ММ. Рассмотрим некоторые из них.

Аналитическое формирование ММ в виде Агр + В = О

Решение ММ вида А<р + В = О

Рисунок 1. Схема процесса машинного формирования ММ ИС.

Часто моделируемые схемы содержат большое число пассивных элементов. Такая ситуация наблюдается в случае моделирования схем, полученных после этапа экстракции паразитных элементов. В таких схемах процентное содержание пассивных элементов может достигать 50%-б0%. Согласно процессу формирования математической модели в соответствии с МУП, вне зависимости от вычисляемых потенциалов и

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

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

соответствующие элементы матрицы У, дополняя её лишь проводимостями нелинейных элементов. Очевидно, что реализация

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

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

Второй задачей, на решение которой обращается пристальное

внимание, является то, что формируемая согласно (2) матрица ^ для подавляющего большинства схем является сильно разреженной, то есть содержащей большое число нулевых элементов. •

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

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

На устранение отмеченных недостатков направлен разработанный в диссертационной работе алгоритм компиляционного формирования ММИС.

Основная идея этого метода заключается в том, что, зная конфигурацию взаимного соединения схемотехнических элементов,

оптимальной была бы запись компонентов вектора / и матрицы 7 в аналитической форме. На рисунке 2 показана схема (а) и соответствующие выражения для формирования компонентов вектора

токов 3 .

VI П1

V-ф 1 Ш 0

г _г^(Рх~(Рг) <?2

© П с,

-<Рг) Л

Л=с

а)

Благодаря разработанному в диссертации алгоритму компиляционного формирования ММ ИС, становится возможным составить программный код на языке программирования высокого уровня С++, который описывал бы процесс моделирования схемы, а компоненты ММ были бы записаны в виде выражений, формируемых в явном виде (рисунок 2-6). Разработанный алгоритм даёт значительное увеличение скорости формирования ММ схемы, поскольку позволяет решить сразу две задачи:

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

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

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

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

(3)

В настоящее время наиболее часто в задачах моделирования ИС используется две группы методов решения СЛАУ - прямые методы, к которым относятся метод Гаусса и различные варианты Ш-разложения, и итерационные методы, из которых в качестве наиболее известных примеров можно привести методы Якоби и Гаусса-Зейделя.

Совместно с технологией разреженных матриц самым легко реализуемым представляется использование именно итерационных методов решения СЛАУ. Простота их применения связана с тем, что при применении метода Гаусса-Зейделя не меняется число и положение ненулевых элементов разреженной матрицы, следовательно, не нужно применять алгоритмы для переупорядочивания матрицы, что наблюдается в случае применения метода Гаусса.

На практике итерационные методы решения СЛАУ используются достаточно редко, поскольку обладают рядом существенных недостатков, к основным из которых можно отнести:

• отсутствие сходимости в случае отсутствия у матрицы диагонального преобладания;

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

• необходимость выбора начального приближения в достаточной близости от точного решения для обеспечения высокой скорости сходимости итерационного процесса.

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

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

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

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

Разработанный алгоритм основан на том факте, что от итерации к итерации метода линеаризации портрет разреженной матрицы, соответствующей ММ ИС, остаётся неизменным, то есть не меняется положение ненулевых элементов, а меняются лишь их значения. Это значит, что при использовании, например, метода Гаусса для решения СЛАУ производятся одни и те же операции над одними и теми же элементами матрицы, и на различных итерациях будут отличаться лишь непосредственные численные значения элементов, над которыми выполняются арифметические операции. Конечно, это верно только при использовании метода Гаусса без выбора ведущего элемента. Обоснование отказа от применения алгоритма выбора ведущего элемента приводится в тексте диссертации.

Записав в виде аналитических выражений последовательность математических операций и элементов матрицы, над которыми эти операции выполняются, можно быть уверенным в том, что сам вид этих выражений меняться не будет.

Алгоритм получения аналитических выражений в явном виде для вычисления корня СЛАУ основан на предварительном формировании системы уравнений, в которой каждый из элементов матрицы узловых

проводимостей У, вектора токов I и вектора потенциалов ф представляет собой специальную структуру данных, показывающую,

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

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

Последним этапом работы алгоритма формирования решений СЛАУ в явном виде является запись полученных данных из вектора потенциалов в строковом представлении в генерируемый код программы-симулятора.

Значительное ускорение при применении разработанного алгоритма получения решения СЛАУ в явном виде получается за счёт разделения прямого и обратного ходов метода решения СЛАУ. При использовании разработанного алгоритма в процессе решения ММ схемы выполняется только обратный ход метода Гаусса, в то время как прямой ход метода решения СЛАУ выполняется над символьной матрицей один раз перед началом моделирования.

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

= /(*!/ ■ ■ •/ Ук1' 1т> —>1п)> (4)

I УсЛ' ■■■' '/)■ (5)

Выполняя обратный ход метода Гаусса, стандартный алгоритм даёт выражение для вычисления корней вида (4). Значение каждого вычисляемого корня зависит от вычисленного значения предыдущего корня.

Проведя предварительную обработку выражений, полученных в ходе работы алгоритма получения корней в явном виде, представляется возможным привести систему равенств (4) к системе равенств (5) и таким образом получить выражения для вычислений корней в такой форме, когда для каждого вычисляемого корня отсутствует зависимость от вычисленных значений предыдущих корней. После выполнения этой обработки выражение (5) описывает систему независимых равенств, вычисление компонентов которой возможно более эффективно реализовать при применении подхода по распараллеливанию кода.

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

Показано, что последовательность действий, выполняемая симулятором при моделировании схем, в случае применения разработанных алгоритмов требует изменения в соответствии с рисунком 3.

Рисунок 3. Схема работы симулятора, применяющего разработанные в диссертации

алгоритмы.

Наглядно отличие разработанного метода формирования ММ в явном виде от классического подхода к формированию математической

модели можно представить, проанализировав листинги 1 и 2. Для простоты восприятия кода приводится описание на псевдоязыке, иллюстрирующем лишь саму суть процесса заполнения вектора токов

J и матрицы узловых проводимостей Y. Листинг 2 приводится для схемы, изображённой на рисунке 2-а, в нём приводятся выражения для идеальных элементов, в то время как в разработанной в диссертации программе-симуляторе используются реальные модели.

for j = 0 to netlist.elements.count do netlist .elements [j] .get_J(J) ;

for j = 0 to netlist.elements.count do netlist .elements [j] ,get_Y(Y) ;

Листинг 1. Применяемый метод формирования MM.

J[0]= - ( (Vl.get_value(time) - f i_n [1] )/5 .0)

+ (1. 0e-014) * /expf (fi_n [0] ) /0 . 025) - 1.0) +((6.0e-012)/time_step)*((fi_n[0] - fi_n[l])

- (fi_n_l[0] - fi_n_l [1] ) ) ; J[1]= +((fi~n[l]) / (5.000000e+003))

- ( (8 .0e-012) /time_step) * ( <fi_n[0] - fi_n[l])

- (fi_n_l [01 - fi_n_l [1]) ) ;

Y_0_0= +(-1.0/5.0)

-(1.0e-014)*(1.0/0.025)*exp ( (f i_n [0])/0.025) - ( (8.0e-012)/time_step); Y_0_1 = +((8.0e-012)/time_step); Y_1_0 = -(-(8.Ое-012)/time_step); Y_l_l = -(+1.0/5.0e+003)+(-(8.Ое-012)/time_3tep);

Листинг 2. Разработанный метод формирования MM.

Здесь time - значение моделируемого момента времени, time_step -величина шага интегрирования.

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

1. при формировании ММ отсутствует необходимость затрачивать время на обход элементов схемы, все выражения записаны в явном виде;

2. из листинга 2 видно, что значения многих параметров элементов записаны в численном виде, что также значительно

сокращает время на обращение к программным моделям элементов;

3. значительно сокращается время вычисления проводимостей пассивных элементов, чьё значение проводимости не меняется с ходом вычислений (что хорошо видно при вычислении первого значения элемента матрицы проводимостей У_0_0 - вклад резистора), поскольку их значения могут быть вычислены непосредственно при компиляции программного кода;

4. при применении методов интегрирования с постоянным шагом появляется возможность вычисления значений проводимостей пассивных элементов, таких как, например, конденсатор, уже на этапе компиляции (в листинге 2 - вычисление значения для элемента У_0_1, У_1_0);

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

Полученные в результате применения разработанного подхода разницы во временах формирования компонентов ММ для схемы, содержащей цепочку инверторов, представлены на рисунках 4а и 46. Рисунок 4а показывает зависимость времени формирования вектора

токов / от числа узлов, в тактах. Рисунок 46 иллюстрирует время заполнения значениями матрицы узловых проводимостей У. Кривая (1) описывает скорость формирования компонентов ММ с использованием стандартного подхода. Кривая 2 показывает скорость формирования ММ с применением разработанного алгоритма компиляционного формирования ММ.

Приведены результаты формирования выражений для вычисления корня СЛАУ, описывающей решение ММ моделируемой схемы. В листинге 3 приводится пример получаемого решения для ММ схемы, представленной на рисунке 2-а. Он соответствует системе равенств (4).

Рисунок 4. Сравнение скоростей формирования различных компонентов ММ двумя способами: с использованием традиционного алгоритма «1», с «¡пользованием разработанного алгоритма «2».

£1_п [1] = ( (Я [1] - (ЛО] * У_1_0/У_0_0)) / (У_1_1 - (У_1_0/ У_0_0

* *_о_1))>;

£1_п [0] = ((Л0] - (У_0_1 * £1_п[1])) / У_0_0);

Листинг 3. Пример формирования выражений для решения ММ в зависимой форме.

В листинге 4 приведён пример выражений для решения ММ схемы, представленной на рисунке 2-а, однако записанный в форме системы равенств (5).

£х_п[0] = ((Л0] - (У_о_1 * ((ЛИ - (ЛО] * У_1_О/У_О_О)) / (У_1_1 - (У_1_0/У_0_0 * У_0_1))))) / У_0_0);

£ 1~П [1] = ( (ЛИ - (ЛО] * У_1_0/У_0_0) ) / (У_1_1 - (У_1_0/У_0_0 *

у_0_1)));

Листинг 4. Пример формирования выражений для решения ММ в независимой форме.

Сравнение времён, затрачиваемых на выполнение различных этапов работы программы моделирования в двух режимах приведены в

таблице 1. Данные получены при моделирования схем, содержащих цепочки инверторов различной длины.

Режим моделирования Режим компиляции

Число узлов Формирование Решение Генерация и компиляция Формирование Решение

10 0 0 0 0 0

50 1 1 0 0 0

100 2 2 0 1 1

150 4 3 1 1 1

200 7 4 1 2 1

300 13 И 2 3 2

400 21 21 2 5 3

500 33 48 5 10 6

1000 62 103 15 22 12

Таблица 1. Сравнение времён формирования и решения ММ в секундах для различных режимов работы симулятора.

Из таблицы видно, что использование разработанных алгоритмов в составе программы моделирования позволяет сократить полное время моделирования в 2-4 раза.

В тексте диссертации показывается ряд задач, для которых применение разработанных в диссертации методов формирования и решения ММ даёт наибольшее преимущество:

1. задачи моделирования схем, содержащих большое число пассивных элементов, как, например, схемы, полученные после экстракции из топологии паразитных элементов;

2. значительное преимущество можно получить при реализации задачи многократного моделирования небольших схем с

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

3. моделирование схем, содержащих большое число элементов, может быть ускорено благодаря записи решения ММ в явном виде в форме (5) и применении технологий параллельных вычислений.

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

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

Основные результаты работы.

1. Произведён анализ основных этапов работы существующих программ моделирования, применяемых методов формирования и решения ММ ИС. Выявлены основные недостатки используемых в настоящее время подходов к ускорению и оптимизации этих этапов.

2. Предложен алгоритм компиляционного формирования ММ ИС, основанный на использовании записи компонентов вектора токов и матрицы узловых проводимостей в аналитическом виде. Проведён сравнительный анализ скоростей выполнения процедуры формирования ММ в виде СЛАУ с использованием традиционного и разработанного алгоритмов формирования ММ. Показана эффективность разработанного алгоритма.

3. Предложен алгоритм быстрого получения решения СЛАУ в символьном виде, основанный на определении портрета разреженной матрицы, предварительном вычислении корней СЛАУ и записи аналитических выражений для их получения в явном виде. Показано, что с использованием данного метода решения ММ ИС при сохранении точности значительно возрастает скорость вычислений.

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

5. Разработано программное обеспечение, использующее описанные алгоритм компиляционного формирования ММ ИС и алгоритм получения решения СЛАУ, описывающей ММ ИС, в явном виде. Разработанное программное обеспечение позволило получить прирост скорости моделирования ИС до 4 раз.

Основные результаты диссертации опубликованы в следующих печатных работах:

1. Булах Д.А. Современные подходы к встраиванию моделей элементов в программы схемотехнического моделирования. I! Микроэлектроника и информатика-2004. Тезисы докладов. М.: МИЭТ, 2004. стр. 75.

2. Булах Д.А. Valkyrie - пакет трансляции моделей полупроводниковых элементов ИС. И Микроэлектроника и информатика-2005. Тезисы доклада. М.: МИЭТ, 2005. стр. 95.

3. Булах Д.А. Язык Verilog-A как средство описания моделей полупроводниковых элементов. И Микроэлектроника и информатика-2006. Тезисы докладов. М.: МИЭТ, 2006. стр. 69.

4. Булах Д.А. Использование языка Verilog-A в современных схемотехнических САПР. // Известия высших учебных заведений. Электроника. № 1. М.: МИЭТ, 2007. стр. 55-58.

5. Булах Д.А. Применение компиляционного похода к моделированию аналоговых схем. // Известия высших учебных заведений. Электроника. № 4. М.: МИЭТ, 2008. стр. 26-30.

6. Булах Д.А. Разработка и реализация компиляционного подхода к задаче формирования математической модели БИС на этапе схемотехнического проектирования. // Микроэлектроника и информатика-2009. Тезисы докладов. М.: МИЭТ, 2009. стр. 69.

Подписано в печать Заказ № 3(о Тираж /£><?экз. Уч.-изд. л.Формат 60x84 1/16. Отпечатано в типографии МИЭТ (ТУ). 124498, Москва, Зеленоград, проезд 4806, д.5. МИЭТ (ТУ).

Оглавление автор диссертации — кандидата технических наук Булах, Дмитрий Александрович

ВВЕДЕНИЕ.

ГЛАВА 1. ОБЗОР АЛГОРИТМОВ И МЕТОДОВ СХЕМОТЕХНИЧЕСКОГО

МОДЕЛИРОВАНИЯ ИС.

1.1. Постановка задачи моделирования ИС.

1.2. Анализ принципов работы программ моделирования.

1.3. Алгоритмы сокращения вычислительных затрат при формировании и решении математических моделей ИС.

1.4. Анализ недостатков алгоритмов сокращения вычислительных затрат.

1.5. Выводы.

1.6. Цели и задачи работы.

ГЛАВА 2. РАЗРАБОТКА АЛГОРИТМА КОМПИЛЯЦИОННОГО ФОРМИРОВАНИЯ

МАТЕМАТИЧЕСКИХ МОДЕЛЕЙ ИС.

2.1. Обоснование необходимости разработки нового алгоритма формирования математических моделей ИС.

2.2. Предлагаемый алгоритм компиляционного формирования математических моделей ИС.

2.3. Предлагаемый алгоритм работы программы моделирования ИС.

2.4. Анализ преимуществ, обусловленных применением алгоритма компиляционного формирования математических моделей ИС.

2.5. Области применения предлагаемого алгоритма.

2.6. Выводы.

ГЛАВА 3. РАЗРАБОТКА АЛГОРИТМА ПОЛУЧЕНИЯ ВЫРАЖЕНИЙ ДЛЯ ЗАПИСИ КОРНЯ СЛАУ В АНАЛИТИЧЕСКОМ ВИДЕ.

3.1. Выбор метода решения математической модели.

3.2. Структура предлагаемого алгоритма.

3.3. Предлагаемая модификация программ моделирования.

3.4. Теоретическая оценка эффективности применения алгоритма.

3.5. Сравнение разработанного алгоритма с применяемыми алгоритмами решения математической модели ИС.

3.6. Выводы.

ГЛАВА 4 . ПРОГРАММНАЯ РЕАЛИЗАЦИЯ АЛГОРИТМОВ И РЕЗУЛЬТАТЫ ТЕСТИРОВАНИЯ.

4.1. Комплекс алгоритмов и методика тестирования работы программы моделирования.

4.2. Функциональные блоки разработанного симулятора.

4.3. Программная реализация алгоритма компиляционного формирования математической модели ИС и его тестирование

4.4. Программная реализация алгоритма получения аналитических выражений для вычисления корня СЛАУ и его тестирование.

4.5. Сравнение времён расчётов схем в двух режимах работы программы моделирования.

4.6. Перспективы применения алгоритма компиляционного формирования математических моделей.

4.7. Выводы.

Введение 2010 год, диссертация по информатике, вычислительной технике и управлению, Булах, Дмитрий Александрович

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

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

Актуальность.

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

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

Основное внимание в задачах ускорения процесса моделирования ИС уделяется модификации математических методов, применяемых для формирования математической модели в виде СЛАУ и её решения. Однако такие подходы позволяют уменьшить общее время расчёта лишь при условии ухудшения некоторых других характеристик работы, например, при значительном увеличении расходуемой памяти компьютера или при уменьшении точности вычислений. Кроме того, существует ряд алгоритмов, применимых только при моделировании определённого класса схем.

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

Цель работы.

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

Для достижения поставленной цели необходимо решить следующие научно-технические задачи:

1. провести исследование существующих методов и алгоритмов формирования и решения математических моделей ИС;

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

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

4. предложить алгоритм реализации задачи получения аналитических выражений в явном виде для вычисления корня СЛАУ;

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

6. реализовать алгоритм формирования исходного кода программы, описывающей решение индивидуальной схемы;

7. реализовать разработанные алгоритмы в виде комплекса программ, выполняющего моделирование схем во временной области;

8 . провести практическую апробацию результатов работы.

Научная новизна работы.

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

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

3. Разработан быстродействующий алгоритм получения аналитических выражений в явном виде для решения математической модели ИС, базирующийся решении СЛАУ с применением точных методов.

4.Разработанный алгоритм позволяет получить выражения для вычисления корней СЛАУ в таком виде, который делает возможным распараллеливание процесса решения математической модели, что позволяет значительно повысить скорость вычислений.

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

Практическая значимость работы.

На основе разработанных алгоритмов был создан комплекс программ, позволяющий выполнять моделирование ИС во временной области на этапе схемотехнического проектирования. Использование разработанных методов и алгоритмов позволяет сократить общее время моделирования ИС по сравнению с широко применяемыми системами моделирования фирм «Cadence», «Synopsys» и другими, а также значительно уменьшить размер требуемой оперативной памяти, что приводит к возможности моделировать схемы, содержащие большее число схемотехнических элементов.

Внедрение результатов.

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

Положения, выносимые на защиту.

1. Алгоритм компиляционного формирования математических моделей ИС на этапе схемотехнического проектирования, основанный на процедуре генерации исходного программного кода на языке программирования высокого уровня С++, описывающего процесс формирования математических моделей схем в виде аналитических выражений.

2. Быстродействующий алгоритм получения решения математических моделей ИС, базирующийся на получении аналитических выражений для вычисления корня СЛАУ.

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

Заключение диссертация на тему "Разработка и исследование алгоритмов компиляционного формирования и решения математических моделей ИС на этапе схемотехнического проектирования"

4.7. Выводы.

По результатам работы, проведённой в 4 главе, можно сделать следующие основные выводы.

1. Предложены структурная схема работы симулятора и перечень основных модулей, участвующих в работе программы. Обоснован выбор модульной структуры программы моделирования.

2. Разработан набор классов для обеспечения работоспособности предлагаемых алгоритмов формирования и решения математической модели ИС, показана их архитектура, объяснены принципы функционирования.

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

4. Показано преимущество по скорости моделирования от использования разработанных методов в составе программ-симуляторов в задаче моделирования ИС на этапе схемотехнического проектирования по используемым аппаратным ресурсам.

ЗАКЛЮЧЕНИЕ

В заключении следует выделить основные результаты диссертации.

1. В работе произведён обзор методов формирования и решения математической модели ИС на этапе схемотехнического проектирования. Выявлены их основные преимущества и недостатки.

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

3. Предложен алгоритм быстрого получения решения математической модели, основанный на записи выражений для вычисления значения корня СЛАУ в явном виде.

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

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

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

7. Разработанный набор программных модулей был реализован в составе симулятора, на примере которого проводилось сравнительное тестирование производительности разработанных алгоритмов и алгоритмов, реализующих традиционные методы моделирования.

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

Библиография Булах, Дмитрий Александрович, диссертация по теме Системы автоматизации проектирования (по отраслям)

1. Казённов Г.Г. Основы проектирования интегральных схем и систем. М.: Бином. Лаборатория знаний. 2 005.

2. Казённов Г.Г., Соколов А.Г. Принципы и методология построения САПР БИС. М.: Высшая школа, 1990.

3. Норенков И.П., Маничев В.Б. Системы автоматизированного проектирования электронной и вычислительной аппаратуры. М.: "Высшая школа", 1983.

4. Корячко В.П., Курейчик В.М., Норенков И. П. Теоретические основы САПР. М.: "Знергоатомиздат", 1987 .

5. Ильин В.Н., Коган В.Л. Разработка и применение программ автоматизации схемотехнического проектирования. М.: Радио и связь, 1984.

6. Булах Д.А. Использование языка Verilog-A в современных схемотехнических САПР.// Известия высших учебных заведений. Электроника., №1. 2007.

7. Булах Д.А. Язык Verilog-A как средство описания моделей полупроводниковых элементов. // Микроэлектроника и информатика-2006, тезисы доклада. Москва. 2006.

8. Alali О. VHDL-AMS Analog Modelling and SPICE Simulation. // PhD dissertation, ENST, Paris, France, 1998 .

9. Chariot J.-F., Milet-Lewis N., Levi H. A VHDL-AMS approach for analyzing electro-thermal effects ina Flash memory.// MIXDES, Poland, 2000.

10. Andrei Vladimirescu. The SPICE Book. John Wiley & Sons, INC. 1994.

11. Kundert K. The Designers guide to SPICE and spectre. Springer, 1995.

12. Davis A.T. Implicit mixed-mode simulation of VLSI circuits. // PhD dissertation, Univercity of Rochester, NewYork, 1991.

13. Inside SPICE. McGraw Hill, 1994.

14. Косарев В.И. 12 лекций по вычислительной математике. М. : Издательство МФТИ, 2000.

15. Вержбицкий В.М. Основы численных методов. М. : Высшая школа, 2002.

16. Лобанов А.И., Петров И.Б. Лекции по вычислительной математике. М.: Бином. Лаборатория знаний. 2006.

17. Чуа Л.О., Лин Пен-Мин. Машинный анализ электронных схем: Алгоритмы и вычислительные методы. М. : Энергия, 1980.

18. Liniger W. A stopping criterion for the Newton-Raphson method in implicit multistep integration algorithms for nonlinear systems of ordinary differential equations. // Communications of the ACM, vol. 14, issue 9. 1971.

19. Moursund D.G. Optimal staring values of Newton-Raphson calculation. // Communications of the ACM, vol. 10, issue 7, 1967.

20. Beyer W.A. A note on starting the Newton-Raphson method. // Communications of the ACM, vol. 7, issue 7, 1964 .

21. Кузовкин В. А. Теоретическая электротехника: учебник для ВУЗов. М.: Логос. 2006.

22. Беллерт С., Возняцки Г. Анализ и синтез электрических цепей методом структурных чисел. М.: Мир, 1972.

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

24. УБИС с учётом латентности. // Диссертационная работа. Москва, МИЭТ. 2000.

25. Deng Z. , Schutt-Aine J.E. Turbo-SPICE with latency insertion method (LIM). // IEEE Electrical Perfomance of Electronic Packaging, 2005.

26. Erwe R., Tanabe N. Efficent simulation of MOS circuits. // Computer-Aided Design of Integrated Circuits and Systems, IEEE Transactions, 1991.

27. H. Shichman, D. A. Hodges. Modeling and simulation of insulated-gate field-effect transistor switching circuits // IEEE Journal of Solid-State Circuits. 1968. Sept. SC-3. 285.

28. T. Ytterdal, Y. Cheng and T. A. Fjeldly. Device Modeling for Analog and RF CMOS Circuit Design. John Wiley & Sons, Inc. 2003.

29. Валях E. Последовательно-параллельные вычисления. M.: Мир, 1985.

30. Плохотников К.Э. Математическое моделирование и вычислительный эксперимент. Методология и практика. Едиториал УРСС, 2003.

31. Устинов С.М., Замницкий В.А. Вычислительная математика. БХВ-Петербург, 2009.

32. Рыжиков Ю.И. Вычислительные методы. БХВ-Петербург. 2007 .

33. Голуб Дж., Ван Лоун Ч. Матричные вычисления. М. : Мир, 1999.

34. Тьюарсон Р. Разреженные матрицы. М.: Мир. 1977.

35. Писсанецки С. Технология разреженных матриц. М. : Мир, 1988.

36. Saad Y. Iterative methods of sparse linear systems. PWS Publishing company, 1996.

37. Koester D.P., Ranka S., Fox G.C. A parallel Gauss-Seidel algorithm for sparse power system matries. // Conference on High Performance Networking and Computing. Washington DC, 1994.

38. S. C. Eisenstat and H. C. Elman and M. H. Schultz and A. H. Sherman, The (new) Yale sparse matrix package, in Elliptic Problem Solvers II, Academic Press, New York, 1984.

39. Джордж А., Лю Д. Численные методы решения больших разреженных систем уравнений. М.: Мир, 1984.

40. Эстербю О., Златев 3. Прямые методы для разреженных матриц. М.: Мир. 1987.

41. Перминов В.Н., Соколов А.Г., Казённов Г.Г., Кокин С.А. Моделирование ультра больших интегральных схем. // Труды Всероссийской научно-технической конференции «Электроника и информатика-95», тезисы докладов. Москва, 1995.

42. Кокин С.А., Перминов В.Н., Макаров С. В. Система AVOSpice компании UniqueICs. // Электроника:НТВ, №5. 2004 .

43. Головашкин Д.Л. Методы параллельных вычислений. Учебное пособие. Самара: СГАУ. 2002.

44. Корнеев В. Д. Параллельное программирование в MPI. Новосибирск: изд-во СО РАН. 2000.

45. Ортега Дж. Введение в параллельные и векторные методы решения линейных систем. М.: Мир, 1991 г.

46. Courtecuisse Н., Allard J. Parallel Dense Gauss-Seidel Algorithm on Many-Core Processors. // High Performance Computation Conference (HPCC), IEEE CS Press, 2009.

47. Лазарева Д.В., Говорова А.А. Использование преимуществ компиляционного формирования математической модели для ускорения моделирования. // Микроэлектроника и информатика-2010,тезисы доклада. М.: МИЭТ, 2010.

48. Motivations and methology for nanometer library characterization. // Cadence Technical Paper. 2005.

49. Dhaou I.B. Efficient library characterization for high-level power estimation. // IEEE Transactions on VLSI Systems, 2004.

50. Sheehan B.N. Realizable Reduction of RC Networks. // IEEE Transactions on Computer Aided Design of Integrated Circuits and Systems, 2007.

51. Постельняк A.A. • Разработка компактного формата хранения результатов моделирования на этапе схемотехнического проектирования. // Микроэлектроника и информатика-2010, тезисы доклада. М.: МИЭТ, 2010.

52. Головашкин Д.Л., Горбунов О.Е. Параллельное решение СЛАУ методом Зейделя. Вестник Самарского Государственного университета. Серия физико-математические науки. Самара. СГАУ. 2004.

53. Gulati К., Croix J.F., Khatri S.P., Shastry, R. Fast circuit simulation on graphies processor units. ASP-DAC, Yokohama, 2009.

54. Белугин С.С. Разработка и исследование физико-табличных математических моделей компонентов ИС. // Диссертационная работа. Москва, МИЭТ. 2006.

55. Страуструп Б. Язык программирования С++, М. : Бином, 2004.

56. Страуструп Б. Дизайн и эволюция С++, Питер-пресс, 2006.

57. Александреску А. Современное проектирование на С++. Изд-во: СПб: Вильяме, 2008.

58. Мейерс С. Эффективное использование С++. ДМК-Пресс, 2000.

59. Фаулер М. Архитектура корпоративных программных приложений. Изд-во: СПб: Вильяме, 2004 г.

60. Саттер Г. Решение сложных задач на С++. Изд-во: СПб: Вильяме, 2002 г.

61. Kevin F. Вгеппап, April S. Brown. Theory of modern electronic semiconductor devices. John Wiley & 'Sons, INC. 2002.

62. Gulati K., Criox F.J., Khatri S.P., Shastry R. Fast Circuit Simulation on Graphics Processing Units. // Design Automation Conference, 2009. ASP-DAC 2009. Asia and South Pacific.

63. Боресков А.В., Харламов А.А. Основы работы с технологией CUDA. ДМК-Пресс, 2010.