Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Все / - ПР / Multisim_Руководство пользователя_2007_1 / Multisim_Руководство пользователя_2007.pdf
Скачиваний:
700
Добавлен:
22.03.2015
Размер:
11.35 Mб
Скачать

7.3 Multisim SPICE симуляция: технические детали

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

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

7.3.1 Механизм симуляции схем

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

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

Математическое представление схемы — это система совместных, нелинейных дифференциальных уравнений. Основная задача симулятора — численное решение этих уравнений. Симуляторы, основанные на SPICE, преобразуют нелинейные дифференциальные уравнения в систему линейных алгебраических уравнений. Эти уравнения далее линеаризуют, используя модифицированный метод Ньютона-Рафсона. Полученная система линейных алгебраических уравнений эффективно решается с помощью LU метода факторизации обработки разреженных матриц.

7.3.2 Четыре этапа симуляции схем

Симулятор в Multisim имеет четыре основных этапа: ввод, установка, анализ и вывод (описанные ниже).

National Instruments Corporation

296

Multisim User Guide

Симуляция, основанная на SPICE, работает вначале конвертируя схему в SPICE netlist. Multisim выполняет эту неудобоваримую и отнимающую много времени процедуру автоматически, когда бы это не потребовалось. SPICE модели хранятся в обширной базе данных Multisim. Эти модели — шаблоны SPICE netlist, хранящиеся в базе данных. Во время генерации спецификации (netlist) эти шаблоны расширяются для использования при генерации netlist.

Текст выше — это небольшая часть netlist'а, который генерирует Multisim для схемы амплитудного модулятора, показанной выше. Этот netlist — в действительности ввод в

SPICE, требуемый для выполнения симуляции.

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

Из netlist SPICE генерирует матрицы, которые решаются численными методами для перехода к напряжениям (AC и DC) в каждом узле схемы. Ветвления токов также появляются в матрицах, когда требуются, в порядке решения уравнений. В частности, ветвления токов появляются всякий раз, когда бы ни использовались источники напряжения (SPICE трюк: если вам нужно измерить ток в SPICE, вставьте источник напряжения 0V. Он не повлияет на схему, но будет побуждать SPICE к вычислению тока, протекающего через источник 0V).

Для анализа переходных процессов, transient analysis (который также базируется на интерактивной симуляции), матрицы решаются при каждом шаге симуляции. Поскольку присутствуют нелинейные части в симуляции, каждый раз используются успешные аппроксимации для вычисления окончательного значения напряжения узла. При некоторых

National Instruments Corporation

297

Multisim User Guide

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

7.3.3 Формулировка уравнений

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

► Для расчета схемы, она представляется внутренне, как система уравнений в форме:

A X = B

где:

A = модифицированная матрица входных узлов размерностью n x n X = вектор неизвестных размерностью n

B = вектор констант, также размерностью n n = число неизвестных.

Система уравнений формулируется с использованием основного метода анализа схем, называемого Modified Nodal Approach (MNA, модифицированное узловое приближение ).

Неизвестные (n) включают каждое узловое напряжение (исключая землю), а также и напряжение источников тока. «B» содержит постоянные напряжения и тока источника и входы в матрицу входов (А), определенную законами Ома и Кирхгофа для тока и напряжения.

Модифицированная узловая матрица входов считается разреженной, поскольку она содержит больше нулей, чем не нулей. Используя связанный список, решение уравнений схемы может быть выполнено только применением ненулевых условий. Этот метод называется техникой разреженных матриц (Sparse Matrix Technique). Обычно приближение разреженных матриц требует меньшего расхода памяти и выполняет быструю симуляцию.

7.3.4 Решение уравнений

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

LU факторизация используется для решения систем модифицированных разреженных узловых матричных уравнений, описанных ранее (система совместных линейных уравнений). Это включает разложение матрицы А на две треугольные матрицы (нижняя треугольная матрица L и верхняя треугольная матрица U) и решение двух матричных уравнений с использованием прямой подстановки и обратной подстановки.

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

Неполный базовый алгоритм, который вырезает ошибки округления привнесенные методом LU факторизации.

Алгоритм предупорядочивания, который улучшает состояние матрицы.

Алгоритм предупорядочивания, который минимизирует ненулевые термы для

National Instruments Corporation

298

Multisim User Guide

решения уравнения.

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

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

7.3.5 Пользовательские установки: максимальный порядок интеграции

Вы можете изменить максимальный порядок для метода интеграции, используя опцию MAXORD анализа (см. «Диалоговое окно Custom Analysis Options). Использование высокого порядка (от 3 до 6) метода Gear теоретически ведет к более точным результатам, но замедляет симуляцию. Удостоверьтесь, что максимальный порядок для метода интеграции это порядок, который может использоваться, и что симулятор выбрал наиболее подходящий порядок, отталкиваясь от схемы.

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

7.3.6 Алгоритмы поддержки сходимости

Multisim использует два модифицированных продолжения алгоритма Ньютона-Рафсона, пошаговое Gmin и пошаговое Source, для помощи в нахождении решения в процессе анализа рабочей точки по постоянному току (DC Operating Point analysis) общих нелинейных цепей.

Пошаговое Gmin

Пошаговое Gmin — это многошаговый итеративный алгоритм. Этот алгоритм просто добавляет электропроводность, Gmin, к диагональным элементам модифицированной узловой входной матрице так, что решение будет сходиться быстрее. Базовая концепция в том, чтобы сохранить матрицу хорошо определенной.

Начально вводится большое значение Gmin и приближенное решение быстро находится. Начальное значение устанавливается через время Gmin 10GminSteps Gmin. Значение Gmin берется из опции GMIN (Gmin Minimum Conductance) анализа, а число шагов из GMINSTEPS (обе опции описаны в «Диалоговое окно Custom Analysis Options»). Проводимость затем уменьшается с коэффициентом десять и цепь обрабатывается вновь с установками предыдущего решения, в качестве начальных предположений для следующей итерации. Когда Gmin уменьшается до нуля, вырабатывается окончательное решение для цепи и получается корректный ответ. Это в действительности размножает одношаговое решение простой нелинейной итерации в многошаговое решение, использующее тот же алгоритм, но с меньшим шагом.

National Instruments Corporation

299

Multisim User Guide