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

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

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

3.3. Малосигнальный анализ

81

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

.TF I(VDRIV) ICNTRL .

Результатом расчета может быть следующий фрагмент выходного файла (в него, как и раньше, включены комментарии, заключенные в скобки):

**** SMALL-SIGNAL CHARACTERISTICS

(малосигнальные характеристики)

I(vdriv)/icntrl = 9.901E-03

(коэффициент усиления)

INPUT RESISTANCE AT icntrl = 9.901E+00

(входное сопротивление)

OUTPUT RESISTANCE AT I(vdriv) = 1.010E+14

(выходное сопротивление)

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

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

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

SПXIJ

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

3.3.3.АНАЛИЗ ЧУВСТВИТЕЛЬНОСТИ ПО ПОСТОЯННОМУ ТОКУ

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

Чувствительность оценивается коэффициентом чувствительности выходного параметра схемы ПJ к параметру компонента xi, равным производной dПJ/dxi. Однако, такие коэффициенты чувствительности являются размерными величинами, чувствительными к масштабу параметров xi, и не позволяют непосредственно сравнивать чувствительности выходного параметра к различным xi. Например, если в схеме имеются резисторы R1=100 кОм и R2=1 кОм и получены коэффициенты чувствительности

некоторого выходного параметра ПJ, равные SRП1J =1 и SRП2J =10, то,

ориентируясь на них, нельзя сказать, что чувствительность к R2 выше, чем чувствительность к R1. Действительно, коэффициент чувствительности показывает в данном случае, на сколько единиц изменится параметр ПJ при изменении сопротивления на 1 кОм. Но если R1 может реально измениться на 1 кОМ (это всего 1% от его номинала), то R2 измениться на 1 кОМ безусловно не может. Если считать, что реально сопротивления могут

меняться, например, на 10%, то возможные изменения равны

R1=10 кОм,

R2=0,1 кОм. В итоге возможные изменения ПJ при вариациях R1 составят

R1 SПJ =10, а при

вариациях R2

- R2 SПJ =1.

Таким

образом,

R1

 

R2

 

 

 

чувствительность к R1 в десять раз выше, хотя коэффициент

чувствительности к R1 в десять раз меньше. Поэтому для сравнения

чувствительности по разным параметрам используют не коэффициенты SПXIJ ,

а нормированные

коэффициенты

чувствительности

~ПJ

равные

SxI

,

3.3. Малосигнальный анализ

83

производным dПJ/d xI xI , где xI - номинальное значение xi. Связь между

~ПJ

ПJ

~ПJ

ПJ

. В рассмотренном

SxI

и SXI

выражается соотношением: SxI

=xI SXI

выше примере S~RП1J =100, а S~RП2J =10, что правильно отражает тот факт, что

чувствительность к R1 в 10 раз выше, чем к R2. Недостатком нормированных коэффициентов чувствительности является то, что их нельзя использовать в случае, если xI =0.

В PSpice имеется несколько вариантов расчета чувствительности. Один из них, задаваемый оператором .SENS, рассматривается в данном пункте. Форма оператора:

.SENS <список выходных переменных>

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

Расчет чувствительности осуществляется только по параметрам следующих элементов :

сопротивления,

независимые источники напряжения и тока,

ключи, управляемые напряжением и током,

диоды,

биполярные транзисторы.

Результаты расчета автоматически включаются в выходной файл .OUT. Алгоритм расчета чувствительности линеаризирует схему в рабочей точке и затем по этой линеаризованной схеме определяет математически точные производные, решая системы линейных уравнений. Такая последовательность действий может приводить к некоторым ошибкам, поскольку не учитывает режимных зависимостей параметров нелинейных элементов. Это можно пояснить на следующем упрощенном примере. Пусть базовый ток Iб некоторого биполярного транзистора задается от источника напряжения E через сопротивление R, т.е. Iб=E/R. Коллекторный ток Iк этого

84

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

транзистора в первом приближении можно считать равным Iк=β(Iк) Iб=β(Iк) E/R, где β(Iк) - коэффициент передачи базового тока, зависящий от величины Iк. Если требуется определить чувствительность тока Iк к сопротивлению R, то алгоритм линеаризирует схему в рабочей точке, что соответствует в нашем случае уравнению Iк =β(Iк) E/R, где Iк - коллекторный ток в рабочей точке. Затем определяется производная d(Iк)/dR = =-β(Iк) E/R2. Однако дифференцирование исходного уравнения дает другой результат:

