Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Архангелский ПСпице и Десигн Центер Ч1 1996

.pdf
Скачиваний:
91
Добавлен:
16.08.2013
Размер:
1.78 Mб
Скачать

3.6 Расчет разброса параметров

121

Рис. 3.10. Результаты статистического расчета

3.7. МНОГОВАРИАНТНЫЙ АНАЛИЗ

Многовариантный анализ подразумевает многократный расчет схемы при изменяющихся параметрах компонентов или сигналов. Несколько операторов многовариантного анализа уже были рассмотрены: это - оператор .DC (п. 3.2.5), осуществляющий многовариантный анализ по постоянному току, и операторы расчета разброса параметров - .WCASE (п. 3.6.3) и .MC (п. 3.6.4). Ниже рассмотрены другие операторы многовариантного анализа. Основной из них - оператор .STEP, который может записываться в следующих форматах:

1).STEP [LIN] <переменная-аргумент> <начальное значение> +<конечное значение> <приращение>

2).STEP <шкала> <переменная-аргумент> <начальное значение> +<конечное значение> <число точек>

где <шкала> = OCT или DEC.

3) .STEP <переменная-аргумент> LIST <список значений>

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

122

Виды анализа в PSpice

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

В качестве аргумента может фигурировать

источник напряжения или тока:

в качестве спецификации <переменная-аргумент> задается имя независимого источника напряжения или тока, например, V1, IIN;

параметр модели:

спецификация <переменная-аргумент> задается в формате <вид модели> <имя модели>(<имя параметра>), например:

RES MR1(R) - коэффициент пропорциональности R модели резистора с именем MR1;

NPN MQ(IS) - параметр IS модели npn-транзистора с именем MQ; Нельзя использовать в качестве аргумента параметры L и W для МДПтранзисторов (но можно LD и WD) и любые температурные параметры, такие, как TC1, TC2 для резистора и т.д.;

температура:

спецификация <переменная-аргумент> задается ключевым словом TEMP, для каждого изменения температуры программа пересчитывает все температурно-зависимые параметры моделей;

глобальный параметр:

спецификация <переменная-аргумент> задается в формате PARAM <имя параметра>; например, PARAM RNOM, если RNOM был объявлен глобальным параметром с помощью оператора .PARAM; для каждого изменения параметра программа пересчитывает все зависимые от него математические выражения.

Для форм оператора .STEP 1 и 2 изменение аргумента происходит в пределах <начальное значение> ÷ <конечное значение>. При этом <начальное значение> может задаваться как меньше, так и больше, чем <конечное значение>. Соответственно аргумент в процессе вычислений будет нарастать или убывать. Независимо от этого <приращение> и <число точек> задаются всегда положительными.

Характер изменения аргумента задается спецификациями, определяющими шкалу и шаг по аргументу.

LIN - линейное изменение аргумента. Само слово LIN при этом может быть опущено, <приращение> - шаг по аргументу.

DEC - логарифмическое изменение аргумента по декадам. При этом <число точек> - число точек на декаду Nт. Значения аргумента в

соседних точках отличаются друг от друга в постоянное число раз, равное 101 (NT − 1) .

3.7 Многовариантный анализ

123

OCT - логарифмическое изменение аргумента по октавам. При этом <число точек> - число точек на октаву Nт. Значения аргумента в

соседних точках отличаются друг от друга в постоянное число раз, равное 81 (NT −1) .

LIST - аргумент принимает значения, перечисленные в спецификации <список значений>.

Приведем примеры использования оператора .STEP:

1).STEP V1 0v 10v 1v

2)R1 1 6 MR1 5K

R2 5 6 MR1 10K

.MODEL MR1 RES(R=1)

.STEP LIN RES MR1(R) 0.9 1.1 0.1

3).PARAM RNOM=1 R1 1 6 {RNOM*5} R2 5 6 {RNOM*10}

.STEP LIN PARAM RNOM 0.9 1.1 0.1

4).PARAM A=1

V1 1 0 SIN(0 {A} 100khz)

.STEP PARAM A LIST (1 2)

5).STEP DEC NPN MQ(IS) 1E-18 1E-14 5

6).STEP TEMP LIST -60 0 27 80

Впервом примере напряжение источника V1 меняется линейно от 0 до 10

Вс шагом 1 В. Во втором примере линейно меняется параметр R модели

