Моделирование на функциональном уровне в OrCAD 9. 2

Компоненты и технологии, № 3'2003

Моделирование

на функциональном уровне в OrCAD 9.2

Программы моделирования радиоэлектронных устройств можно разделить на две группы: программы, предназначенные для системного моделирования (моделирования на функциональном уровне) — к ним можно отнести SystemViev, LabView и другие, и программы для схемотехнического моделирования, такие, как OrCAD и Protel. Следует отметить, что программы, предназначенные для системного моделирования, содержат, как правило, элементы схемотехнического моделирования, а программы, предназначенные для схемотехнического моделирования, содержат элементы системного моделирования. В этой статье пойдет речь о возможностях режима моделирования на функциональном уровне в модуле PSPICE A/D пакета OrCAD 9.2, имеющем название Analog Behavioral Modeling (ABM) (аналоговое поведенческое моделирование), и библиотеках ABM.

Иосиф Златин

Конечно, программа OrCAD не сравнима с программой SystemView [1] в области моделирования на функциональном уровне, но наличие этого типа моделирования значительно расширяет возможности создания сложных радиоэлектронных устройств. С помощью режима ABM можно создавать сложные сигналы, в том числе модулированные, моделировать дифференциальные уравнения, создавать модели ламповых, полупроводниковых и электромеханических устройств, моделировать динамические системы, в том числе и с обратными связями.

Одной из главных особенностей библиотеки для функционального моделирования является то, что это библиотека условных графических обозначений (УГО), то есть имеет расширение .olb, и не имеет соответствующей библиотеки математических моделей с расширением .lib.

Большинство элементов библиотеки ABM представляет разновидность линейных и нелинейных управляемых источников напряжения (E) и тока (G) [2].

Управляемые источники OrCAD 9.2 находятся в библиотеке ANALOG.OLB и приведены в таблице 1.

Эти источники управляются одним входным сигналом (напряжением или током). Для создания ис-

Таблица 1. Управляемые источники

Название элемента Назначение элемента Атрибуты

E Источник напряжения, управляемый напряжением (ИНУН) GAIN - коэффициент усиления

F Источник тока, управляемый током (ИТУТ) GAIN - коэффициент усиления

G Источник тока, управляемый напряжением (ИТУН) GAIN - коэффициент усиления

H Источник напряжения, управляемый током (ИНУТ) GAIN - коэффициент усиления

EPOLY Нелинейный ИНУН (с нулевой постоянной составляющей) VALUE - порядок полинома COEF - строка коэффициентов полинома

FPOLY Нелинейный ИТУТ (с нулевой постоянной составляющей) VALUE - порядок полинома COEF - строка коэффициентов полинома

GPOLY Нелинейный ИТУН (с нулевой постоянной составляющей) VALUE - порядок полинома COEF - строка коэффициентов полинома

HPOLY Нелинейный ИНУТ (с нулевой постоянной составляющей) VALUE - порядок полинома COEF - строка коэффициентов полинома

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

В OrCAD 9.2 имеется два схемотехнических редактора: Capture и Schematics. При написании этой статьи автор использовал редактор Capture. ABM-элементы размещаются на схеме моделируемого устройства и соединяются между собой и с другими библиотечными элементами по правилам схемотехнического редактора Capture. После того как вы разместили элементы ABM, можно отредактировать их атрибуты, чтобы настроить поведение элемента при моделировании. Это эквивалентно определению выражения ABM, описывающего, как входные сигналы должны преобразовываться в выходные.

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

Шаблон (атрибут PSPICETEMPLATE) элементов ABM

Рассмотрим встраивание передаточной функции в шаблон на примере элемента библиотеки ABM «степенная функция» (PWRS), шаблон которого имеет вид:

EA@REFDES %OUT 0 VALUE {PWRS(V(%IN),@EXP)j

Фрагмент EA@REFDES стандартен. «E» определяет регулируемый источник напряжения PSpice A/D (устройство E); %in и %out обозначают входные и выходные выводы соответственно; VALUE — ключевое слово, определяющее тип устройства ABM; выражение внутри фигурных скобок {PWRS(V(%IN),@EXP)j определяет операцию возведения входного напряжения в степень, где EXP — показатель степени. По умолчанию EXP = 1.

Компоненты и технологии, № 3'2003

Таблица 2. Стандартные элементы ABM

Группа Название элемента Описание Атрибуты

Основные элементы CONST SUM MULT GAIN DIFF Постоянная Сумматор Перемножитель Усилитель Вычитающее устройство VALUE GAIN

Ограничители LIMIT GLIMIT SOFTLIM Жесткий ограничитель Ограничитель с усилением Мягкий ограничитель LO, HI LO, HI, GAIN LO, HI, GAIN

Фильтры Чебышева LOPASS HIPASS BANDPASS BANDREJ Фильтр нижних частот Фильтр верхних частот Полосовой фильтр Режекторный фильтр FP, FS, RIPPLE, STOP FP, FS, RIPPLE, STOP F0, F1, F2, F3, RIPPLE, STOP F0, F1, F2, F3, RIPPLE, STOP

Интегратор и дифференциатор INTEG DIFFER Интегратор Дифференциатор GAIN, IC GAIN

Таблицы TABLE FTABLE Считывание данных из таблицы Считывание данных из частотной таблицы ROW1...ROW5 ROW1...ROW5

Преобразование Лапласа LAPLACE Задание характеристик линейных цепей NUM, DENOM

Математические функции (где «х» это входное воздействие) ABS SQRT PWR PWRS LOG LOG10 EXP SIN COS TAN ATAN ARCTAN |x| x1/2 |x|EXP XEXP n(x) (og(X) el1 sin(x) cos (x) tan (x) tan-'(x) tan-'(x) EXP EXP

Элементы, задаваемые математическими выражениями ABM ABM1 ABM2 ABM3 ABM/I ABM1/I ABM2/I ABM3/I Нет входов, один выход V out Один вход, один выход V out Два входа, один выход V out Три входа, один выход V out Нет входов, один выход I out Один вход, один выход I out Два входа, один выход I out Три входа, один выход I out EXP1...EXP4 EXP1...EXP4 EXP1...EXP4 EXP1...EXP4 EXP1...EXP4 EXP1...EXP4 EXP1...EXP4 EXP1...EXP4

ТТГ

Стандартные элементы ABM

Перейдем к рассмотрению стандартных элементов библиотеки ABM. Таблица 2 содержит перечень стандартных элементов, сгруппированных по выполняемым функциям.

Основные элементы

?

CONST

Элемент CONST формирует выходное напряжение, определяемое атрибутом VALUE. У этого элемента нет входов, есть только один выход.

SUM

Элемент SUM суммирует напряжения на своих входах и выдает на выходе сумму. У этого элемента два входа и один выход.

MULT (Перемножитель) Элемент MULT умножает од-[ Х)-а но входное напряжение на другое, затем на выходе выдает произведение. Этот элемент имеет два входа и один выход.

GAIN

Элемент GAIN умножает входное напряжение на константу, определяемую атрибутом GAIN. Результат поступает на выход. У этого элемента один вход и один выход. По умолчанию GAIN = 1000.

DIFF (Вычитание напряжений) Элемент DIFF вычисляет разность потенциалов между двумя входами; результат поступает на выход. У этого элемента два входа и один выход.

Пример 1. Создадим источник радиоимпульсов перемножением гармонического и импульсного сигналов. Здесь VSIN — источник гармонического сигнала с частотой 100 МГц; VPULS — источник импульсного напряжения с периодом повторения 0,1 мкс. Перемножение этих сигналов осуществляется с помощью элемента MULT. Расчет осуществлялся по директиве .TRAN (расчет переходных процессов). Схема источника и результаты моделирования приведены на рис. 1.

Ограничители

LIMIT

HI — значение верхнего уровня ограничения, по умолчанию 10 В.

LO — значение нижнего уровня ограничения, по умолчанию 0 В.

Элемент LIMIT ограничивает выходное напряжение значениями, определяемыми между верхним уровнем ограничения

HI — значение верхнего уровня ограничения, по умолчанию 10 В.

LO — значение нижнего уровня ограничения, по умолчанию 0 В.

GAIN — коэффициент усиления, по умолчанию 1000.

Входной сигнал усиливается до тех пор, пока выходное напряжение не достигнет уровней HI и LO. У этого элемента один вход и один выход.

SOFTLIMIT

HI — значение верхнего уровня ограничения, по умолчанию 10 В.

LO — значение нижнего уровня ограничения, по умолчанию 0 В.

GAIN — коэффициент усиления, по умолчанию 1000.

A, B, V, TANH — внутренние переменные. A=

B=

V=

TANH=(EXP@V)\n+EXP(-@V))\n+/(EXP(@V)\n+

+EXP

Элемент SOFTLIMIT обеспечивает функцию ограничения, подобную устройству LIMIT.

ТТГ

е

Компоненты и технологии, № 3'2003

100 Нг T^f-' ІОНг IdB'-'SOdB

So

Фильтры

Аналоговые фильтры в библиотеке ABM представлены фильтрами Чебышева. Выходные данные фильтра Чебышева зависят от выполняемого анализа. По директиве .АС определяется значение комплексного коэффициента передачи фильтра на каждой частоте, при расчете рабочей точки по постоянному току и по директиве .DC берется значение коэффициента передачи на нулевой частоте. По директиве TRAN. выходное напряжение фильтра вычисляется как интеграл Дюамеля (свертка входного воздействия с импульсной характеристикой фильтра).

Образцы фильтров Чебышева описаны ниже.

LOPASS

FS — граничная частота полосы задерживания, по умолчанию 100 Гц.

FP — граничная частота полосы пропускания, по умолчанию 10 Гц.

RIPPLE — неравномерность затухания в полосе пропускания в дБ, по умолчанию 1 дБ.

STOP — затухание в полосе задерживания в дБ, по умолчанию 50 дБ.

Элемент LOPASS характеризуется двумя граничными частотами, которые задают границы полосы пропускания фильтра и полосы задерживания. Значения ослабления RIPPLE и STOP определяют максимальное допустимое ослабление в полосе пропускания и минимальное заданное ослабление в полосе задерживания, соответственно. У элемента LOPASS один вход и один выход.

HIPASS

FS — граничная частота полосы задерживания, по умолчанию 10 Гц.

FP — граничная частота полосы пропускания, по умолчанию 100 Гц.

RIPPLE — неравномерность затухания в полосе пропускания, в дБ, по умолчанию 1 дБ.

STOP — затухание в полосе задерживания, в дБ, по умолчанию 50 дБ.

Элемент HIPASS характеризуется двумя граничными частотами, которые задают границы полосы пропускания и полосы задерживания фильтра. Значения затухания RIPPLE и STOP определяют максимальное допустимое затухание в полосе пропускания и минимальное затухание в полосе задерживания, соответственно. У элемента HIPASS один вход и один выход.

ш

¡J0H!

100 Нг ЮНг

raiPsode

Ж

BANDPASS

фильтр)

RIPPLE —

BANDREJ

RIPPLE — неравномерность затухания в полосе пропускания в дБ, по умолчанию 1 дБ.

STOP — затухание в полосе задерживания в дБ, по умолчанию 50 дБ.

F0, F1,F2, F3 — частоты среза, по умолчанию 10 Гц, 100 Гц, 300 Гц и 1000 Гц, соответственно.

Элемент BANDREJ характеризуется четырьмя частотами среза. Значения затухания RIPPLE и STOP определяют неравномерность затухания в полосе пропускания и минимальное заданное затухание в полосе задерживания, соответственно. У элемента BANDREJ один вход и один выход.

Чтобы получить список коэффициентов Лапласа фильтра Чебышева в выходном файле, выберите в окне Simulation Settings закладку Options, затем в поле Category выберите Output file и напротив опции Device summary (LIST) поставьте галочку. Список коэффициентов Лапласа в выходном файле для полосового фильтра Чебышева, характеристики которого заданы по умолчанию, имеет вид:

E_BPASS1 N00156 0 CHEBYSHEV

Stage:

1: 0.000000E00 9.256845E02 0.000000E00 1.000000E00 2.620804E02 3.502867E06 2: 0.000000E00 1.843449E03 0.000000E00 1.000000E00 5.219183E02 1.903550E06 3: 0.000000E00 1.146959E03 0.000000E00 1.000000E00 3.247276E02 7.368816E05 4: 0.000000E00 3.129827E02 0.000000E00 1.000000E00 8.861186E01 4.004408E05

Как видно из этой записи, передаточная функция фильтра Чебышева в области S представляется в виде произведения передаточных функций четырех звеньев второго порядка:

( N2*SA2 + N1*S + N0)/

где знак А — означает возведение в степень.

1.0

Интегратор и дифференциатор

INTEG

IC — начальное значение интеграла, по умолчанию 0 В.

GAIN — значение коэффициента усиления, по умолчанию 1.

Элемент INTEG выполнен в виде простого интегратора. Он представляет источник тока, пропорциональный интегралу входного напряжения. У элемента INTEG один вход и один выход.

DIFFER

GAIN — значение коэффициента усиления, по умолчанию 1.

Элемент DIFFER выполняет простое дифференцирование. У элемента DIFFER один вход и один выход.

Пример 2. Рассмотрим простую схему формирования сигнала ошибки (рис. 2). Входное устройство — генератор ступенчатой функции, созданный с помощью редактора входных сигналов Stimulus Editor. Сигнал ошибки с выхода сумматора поступает на интегратор. Выходные данные интегратора усиливаются и инвертируются в элементе GAIN, чтобы вычислить сигнал ошибки. Расчет осуществлялся по директиве .TRAN.

Элементы табличного задания функций

Элементы TABLE и FTABLE обеспечивают считывание данных из таблицы, которая используется для задания передаточных функций и комплексных коэффициентов передачи.

TABLE (Табличное задание передаточной функции) ROWn — входной и соответствующий ему выходной параметр;

-а

Out

(Полосовой

неравномерность затухания в полосе пропускания в дБ, по умолчанию 1 дБ.

STOP — затухание в полосе задерживания в дБ, по умолчанию 50 дБ.

F0, F1, F2, F3 — частоты среза, по умолчанию 10 Гц, 100 Гц, 300 Гц и 1000 Гц, соответственно.

Элемент BANDPASS характеризуется четырьмя частотами среза. Значения затухания, RIPPLE и STOP, определяют неравномерность затухания в полосе пропускания и минимально заданное затухание в полосе задерживания, соответственно. Элемент BANDPASS имеет один вход и один выход.

Компоненты и технологии, № З'200З

по умолчанию допускается до пяти пар параметров, где n = 1, 2, 3, 4 или 5.

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

Если требуются больше чем пять значений, элемент может быть настроен с помощью редактора символов Part Editor. Необходимо вставить дополнительные записи в шаблон, используя ту же форму, что и для первых пяти пар значений, и прибавить необходимое количество атрибутов ROWn с помощью редактора свойств (атрибутов) Property Editor. Пример шаблона для таблицы, имеющей n = 7:

EA@REFDES %OUT 0 TABLE {V(%IN)} @ROW1 ?ROW2I \n+ @ROW2I ?ROW3I \n+ @ROW3I ?ROW4I \n+ @ROW4I ?ROW5I \n+ @ROW5I ?ROW6I \n+ @ROW6I?ROW7I \n+ @ROW7I

У элемента TABLE один вход и один выход.

FTABLE

ROWn — тройка «входная частота (Гц), мо-

TAB LE

ffeq

dog

Рис. 3. Характеристики RC-фильтра, заданного с помощью преобразования Лапласа

дуль (дБ), фаза (град)», или тройка «входная частота, действительная часть, мнимая часть», описывающие комплексное значение; по умолчанию допускается до пяти троек, где n = 1, 2, 3, 4 или 5.

MAGUNITS — задание значений передаточной функции в децибелах (по умолчанию) или в относительных единицах, если она определена как MAG.

R_I — тип таблицы; по умолчанию таблица интерпретируется в формат «входная частота, модуль, фаза», если она определена как YES, таблица интерпретируется в формат «входная частота, действительная часть, мнимая часть».

PHASEUNITS — единица измерения для фазы, где значение может быть задано в градусах (DEG) или в радианах (RAD); по умолчанию задаются градусы.

DELAY — групповое время задержки; значение по умолчанию 0.

Между опорными точками выполняется линейная интерполяция. Амплитуда интерполируется логарифмически; фаза — линейно. Для частот вне диапазона таблицы, амплитуда равна 0.

Ключевое слово DELAY задает дополнительную задержку, которая принимается во внимание при расчете фазовой характеристики фильтра.

Если требуются больше чем пять значений, элемент может быть настроен с помощью редактора символов Part Editor. Необходимо вставить дополнительные записи в шаблон, используя ту же форму, что и для первых пяти пар значений, и прибавить необходимое количество атрибутов ROWn с помощью редактора Property Editor.

Частоты в таблице должны быть указаны в порядке от низшей к высшей. У элемента FTABLE один вход и один выход.

Преобразование Лапласа

LAPLACE представляет аналоговою линейную систему в виде функционального элемента, заданного своей передаточной функцией в области S (область, в которой справедливо преобразование Лапласа).

NUM — числитель выражения Laplace, по умолчанию 1.

DENOM — знаменатель выражения Laplace, по умолчанию 1+S.

Числитель и знаменатель функции преобразования Лапласа определены как атрибуты элемента.

Пример 3. Зададим с помощью элемента LAPLACE простой RC-фильтр нижних частот с постоянной времени 1 мс. Передаточная функция фильтра в S области имеет вид (1/[1+0,001*s]).

Этот элемент LAPLACE характеризуется следующими свойствами:

NUM = 1

DENOM = 1+0,001*s

Амплитудно-частотная (АЧХ), фазочастотная (ФЧХ) и импульсная характеристики, полученные в результате моделирования, приведены на рис. 3. Расчет осуществлялся по директиве .AC (расчет частотных характеристик).

Пример 4. С помощью преобразования Лапласа можно описать линию передачи с потерями. R, L и C — сопротивление, индуктивность и емкость линии на единицу длины.

Если R мало, характеристическое волновое сопротивление такой линии равно

Z = ((R + jxL)/(jxC))1/2

где задержка на единицу длины —

DENOM = 1

Математические функции

Элементы АВМ математические функции показаны в таблице 3. Элементы АВМ математические функции основаны на управляемых источниках типа «Е». У каждого один вход и один выход и математическая функция, которая применяется к входному воздействию. Результат является откликом выходной цепи.

Таблица 3. Элементы математические функции

Название

элемента,

УГО

_ ABS -о ABS

О- SQRT -С SQRT

_ PWR1.C-0 PWR

PWRSI.C-O PWRS

О- LOG -О LOG

О- LOC10 _о LOG 10

П- В(р -П ЕХР

SIN _о SIN

COS

TAN

ATAN |_i,

ATAN

Выходные данные и атрибуты

Абсолютное значение входных данных

Квадратный корень из входных данных

Результат возведения в степень абсолютного значения входных данных, EXP - показатель степени, по умолчанию равен 1

Результат возведения в степень входной величины с показателем степени, EXP - показатель степени, по умолчанию равен 1

Натуральный логарифм входных данных

Десятичный логарифм входных данных

Результат возведения е в степень, определяемую входной величиной

Синус входных данных

Косинус входных данных

Tангенс входных данных

Арктангенс входных данных

е

Компоненты и технологии, № 3'2003

ДІ-- a| »\  I l«-| I :|jiF-

scHtuATicipo. -I BL~ > 141 v|  111  |W| І Л. attorn > •

і і -і.

IM !

Щі

: : U Г

LIU.

e«

о U

|\ Д WaKfi^Orncai /

Рис. 4. Генерация Гауссовой функции времени

Пример 5. В качестве примера рассмотрим формирование Гауссовой функции времени:

y(t) = e-(t-4)2, 0 < t < 8

Кусочно-линейный источник напряжения с атрибутами: T1= 0, V1=0, T2=10 и V2=10 задает по оси абсцисс переменную t.

Выражение t-4 формируется с помощью элементов DIFF и CONST, затем оно возво-

дится в степень 2 с помощью элемента PWR, умножается на -1 с помощью усилителя GAIN и приобретает окончательный вид с помощью элемента EXP. Расчет осуществлялся по директиве .TRAN. Схема формирования гауссовой функции времени и результаты моделирования приведены на рис. 4.

Пример 6. Рассмотрим формирование функции sin(t)/t. Вычислим обратную величину делителя и умножим результат на дели-

Рис. 6. Схема генерации полиномов Эрмита и результаты расчетов

мое. В связи с тем, что деление на ноль невозможно, добавим к числителю и знаменателю бесконечно малое число 10-10. Расчет осуществлялся по директиве .TRAN. Схема устройства для формирования функции sin(t)/t и результаты расчета приведены на рис. 5.

Пример 7. Полиномы Эрмита. Полиномы Эрмита представляют собой решение дифференциального уравнения:

^+(X-t2)x=0,

dt '

известного в квантовой механике как уравнение Шредингера. Параметр X этого уравнения может принимать только дискретные значения, равные 2n+1, где n — целое число. На рис. 6 приведена схема моделирования этого дифференциального уравнения второго порядка, содержащая два интегратора. Необходимым условием работы этой схемы является задание начального значения элемента INTEG, подключенного к элементу MULT (IC=1). Расчет осуществлялся по директиве .TRAN. Результаты моделирования при n = 10 на интервале времени 0-4 с приведены на рис. 6.

Продолжение следует

Литература

1. Разевиг В. Д., Лаврентьев Г. В., Златин И. Л. SystemView — средство системного проектирования радиоэлектронных устройств. Под ред. В. Д. Разевига. М.: Горячая линия-Телеком, 2002.

2. Разевиг В. Д. Система проектирования ОгСАБ 9.2. М.: Солон-Р, 2001.