d(Iк)=-β(Iк) E/R2 dR+ E dβ(Iк ) , откуда

R d(Iк )

d(I

 

)

 

 

−β(

 

 

) E R2

 

к

=

I

к

.

dR

 

1 −

E

 

dβ(I к )

 

 

 

 

 

 

 

R

d(I к )

 

Как видно, результаты совпадают только в случае, если в рабочей точке

dβ(I к )

= 0, т.е. при отсутствии режимной зависимости параметров

d(I к )

 

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

В рассматриваемом в п. 3.6.3 расчете наихудшего случая по оператору

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

Приведем пример использования оператора .SENS. Пусть в некоторой схеме мы хотим рассчитать чувствительность по постоянному току потенциала узла 4 и тока источника V2 (источник нулевого напряжения, включенный в какую-то интересующую нас ветвь схемы). Тогда соответствующий оператор задания расчета чувствительности имееет вид:

.SENS V(4) I(V2) .

В результате расчета в выходном файле будут распечатаны результаты примерно в следующем виде (в фигурных скобках даются комментарии):

DC SENSITIVITIES OF OUTPUT V(4)

{Чувствительность по постоянному току переменной V(4)}

ELEMENT

ELEMENT

ELEMENT

NORMALIZED

NAME

VALUE

SENSITIVITY

SENSITIVITY

{Имя

{Значение

(VOLTS/UNIT)

(VOLTS/PERCENT)

параметра}

параметра}

{Чувствительность

{Нормализованная

 

 

3.3. Малосигнальный анализ

85

 

 

к параметру

чувствительность

 

 

 

(вольт/единица)}

(вольт/процент)}

 

r4

1.000E+03

-1.117E-12

-1.117E-11

 

v1

2.000E+00

1.000E+00

2.000E-02

 

v2

0.000E+00

1.130E-09

0.000E+00

 

.............

...............

...............

...............

 

q1

{чувствительность к параметрам транзистора q1}

 

RB

1.000E+01

8.592E-24

8.592E-25

 

RC

1.000E+00

1.263E-21

1.263E-2

 

.............

...............

...............

...............

 

DC SENSITIVITIES OF OUTPUT I(v2)

{Чувствительность по постоянному току переменной I(v2)}

ELEMENT

ELEMENT

ELEMENT

NORMALIZED

NAME

VALUE

SENSITIVITY

SENSITIVITY

{Имя

{Значение

(AMPERS/UNIT)

(AMPERS/PERCENT)

параметра}

параметра}

{Чувствительность

{Нормализованная

 

 

к параметру

чувствительность

 

 

(ампер/единица)}

(ампер/процент)}

r4

1.000E+03

-1.262E-24

-1.262E-23

v1

2.000E+00

-1.262E-23

2.260E-14

v2

0.000E+00

-1.000E-03

0.000E+00

.............

...............

...............

...............

q1

{чувствительность к параметрам транзистора q1}

RB

1.000E+01

8.592E-24

8.592E-25

RC

1.000E+00

1.263E-21

1.263E-2

.............

...............

...............

...............

В третьем и четвертом столбцах таблиц даются коэффициенты чувствительности SПXIJ и S~ПxIJ (последние в данном случае выражены в

единицах на процент, т.е. равны xI SПXIJ 100).

Рассмотренный оператор - только одна из возможностей исследовать чувствительность в PSpice. Другая возможность будет рассмотрена в п. 3.6.3 при обсуждении использования оператора .WCASE.

86

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

3.3.4. АНАЛИЗ ШУМОВ

Задание на анализ шумов осуществляется оператором .NOISE, имеющим форму:

.NOISE V(<узел>[, <узел>]) <имя> <шаг печати>

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

Спецификация V(<узел>[,<узел>]) определяет выход схемы. Спецификация <имя> - это имя независимого источника тока или напряжения. Сам по себе этот источник не является источником шума. Его упоминание в операторе .NOISE нужно только для того, чтобы указать, к каким точкам схемы и в какой форме программа должна пересчитывать эквивалентный шум на входе.