MR1 резистора. При этом согласованно меняются в пределах 0.9 ÷ 1.1 от номинала сопротивления R1 и R2, поскольку оба они описываются одной моделью. В третьем примере аналогичная задача решается другим путем - введением глобального параметра RNOM и изменением его оператором

.STEP. В четвертом примере варьируется амплитуда синусоидального сигнала. В пятом примере в логарифмическом масштабе меняется тепловой ток IS модели MQ биполярного npn-транзистора. В шестом примере изменяется температура в соответствии с заданным списком значений.

В PSpice имеется еще один оператор многовариантного анализа - .TEMP, который записывается в формате:

.TEMP <список значений>

Оператор .TEMP устанавливает значения температуры, при которых проводится анализ. Значения температуры берутся в градусах Цельсия. Если

124

Виды анализа в PSpice

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

При пересчетах параметров для разных температур предполагается, что параметры всех моделей были рассчитаны при номинальной температуре TNOM (может задаваться опцией TNOM в операторе .OPTIONS, по умолчанию TNOM=27 °C).

Если оператор .TEMP в задании отсутствует, то схема рассчитывается при температуре TNOM.

Примеры оператора .TEMP:

.TEMP 125

.TEMP 0 27 125 -60

Первый пример задает температуру, при которой будет считаться схема, равной 125 °C. Во втором примере задается многовариантный анализ при 4-х значениях температур.

Операторы .STEP и .TEMP изменяют параметры элементов схемы. Но параметры могут изменяться и другими операторами: .DC, .MC, .WCASE. Чтобы в подобных случаях не возникало недоразумений, в PSpice принято правило: нельзя совмещать в одном задании операторы .STEP, .DC, .TEMP,

.MC, .WCASE, изменяющие одни и те же параметры. Например, можно совместить в задании оператор .МС и оператор .STEP, изменяющий напряжение какого-либо источника. Но эти операторы нельзя объединить, если .STEP изменяет параметры резистора. Точно так же нельзя совмещать

.STEP и .DC, изменяющие один и тот же параметр, .TEMP и .STEP, изменяющий температуру и т.д.

В заключение отметим, что во время многовариантного анализа можно использовать оператор .SAVEBIAS, позволяющий запоминать состояние схемы по постоянному току при некотором заданном значении аргумента. Подробнее об этом сказано в работе [3].

3.8. ОПЕРАТОРЫ ВЫДАЧИ РЕЗУЛЬТАТОВ РАСЧЕТА

3.9 Операторы выдачи результатов расчета

125

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

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

.PROBE[/CSDF] [<список выходных переменных>]

Например:

.PROBE

.PROBE/CSDF

.PROBE V(3) V(R1)

Оператор обеспечивает запись результатов различных видов анализа (DC расчета, частотного анализа, анализа шумов, расчета переходных процессов) в файл данных для постпроцессора PROBE. При многовариантном расчете в файл для постпроцессора заносятся результаты всех вариантов указанных видов анализа. Этот файл в версиях PSpice, ниже пятой, имеет имя PROBE.DAT, а начиная с пятой версии его имя совпадает с именем входного файла задания и имеет расширение .DAT. Обычно это бинарный файл. Если же оператор .PROBE записан с опцией /CSDF (см. пример 2), то создается текстовый файл в формате Common Simulation Data Format. Его расширение в этом случае .TXT. Этот файл имеет больший объем и использовать его имеет смысл только при необходимости пересылок между разными семействами вычислительных машин, если почему-то не удается переслать бинарный файл.

Если в операторе .PROBE отсутствует <список выходных переменных> (см. примеры 1 и 2), то в файл заносятся все токи, напряжения и цифровые сигналы схемы. Это очень удобно, так как в этом случае с PROBE можно работать как с осциллографом, наблюдая сигналы в любой точке схемы. Особенно это относится к пакету Design Center, в котором на экране одновременно можно наблюдать и изображение схемы, и графики постпроцессора PROBE. Однако для больших схем при большом числе шагов

126

Виды анализа в PSpice

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

вPROBE можно строить графики только тех переменных, которые включены

всписок. Впрочем, помимо этих переменных в файл всегда заносятся (в PSpice 5) плотности шума INOISE, ONOISE и кривые B(H) магнитных сердечников. Так что эти переменные можно не включать в список.

Данные для печати в выходной файл .OUT заносятся при наличии в задании операторов .PRINT - печать таблиц и .PLOT - печать квазиграфиков. Надо отметить, что эти операторы в значительной степени потеряли свое значение после того, как в пакете PSpice появился постпроцессор PROBE. Особенно это относится к оператору .PLOT, поскольку квазиграфики потеряли смысл при наличии настоящих графиков в PROBE. В связи с этим операторы .PRINT и .PLOT будут рассмотрены очень кратко. Полные сведения о них содержатся в работе [3].

