ванный на этом анализе расчет наихудшего случая по заданному критерию, определяемой опцией “function”.
При расчетах используются следующие аргументы и опции.
Опция “analysis” (вид анализа). В профиле выбирается автоматически как дополнительная настройка к указанному основному виду анализа (DC, AC или TRAN). Спецификация «вид анализа» в операторе .WCASE указывается DC, или AC, или TRAN. Таким образом определяется, для какого из видов анализа проводится анализ чувствительности и расчет наихудшего случая. Для этого вида анализа проводится многократный расчет при варьировании параметра модели компонентов. Все остальные виды анализа, указанные в задании на моделирование схемы, проводятся один раз при номинальных значениях параметров элементов.
Опция “output variable” (выходная переменная). В профиле это выбор настройки “Output Variable:”. Указывается, значения какой переменной определяются в процессе статистического анализа (к значениям какой переменной относится заданный критерий наихудшего
случая). Форма описания выходной переменной является обычной для PSpice-расчетов (см., например, оператор .PRINT).
Опция “function” (функция, назначение расчетов). В профиле это выбор настроек окна “Function”, которое вызывается с использованием кнопки More Settings...
Во всех трех видах анализа (DC, AC, TRAN), которые могут использоваться при расчете наихудшего случая, получается некоторая зависимость выходной переменной: от аргумента оператора DC, от частоты, от времени. На этих зависимостях (графиках кривых) и задается некоторый критерий задаваемый опцией “function”, определяющий качественные показатели работы схемы и служащий для формулировки понятия "наихудший случай" [3]. За основу принимаются параметры схемы, вычисляемое при первом «номинальном» проходе програм-
мы расчетов, далее вычисляются и сравниваются отклонения от номинального прохода
(nominal and subsequent runs).
«Функция» может принимать следующие значения:
•YMAX – ищется абсолютная величина наибольшего отклонения формы каждой кривой от номинальной;
•MAX – ищется максимальное значение каждой кривой;
•MIN – ищется минимальное значение каждой кривой;
•RISE_EDGE (<value>) – ищется первый момент пересечения кривой заданного порогового значения <value> (с результатом выше порога). На кривой должен быть, по крайней мере, один участок, на котором переменная хотя бы в одной точке была бы
меньше или равна заданному пороговому значению, а в последующей следующей точке – больше; выходной список значений (output value) начинается с точки, в которой кривая легла выше порога <value>;
•FALL_EDGE(<value>) – ищется первый момент пересечения кривой заданного поро-
гового значения <value> (с результатом ниже порога). На кривой должен быть, по крайней мере, один участок, на котором переменная хотя бы в одной точке была бы
больше или равна заданному пороговому значению, а в последующей следующей точке – меньше; выходной список значений (output value) начинается с точки, в которой кривая легла ниже порога <value>.
Опция [option]. В операторе .WCASE могут использоваться одна или несколько следующих необязательных опций.
•LIST . В профиле это выбор строки “List model parameter values in the output file for each run” окна Function, которое вызывается с использованием кнопки More Settings... Выбор
предписывает печатать обновленные параметры модели для анализа чувствительности при выводе данных в текстовый файл. На данные выводимые в постпроцессор PROBE эта опция не влияет.
•OUTPUT ALL. В профиле это выбор строки “Save data from each sensitivity run” набора опций “Worst-case/Sensitivity options”. Эта настройка управляет выводом результатов рас-
81
четов после первого (номинального) расчета. В целом вывод данных осуществляется под
управлением операторов: .PRINT, .PLOT и .PROBE. Если выбор данной опции отсутствует, то операторы .PRINT, .PLOT, .PROBE выдают результаты только номинального расче-
та и наихудшего расчета. При наличии опции в PROBE выдается вся информация о результатах расчетов.
•RANGE (<low value>, <high value>). В профиле это редактирование/выбор строки “Evaluate only when the sweep variable is I the range:” окна Function, которое вызывается с ис-
пользованием кнопки More Settings... Задает ограничения на диапазон изменения аргумента (параметра DC, частоты при AC-анализе, времени при Transient-расчетах) при расчете «функции» “function”. В качестве <low value> или <high value> (<минимальная величи-
на> или <максимальная величина>) может быть задан символ "*", что означает "без ограничения".
•HI или LOW. В профиле это выбор опции “Worst-Case direction” окна Function, которое вызывается с использованием кнопки More Settings... Задает направление, по которому при расчетах производится изменение параметров расчетов (по отношению к номиналь-
ному значению). По умолчанию для значений «функции» YMAX и MAX используется HI, а для остальных - LOW.
•VARY <спецификация>. В профиле это выбор набора значений в строке “Vary devices that have ___ tolerances” набора опций “Worst-case/Sensitivity options”. Эта настройка опреде-
ляет, какие параметры моделей варьируются в процессе расчета. <спецификация> может принимать значения:
oDEV - варьируются только параметры, допуск на разброс которых описан как DEV (разброс параметров от компонента к компоненту);
oLOT - варьируются только параметры, допуск на разброс которых описан как LOT (разброс параметров от партии к партии компонентов);
oBOTH - варьируются параметры, имеющие описания или DEV, или LOT, или и то и другое (данная спецификация используется по умолчанию).
•DEVICES (list of device types) В профиле это выбор набора значений в строке “Limit devices to type(s):” набора опций “Worst-case/Sensitivity options”. По умолчанию в расчетах чувствительности и анализе работы схемы на наихудший случай участвуют все компоненты. По списку <список типов компонентов> задается список типов компонентов, параметры которых варьируются. Если требуется ограничиться только несколькими типами компонентов, следует задать эту опцию и сформировать <список типов компонентов>. В него
записываются без пробелов и других разделителей символы, обозначающие соответствующие типы компонентов.
Примечания.
1)Если значения RANGE не используются «функция» “function” рассчитывается во всем диапазоне возможных величин. Это эквивалентно записи RANGE(*,*).
2)Пример записи YMAX RANGE(*,.5) определяет, что ищется абсолютная величина наибольшего отклонения формы каждой кривой от номинальной в диапазоне ≤ 5.
3)Пример записи MAX RANGE(-1,*) определяет, что ищется максимальное значение каждой кривой для значений аргумента ≥ -1.
4)Когда используются настройки параметров модели VARY BOTH расчеты чувствительности для параметров, с заданными спецификациями DEV и LOT, осуществляются для значений LOT. Далее, параметры увеличи-
ваются до максимального или минимального пределов (maximized or minimized) используя разбросы по LOT и DEV для анализа на наихудший случай.
Расчеты или, точнее, проходы расчетов (multiple runs) при проведении данного вида анализа осуществляются при изменении параметров. В отличие от расчетов с использованием оператора .MC, оператор .WCASE определяет порядок расчетов с изменением только одного параметра за проход (run). Сначала проводится заданный вид анализа при номинальных значениях параметров. Затем осуществляется многократный расчет при изменении каждый раз
82
одного параметра модели компонента. На основании этих расчетов вычисляются коэффициенты чувствительности заданного критерия к каждому параметру моделей и по ним определяется наихудшее сочетание параметров. И в заключении рассчитывается схема для этого наихудшего сочетания параметров.
Одновременно проводить расчеты по операторам .MC и .WCASE нельзя.
Команда (оператор, директива) .DISTRIBUTION (user-defined distribution)
Оператор .DISTRIBUTION обеспечивает проведение статистического анализа с задавае-
мым пользователем законом распределения. Зависимость, задаваемая по команде
.DISTRIBUTION определяет закон или кривую распределения (distribution curve) с относительной вероятностью появления случайных чисел, служащих для выбора отклонений параметров моделей при PSpice-расчетах.
Примечание.
В некоторых версиях САПР директива .DISTRIBUTION используется только для анализа по методу Мон- те-Карло.
При расчетах используются следующие аргументы и опции.
Набор (<deviation> <probability>).
Описание закона распределения в операторе .DISTRIBUTION состоит из пар значений <deviation> <probability> (<отклонение> и <относительная вероятность>). Может быть ука-
зано до 100 таких пар.
Величины <отклонение> лежат в пределах от -1 до 1, что соответствует диапазону рабочих значений генератора случайных чисел. Каждое следующее значение величины <отклонение> должно быть не меньше предыдущего, но может быть равно ему.
Величины <относительная вероятность> представляют собой относительные значения вероятностей и должны быть положительными или равными нулю.
Name. (Имя).
Заданное в операторе .DISTRIBUTION имя может при желании быть задано как имя закона распределения по умолчанию с помощью опции DISTRIBUTION оператора .OPTIONS.
Примечание.
В одном задании на моделирование может быть несколько операторов .DISTRIBUTION, определяющих разные законы распределения с разными именами.
Практическая работа со схемой проекта A_Filt
Для схемы проекта A_Filt (см. Приложение 3, раздел 5) проведем статистический анализ работы схемы как дополнение к AC-анализу и TRAN-анализу. Схема и результаты расчетов
представлены в приложении 3.
Настройка профиля General Settings для AC-анализа показана на рис. 3. 30.
83
Рис. 3.30. Настройка профиля General Settings для AC-анализа схемы A_Filt
Настройка профиля Monte Carlo/Worst Case для AC-анализа и проведения расчетов по методу Монте-Карло показана на рис. 3. 31.
Рис. 3.31. Настройка профиля Monte Carlo/Worst Case для AC-анализа ФНЧ при расчетах по методу Монте-Карло
Остальные настройки профиля (см. More Settings) по умолчанию.
Содержательная часть задания на моделирование для этих настроек профиля представлена ниже.
*Analysis directives:
.AC DEC 501 0.1 1000MEG
.NOISE V([OUT]) V_VSig
.MC 200 AC V([OUT]) YMAX OUTPUT EVERY 20
.OPTIONS DISTRIBUTION GAUSS
.PROBE V(*) I(*) W(*) D(*) NOISE(*)
.INC ".\a_filt-SCHEMATIC5.net"
**** INCLUDING a_filt-SCHEMATIC5.net ****
84
* source A_FILT |
|
|
|
|
V_VP+ |
+15 0 15Vdc |
|
|
|
C_C2-1 |
N07379 |
OUT C_C2-1 1nF |
||
.model |
C_C2-1 CAP |
C=1 |
DEV=10% |
|
V_VP- |
0 -15 15Vdc |
|
|
|
X_U1A |
N07395 N07375 +15 -15 OUT LM324 |
|||
R_R2-1 |
N07395 |
N07379 |
R_R2-1 27K |
|
.model |
R_R2-1 RES |
R=1 |
DEV=5% |
|
R_R2-2 |
N07395 |
N07379 |
R_R2-2 27K |
|
.model |
R_R2-2 RES |
R=1 |
DEV=5% |
|
R_R1-1 |
N07379 |
V1 |
R_R1-1 27K |
|
.model |
R_R1-1 RES |
R=1 |
DEV=5% |
|
C_C1 |
0 N07395 |
C_C1 1nF |
||
.model |
C_C1 CAP C=1 DEV=10% |
|||
R_R1-2 |
N07379 |
V1 |
R_R1-2 27K |
|
.model |
R_R1-2 RES |
R=1 |
DEV=5% |
|
C_C2-2 |
N07379 |
OUT C_C2-2 1nF |
||
.model |
C_C2-2 CAP |
C=1 |
DEV=10% |
|
R_RLoad |
0 OUT |
10K |
|
|
V_VSig |
V1 0 DC 1 |
AC 1 |
|
|
+SIN 0V 2.5V 8.0kHz 0 |
0 0 |
|
|
|
R_Rfb |
OUT N07375 |
R_Rfb 1K |
||
.model |
R_Rfb RES R=1 DEV=5% |
|||
Необходимо обратить внимание, что выбор гауссова распределения параметров осуществляется с использованием директивы .OPTIONS, как представлено в строке:
.OPTIONS DISTRIBUTION GAUSS
Также необходимо обратить внимание на использование моделей резисторов и конденсаторов с использованием задания разброса параметров: DEV=5% и DEV=10%.
Настройка профиля Monte Carlo/Worst Case для AC-анализа и проведения расчетов на наихудший случай показана на рис. 3. 32.
Рис. 3.32. Настройка профиля Monte Carlo/Worst Case для AC-анализа ФНЧ при расчетах на наихудший случай
Директивы управления заданием для настроек профиля на рис. 3. 32 (для AC-анализа, см. рис. 3.30) представлены ниже.
85