Источниками шума считаются резисторы, полупроводниковые приборы и ключи. Резисторы являются генераторами теплового шума со спектральной плотностью на 1 Гц, равной IR2=4 k T/R, где k - постоянная Больцмана, равная 1,38 10-23 Дж/град; T - абсолютная температура; R - сопротивление. Аналогичными источниками шума являются все сопротивления, входящие в эквивалентные схемы полупроводниковых приборов и ключей. Кроме того, источниками шума в полупроводниковых приборах являются токи p-n переходов. В них учитываются дробовой и фликкер-шум со спектральной плотностью, равной I2=2q I+KF IAF/f, где I - ток перехода, f - частота, q - заряд электрона, KF и AF - параметры модели.

Для каждой частоты, заданной в операторе .AC, определяется вклад каждого источника и спектральная плотность его шума пересчитывается к выходному напряжению схемы. Bcе источники шума считаются статистически независимыми. Поэтому спектральная плотность напряжения шума на выходе (обозначается как ONOISE, размерность - В/Гц1/2) определяется как корень квадратный из суммы квадратов спектральных плотностей отдельных источников. Одновременно рассчитывается коэффициент передачи схемы со входа на выход и с его помощью выходной шум пересчитывается ко входу (спектральная плотность эквивалентного шума на входе обозначается как INOISE). Если источник <имя> в операторе

.NOISE является источником напряжения, то размерность INOISE В/Гц1/2

3.3. Малосигнальный анализ

87

(т.е. это напряжение шума). Если же источник <имя> в операторе .NOISE является источником тока, то размерность INOISE А/Гц1/2 (т.е. это ток шума).

Суммарные результаты анализа шумов могут быть выведены на печать операторами .PRINT и .PLOT или запомнены оператором .PROBE. В списки печатаемых величин могут быть включены ONOISE и INOISE (если требуется получить значения в децибеллах, то эти величины обозначаются как DB(ONOISE), DB(INOISE)). Помимо этого можно распечатать информацию о вкладах в общий шум каждого отдельного источника шума. Для этого служит спецификация <шаг печати> в операторе .NOISE. Если задан <шаг печати>=N, то на каждой N-й частоте в выходном файле печатается подробная таблица, содержащая данные о вкладе каждого источника шума в ONOISE. Если <шаг печати> не задан, то эти подробные таблицы не печатаются.

Приведем примеры операторов .NOISE:

.NOISE V(5) VIN

.NOISE V(101) VSRC 20

.NOISE V(4,5) ISRC

Ниже приведен пример фрагмента печати подробной таблицы со вкладами отдельных источников шума (в фигурных скобках дан комментарий):

**** NOISE ANALYSIS

TEMPERATURE = 27.000 DEG C

{Анализ шумов}

********************************************************

 

***********

FREQUENCY = 1.000E+03 HZ

{Частота 1 кГц}

**** TRANSISTOR SQUARED NOISE VOLTAGES (SQ V/HZ)

{Источники шума

 

 

 

в транзисторах

 

q1 q2

 

2/Гц)}

RB

0.000E+00

0.000E+00

 

RC

0.000E+00

0.000E+00

 

RE

0.000E+00

0.000E+00

 

IB

4.254E-09

4.254E-09

 

IC

1.154E-06

1.154E-06

 

FN

0.000E+00

0.000E+00

{Общий шум}

TOTAL

1.158E-06

1.158E-06

**** RESISTOR SQUARED NOISE VOLTAGES (SQ V/HZ)

{Источники шума

 

rc1

rc2

re1

re2

в резисторах

TOTAL

3.503E-06

3.503E-06 1.205E-06 1.205E-06

2/Гц)}

**** TOTAL OUTPUT NOISE VOLTAGE = 1.173E-05 SQ V/HZ {Выходной шум (В2/Гц)

88

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

 

= 3.425E-03 V/RT HZ

(В/Гц1/2)}

TRANSFER FUNCTION VALUE:

 

{Передаточная

V(5)/v1

= 1.992E+05

функция V(5)/v1}

EQUIVALENT INPUT NOISE AT v1

= 1.720E-08 V/RT HZ

{Эквивалентный

 

 

входной шум

 

 

(В/Гц1/2)}

