Warning: include(/var/www/iill7773/data/www/wiselab.ru/wp-content/plugins/wp-super-cache/wp-cache-base.php): failed to open stream: No such file or directory in /home/u7426dd0/domains/wiselab.ru/public_html/wp-content/plugins/wp-super-cache/wp-cache.php on line 65

Warning: include(): Failed opening '/var/www/iill7773/data/www/wiselab.ru/wp-content/plugins/wp-super-cache/wp-cache-base.php' for inclusion (include_path='.:/opt/alt/php55/usr/share/pear:/opt/alt/php55/usr/share/php') in /home/u7426dd0/domains/wiselab.ru/public_html/wp-content/plugins/wp-super-cache/wp-cache.php on line 65

Warning: include_once(/var/www/iill7773/data/www/wiselab.ru/wp-content/plugins/wp-super-cache/ossdl-cdn.php): failed to open stream: No such file or directory in /home/u7426dd0/domains/wiselab.ru/public_html/wp-content/plugins/wp-super-cache/wp-cache.php on line 82

Warning: include_once(): Failed opening '/var/www/iill7773/data/www/wiselab.ru/wp-content/plugins/wp-super-cache/ossdl-cdn.php' for inclusion (include_path='.:/opt/alt/php55/usr/share/pear:/opt/alt/php55/usr/share/php') in /home/u7426dd0/domains/wiselab.ru/public_html/wp-content/plugins/wp-super-cache/wp-cache.php on line 82
поле | Учебники - Part 2

Записи с меткой «поле»

Моделирование с помощью PSpice

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

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

При графическом вводе схем как с помощью программы PSpice Schematics, так и с помощью OrCAD Capture, создаются три файла задания с одним и тем же именем и различными расширениями имени: *.NET (таблица соединений), *.ALS (список подключения цепей к выводам компонентов) и *.CIR (список директив моделирования). При моделировании в PSpice непосредственно загружается файл *.CIR, в котором имеются ссылки на остальные файлы. Для его составления вручную на бумаге сначала рисуется принципиальная схема моделируемого устройства и присваиваются имена всем ее узлам (при графическом вводе этого делать не обязательно). Имена узлов могут быть целыми числами от 0 до 9990 или алфавитно-цифровыми символами длиной не более 131 символа. В качестве этих символов используются буквы латинского алфавита от А до Z, цифры 0, 1, …, 9 и знаки «$», «_», «*», «/», «%». Стандартное обозначение ряда узлов приведено.
Глобальные узлы

Имя узла

Напряжение / уровень

Описание

0

OB

Аналоговая «земля»

$G_CD4000_VDD

5 В

Источник питания к-МОП ИС

$G_CD4000_VSS

OB

Источник питания к-МОП ИС

$G_DPWR

5B

Источник питания ТТЛ ИС

$G_DGND

OB

Источник питания ТТЛ ИС

$G_ECL_10K_VEE

-5,2 В

Источник питания ЭСЛ 10К ИС

$G_ECL_10K_VCCl

OB

Источник питания ЭСЛ 10К ИС

 

Имя узла

Напряжение / уровень

Описание

$G_ECL_10K_VCC2

0 B

Источник питания ЭСЛ 10К ИС

$G_ECL_100K_VEE

-4,5 В

Источник питания ЭСЛ 100К ИС

$G_ECL_100K_VCC1

OB

Источник питания ЭСЛ100К ИС

$G_ECL_100K_VCC2

0 B

Источник питания ЭСЛ 100К ИС

$D_HI

«1»

Логическая «1»

$D_LO

«0»

Логический «0»

$D_X

«X»

Неопределенное логическое состояние X

$D_NC

Не подключенный к схеме вывод цифрового компонента