Формат оператора .PRINT:

.PRINT <вид анализа> <список выходных переменных> ,

где <вид анализа> = DC, или AC, или NOISE, или TRAN. Например:

.PRINT TRAN V(3) V(2,3) IC(Q2) I(VCC)

.PRINT AC VM(3) VP(R1) V([RESET]) IR(R5) VDB(5)

.PRINT NOISE INOISE ONOISE DB(INOISE) DB(ONOISE)

Оператор задает печать в виде таблицы в выходном файле .OUT результатов анализов: DC, переходного процесса, частотного анализа, анализа шумов.

В файле задания может быть несколько операторов .PRINT, относящихся как к одному, так и к разным видам анализа. Каждый оператор .PRINT - это отдельная таблица. Печатаемые переменные перечисляются в спецификации <список выходных переменных>.

Число переменных в таблице неограничено. Если значения всех переменных не помещаются в таблице в одну строку, таблица автоматически разбивается на несколько. Ширина одной колонки в таблице определяется заданным числом значащих цифр (опция NUMDGT в операторе .OPTIONS, по умолчанию NUMDGT=4). Число колонок в строке определяется шириной колонки и допустимой длиной строки (задается опцией WIDTH в операторе

.OPTIONS или оператором .WIDTH OUT, по умолчанию 80 символов - ширина стандартного экрана дисплея). Соответственно при значениях по

3.9 Операторы выдачи результатов расчета

127

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

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

TIME

V(1)

V(4,5)

IC(Q1)

0.000E+00

0.000E+00

-1.621E+01

7.477E-06

1.000E-06

6.283E-07

-1.633E+01

7.477E-06

2.000E-06

1.257E-06

-1.646E+01

7.477E-06

3.000E-06

1.885E-06

-1.658E+01

7.477E-06

Оператор .PLOT имеет формат:

.PLOT <вид анализа> <список выходных переменных> + [(<нижний предел>,<верхний предел>)]

где <вид анализа> =DC, или AC, или NOISE, или TRAN. Например:

.PLOT DC V(3) V(2,3) V(R1)

.PLOT TRAN V(3) V(R1) V([RESET]) (0, 5v)

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

В файле задания может быть несколько операторов .PLOT, относящихся как к одному и тому же виду анализа, так и к разным видам. Каждый оператор .PLOT - это отдельный график. На графике может быть не более восьми кривых, имена которых перечисляются в спецификации <список выходных переменных>. Аргументами графиков являются: для DC анализа - переменная оператора .DC, для частотного анализа и анализа шумов - частота, для переходных процессов - время. Диапазон изменения аргумента и шаг по оси X соответствуют всему диапазону изменения и шагу, указанным в операторе соответствующего вида анализа. Масштаб по оси Y устанавливается по умолчанию в зависимости от диапазона изменения выходных переменных. Масштаб по оси Y для частотного анализа всегда

128

Виды анализа в PSpice

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

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

.WATCH. Он имеет формат:

.WATCH <вид анализа> <выходная переменная> + [<нижний предел> <верхний предел>] ...,

где <вид анализа> - DC, или AC, или TRAN.

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

Например, оператор

.WATCH TRAN V(5) -10 10 IC(Q1)

задает вывод на экран в процессе расчета переходного процесса потенциала узла 5 и коллекторного тока транзистора Q1. При этом для потенциала узла 5 установлен диапазон изменений от -10 до 10 В.

Если контролируемая переменная вышла за пределы диапазона и расчет приостановился, на экран выдается сообщение, которое для приведенного выше примера может иметь вид:

Watch alarm in Transient Analysis at TIME 33.71E-12 for V(5) * Analysis Paused *

<C> Continue the analysis <E> Exit from PSpice

Если в ответ нажать клавишу “C”, расчет будет продолжен и в дальнейшем контроль значений данной переменной не будет проводиться. При нажатии клавиш “E” или Esc расчет прервется.

3.9 Операторы выдачи результатов расчета

129

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

3.9. ЗАДАНИЕ ОПЦИЙ

Опции, определяющие условия расчета и выдачи результатов, задаются оператором .OPTIONS, имеющим формат:

.OPTIONS <имя опции> [ = <значение>] ...