Для вычисления дифференциального коэффициента шума Kш некоторой схемы, рассматриваемой как четырехполюсник, работающий от источника сигнала с внутренним сопротивлением RГ, можно воспользоваться соотношениями [1]:

K

ш

( f )

INOISE2

=

 

INOISE2

 

при источнике напряжения на входе,

4kT R

 

1, 656 10−20 R

 

 

 

Г

 

Г

 

 

 

0

 

 

 

K

ш

( f )

INOISE2

=

 

INOISE2

 

при источнике тока на входе.

4kT R

 

1, 656 10−20 R

 

 

 

Г

 

Г

 

 

 

0

 

 

 

Рис. 3.2. Генераторы шума в виде: а) резистора; б) диода

При построении макромоделей могут потребоваться генераторы шума, отражающие шумовые свойства моделируемого устройства. Их можно построить, описав в виде отдельного сопротивления или диода, включенных последовательно с источником нулевого напряжения (рис. 3.2). Этот источник нужен для того, чтобы передать его шумовой ток через зависимый источник тока или напряжения в требуемые узлы макромодели. Спектральные плотности шума резистора и p-n перехода были приведены выше. Выбором соответствующей величины сопротивления R или тока и

3.4. Расчет переходных процессов

89

параметров RS, KF, AF диода можно промоделировать требуемую спектральную плотность шума.

3.4. РАСЧЕТ ПЕРЕХОДНЫХ ПРОЦЕССОВ

Расчет переходного процесса задается оператором .TRAN, имеющим вид:

.TRAN[/OP] <шаг печати> <время окончания>

+ [<время до печати> [<максимальный шаг>]] [UIC]

Расчет переходного процесса в схеме осуществляется, начиная с нулевого момента времени и до времени, определяемого спецификацией <время окончания>. Расчет начинается с определения начальной точки - состояния схемы при значениях входных сигналов, соответствующих нулевому моменту времени (это было подробно рассмотрено в п. 3.2). Далее ведется расчет переходных процессов с автоматически изменяющимся внутренним шагом по времени. Результаты расчета выводятся операторами .PROBE,

.PRINT, .PLOT (см. п. 3.8). Спецификация <шаг печати> определяет шаг, с которым заносятся результаты в массивы данных, соответствующие этим операторам. Поскольку точки, выводимые на печать с заданным щагом, не соответствуют тем, которые в действительности были посчитаны с изменяющимся внутренним шагом, то при печати используется интерполяция истинных значений полиномом второго порядка. В результате, если задать большой шаг печати, то в моменты резких изменений в схеме печатаемые значения могут заметно отличаться от истинных. В то же время чрезмерное снижение шага печати приводит к увеличению размеров выходного файла .OUT и файла .DAT. Обычно шаг печати задается в пределах 1/1000÷1/10 от общей длительности переходного процесса.

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

Не обязательная спецификация <максимальный шаг> позволяет установить ограничение на величину внутреннего шага по времени. По умолчанию максимальный шаг равен <время окончания>/50. Уменьшение этого шага требуется в некоторых случаях, чтобы не пропустить какой-нибудь короткий входной импульс. Дело в том, что если входной сигнал состоит из какой-то

90

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

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

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

.TRAN опции/OP вызывает (если в операторе отсутствует опция UIC) подробную печать информации о режиме и параметрах всех нелинейных элементов в этой начальной точке, аналогичную той, которую выдает оператор .OP (см. п. 3.2.2).

В некоторых случаях, например при расчете схем генераторов (см. п. 3.2.2), необходимо отменить расчет начальной точки. Это делается заданием в операторе .TRAN спецификации UIC (Use Initial Conditions). В таком случае начальная точка определяется спецификациями IC в описаниях емкостей и индуктивностей, а также операторами .IC или .LOADBIAS (см. п. 3.2.4 и работу [3]).

Приведем примеры оператора .TRAN:

.TRAN 1ns 200ns

.TRAN/OP 1ns 200ns 20ns

.TRAN 1ns 200ns 0ns 20ns UIC

В первом примере задан расчет на интервале времени 200 нс с шагом печати 1 нс. Во втором примере в дополнение к первому задана подробная печать начальной точки и отсутствие печати на протяжении первых 20 нс. Третий пример аналогичен первому, но в нем задано ограничение на шаг - 20 нс и задан отказ от расчета начальной точки.

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