Рис. 2. Варьирование параметров компонентов и их моделей
Если выбран тип Model, то нажатие на кнопку
в первой строке открывает список имен моделей, и справа на первой строке нужно выбрать имя варьируемого параметра выбранной модели. Например, в первой строке слева можно указать тип модели NPN $GENERIC_N (n-p-n транзистор), а справа — имя одного из его параметров, например CJC (емкость коллекторного перехода). По этому способу варьируются параметры всех компонентов, имеющих выбранную модель. Так в данном примере варьируются параметры CJC всех транзисторов, имеющих модель $GENERIC_N.Если выбран тип Symbolic, то становится доступен список параметров, определенных по директиве .define.
From — начальное значение параметра. При выборе логарифмической шкалы оно должно быть больше нуля.
То — конечное значение параметра. При выборе логарифмической шкалы оно должно быть больше нуля.
Step Value — величина шага параметра. При линейной шкале она прибавляется к начальному значению, а при логарифмической шкале умножается на текущее значение параметра.
Step It — включение режима вариации параметров (Yes) или его выключение (No).
Method — характер изменения варьируемого параметра:
Linear — линейная шкала;
Log — логарифмическая шкала;
List — список значений.
Change — метод изменения нескольких параметров:
Step all variables simultaneously — одновременное изменение всех варьируемых параметров, в этом случае количества вариаций всех параметров должны быть равны между собой
Step variables in nested loops — поочередное (вложенное) изменение варьируемых параметров, в этом случае во внешнем цикле изменяется переменная на 1-ой закладке.
Перед выполнением вариации параметров рекомендуется убедиться, что моделирование выполняется без ошибок при номинальном значении параметров. Одновременная вариация параметров в режиме Stepping и статистический анализ по методу Монте-Карло невозможен.
Пример многовариантного расчета частотных характеристик усилительного каскада при вариации параметра модели транзистора BF приведен на рис. 4.17.
Ограничения на вариации параметров: нельзя варьировать параметры компонентов Transformer, User source, Laplace source, Function source, зависимых источников SPICE (типа E, F, G и Н).
В заключение отметим, что графики, полученные путем многовариантного анализа можно пометить, чтобы знать какому значению варьируемого параметра соответствует каждая кривая. Осуществляется это с помощью команды SCOPE/LabelBranches.
Параметрическая оптимизация выполняется в программе МС7 методом Пауэлла (Powell) в любом из видов анализа: анализ переходных процессов, малосигнальный АС-анализ и расчет характеристик на постоянном токе DC. Проиллюстрируем последовательность действий при оптимизации на примере схемы OPT4.CIR из каталога ANALYSIS\OPTIMIZE, изображенной на рис. 3. Задача приведенного примера состоит в том, чтобы изменяя параметры схемы R1, C1, L1 в процессе проведения оптимизации добиться максимально близкого расположения амплитудно-частотной характеристики к 6 заданным точкам (частота, амплитуда).
Рис. 3. Пример оптимизации схемы Opt4.cir
Сначала в меню Analysis выберем режим АС и нажмем на клавишу Run (F2) и затем на клавишу F8, чтобы вывести маркеры для считывания с графиков численных значений (рис. 3). Заметим, что на частотах 2 и 10 МГц переменная db(V(Out)) равна 1,398 и -9,583 дБ соответственно.
После этого нажатием на кнопку
(Ctrl+F11) открывают диалоговое окно, показанное на рис. 3 внизу справа.В этом диалоговом окне вводится следующая информация.
Find:
Parameter — выбор оптимизируемых параметров;
Low — минимальное значение оптимизируемого параметра (вводится);
High — максимальное значение оптимизируемого параметра (вводится);
Step — шаг изменения оптимизируемого параметра (вводится при выборе метода SteppingPowell);
Current — текущее значение оптимизируемого параметра (индицируется);
Optimized — поиск наиболее подходящего значения оптимизируемого параметра (индицируется);
That — выбор критерия(ев) оптимизации.
Method — выбор метода оптимизации:
Standard Powell — стандартный метод оптимизации Пауэлла,
Stepping Powell — согласно этому методу параметры изменяются от значения Low до значения High с шагом Step. На каждом шаге изменения параметров применяется стандартный метод Пауэлла.
Total Error — корень квадратный из суммарной ошибки (разности между целевой функцией и ее фактической величиной); выводится когда выбрано поле Equates в группе THAT.
Constraints — ограничения типа неравенств и равенств, записываемые на четырех строках, например, PD(R1)<=100m, V(Out)>=1.2, VCE(Q1)*IC(Q1)<=200m
Optimize — начало оптимизации.
Stop — остановка оптимизации.
Apply — изменение на схеме значения параметров в соответствии с результатами оптимизации.
Format — выбор формы представления чисел.
Close — завершение режима оптимизации.
В приведенном примере требуется изменением L1, C1, R1 добиться такого вида АЧХ, чтобы она максимально близко проходила возле 6 заданных точек (частота, амплитуда в дБ): (2e6, 2.188), (4e6, 10.449), (6e6,-1.696), (8e6,-9.103), (10e6, -13.939), (20e6,-27.134). Это означает, что корень квадратный из суммы квадратов отклонений полученной АЧХ от заданных значений в заданных точках принимает минимальное значение. В соответствии с заданной целевой функцией и заполняются поля группы THAT в окне OPTIMIZE (см. рис. 4.18, 4.19). Например Y_Level(DB(V(OUT)),1,1,2e+006) обозначает значение кривой оптимизируемой характеристики (АЧХ в дБ) при значении независимой переменной (частоты) равной 2E6 Hz. Выбор Equates означает, что оптимизация идет для наилучшего удовлетворения условию равества коэффициента передачи в дБ заданному значению 2.188.
Отметим, что в группе THAT вместо Equates может быть выбрано Minimize или Maximize, тогда оптимизация выполняется с целью достижения минимального (максимального) значения кривой Y в выбранной точке X. См. примеры OPT1…OPT3 из каталога Analysis\Optimize.
Заполнение полей группы FINDв рассматриваемом примере осуществляется в соответствии с оптимизируемыми параметрами R1, C1, L1 (поля Parameter) и заданными диапазонами их изменения (поля Low и High).
Рис. 4. Вид окна Optimize после проведения оптимизации
Рис. 5. Вид АЧХ схемы после оптимизации
После заполнения диалогового окна нажатием на панель Optimize выполняют оптимизацию (см. рис. 4) и затем при необходимости нажатием на панель Apply переносят найденные оптимальные значения параметров на схему. Выполняемый после таких действий анализ выведет характеристики схемы при полученных оптимальных значениях параметров (см. рис. 5). По его результатам пользователь может проверить соответствие выполненной оптимизации техническому заданию.
4 Статистический анализ по методу Монте-Карло
При выборе режимов моделирования Transient, AC или DC становится доступен подрежим Monte Carlo для расчета характеристик цепей при случайном разбросе параметров:
Options — установка параметров метода Монте-Карло (см. рис. 6);
Add Histogram — добавление окна гистограмм (доступно после проведения моделирования);
Delete Histogram — удаление окна гистограмм (доступно после проведения моделирования);
Statistics — статистическая обработка результатов (доступно после построения гистограммы).
В диалоговом окне Monte Carlo Options (рис. 6, а), открываемом по команде Monte Carlo/Options, указывается количество статистических испытаний Number of Runs (не более 30000) и характер закона распределения случайных параметров, заданных значением LOT параметра модели: Uniform равномерное распределение, Gauss — гауссово, Worst Case — наихудший случай. Напомним, что в окне Global Settings задается отношение разброса случайных параметров к среднеквадратическому отклонению SD.
Гауссово распределение (Gauss) случайной величины x описывается уравнением:
,Где
, m — номинальное значение параметра, s — величина отклонения, указываемая после ключевого слова LOT (здесь абсолютное значение), x — значение случайной величины, f(x) — плотность вероятности принятия случайной величиной значения x.Равномерное распределение (Uniform) — означает одинаковую вероятность принятия случайной величиной x любого значения внутри диапазона, определяемого параметром модели LOT.
а)
б)
Рис. 6. Диалоговое окно Monte Carlo Options (а) и окно задания функций (б)
Наихудший случай (Worstcase) соответствует равной вероятности (0.5) принятия случайной величиной минимально возможного и максимально возможного значения (см. пример CARLO2_LOT & DEV из каталога ANALYSIS\MonteCarlo).
На строке Report When указывается условие, при выполнении которого выводится предупреждающее сообщение в тестовый файл результатов моделирования, имеющий расширение имени *.OUT. Имя указываемой на этой строке функции может быть выбрано в списке доступных функций (рис. 6, б), открываемом нажатием на клавишу Function. Перед выполнением расчетов по методу Монте-Карло следует поставить переключатель Status в положение On. Выделение параметров, имеющих случайный разброс, выполняется с помощью ключевых слов LOT и/или DEV.