Атрибуты и шаблоны символов
В графическом редакторе PSpice Schematics имеются
атрибуты
со строго определенными именами, список которых приведен в табл. 3.7.
Таблица 3.7. Атрибуты компонентов
Атрибут |
Назначение |
Примечание | |||||||
COMPONENT |
Имя упаковочной информации компонента. Этот атрибут не нужен, если имя упаковочной информации совпадает с именем компонента PART |
2, 5 | |||||||
GATE |
Имя секции компонента А, В, С, D и т.д. Не указывается, если компонент состоит из одной секции. При размещении символов на схеме всем им присваивается имя первой секции А, добавляемой к позиционному обозначению, например U1A, U2A. Автоматическое распределение секций по корпусам компонентов производится по команде Tools>Annotate. Изменение имен секций выполняется вручную двойным щелчком по атрибуту REFDES или по команде Edit>Attribute |
2, 4 | |||||||
GATETYPE |
Тип секции. Применяется, когда компонент состоит из секций разных типов (неоднородный компонент). Например, ИС 533ТР2 состоит из четырех триггеров, два из которых имеют дополнительный вход установки. Секции каждого типа имеют отдельные символы с разными атрибутами GATETYPE, чтобы правильно "назначить номера выводов различных секций |
2, 5 | |||||||
Атрибут |
Назначение |
Примечание | |||||||
IРIN[<имя скрытого вывода>] |
Имя цепи схемы, к которой подключается скрытый вывод |
5 | |||||||
MODEL |
Имя модели компонента (должно согласовываться с именами моделей в директивах .MODEL и .SUBCKT, размещаемых в библиотечных файлах .LIB). Обычно атрибут MODEL помечен звездочкой в списке атрибутов, что означает невозможность его изменения на схеме. Для изменения имени модели или создания ее копии применяется команда Edit>Model; |
1, 3, 5 | |||||||
PART |
Имя компонента, под которым он заносится\ в библиотеку символов |
1, 2, 5 | |||||||
PKGREF |
Позиционное обозначение корпуса компонента. Если корпус состоит из четырех секций А, В, С и D, то все эти секции имеют один и тот же атрибут PKGREF, например U1, и разные атрибуты REFDES U1A ..... U1D. Атрибут REFDES образован слиянием атрибутов PKGREF и GATE |
2, 4 | |||||||
PKGTYPE |
Тир корпуса компонента, например DIP14, DIPS, SOIC. Если при упаковке компонента указан только один тип корпуса, то атрибуту PKGTYPE это значение присваивается автоматически. Редактирование его возможно по команде Edit>Attributes или при выполнении команды Tools>Annotate |
2, 4 | |||||||
REFDES |
Префикс позиционного обозначения, определяющий для программы PSpice тип компонента (например, R — резистор, D — диод и т.п.) |
1, 2, 3, 4, 5 | |||||||
SIMULA TIONONLY |
Наличие этого атрибута означает, что данный символ используется только для моделирования, включается в список соединений, но не размещается на печатной плате. К таким символам относятся источники сигналов из библиотеки source. sib, типовые компоненты из библиотеки breakout. sib и специальные символы из библиотеки special. sib; |
2, 5 | |||||||
TEMPLATE |
Шаблон для назначения соответствий графических обозначений выводов компонентов с их реальным физическим смыслом, что необходимо для правильного составления списка соединений схемы (например, для транзистора необходимо указать, какие выводы на его графическом обозначении соответствуют коллектору, базе и эмиттеру) и задания параметров компонента (имя модели и др.); |
1, 3,5 | |||||||
Примечания: l. Эти атрибуты не могут быть изменены в режиме редактирования схем, в диалоговом окне атрибутов они отмечены звездочкой «*». 2. Эти атрибуты используются при упаковке символов в корпус для разработки ПП. 3. Эти атрибуты используются программой PSpice. 4. Значения этим атрибуты присваиваются автоматически программой PSpice Schematics при размещении на схеме символа компонента. 5. Значения этим атрибутам должны быть присвоены пользователем при создании или редактировании символа компонента в редакторе символов. | |||||||||
Цифровые интегральные схемы имеют специфические атрибуты (см. разд. 4.3):
IO_LEVEL — тип интерфейса, вставляемого автоматически между аналоговыми и цифровыми компонентами;
MNTYMXDLY — назначение значений задержек распространения сигналов (по умолчанию, минимальное, типичное и максимальное).
Кроме того, пользователь имеет возможность задать любые атрибуты по формату
<имя атрибута>=<значение>
Допускается рекурсия атрибутов.
Обсудим синтаксис
шаблона
TEMPLATE. В задании на моделирование для программы PSpice описание каждого компонента занимает одну строку, в ней в определенном порядке перечисляются имена цепей, к которым подключаются выводы компонента. В частности, выводы биполярного транзистора должны быть перечислены в порядке коллектор-база-эмиттер.
Пусть, например, символ транзистора КТ315А имеет выводы с именами В (база), С (коллектор), Е (эмиттер) и атрибуты MODEL =KT315A, REFDES=Q?. Тогда его атрибут TEMPLATE должен иметь вид:
TEMPLATE=Q^@REFDES %C %B %E ©MODEL
Если на принципиальной схеме, созданной редактором PSpice Schematics, имеется транзистор с позиционным обозначением VI, его база подключена к цепи с именем 5, коллектор — 22, а эмиттер — к неименованной цепи, которой по умолчанию присвоено имя $N_0004, то в списке соединений, составленном по команде
Analyses>Create Netlist,
появятся строки:
.ALIASES
Q_V1 Q1(C=22 B=5 E=$N_0004)
.ENDALIASES
Q_V1 22 5 $N_0004 KT315A
Здесь после директивы .ALIASES программы PSpice приведен список соответствий имен выводов символа транзистора именам цепей схемы, к которым они подключены. В последней строке указано имя транзистора на схеме, перечислены имена цепей, к которым подключены его выводы, и имя модели.
Перечень стандартных символов (библиотеки abm.slb, analog.slb, breakout.slb, port.slb, source.slb, special.slb) приведен в Приложении 2 [7].
Перейдем к систематическому описанию синтаксиса шаблона TEMPLATE. Шаблон состоит из списка атрибутов.
Атрибуты, состоящие из
стандартных символов,
копируются в список соединений без изменений. Стандартные символы состоят из алфавитно-цифровых символов, знаков «$», «_», пробелов и знаков пунктуации.
Если перед именем атрибута помещен специальный знак «@», «?», «~», «#» или «&», то в зависимости от его вида атрибуты шаблонов заменяются следующими величинами:
@<имя>
— значением атрибута
<имя>.
В отсутствие указанного атрибута или его значения выдается сообщение об ошибке;
&<имя>
— значением атрибута
<имя>,
если этот атрибут определен;
?<имя>s...s — заменяется текстом, помещенным между одинаковыми символами s, если атрибут определен;
~<имя>s...s
— заменяется текстом, помещенным между одинаковыми символами s, если атрибут не определен;
#<имя>s...s — производятся те же действия, что при наличии знака «?», но остальная часть шаблона удаляется, если
<имя>
не определено.
Символы s, ограничивающие текст, могут быть любыми неалфавитными символами (сами они в список соединений не переносятся). Внутри этого текста допускается вложение, т.е. размещение атрибутов, предваряемых специальными знаками.
Знак «^» также специальный. Он заменяется указанием полного пути доступа к компонентам, имеющим иерархическую структуру. Для компонентов, находящихся на высшем уровне иерархии, в списке соединений этот знак заменяется знаком подчеркивания «_».
Последовательность знаков «\п» приводит к переходу на следующую строку в списке соединений. Так что шаблон TEMPLATE, который размещается на одной строке практически неограниченной длины, в списке соединений может быть размещен на нескольких строках. Кроме того таким способом в шаблоне TEMPLATE можно описать подключение к основному компоненту ряда дополнительных (например, учесть сопротивление потерь катушки индуктивностей и т.п.).
Имена выводов в шаблоне предваряются знаком «%». Имена выводов символов перечисляются в шаблоне в том порядке, в котором они должны быть записаны для каждого компонента по правилам PSpice (см. разд. 4.2 — 4.3). В списке соединений они замещаются именами цепей, к которым они подсоединены на схеме. В шаблоне под именем вывода понимаются все символы, расположенные между символом «%» и первым разделителем (пробелом или запятой).
Как известно, в программе PSpice имена компонентов в списке соединений должны начинаться с префикса, обозначающего их тип (R — резистор, Q — биполярный транзистор и т.п.). Поэтому, чтобы избежать ошибок, имена символов компонентов в библиотеке символов редактора PSpice Schematics состоят из префикса типа, полного иерархического пути и позиционного обозначения. Это обеспечивается с помощью определенной структуры шаблона. Например, атрибут TEMPLATE резистора начинается конструкцией:
TEMPLATE=R
A
@REFDES ...
Приведем для иллюстрации перечень параметров нескольких компонентов и соответствующие им строки в списке соединений.
1)
Резистор, включенный к узлам
2
и
5
схемы и имеющий позидионное обозначение R3, имеет атрибуты:
REFDES=R?
VALUE=1k
ТС=0.001
PART=R
TEMPLATE=R
A
@REFDES %1 %2 ©VALUE ?ТСЯС=@ТС/
В списке соединений ему соответствует строка: R_R325 1k TC=0.001
Если атрибут ТС (температурный коэффициент сопротивления) не будет задан, то в этой строке параметр ТС будет отсутствовать.
2)
Биполярный транзистор, включенный между узлами 7 (коллектор), 10 (база) и 11 (эм,иттер) и имеющий позиционное обозначение VT8, имеет атрибуты:
REFDES=Q?
MODEL=KT315A
VALUE=
TEMPLATE=Q^@REFDES %C %B %E @MODEL ?VALUE/@VALUE/
В списке соединений ему соответствует строка Q_VT871011 KT315A
Атрибут VALUE зарезервирован для введения значения коэффициента кратности AREA.
3)
Переменное сопротивление R4, включенное между узлами 3, 4 и 5 (средняя точка), имеет атрибуты:
REFDES=R?
PART=POT
VALUE=Tk
SET=0.5
TEMPLATE=RT
A
@REFDES %1 %t {(@VALUE*(1-@SET))+.001}
\nRB^@REFDES %t %2 {(@VALUE*@SET)+.001)
В списке соединений ему соответствуют две строки (благодаря наличию параметра \п):
RT_R4 3 5 {(1k*(1-0.5))+0.001} (верхняя часть потенциометра)
RB_R4 5 4 {(1k*0.5)+0.001} (нижняя часть потенциометра)
Здесь атрибут. SET задает относительное значение сопротивления нижней секции потенциометра (т.е. определяет позицию движка потенциометра).
4)
Предположим, что имеется макромодель Z, имеющая два вывода А и В и параметр G. Если в основной схеме параметр G не определен, то в макромодель передается значение по умолчанию 1000. Для обеспечения возможности редактировать этот параметр при работе со схемой символу макромодели присвоим атрибут G и зададим шаблон TEMPLATE вида:
X^@REFDES %А %В Z PARAMS: ?G|G=@G| ~G|G=1000|
Если эту макромодель, имеющую позиционное обозначение U22, подключить к узлам 11 и 12 и задать параметр G=1024, то в списке соединений будет создана строка
X_U22 11 12 Z PARAMS: G=1024
Если же на схеме не задать параметр G, то эта строка будет иной:
X_U2211 122 PARAMS: G=100
0
5)
Символы директив. В библиотеке special.slb имеется несколько символов LIB, INCLUDE, IC1, IC2, NODESET1, NODESET2, PARAM, OPTPARAM (CM. Приложение 2 [7]), используемых для задания директив моделирования, отсутствующих в диалоговом окне команды
Analysis>Setup.
Эти символы размещаются на чертеже либо в любом свободном месте, как символы LIB, INCLUDE и др., либо подсоединяя их к узлам схемы. Имя директивы заносится в шаблон TEMPLATE символа, а ее содержание задается при редактировании соответствующего атрибута. Например, символ LIB, используется для включения в задание на моделирование имени файла библиотеки моделей с помощью директивы .LIB. Его атрибуты имеют вид:
REFDES=LIB? FILENAME=<имя
файла>
TEMPLATE=.LIB "@FILENAME"
При указании имени файла EVAL.LIB в списке соединений ему будет соответствовать строка
.LIB "EVAL.LIB"
6)
Резистор, сопротивление которого имеет случайный разброс, имеет атрибуты
REFDES=R?
TEMPLATE=R^@REFDES %1'%2 ?MODEL/@MODEL/ @VALUE
VALUE=1k
MODEL=MR
Имя модели резистора, в которой задаются параметры случайного разброса его сопротивления, указывается в атрибуте MODEL. Например, 5%-ный разброс сопротивления, имеющего равномерный закон распределения, задается с помощью модели
.model MR RES (R=1 DEV=5%)
Имя этой модели указывается в атрибуте MODEL=MR.
Текстовое описание модели .model ... может быть включено в любую имеющуюся текстовую библиотеку моделей или в собственную библиотеку пользователя. В последнем случае ее имя должно быть включено в файл nom.lib или, что более удобно, указано в файле конфигурации pspice.ini по команде
Analysis>Library and Include Files.
Другой, более удобный способ, заключается в введении описания директивы .model непосредственно в шаблон резистора:
REFDES=R?
TEMPLATE=R^@REFDES %1 %2 ?TOLERANCE |R^@REFDES| @VALUE ?TOLERANCE
|\n.model R^@REFDES RES R=1 DEV=@TOLERANCE%| VALUE=1k PART=R TOLERANCE=
Теперь если такой резистор поместить на схему, присвоить ему позиционное обозначение R1 и задать значение атрибута TOLERANCE=20%, то в списке соединений ему будут соответствовать строки:
R_R1 0 1 R_R1 1k
.model R_R1 RES R=1 DEV=20%
7)
Приведем еще пример двухобмоточного воздушного трансформатора XFRM_LINEAR:
REFDES=TX?
TEMPLATE=K^@REFDES L1 ^@REFDES L2^@REFDES @COUPLING
\nL1*@REFDES %1 %2 @L1_VALUE \nL2
A
@REFDES %3 %4 @L2_VALUE
COUPLING=
L1_VALUE=
L2_VALUE=
Если на схеме присвоить трансформатору позиционное обозначение ТХ1 и задать значения атрибутов коэффициента связи COUPLING=0.75 и индуктивно-стей Ll_VALUE=10m, L2_VALUE=25m, в списке соединений ему будут соответствовать строки:
К_ТХ1 L1_TX1 L2_TX1 0.75 L1_TX1 1 0 10m L2 ТХ1 2 0 25m