Логические состояния цифровых узлов $D_HI, $D_LO, $D_X поддерживаются постоянными независимо от того, с чем они соединены. Узел $D_NC применяется для обозначения неиспользуемых выводов (аббревиатура NC означает Not Connected — нет подключения), чтобы при проверке схемы они не включались в список ошибок.
При ссылке на цифровые имена узлов они заключаются в круглые скобки, например V(6) — потенциал узла 6. Имена узлов в виде алфавитно-цифровых символов при ссылках на них заключаются в квадратные скобки [ ], чтобы отличить их от имен компонентов. Например, потенциал узла IN обозначается как V([IN]), a V(I2) — напряжение на источнике тока 12. Заметим, что в программе Probe при ссылке на алфавитно-цифровые имена узлов квадратные скобки не нужны, они отсутствуют и в выходном файле с расширением *.OUT.
В программе существует соглашение, что все узлы, имена которых начинаются с символов $G_, являются глобальными, например узел $G_POS. Глобальные узлы используются в схемах, имеющих макромодели. Глобальные узлы с одинаковыми именами автоматически соединяются в основной цепи и во всех макромоделях. С их помощью удобно прокладывать цепи питания, синхронизации и т.п. (узел «земля» 0 всегда является глобальным). Глобальные узлы с произвольными именами назначаются с помощью директивы .GLOBAL (см. п. 4.1.2).
После именования узлов составляют задание на моделирование, которое заносится в файл. далее…

Список команд программы PSpice Schematics

Строки и комментарии

Строки и комментарии
Строковые данные
Строки как тип данных — это просто цепочки символов. Они обычно используются для создания текстовых комментариев. Строки должны каким-либо образом выделяться, чтобы Maple не отождествляла их с именами констант и переменных. Для этого строки-комментарии имеют внутренний разделительный признак, который устанавливается при их вводе (нажатием клавиши F5, которое приводит к исчезновению знака >).
В других случаях последовательность символов рассматривается как строка, если она заключена в обратные апострофы, то есть в знаки ‘. Два апострофа подряд формируют апостроф как знак символьной строки, например `abc«def ` дает строку abc`def. Любое математическое выражение может входить в строку, разумеется, оно при этом не выполняется:
> ‘2+2 не всегда "четыре"’; 
2+2 не всегда ‘четыре’
Неисполняемые программные комментарии
Часто возникает необходимость в задании программных комментариев. далее…

Подготовка к моделированию и запуск программ PSpice и Probe

Подготовка к моделированию и запуск программ PSpice и Probe
Подготовка к моделированию и само моделирование проводятся в несколько этапов.

  • Размещение» символов сигналов. После создания схемы моделируемого устройства должны быть введены символы источников сигналов, примеры которых приведены.
  • Фрагменты библиотек символов сигналов

    Имя, назначение

    Символ

    Атрибуты

    Библиотека Sourcstm.slb

    VSTIM,
    источник напряжения для StmEd

    REFDES=V?
    TEMPLATE=V@REFDES %+ %- ?DC|DC @DC|AC @AC| STIMULUS=@STIMULUS
    DC — постоянная составляющая напряжения AC — амплитуда напряжения при анализе в частотной области STIMTYPE=ANALOG STIMULUS — имя сигнала

     

    Имя, назначение

    Символ

    Атрибуты

    DigStim,
    источник цифрового сигнала для StmEd

    DSTM?
    STIMULUS=

    REFDES=DSTM? TEMPLATE=IT@REFDES STIM(%#*OUT,0) %PWR %GND %*OUT @IO_MODEL STIMULUS=@STIMULUS STIMTYPE=DIGITAL, STIMULUS — имя сигнала

    Библиотека Source.slb

    FileStim,
    источник цифрового сигнала, записанного в файле

    DSTM?

    REFDES=DSTM? TEMPLATE=IT@REFDES FSTIM(%#*1) %PWR %GND %*1 @IO_MODEL FILE="@FileName" IO_LEVEL=@IO_LEVEL ?SigName/SIGNAMES=@SigName/ FileName — имя файла библиотеки сигналов; SigName — имя сигнала

    IAC,
    простой источник тока в режимах AC, DC

    REFDES=I? 17 TEMPLATE=r@REFDES %+ %- ?DC|DC @DC| ?AC|AC @AC| DC — постоянная составляющая тока; AC — амплитуда тока при анализе в частотной области

    VPULSE,
    импульсный источник напряжения

    REFDES=V? TEMPLATE=V^@REFDES %+ %- ?DC|DC @DC| ?AC|AC @AC|\n+PULSE @V1 @V2 ?TD/@TD/~TD/0/ #TR/@TR/ #TF/@TF/#PW/@PW/ #PER/@PER/ DC — постоянная составляющая напряжения; AC — амплитуда напряжения, при анализе в частотной области; VI — минимальное напряжение; V2 — максимальное напряжение; TD — задержка; TR — длительность переднего фронта; TF — длительность заднего фронта; * PW — длительность импульса; PER — период повторения

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

    В библиотеке Sourcstm.slb находятся символы источников сигналов, которые создаются с помощью программы Stimulus Editor. Символы VSTIM и ISTIM предназначены для создания источников напряжения и тока аналоговых сигналов, DigStim — источник цифрового сигнала. После двойного щелчка по такому символу пользователю предлагается ввести имя сигнала (по умолчанию имя сигнала совпадает с позиционным обозначением символа) и затем управление передается программе Stimulus Editor для выбора типа сигнала, предназначенного для анализа переходных процессов, и ввода его параметров. Наиболее часто эти. возможности используются для задания цифровых сигналов. Источники аналоговых сигналов VSTIM и ISTIM имеют два атрибута DC и АС, определяющих постоянную составляющую напряжения или тока и амплитуду сигнала при анализе в частотной области. Значения этих атрибутов устанавливаются по команде Edit>Attribute или щелчком по пиктограмме [И] .
    В библиотеке Source.slb находятся символы аналоговых и цифровых сигналов, параметры которых определяются с помощью атрибутов, описание которых приведено. При заполнении атрибутов следует принимать во внимание правила составления шаблонов символов TEMPLATE, изложенные. Проиллюстрируем правила заполнения атрибутов на примере символа источника импульсного напряжения VPULSE, помещенного.
    1) Запись в шаблоне @V1 означает, что она будет заменена значением атрибута VI; такие атрибуты вводить обязательно;
    2) Запись ?DC|DC @DC| означает, что если атрибут DC определен, то в строке описания сигнала будет внесена запись DC <значение атрибута DO; такие атрибуты вводить не обязательно;
    3) Запись ?TD/@TD/~TD/0/ означает, что если атрибут TD определен, то в строке описания сигнала будет внесена запись <значение атрибута TD>; если же атрибут TD не определен, то его значение будет положено равным 0;
    4) Запись #TR/@TR/ означает, что если атрибут TR определен, то в строке описания сигнала будет внесена запись <значение атрибута TR>; если же атрибут не задан, то удаляется вся остальная часть шаблона.

  • Простановка позиционных обозначений. Перед моделированием схемы всем ее компонентам (резисторам, конденсаторам, диодам и т.п.) необходимо присвоить уникальные имена, так называемые позиционные обозначения (Reference Designator). Позиционные обозначения обычно вводятся при расстановке компонентов на схеме. Однако если в процессе редактирования часть компонентов получили совпадающие позиционные обозначения или не для всех компонентов проставлены эти обозначения, выполняется команда Tools>Annotate. Кроме того, эта команда выполняет так называемую «упаковку» компонентов, необходимую для разработки ПП. Упаковка отдельных символов в физически существующие корпуса компонентов заключается в простановке номеров секций и указании типов корпусов. В диалоговом окне команды в пункте Function выбирается тип операции:
    • Package and Assign Reference Designators — упаковка компонентов и назначение позиционных обозначений всем символам (простановке номеров секций и указании типов корпусов) в соответствии с данными раздела Set Values for (необходима при разработке печатных плат);
    • Assign Reference Designators Only — назначение только позиционных обозначений компонентов без проведения их упаковки, что достаточно для проведения моделирования;
    • Undo Packaging — удаление всех атрибутов, проставленных в процессе обратной корректировки схемы по команде Tools>Back Annotate (необходимо при возникновении проблем при генерации цепей).

    В разделе Set Values for выбирается метод простановки позиционных обозначений компонентов:

    • All Except User-Assigned — автоматическая простановка позиционных обозначений, имен секций и типов корпусов за исключением тех, что проставлены пользователем;
    • Only Unpackaged — простановка позиционных обозначений, имен секций и типов корпусов, которые еще не назначены;
    • All — простановка позиционных обозначений, имен секций и типов корпусов всем компонентам (с переопределением существующих).

    Заметим, что по команде Options>Auto-Naming можно включить режим автоматической простановки позиционных обозначений компонентов при нанесении их символов на схему (пометив курсором панель Enable Auto-Naming и задав начальный номер позиционных обозначений Starting Designator). К сожалению, как при автоматической простановке позиционных обозначений, так и при выполнении команды Tools>Annotate позиционные обозначения расставляются неупорядоченно. Поэтому перед выпуском документации по ЕСКД приходится отредактировать позиционные обозначения компонентов вручную.

  • Именование цепей. Осуществляется по команде Edit>Label или после двойного щелчка мыши на выбранной цепи. При выполнении некоторых видов анализа (например, при спектральном анализе, статистическом анализе по методу Монте-Карло, расчете уровня шума) необходимо указывать имена выходных переменных, в качестве которых могут быть потенциалы и разности потенциалов узлов и токи ветвей. При записи выходных переменных можно пользоваться всеми правилами программы PSpice, однако ссылки на имена узлов цепи (имена проводников) возможны, только если они обозначены на схеме.
  • Проверка схемы. По команде Analysis>Electrical Rule Check проверяется наличие в схеме неподсоединенных (плавающих) выводов компонентов, совпадающих позиционных обозначений и др. Полнота проверки тем больше, чем больше информации о типе компонентов и их выводов занесено в библиотеку символов. При обнаружении ошибок на экран выводится информационное сообщение. Перечень ошибок просматривается по команде File>View Messages.
  • Создание списка соединений. По команде Analysis>Create Netlist создаются список соединений схемы и задание на моделирование, которые заносятся в файлы с расширениями *.NET, *.ALS и *.CIR. При наличии ошибок в схеме или директивах моделирования выводится информационное сообщение. В этих сообщениях приведена информация (INFO), предупреждения (WARNING) и ошибки (ERROR). Если курсором щелкнуть по строке ошибок, то это окно закроется и курсор покажет на схеме связанный с этой ошибкой вывод компонента. Повторно информационное сообщение выводится по команде File>View Messages или нажатием клавиши F10.
  • Файлы списков соединений просматриваются по команде Analysis>Examine Netlist с помощью встроенного текстового редактора. Однако необходимость в этом возникает крайне редко при отладке новых схем и моделей компонентов.

  • Составление задания на моделирование. Перед проведением моделирование необходимо составить задание на моделирование по команде Analysis>Setup или щелкнув по пиктограмме. В открывшемся окне нажатием курсором отмечают нужные директивы моделирования (при этом в графе Enabled проставляется галочка) и нажатием соответствующей кнопки открывают диалоговые меню задания директив, которые подробно рассматриваются.
  • Подключение библиотек и других файлов. Перед выполнением моделирования необходимо убедиться, что подключены файлы с математическими библиотеками компонентов схемы. Поставляемые вместе с системой фирменные библиотеки перечислены в файле NOM.LIB (и его лучше не редактировать). Дополнительные библиотеки и другие необходимые для моделирования файлы подключаются по команде Analysis>Library and Include Files . Сначала в строке File Name указывается имя файла, которое проще отыскать нажатием кнопки Browse. Далее в зависимости от типа файла нажимается одна из кнопок:
    • Add Library* — библиотеки математических моделей (файлы *.LIB и *.MOD);
    • Add Include* — файлы, подключаемые по директиве .INCLUDE;
    • Add Stimulus* — влешние воздействия (файлы *.STL).

    Так подключаются файлы, которые будут доступны при моделировании любых схем. далее…

    Атрибуты и шаблоны символов

    Атрибуты и шаблоны символов

  • В графическом редакторе PSpice Schematics имеются атрибуты со строго определенными именами, список которых приведен.
  • Атрибуты компонентов

    Атрибут

    Назначение

    Примечание

    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 это значение присваивается автоматически. далее…

    Основные арифметические функции

    Основные арифметические функции
    Для выполнения арифметических действий в системах Mathematica 3/4 определены следующие арифметические функции:

    • Divide [х, у] — возвращает результат деления х на у эквивалентно выражению х у ^ -1;
    • Plus[x, у,…] — возвращает сумму элементов списка;
    • PowerModta, b, n] — возвращает Mod[a ^ b, n]. Для b<0 возвращает инверсию остатка;
    • Times [х, у,…] — возвращает произведение аргументов х*у*…;
    • Mod [m, n] — возвращает остаток от деления m на п. Результат имеет такой же знак, как п.

    Ниже представлены примеры применения арифметических функций.

    Ввод (In)

    Вывод (Out)

    Divide [1. ,3]

    0.333333

    Mod [123, 20]

    3

    Mod [123, -20]

    -17

    Mod[-123,20]

    17

    Plus[2,3,4]

    9

    Times [2, 3,4]

    24

    Для обмена значениями переменных х и у можно использовать выражение {х,у}={у,х}
     Пример обмена переменных значениями:
    а=1;b=2;
    {а,b}={b,а};
    {а,b}
    {2, 1}
    Следующие функции служат для приведения вещественных чисел к ближайшим целым по определенным правилам:

    • Ceiling [х] — возвращает значение наименьшего целого числа, большего или равного х;
    • Floor [х] — возвращает наибольшее целое число, не превышающее данного х;
    • Quotient [n, m] — возвращает целое значение n/m, определяемое как Floor[n/m];
    • Round [х] — округляет х до ближайшего целого.

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

    Ввод (In)

    Вывод (Out)

    Ceiling [{-5. 9, -5..1, 5, 5.1, 5.9}]

    {-5, -5, 5, б, 6}

    Floor [{-5. 9, -5.1,, 5, 5.1, 5.9}]

    {-6, -6, 5, 5, 5}

    Round[{-5.9, -5.1,, 5, 5.1, 5.9}]

    {-6, -5, 5, 5, 6}

    Ряд функций обеспечивает нахождение делителей целых чисел и наименьшего общего -кратного:

    • Divisors [n] — возвращает список целочисленных делителей числа п;
    • DivisorSigma [k, n] — возвращает сумму &-х степеней положительных делителей числа п;
    • ExtendedGCD [n, m] — возвращает расширенный наибольший общий делитель целых чисел пит;
    • GCD [nl,n2,…] — возвращает наибольший общий делитель целых чисел ni;
    • LCM[nl, n2,…] — возвращает наименьшее общее кратное целых чисел ni.

    Ниже представлены примеры применения этих функций.

    Ввод (In)

    Вывод (Out)

    LCM[124,12,6]

    372

    GCD [144, 12, 6]

    6

    Divisors [123]

    {1,3,41,123}

    DivisorSigma [17,3]

    129140164

    ExtendedGCD [144,12]

    {12, {0,1}}

    К целочисленным функциям можно отнести также функции вычисления факториала и двойного факториала:

    • Factorial [n] или n! — возвращает значение факториала числа n (n!=n* (n-1) *…*3*2*1, причем 0 !=1 и 1 !=1);
    • Factorial2 [n] или n! ! — возвращает значение двойного факториала числа п, равное п* (n-2) * (n-4) *…«%»

    Ниже представлены примеры вычисления факториалов.

    Ввод (In)

    Вывод (Out)

    Factorial [10]

    3628800

    20!

    2432902008176640000

    10!!

    3840

    20!//N

    2.4329Х10 18

    Mathematica способна вычислять факториалы больших чисел. Практически мгновенно (даже на компьютере с 486-м процессором) вычисляются значения до 1000!, хотя результат при этом занимает несколько страниц на экране дисплея. Можно вычислить даже 10000!, но для этого потребуется время до нескольких минут (зависит от типа компьютера). Обратите внимание на то, что управляющий символ //N за выражением дает вывод (аппроксимацию) в форме научной нотации. далее…