This content was uploaded by our users and we assume good faith they have the permission to share this book. If you own the copyright to this book and it is wrongfully on our website, we offer a simple DMCA procedure to remove your content from our site. Start by pressing the button below!
Probe and resume(Запуск Probe и возврат в PSpice) Выбрав эту альтернативу можно просмотреть в Probe полученные к этому моменту графики и затем вернуться в PSpice для продолжения расчета.
Рис. 1.3. Экран PSpice при работе с Design Center
Теперь остановимся на особенностях работы с PSpice пакетов Design Center в Windows. В этом случае экран при работе программы имеет вид, представленный на рис. 1.3. Основное отличие от описанного ранее заключается в постоянном присутствии на экране меню, содержащего разделы File, Font, Colors, Display, Help. Раздел File имеет подразделы
24
1. Функциональные возможности и структура PSpice
Open
-
открытие нового файла .CIR (это позволяет задать входной файл, если он не был задан в командной строке); Terminate Simulation - прерывание расчета; Save Window Configuration - сохранение конфигурации окна PSpice; при последующих вызовах PSpice окно будет того же размера и будет расположено так же, как в момент выполнения этой команды; Exit - завершение работы PSpice. Раздел меню Fonts позволяет выбрать шрифт техста на экране. Раздел Colors дает возможность изменить цвет и фон текста и сообщений об ошибках. Для этого, войдя в раздел Colors и в один из его подразделов надо задать в пределах 0 - 255 относительную интенсивность каждого из основных цветов: красного (Red), зеленого (Green), синего (Blue). Раздел меню Display позволяет выбрать частоту обновления надписей на экране в процессе счета. Раздел имеет подразделы: Immediate немедленный вывод каждого шага; Fast частый вывод; Slow редкий вывод. Частый вывод на экран может приводить к мельканию цифр и, главное, частое обращение к экрану затягивает время расчета. Раздел меню Help дает информацию об используемой версии PSpice. Запуск графического постпроцессора Probe осуществляется командой PROBE [<опции>][<имя файла>[.DAT]] Если файл не указан, по умолчанию предполагается файл PROBE.DAT. Опции могут быть следующие: /C <имя файла> - задает командный файл .CMD (см. п. 1.2); /D <имя файла> - задает имя и путь к файлу .DEV (см. п. 1.2), если он имеет нестандартное имя или расположен в директории, путь к которой не установлен; /L <имя файла> задает генерацию логического файла .LOG (см. п. 1.2); /M [<имя файла>] задает файл .MAC с макросами (см. работу [2], п. 3); по умолчанию его имя PROBE.MAC; /S [<имя файла>] задает имя файла .DSP, содержащего спасенные ранее параметры экрана (см. [2],
1.3. Запуск программ на счет
25
главу 3); по умолчанию имя этого файла PROBE.DSP; /G [<имя файла>] задает имя файла .GF с описанием целевой функции для обработки графика (только начиная с PSpice 5). Имя файла может отделяться от опции пробелом или записываться без пробела. Примеры команд: PROBE PROBE F1.DAT PROBE /D C:\PSPICE\PROBE.DEV /L F1.CMD F1.DAT Поскольку работа с какой-либо проектируемой схемой обычно заключается в многократных поочередных запусках Pspice1 и Probe, можно упростить работу, создав, например, следующий командный файл: IF EXIST %1.DAT DEL %1.DAT PSPICE1 %1.CIR %1.OUT %1.DAT IF EXIST %1.DAT PROBE, назвав его, например, PSP.BAT и запускать командой PSР <имя без расширения>. Можно включить в этот файл еще строки, обращающиеся к какому-либо текстовому редактору для редактирования входного файла и для просмотра файла .OUT. Алгоритм работы командного файла может быть следующим. Шаг 1. Если существует файл .DAT, то стереть его (это гарантирует в дальнейшем от ошибочного просмотра старого файла). Шаг 2. Запустить программу Pspice1.EXE, передав в нее имя исходного файла .CIR. Шаг 3. Если образовался файл .DAT (т.е. программа просчитала задачу), то запуск Probe и затем уход на шаг 5. Шаг 4. Запуск текстового редактора с передачей в него файла с расширением .OUT (этот шаг выполняется, если Pspice1 обнаружил ошибки в исходном файле и не провел расчета, что и вызвало отсутствие файла .DAT; в этом случае надо смотреть выходной файл .OUT).
26
1. Функциональные возможности и структура PSpice
Шаг 5.
Запуск текстового редактора с передачей в него файла задания для внесения каких-то изменений в этот файл. Уход на шаг 1. В командном файле полезно также предусмотреть возможность в любой момент прервать его выполнение при необходимости сделать какие-то нестандартные действия. Подобный файл может иметь, например, такой вид (условно считается, что используется некоторый текстовый редактор EDITOR.EXE): @ECHO OFF :BEGIN IF EXIST %1.DAT DEL %1.DAT PSPICE1 %1.CIR %1.OUT %1.DAT IF NOT EXIST %1.DAT GOTO OUT CLS ECHO ЗАДАЧА ПОСЧИТАНА ECHO --------------------ECHO ПРОСМОТР ГРАФИКОВ ECHO _______________________________________________ ECHO ЕСЛИ ХОТИТЕ ПРЕРВАТЬ ВЫПОЛНЕНИЕ, НАЖМИТЕ Ctrl-C PAUSE PROBE.EXE %1.DAT GOTO CIR :OUT CLS ECHO ОБНАРУЖЕНЫ ОШИБКИ В ЗАДАНИИ !!!! ECHO -----------------------------------ECHO ПРОСМОТР ФАЙЛА "%1.OUT" ECHO _______________________________________________ ECHO ЕСЛИ ХОТИТЕ ПРЕРВАТЬ ВЫПОЛНЕНИЕ, НАЖМИТЕ Ctrl-C PAUSE EDITOR.EXE %1.OUT :CIR CLS ECHO ВНЕСЕНИЕ ИЗМЕНЕНИЙ В ФАЙЛ ЗАДАНИЯ "%1.CIR" ECHO _______________________________________________ ECHO ЕСЛИ ХОТИТЕ ПРЕРВАТЬ ВЫПОЛНЕНИЕ, НАЖМИТЕ Ctrl-C PAUSE
1.3. Запуск программ на счет
27
EDITOR.EXE %1.CIR CLS ECHO НОВЫЙ ПРОСЧЕТ СХЕМЫ ECHO _______________________________________________ ECHO ЕСЛИ ХОТИТЕ ПРЕРВАТЬ ВЫПОЛНЕНИЕ, НАЖМИТЕ Ctrl-C PAUSE GOTO BEGIN Конечно, содержание файла, т.е программу работы, можно менять по своему усмотрению. Например, если вся работа идет с одним и тем же файлом задания, можно прямо указать соответствующее имя вместо символов %1, которые означают, что имя берется из командной строки. Тогда запуск программы сведется просто к команде PSP.BAT. Запуск программы идентификации параметров моделей Parts осуществляется командой PARTS [<опции>], где допускаются описанные выше опции /C, /D, /L. Запуск программы графического редактора входных сигналов StmEd осуществляется командой STMED [<опции>][<имя файла>[.CIR]], где допускаются рассмотренные выше опции /C, /D, /L, а также опция /M указывающая на монохромный дисплей.
2. О П И С А Н И Е С Х Е М Ы Н А В Х О Д Н О М Я З Ы К Е ПРОГРАММЫ PSPICE 2.1. СИНТАКСИС ВХОДНОГО ЯЗЫКА Входной файл, имеющий обычно расширение .CIR, создается с помощью текстового редактора или трансляцией изображения схемы, сделанного графическим редактором. При написании файла заглавные и строчные буквы считаются эквивалентными (в версиях ниже 4. должны использоваться только заглавные буквы). Русские буквы программой не воспринимаются. Впрочем, можно писать комментарии и на русском языке, но надо иметь в виду, что эти тексты в выходном файле .OUT исчезнут. Каждый оператор входного языка пишется с новой строки и может занимать несколько строк. Признак продолжения оператора - символ "+" в начале очередной строки. Операнды внутри оператора могут разделяться любым количеством пробелов, символом табуляции, запятыми или круглыми скобками. Таким образом, приведенные ниже формы записи одного и того же оператора эквивалентны: R1 5 7 1K или R1,5,7,1K или R1 (5 7) 1K или R1 (5,7) 1K . Воспринимаемая программой длина строки - 80 символов. С помощью оператора .WIDTH (см. работу [3]) она может быть увеличена до 132 символов. В файл могут вводиться строки комментариев - они должны начинаться с символа "*" (как комментарии воспринимаются и строки, начинающиеся с символов "; ", "!" и некоторых других). Комментарий, помимо улучшения читаемости файла, можно использовать для того, чтобы временно исключить из файла какой-то оператор: в первую позицию соответствующей строки вставляется символ "*", а затем, когда этот оператор опять понадобится, этот символ можно стереть. Комментарии могут также размещаться в строке после оператора - в этом случае они отделяются от оператора символом ";" , и все, что расположено в строке после "; ", воспринимается как комментарий: <оператор>; <комментарий> .
2.1. Синтаксис входного языка
29
Для улучшения читаемости файла в него можно вводить пустые строки (но не в начале файла). Файл начинается с информационной строки, содержащей любой текст название схемы, пояснения и т.п. Заканчивается - оператором .END. Между этими строками в любом порядке могут размещаться операторы входного языка. В один файл можно включить несколько заданий на расчет нескольких схем. В этом случае после оператора .END может идти новая информационная строка и новое задание (не во всех версиях): < информационная строка > < любые операторы > .END < информационная строка > -----------------------.END. Все численные значения параметров в файле записываются в стандартной системе размерностей: вольты, апмеры, омы, генри, секунды, герцы и т.д. При записи чисел могут использоваться суффиксы (табл. 2.1). Таблица 2.1
Суффикс F P N U MIL M K MEG G T
Масштаб -15 10 -12 10 -9 10 -6 10 -6 25.4⋅10 -3 10 3 10 6 10 109 12 10
Коэффициент фемто пико нано микро мили кило мега гига тера
После этих суффиксов могут для наглядности ставиться буквы, обозначающие единицы измерения, а могут и не ставиться - просто символы после суффикса программой не анализируются. Таким образом, например, напряжение величиной 2 мB можно записать любым из следующих вариантов: 0.002, 2Е-3, 2Е-3V, 2M, 2MV. 2.2. ПОДГОТОВКА СХЕМЫ К РАСЧЕТУ
30
2. Описание схемы на входном языке программы PSpice
Подготовка схемы к расчету состоит из следующих шагов: ♦ подготовка эскиза принципиальной схемы; ♦ обозначение узлов (цепей); ♦ обозначение элементов; ♦ выбор модели элементов и задание их параметров. Ниже рассматриваются эти этапы подготовки сначала для сравнительно простых схем, не использующих понятие подсхемы. Далее рассматриваются особенности использования многоуровневых подсхем. 2.2.1. ПОДГОТОВКА ЭСКИЗА ПРИНЦИПИАЛЬНОЙ СХЕМЫ Исходной информацией для расчета является эскиз принципиальной схемы моделируемого устройства. Схему обычно необходимо дополнить, указав на ней нагрузки, источники питания, источники сигналов, их внутренние сопротивления, если необходимо - различные паразитные элементы (емкости, сопротивления, индуктивности). При подготовке принципиальной схемы необходимо учитывать некоторые ограничения PSpice. Первое из них: PSpice не допускает "висящих" узлов, т.е. узлов, к которым подключено менее двух полюсов каких-нибудь компонентов (узлы 1 и 2 на рис.2.1а). В подобных случаях выдается сообщение об ошибке : ERROR: Less than 2 connections at node ... Естественный способ обойти это ограничение - добавить в схему фиктивные сопротивления (R1, R2 на рис. 2.1а), выбрав их номиналы настолько большими, чтобы они не оказывали влияния на работу схемы. Другое ограничение: PSpice не допускает "плавающих" узлов или фрагментов схемы. Под "плавающими" понимаются узлы или фрагменты схемы, от которых нет пути с конечным сопротивлением по постоянному току к земле. Такую изоляцию в схеме могут создать емкости С, зависимые и независимые источники тока I, G, F, зависимые ис-точники напряжения E, H, линии задержки T (узлы 1 и 2 на рис. 2.1б-д). В этих случаях выдается сообщение об ошибке: ERROR: Node ... is floating
2.2. Подготовка схемы к расчету
31
Рис. 2.1. Недопустимые в PSpice фрагменты схем: а) “висящие” узлы; б) - д) “плавающие” узлы
В подобных случаях возможны два выхода: или соединить узел с землей большим фиктивным резистором (см. рис. 2.1б и 2.1в), либо просто один из узлов изолированного фрагмента заземлить (см. рис. 2.1г и 2.1д). Третье ограничение: PSpice не допускает контуров с нулевым сопротивлением по постоянному току. В этих случаях появляется сообщение об ошибке: ERROR: Voltage source and/or inductor loop involving ... You may break the loop by adding a series resistance
32
2. Описание схемы на входном языке программы PSpice
которое указывает на один из элементов такого контура. Подобные контура образуются зависимыми и независимыми источниками E, H, V и индуктивностями L (рис. 2.2). Чтобы обойти это ограничение, надо разорвать контур, включив в него последовательно фиктивный резистор r настолько малого номинала, чтобы он не повлиял на работу цепи. Правда, очень малые резисторы (<1мкОм) Рис.2.2. Контура из индуктивностей вставлять не рекомендуется, так как и источников напряжения это может приводить к ошибкам вычислений. Лучше задаваться величиной r, соответствующей реальным сопротивлениям катушек индуктивностей и источников напряжения.
2.2.2. ОБОЗНАЧЕНИЯ УЗЛОВ Все цепи (в терминологии SPICE и всех других программ схемотехнического моделирования они называются узлами) на принципиальной схеме должны быть поименованы. Узлу земля присваивается имя "0". Всем остальным узлам присваиваются произвольные номера или имена (для версий младше 4. - только номера). Имена могут содержать до 131 символа: латинских букв, цифр и символов "$", "-", "/", "%". Однако, чтобы не создавать проблем при печати результатов расчета и при работе с постпроцессором Probe, желательно, чтобы длина имен не превышала восьми символов. Вообще, чем короче имена, тем проще с ними работать. Можно также рекомендовать, как правило, пользоваться номерами, а не буквенными символами, и нумеровать узлы на эскизе принципиальной схемы в определенном порядке, например, сверху вниз и слева направо. Это очень облегчит поиск требуемого узла в процессе обработки и интерпретации результатов расчета, особенно для большой схемы. А буквенные обозначения стоит использовать только для некоторых функционально значимых и легко находимых на схеме узлов (например, IN1, IN2, OUT). При обозначении узлов надо быть очень внимательным, чтобы не допустить типичную ошибку: присвоение одной и той же цепи нескольких разных имен. Такая ошибка разрывает цепь и схема, конечно, оказывается неработоспособной. В больших устройствах, где какая-нибудь разветвленная цепь тянется по многим компонентам в разных концах схемы, вероятность подобной ошибки велика. В этом отношении преимущества имеет
2.2. Подготовка схемы к расчету
33
подготовка схемы в графическом редакторе, который не позволяет сделать такую ошибку. 2.2.3. ОБОЗНАЧЕНИЯ ЭЛЕМЕНТОВ Всем элементам схемы (резисторам, транзисторам и т.д.) должны быть присвоены имена. Имена элементов должны начинаться с буквы, обозначающей вид элемента (см. п. 1.1), за которой могут следовать цифры, латинские буквы и символы "$", "-", "/", "%". Например, R1, Q10, CLOAD. Длина имени не должна превышать 131 символа, но практически, как уже говорилось в п. 2.2.2, чем короче имена, тем удобнее с ними работать, и так же, как в случае узлов, лучше, как правило, использовать номера (R1, R2,...), а не символические имена, и нумеровать элементы схемы в определенном порядке: сверху вниз и слева направо, чтобы их легко было найти. 2.2.4. ВЫБОР МОДЕЛЕЙ ЭЛЕМЕНТОВ И ЗАДАНИЕ ИХ ПАРАМЕТРОВ В независимых источниках сигналов V и I для расчета переходных процессов необходимо выбрать модель и задать ее параметры. Модель определяет форму сигнала и имеет одно из следующих имен: EXP - импульс с экспоненциальными фронтами; PUL - трапецеидальный импульс или периодические импульсы; SE PWL - произвольный кусочно-линейный сигнал; - частотно-модулированный гармонический сигнал; SFF M SIN - гармонический сигнал с затуханием. Подробное описание моделей и их параметров приведено в работе [3]. В зависимости от формы сигнала выбирается та или иная модель, причем в некоторых случаях этот выбор неоднозначен: например, прямоугольный импульс можно описать моделями EXP, PULSE, PWL, синусоидальный сигнал - моделями SFFM и SIN. Сигналы сложной нестандартной формы можно описать моделью PWL. Можно также использовать сложение и перемножение сигналов с помощью зависимых источников (см. подробнее в п. 2.3.6). Некоторые элементы, например, R, C и L, могут задаваться без моделей. В этих случаях достаточно знать их номиналы. Если же требуется задать их
34
2. Описание схемы на входном языке программы PSpice
температурные зависимости или нелинейности C и L, то необходимо использовать соответствующие модели. Для большинства остальных элементов использование моделей обязательно. Параметры моделей (кроме моделей источников напряжения, тока и некоторых других элементов) могут иметься в библиотеках системы. Это наилучший для использования вариант: достаточно по каталогу библиотеки найти библиотечный шифр, который обычно совпадает с наименованием типа элемента. Если в библиотеках требуемых параметров нет, то следует ввести какое-то имя (любой идентификатор) и описать под этим именем оператором .MODEL (см. работу [3]) совокупность параметров (наборы параметров различных моделей приведены в пособии [3]). Для некоторых моделей системы параметров просты и соответствующие значения можно взять из справочников. Однако в ряде случаев, особенно для транзисторов, это сделать невозможно. В этих случаях требуется использовать специальные программы идентификации, например Parts (см. работу [2], п. 4). Рассчитанные параметры заносятся в библиотеку или непосредственно в описание схемы. Существует еще один путь - для первоначальных прикидочных расчетов можно использовать значения некоторых или даже всех параметров по умолчанию. Во всех моделях PSpice не заданные пользователем параметры задаются по умолчанию самой программой. Поэтому в прикидочных расчетах можно задать только несколько самых важных параметров модели. Можно вообще не задавать ни одного параметра - тогда моделирование будет проводиться для некоторого абстрактного элемента (диода, транзистора и т.п.). Конечно, в этих случаях точность моделирования абсолютно неизвестна. Более разумный путь при неизвестных параметрах модели найти в библиотеке параметры какого-то близкого по типу элемента и взять их за основу, может быть немного подкорректировав. Желательно только подобные недостоверные наборы параметров не включать в библиотеки общего пользования, а использовать непосредственно в описании схемы или в своих личных библиотеках.
2.2.5. ИСПОЛЬЗОВАНИЕ ПОДСХЕМ При описании больших схем регулярной структуры удобно пользоваться подсхемами. Назовем подсхемой повторяющийся фрагрмент схемы. Тогда
2.2. Подготовка схемы к расчету
35
достаточно описать такую подсхему один раз, а затем только указывать, куда включены эти подсхемы. Это намного сокращает описание схемы и снижает вероятность ошибок. Подсхемы могут быть вложенными друг в друга. Например, на высоких частотах может потребоваться внести в модель транзистора паразитные индуктивности и емкости (см. п. 4.2.2). Тогда можно один раз описать схему вида, представленного на рис. 2.3, как подсхему, и затем при описании схемы вместо транзисторов включать в нее эту подсхему. Далее, например, в схеме может быть ряд одинаковых транзисторных ключей, содержащих такие транзисторы. Их можно описать как подсхемы второго уровня. Рис. 2.3. Модел Подсхемой третьего уровня может быть, тран-зистора с например, триггер, состоящий из ключей, паразит-ными подсхемой четвертого уровня - разряд регистра элементами и т.д. Подготовка к расчету схемы, использующей подсхемы, сводится к следующему. Каждая подсхема готовится к расчету так же, как схема в целом - вводятся обозначения узлов и элементов, причем все имена имеют локальный характер и действуют только внутри подсхемы. Исключение составляет узел 0, являющийся землей, в какой бы подсхеме он ни встретился. Кроме того, иногда желательно ввести и другие глобальные узлы для всех подсхем - шины питания, шина тактовых импульсов и т.д. Имена таких глобальных узлов должны начинаться с символов "$G_", например "$G_4". Каждому типу подсхемы присваивается некоторое произвольное имя. Определяются узлы, являющиеся внешними. И далее при описании схемы или подсхемы верхнего уровня каждая подсхема нижнего уровня обозначается многополюсным элементом с числом узлов, равным числу внешних выводов. Каждому такому элементу присваивается имя, начинающееся с символа "Х". Рассмотрим в качестве примера простейший транзисторный ключ (рис. 2.4а) и собранный на этих ключах кольцевой генератор (рис. 2.4б). При оформлении схемы ключа в виде подсхемы надо решить, какие узлы считать внешними. Очевидно, что внешними являются узлы входа и выхода (1 и 2). А в отношении узла питания возможны три разных подхода.
36
2. Описание схемы на входном языке программы PSpice
а)
б)
в)
г) Рис. 2.4. Использование подсхем: а) подсхема ключа; б) кольцевой счетчик, питание внутри подсхем; в) питание как внешний узел; г) питание как глобальный узел
2.2. Подготовка схемы к расчету
1.
2. 3.
37
Узел питания можно считать внутренним и при описании подсхемы включить в нее источник питания V1 (пунктир на рис. 2.4а). Тогда схема генератора примет вид, представленный на рис. 2.4б. Это наименее удачный вариант, т.к. в схеме будет столько источников питания, сколько ключей, что увеличит затраты памяти, время расчета и не позволит, например, исследовать зависимость характеристик схемы от напряжения питания. Узел питания можно считать внешним. Тогда схема примет вид, представленный на рис. 2.4в. Узел питания можно обозначить как глобальный (например, $G_3). Тогда схема будет иметь вид, представленный на рис. 2.4г. Это, повидимому, наиболее компактный вариант описания. 2.3. ОПИСАНИЕ ЭЛЕМЕНТОВ СХЕМЫ 2.3.1. ОПЕРАТОРЫ ОПИСАНИЯ ЭЛЕМЕНТОВ И МОДЕЛЕЙ
В данном пункте изложены начальные сведения о форме операторов, описывающих схему. Более подробные сведения о каждом операторе содержатся в работе [3]. Общая форма оператора, описывающего элемент: <имя элемента> <список узлов> [<имя модели>] [<параметры>]. Не для всех элементов указывается имя модели и не все элементы имеют индивидуальные параметры, указанные в этом операторе. Если указано имя модели, причем подразумевается, что параметры модели берутся не из библиотеки, то где-то во входном файле должен быть оператор, описывающий модель с эти именем. Его вид: .MODEL <имя модели> <тип модели> + [(<имя параметра>=<значение>...)]. В этом операторе <тип модели> определяется типом элемента (например, RES для резистора, NPN или PNP для биполярного транзистора и т.д.). Если какие-то или все параметры модели не определены в этом операторе, то они берутся по умолчанию. Если в каком-то из операторов, описывающих элементы, было указано имя модели, а соответствующего этому имени оператора .MODEL во входном
38
2. Описание схемы на входном языке программы PSpice
файле нет, то считается, что параметры содержатся в библиотеке и программа будет их там искать под указанным именем.
2.3.2. ПАССИВНЫЕ ДВУХПОЛЮСНИКИ R, C, L Эти компоненты в простейшем случае описываются операторами вида: <имя элемента> <узел+> <узел-> <номинал> . Например: R1 4 7 10К C3 7 0 1р Порядок перечисления полюсов безразличен. Надо только иметь ввиду, что если в дальнейшем предполагается печатать или выводить на графики напряжение на элементе или ток через него, то в качестве напряжения возьмется разность потенциалов между узлами "+" и "-", а в качестве тока ток, текущий через элемент от узла "+" к узлу "-". Номинал элемента может быть задан положительным или отрицательным, но не нулевым. Имеется возможность описать эти элементы моделями, которые определяют их температурные зависимости, а для C и L позволяют также отразить нелинейные эффекты (см. п. 4.4). В этом случае оператор имеет вид: <имя элемента> <узел+> <узел-> <имя модели> <коэффициент>, где <коэффициент> - коэффициент пропорциональности, на который умножается рассчитанная моделью величина, а <имя модели> - ссылка на библиотечные параметры или ссылка на соответствующий оператор .MODEL с типом модели RES для R, CAP для C, IND для L. Например, операторы R1 4 7 MR1 10K .MODEL MR1 RES (TC1=.02) описывают резистор с коэффициентом линейной температурной зависимости равным 2% на градус. В конце операторов, описывающих C и L может быть записано: IC = <начальное значение>.
2.3. Описание элементов схемы
39
Это позволяет задавать начальные значения напряжений на С и токов через L (см. п. 3.1.3). Например, операторы C1 5 3 10рF IC=1V L1 3 4 1u IC=.1m описывают емкость С1 с начальным напряжением 1В и индуктивность L1 с начальным током 0.1мА. 2.3.3. ПАССИВНЫЕ МНОГОПОЛЮСНИКИ K И T К числу пассивных многополюсников относятся индуктивности, связанные взаимной индукцией, дроссели, трансформаторы, линии задержки. Первые три элемента описываются оператором К (см. работу [3]), имеющим две различные формы. Для системы взаимосвязанных индуктивностей в операторе перечисляются имена индуктивностей, описанных обычными операторами L, и указывается коэффициент взаимной связи, равный Mij/(Li⋅Lj)1/2, где Li, Lj, Mij - соответственно значения индуктивностей и взаимной индукции. Например, L1 5 7 1u L2 6 8 2u K12 L1 L2 0.9 Для дросселей и трансформаторов с учетом нелинейных эффектов в сердечнике используется другая форма оператора К, в которой дается ссылка на модель сердечника (см. пособие [3]). Линия задержки представляется четырехполюсником, описанным оператором Т (см. пособие [3]), в котором указывается волновое сопротивление и длительность задержки. 2.3.4. ПОЛУПРОВОДНИКОВЫЕ ПРИБОРЫ В PSpice включены модели следующих полупроводниковых приборов: диодов (D), биполярных транзисторов (Q), полевых транзисторов с управляющим p-n переходом (J), МДП-транзисторов (M), арсенид-галиевых полевых транзисторов (B). Все эти элементы описываются операторами вида:
40
2. Описание схемы на входном языке программы PSpice
<имя> <узлы подключения> <имя модели> + [<масштабные параметры>]. Узлы подключения перечисляются в строго определенном порядке: для D для Q
- анод, катод; - коллектор, база, эмиттер, подложка (узел подложки может не указываться); для J и В - сток, затвор, исток; для M - сток, затвор, исток, подложка (узел подложки может не указываться). Имя модели (бибилиотечное или описанное соответствующим оператором .MODEL) указывается обязательно. Для приборов могут указываться масштабные параметры. Для D, Q, J, B это относительная площадь прибора. Параметры модели для прибора, в котором указана относительная площадь, пересчитываются в предположении, что его площадь в заданное число раз отличается от площади того прибора, для которого указаны параметры модели. Например, если указан масштабный параметр 2, то это означает, что площадь данного элемента в 2 раза превышает площадь элемента, описанного в модели. Таким образом, один раз описав параметры модели можно их использовать, например, для разных приборов интегральной схемы, выполненных по одинаковой технологии, но различающихся своими геометрическими размерами. Для МДП-транзисторов в этом отношении возможности еще богаче: в них в качестве масштабных параметров можно указывать длину и ширину канала, периметры различных областей и др. Подробное описание моделей полупроводниковых приборов см. в п. 4 и в работе [3]. 2.3.5. НЕЗАВИСИМЫЕ ИСТОЧНИКИ НАПРЯЖЕНИЯ И ТОКА Любой независимый источник напряжения (V) или тока (I) может содержать постоянную составляющую (т.е. играть роль источника питания), переменную составляющую - гармонический сигнал, используемый при частотном анализе линеаризированной схемы, и зависящую от времени составляющую, используемую как сигнал при расчете переходного процесса. Общий вид оператора
2.3. Описание элементов схемы
41
<имя> <узел+> <узел-> [[DC]<значение>] [AC<амплитуда> + [<фаза>]] [<модель переходного процесса>] За положительное на-правление напряжения источ-ника принимается разность потенциалов между узлами <узел+> и <узел->, за положи-тельное направление тока - ток, текущий через источник от <узла+> к <узлу-> (рис. 2.5). Рис. 2.5. Источники напряжения и тока Значение по постоянному току (по умолчанию - 0) используется в режиме DC, а также при линеаризации схемы в режиме AC и при расчете переходного процесса, если в операторе не задана <модель переходного процесса>. Для частотного анализа задается амплитуда (относительная условная величина, так как в линеризованной схеме абсолютная величина амплитуды значения не имеет) и может задаваться фаза в градусах (по умолчанию 0). Например, операторы V1 1 0 AC 0.5 V2 2 0 AC 0.5 180 описывают парафазные сигналы в узлах 1 и 2 с результирующей единичной амплитудой напряжения между этими узлами. Впрочем, аналогичный результат можно получить не используя сдвиги фаз на 180 градусов, а изменив последовательность перечисления узлов в источнике V2: V1 1 0 AC 0.5 V2 0 2 AC 0.5. Указываемая в операторе <модель переходного процесса> имеет одну из следующих форм: EXP(<параметры>) - прямоугольный импульс с экспоненциальными фронтами; PULSE(<параметры>) - трапецеидальный импульс (одиночный или периодически повторяющийся); PWL(<параметры>) - кусочно-линейный сигнал; SFFM(<параметры>) - частотно-модулированный синусоидальный сигнал; SIN(<параметры>) - синусоидальный сигнал с постоянной или затухающей амплитудой.
42
2. Описание схемы на входном языке программы PSpice
Описание моделей и их параметров см. в работе [3]. Способы получения более сложных сигналов см. п. 4.6. Если в описании источника не указано ни одно значение, например V1 10 5, то выходная величина источника равна нулю.Такие источники напряжения иногда включают последовательно с какими-либо элементами в качестве токосъемных. Дело в том, что в различных выражениях (см. п. 2.3.8) можно использовать токи только независимых источников напряжения. Значит, при включении источника нулевого напряжения в какую-либо ветвь схемы можно использовать в выражениях его ток как ток данной ветви. 2.3.6. ЗАВИСИМЫЕ ИСТОЧНИКИ НАПРЯЖЕНИЯ И ТОКА (ПРОСТЫЕ ФОРМЫ ОПИСАНИЯ) При описании схемы могут использоваться зависимые линейные и нелинейные источники тока и напряжения: I(U) - G, U(U) - E, I(I) - F, U(I) -H. Для описания идеального зависимого источника с постоянным коэффициентом передачи используется оператор вида: <имя> <узел+> <узел-> <управление> <величина>. Порядок перечисления узлов такой же, как в независимых источниках V и I. Указываемая в операторе <величина> - коэффициент передачи. Вид <управления> зависит от того, напряжением или током управляется источник. При управлении напряжением <управление> - два узла, разность напряжений между которыми и является управляющей величиной. Например, операторы EAMP 3 0 1 2 4 GAMP 0 3 1 2 4m описывают зависимые источники (идеальные усилители напряжения с выходом по напряжению и по току), управляемые разностью потенциалов узлов 1 и 2. В первом из них коэффициент передачи напряжения равен 4, во втором крутизна равна 4мА/В. Если управление осуществляется током, то <управление> - имя независимого источника напряжения, ток через который и является управляющей величиной. Например, операторы HAMP 3 0 V1 5
2.3. Описание элементов схемы
43
FAMP 0 3 V1 5К описывают зависимые источники (идеальные усилители тока, с выходом по напряжению и току), управляемые током источника V1. Если нужно осуществить управление током элемента другого типа (не V), то последовательно с ним надо включить элемент V с нулевым напряжением и его имя использовать в соответствующем операторе H или F. Линейные зависимые источники, управляемые несколькими входными величинами, а также нелинейные источники с полиномиальной характеристикой описываются операторами вида <имя> <узел+> <узел-> POLY(
2
n! ⋅X1⋅X2 + 2n+ 2 2 n− 2 !
b g
2
n! ⋅X1⋅X1 + 2n+1 2 n− 2 !
b g
+
+...
Коэффициенты в операторе описания источника перечисляются по порядку начиная с P0 и кончая последним коэффициентом, отличным от нуля. Приведем примеры. Операторы ESUM 4 0 POLY(3) 1 0 2 0 3 0 0 1 1 2 ESUM 4 0 POLY(3) (1,0) (2,0) (3,0) 0 1 1 2 тождественны друг другу и описывают источник напряжения, суммирующий потенциалы узлов 1, 2, 3, причем потенциал узла 3 суммируется с весовым коэффициентом 2. Оператор EMULT 4 0 POLY(2) (1,0) (2,0) 0 0 0 0 1 описывает источник, перемножающий потенциалы узлов 1 и 2.
44
2. Описание схемы на входном языке программы PSpice
Оператор G 1 2 POLY(1) (1 2) 0 0 1 описывает нелинейный двухполюсник (источник тока, управляемый напряжением на своих выводах), имеющий квадратичную зависимость тока от напряжения. Имеются еще 4 формы записи операторов зависимых источников E и G, которые будут описаны в п. 2.3.9. 2.3.7. ГЛОБАЛЬНЫЕ ПАРАМЕТРЫ В большинстве операторов входного языка вместо численных значений можно использовать глобальные параметры. Например, можно записать R1 1 2 {RNOM} R2 3 4 {RNOM} и в дальнейшем при изменении параметра RNOM одновременно будут изменяться номиналы резисторов R1 и R2. Имена и значения глобальных параметров задаются оператором .PARAM следующего вида: .PARAM <имя> = <величина> ... Имя параметра может быть произвольным, кроме следующих зарезервированных идентификаторов: TIME, TEMP, VT, GMIN. Значение параметра <величина> может задаваться константой или математическим выражением (см. п. 2.3.8), заключенным в фигурные скобки и содержащим только константы. Например: .PARAM RNOM=5K, PI2={2*3.14159}, OMEGA={2*3.14159*100kHz}. Изменять значение параметра в процессе многовариантного анализа можно оператором .STEP (см. п. 3.7 и пособие [3]). Параметры можно использовать вместо численных значений: ♦ для параметров моделей; ♦ для параметров элементов (номиналов резисторов, конденсаторов, индуктивностей, относительной площади полупроводниковых приборов и т.п.); ♦ для параметров источников V, I, E, G, F, H; ♦ для начальных значений напряжений конденсаторов и токов индуктивностей, задаваемых элементами описаний IC;
2.3. Описание элементов схемы
45
♦ для значений, задаваемых операторами .IC и .NODESET. Запрещено использование параметров: ♦ вместо имен узлов; ♦ вместо значений в операторах, задающих вид анализа (.AC, .TRAN и др.); ♦ вместо параметров модели PWL для V и I; ♦ вместо полиномиальных коэфффициентов для E,G,F,H; ♦ вместо параметров NL и F в описании линии задержки T; ♦ вместо температурных коэффициентов, указываемых в операторе R (см. работу [3]); однако параметры можно использовать для температурных коэффициентов в модели резистора. Использование параметров в подсхемах - отдельный вопрос, рассмотренный ниже в п. 2.3.10. 2.3.8. МАТЕМАТИЧЕСКИЕ ВЫРАЖЕНИЯ В описаниях элементов, моделей и во многих других операторах входного языка можно вместо конкретных значений записывать математические выражения, содержащие константы, глобальные параметры (см. п. 2.3.7), арифметические операции "+", "-", "*", "/", скобки и следующие функции: ABS(X) SQRT(X) EXP(X) LOG(X) LOG(X) PWR(X,Y) SIN(X) COS(X) TAN(X) ATAN(X)
|X| X
eX ln(X), натуральный логарифм log(X), десятичный логарифм |X| Y sin(X), X в радианах COS(X) tg(X) X в радианах arctg(X) результат в радианах
Начиная с PSpice 5 добавлены еще две функции: TABLE(X,...) табличная функция LIMIT(X,...) функция ограничения Табличная кусочно-линейная функция Y(X) задается парами чисел X1, Y(X1), X2, Y(X2), ... Xn, Y(Xn) - координатами точек излома. При значениях
46
2. Описание схемы на входном языке программы PSpice
X<X1 функция постоянна и равна Y(X1). Аналогично при X>Xn функция равна Y(Xn). Внутри заданного диапазона изменения аргумента проводится линейная интерполяция таблицы. Функция ограничения LIMIT задается минимальным и максимальным значениями аргумента Xмин и Xмакс. Значения функции определяются соотношением Xмин при X ≤ Xмин, R | при Xмин < X < Xмакс, Y = SX |TXмакс при X ≥ Xмакс.
Фактически, функция LIMIT является частным случаем табличной функции. При записи математическое выражение заключается в фигурные скобки и должно размещаться в одну строку, т.е. без переносов. Примеры: R1 1 2 {RNOM} R2 3 4 {RNOM/2} C1 1 2 {TAU/RNOM} В этих примерах при любых значениях глобальных параметров RNOM и TAU номинал резистора R2 будет в 2 раза меньше номинала R1, а постоянная времени R1⋅C1 равна TAU. Область применения математических выражений та же, что и область применения глобальных параметров (см. п. 2.3.7). Если для сложных выражений возникают трудности при их записи в одну строку, то возможны два выхода. Наиболее простой - увеличить допустимую длину строки оператором .WIDTH IN=132. Более универсальный путь - оформить отдельные члены выражения как функции и ввести их операторами .FUNC (см. работу [3]). Например: .FUNC MIN(A,B) 0.5*(A+B-ABS(A-B)) .FUNC MAX(A,B) 0.5*(A+B+ABS(A-B)) C1 1 2 {MAX(T1,T2)/MIN(RN1,RN2)} Операторы .FUNC должны размещаться во входном файле до первой ссылки в выражении на соответствующую функцию. Подробнее о функциях см. в пособии [3].
2.3. Описание элементов схемы
47
2.3.9. ЗАВИСИМЫЕ ИСТОЧНИКИ НАПРЯЖЕНИЯ И ТОКА (ДОПОЛНИТЕЛЬНЫЕ ФОРМЫ ОПИСАНИЯ) Если версия PSpice содержит опцию поведенческого моделирования Analog Behavioral Modeling, то для зависимых источников E и G допускается ряд дополнительных форм описания. Первые две из них расширяют возможности построения моделей нелинейных элементов. Они имеют следующий синтаксис: <имя> <узел+> <узел-> VALUE = {<выражение>} <имя> <узел+> <узел-> TABLE = {<выражение>} + <аргумент> <функция>... В этих операторах <выражение> - управляющая величина, записанная в виде математического выражения. Оно может содержать константы, глобальные параметры, потенциалы узлов (например, V(3)), разности потенциалов (например, V(4,5)), токи V элементов (например, I(V1)), время (TIME). Поскольку управляющими величинами могут быть как токи, так и напряжения, отпадает необходимость в специальных источниках, управляемых током (элементах H и F). Первая из приведенных форм оператора описывает зависимость выходной величины в аналитическом виде, а вторая - в табличном. При табличном описании перечисляются пары чисел - значение аргумента, которым является заданное выражение, и значение функции (т.е. выходной величины источника), соответствующее этому значению аргумента. Значения аргумента в таблице должны монотонно возрастать. Между заданными в таблице точками программа осуществляет линейную интерполяцию. При значениях аргумента, меньших первого заданного в таблице значения и больших последнего заданного, выходная величина источника считается постоянной и равной соответственно первому или последнему значению в таблице. Примеры описания: ELOG 2 0 VALUE = {100*LOG(V(1)+1mV)} G1 0 1 TABLE = {V1} -1m -10m 1m 10m
48
2. Описание схемы на входном языке программы PSpice
Рис. 2.6. Источник тока с табличной передаточной функцией
Первый пример описывает источник напряжения, управляемый потенциалом узла 1 по логарифмическому закону. Второй пример описывает источник тока, управляемый током элемента V1 по закону, представленному на рис. 2.6. Другие примеры, иллюстрирующие богатые возможности описания нелинейных элементов зависимыми источниками,
приведены ниже в п. 5.2. Для моделирования частотных характеристик коэффициентов передачи зависимых источников E и G предусмотрены операторы вида: <имя> <узел+> <узел-> LAPLACE {<выражение>} = + <изображение> <имя> <узел+> <узел-> FREQ {<выражение>} = <частота> + <модуль> <фаза> ... Управляющая величина задается как <выражение> по описанным выше правилам. В первой из двух приведенных форм операторов <изображение> операторное изображение по Лапласу-Карсону. При этом оператор Лапласа обозначается символом "s". Например, E1 2 0 LAPLACE {V(1)} = { 10/(1+1u*s)} описывает зависимый источник напряжения, управляемый потенциалом узла 1, с коэффициентом передачи по постоянному току (т.е. при s=0) равным 10 и со спадом в области высоких частот, соответствующим постоянной времени 1 мкс. Во второй из приведенных форм операторов частотная характеристика коэффициента передачи задается таблицей, каждая сторока которой содержит частоту, модуль коэффициента передачи в децибеллах и фазу в градусах. При
2.3. Описание элементов схемы
49
интерполяции таблицы модуль коэффициента передачи считается линейно зависимым от логарифма частоты, а фаза - линейно зависимой от частоты. Вне диапазона частот, указанного в таблице, модуль и фаза считаются постоянными и равными соответствующим крайним табличным значениям. Например, Е1 2 0 FREQ {V(1)} = (0,0,0) (5kHz,0,-5760) (6kHz,-60,-6912) описывает фильтр нижних частот с коэффициентом передачи, равным 1 (0 дб) при частотах ниже 5 кГц и равным 0.001 (-60 дб) при частотах выше 6 кГц. Фаза линейно зависит от частоты. При частотном анализе программа моделирования определяет для требуемой частоты f коэффициент передачи непосредственно по заданному операторному изображению, заменяя s на j⋅2π⋅f, или путем интерполяции таблицы. При анализе по постоянному току коэффициент передачи определяется так же, но для f=0. При расчетах переходных процессов используется преобразование Фурье. На каждом временном шаге выходной сигнал определяется как свертка последнего значения управляющего сигнала и импульсной характеристики коэффициента передачи. Поэтому при интерпретации результатов расчета переходных процессов с моделями зависимых источников, описываемых преобразованием Лапласа или частотными характеристиками, надо быть очень осторожным и учитывать следующие соображения. Разрешение по времени Тр (т.е. минимальный временной интервал, на котором программа может различить изменения управляющего сигнала зависимого источника) обратно пропорционально максимальной частоте Fмакс. Величина Fмакс определяется заданными частотными характеристиками зависимого источника, а также значениями относительной погрешности расчета RELTOL (см. п. 3.4) и заданной в операторе .TRAN (см. п. 3.4 и работу [3]) длительностью расчета переходного процесса TSTOP. При табличном задании частотных характеристик Fмакс не превышает RELTOL ⋅ Fтмакс, где Fтмакс - максимальная частота в таблице. При задании преобразования Лапласа Fмакс не превышает верхней частоты, на которой модуль коэффициента передачи падает в RELTOL раз по сравнению со своим максимумом (если такая частота есть). И для сокращения затрат времени и памяти на расчет всегда устанавливается ограничение: Fмакс < 10/(RELTOL⋅TSTOP). В итоге величина Fмакс выбирается минимальной из перечисленных значений. Следовательно Тр определяется максимальной из величин RELTOL ⋅TSTOP/10 и 1/(RELTOL⋅Fтмакс) при табличном задании или 1/Fмакс при преобразовании Лапласа. А желательная величина Tр
50
2. Описание схемы на входном языке программы PSpice
определяется скоростью изменения управляющих переменных во времени. Условно можно считать, что для приемлемой точности величина Tр должна быть в 10 раз меньше длительности фронта управляющей переменной. Отсюда и вытекает основное ограничение на применение рассматриваемых вариантов зависимых источников при расчетах переходных процессов. При использовании операторных изображений надо кроме того учитывать, что если изображение имеет полюса в левой полуплоскости, то цепь становится неустойчивой и это может вызвать проблемы со сходимостью как при расчете переходных процессов, так и при расчете по постоянному току. При табличном описании частотных характеристик дополнительная опасность заключается в том, что легко можно задать физически нереализуемые характеристики. В частности, задав недостаточно сильное нарастание фазы с ростом частоты можно получить импульсную характеристику, имеющую заметную величину в области отрицательных времен. Это получится, например, если в приведенном выше описании фильтра нижних частот задать при любой частоте нулевой фазовый сдвиг или даже не нулевой, но недостаточно быстро нарастающий с ростом частоты. Подобные системы не могут быть реализованы физически и, соответственно, PSpice при расчете переходных процессов может дать для них странные и необъяснимые с физической точки зрения результаты. Сказанное выше показывает, что надо с большой осторожностью использовать зависимые источники с операторным или табличным описанием частотных характеристик. Однако при грамотном их применении можно получить очень полезные результаты. Помимо описанных форм операторов зависимых источников, в DesignCenter 6 введен оператор описания характеристик фильтров по Чебышеву для элемента E. Подробнее см. в работе [3]. 2.4. ПОДСХЕМЫ Описание модели подсхемы начинается оператором .SUBCKT <имя модели подсхемы> <список внешних узлов> + [ PARAMS: <имя> = <значение>...] и заканчивается оператором .ENDS. Между этими операторами размещаются операторы, описывающие элементы подсхемы и их модели. Запрещено только внутри модели подсхемы описывать модели других подсхем, т.е. использовать операторы .SUBCKT. В п. 2.2.5 уже указывалось, что имена всех элементов и моделей, включенных
2.4. Подсхемы
51
между этими операторами, локальные. Там же пояснялось, как в подсхему можно передать глобальные имена узлов. В <список внешних узлов> заносятся имена узлов подсхемы, которые являются внешними. Обращение к модели подсхемы производится оператором <имя элемента> <список узлов> <имя модели подсхемы> + [ PARAMS: <имя> = <значение>...] , где <имя элемента> - имя, начинающееся с X, а <список узлов> перечисление узлов подключения подсхемы в том самом порядке, в котором вошли внешние узлы в <список внешних узлов> при описании модели подсхемы. Приведем в качестве примера описание подсхемы рис. 2.4а и схемы на ее основе, представленной на рис. 2.4г. .SUBCKT KEY 1 2 R1 1 4 10K R2 $G_3 1K Q1 2 1 0 MQ1 .ENDS X1 1 2 KEY X2 2 3 KEY X3 3 1 KEY R1 1 0 10K C1 1 0 10p U1 $G_3 0 5V В пределах подсхемы действительны не только глобальные узлы, но и глобальные параметры, определенные оператором .PARAM (см. п. 2.3.7 и работу [3]). Однако в подсхему можно передать и локальные параметры, что позволяет описывать одной моделью несколько подсхем, тождественных по начертанию, но различающихся значениями каких-либо параметров. Для введения локальных параметров подсхемы используется указанный выше раздел “PARAMS:” в описании подсхемы. В нем перечесляются имена вводимых параметров и их значения по умолчанию. Например, если требуется в приведенном выше примере учесть различия в значениях сопротивлений R1 и R2 в разных подсхемах, то описание модели подсхемы может иметь вид : .SUBCKT KEY 1 2 PARAMS: R1_NOM=10K R2_NOM=1K
52
2. Описание схемы на входном языке программы PSpice
R1 1 4 {R1_NOM} R2 $G_3 {R2_NOM} Q1 2 1 0 MQ1 .ENDS
Тогда, если операторы, описывающие элементы X1, X2, X3 имеют такой же вид, как и ранее, то значения R1 и R2 во всех подсхемах будут равны значениям по умолчанию. Но если, например, описать элементы X1, X2, X3 операторами X1 1 2 KEY PARAMS: R1_NOM=9K X2 2 3 KEY PARAMS: R1_NOM=11K R2_NOM=1.1K X3 3 1 KEY , то в подсхеме X1 будет R1 = 9 кОм, R2=1 кОм, в подсхеме X2 - R1 = 11 кОм, R2=1.1 кОм, а в подсхеме X3 по умолчанию R1 = 10 кОм, R2=1 кОм. Подсхемы могут быть вложены друг в друга, поскольку в описание модели подсхемы могут быть включены операторы вызова других подсхем X. При этом параметры могут передаваться с уровня на уровень так же, как это делается в алгоритмических языках. Если желательно, чтобы в выходном файле PSpice с расширением .OUT подсхемы были распечатаны в развернутом виде (это, в частности, может потребоваться, если описания моделей подсхем взяты из библиотеки), то должна быть задана опция EXPAND (см. работу [3], оператор .OPTIONS). 2.5. БИБЛИОТЕКИ Параметры моделей элементов и описания моделей подсхем могут храниться в библиотечных файлах. Это обычные текстовые файлы, для которых чаще всего (но не обязательно) используется расширение .LIB. Если требуется при расчете схемы обратиться к библиотеке, то во входной файл должен быть включен оператор .LIB [<имя библиотечного файла>] , где <имя библиотечного файла> - полное имя библиотечного файла, т.е. с указанием полного пути и расширения. Если <имя библиотечного файла> в операторе не указывается, то подразумевается файл NOM.LIB. Во входном файле может быть несколько операторов .LIB. Тогда поиск моделей осушествляется последовательно во всех указанных библиотеках. Для того, чтобы исключить неприятную необходимость в каждом операторе .LIB указывать имя файла вместе с путем, можно перед обращением к PSpice выполнить команду
54
Виды анализа в PSpice
SET PSPICELIB = <директория> [; <директория>...] , и в ней перечислить директории, в которых могут располагаться библиотечные файлы. Эту команду можно включить в файл AUTOEXEC.BAT. PSpice будет искать библиотечный файл сначала в текущей директории, а не найдя - в директориях, перечисленных в команде SET PSPICELIB, перебирая их в той последовательности, в которой они перечислены. Если библиотечный файл не обнаружен, выдается сообщение об ошибке: ERROR -- Can't find library file. Библиотечный файл может включать в себя операторы .MODEL, описания моделей подсхем (начиная с оператора .SUBSCT и кончая оператором .ENDS), операторы .LIB, комментарии, пустые строки. Никакие другие операторы включать в библиотечный файл нельзя. Поскольку библиотечный файл может содержать операторы .LIB, то удобно в текущей директории держать файл NOM.LIB, в котором перечислены операторы .LIB со всеми требуемыми при работе библиотеками. Тогда во входной файл PSpice достаточно включать оператор .LIB в его простейшей форме .LIB без указания библиотек. PSpice осуществляет поиск в библиотеках в случае, если во входном файле имеется ссылка на имя какой-то модели элемента или подсхемы, а описания этой модели в файле нет. Если и в библиотеках модель не найдена, выдается сообщение об ошибке: ERROR: Model ... used by ... is undefined. Если модель нашлась в библиотеке, ее описание читается и присоединяется к описанию схемы. Причем в оперативную память читаются только те модели, которые требуются в данном расчете. Поэтому использование даже очень больших библиотек, содержащих тысячи моделей, не увеличивает затрат оперативной памяти при расчете. Если желательно посмотреть описания моделей, считанных из библиотек, следует использовать опцию LIBRARY (см. пособие [3], оператор .OPTIONS). При задании этой опции описания использованных библиотечных моделей включаются в выходной файл .OUT. Для того чтобы ускорить поиск в больших библиотеках, PSpice создает для них индексные файлы, благодаря которым поиск требуемых моделей
3.1. Описание переменных в информации об анализе
55
осуществляется очень быстро и время почти не зависит от размера библиотеки. Индексные файлы имеют те же имена, что и сами библиотеки, и создаются в тех же директориях. Файлы имеют расширение .IND. Индексный файл создается заново программой PSpice, если он отсутствует для данной библиотеки или файл библиотеки более новый, чем имеющийся индексный файл. Таким образом, при любом обновлении библиотеки индексный файл автоматически обновляется при очередном расчете какой-либо схемы. Программа информирует о создании индексного файла сообщениями: Unable to find index file (...ind for library file ... Making new index file (....ind) for library file ... Если при этом в библиотечном файле обнаружены какие-то недопустимые операторы, выдается сообщение об ошибке: ERROR: Unable to read library file ...lib. В этом же случае, а также если произошел сбой при формировании индексного файла (нет места на диске, диск защищен от записи и т.п.), выдается сообщение об ошибке: ERROR: Unable to make index for library file a.lib. Для очень больших библиотек создание нового индексного файла может потребовать заметного времени. В этих случаях, если пользователь имеет свою библиотеку (как правило, каждый пользователь создает себе личные библиотеки) и часто ее обновляет, нецелесообразно включать ее имя в файл NOM.LIB, содержащий ссылки на большие библиотеки. Иначе, при каждом обновлении библиотеки пользователя будут создаваться новые индексные файлы и для этих больших библиотек. Начиная с Design Center 6 в PSpice могут использоваться библиотеки входных сигналов, подготовленные в текстовом редакторе или с помощью программы StmEd (см. работу [2], п. 3). Для подключения этой библиотеки служит оператор .STMLIB <имя библиотечного файла>. 3. В И Д Ы А Н А Л И З А В P S P I C E
56
Виды анализа в PSpice
3.1. ОПИСАНИЕ ПЕРЕМЕННЫХ В ИНФОРМАЦИИ ОБ АНАЛИЗЕ Прежде, чем рассматривать операторы различных видов анализа, остановимся на основных способах описания переменных (напряжений и токов), которые часто используются в этих операторах. Более подробные сведения об этом приведены в работе [3]. Форматы описания переменных, являющихся результатом расчета по постоянному току или результатом расчета переходных процессов, представлены в табл. 3.1. Таблица 3.1 Форматы описания переменных Формат V(<узел>) V(<узел+>,<узел->) V(<имя>) Vx(<имя>) Vxy(<имя>) Vz(<имя>) I(<имя>) Ix(<имя>) Iz(<имя>) D(<имя>)
Переменная Пример Пояснение примера напряжение в узле V(5) потенциал узла 3 разность потенциалов V(5,6) разность потенциалов узлов узла+ и узла5и6 падение напряжения на V(R1) падение напряжения на двухполюснике сопротивлении R1 напряжение на выводе VB(Q1) напряжение базы 'x' элемента транзистора Q1 напряжение между VGS(M1) напряжение затвор-исток транзистора M1 выводами 'x' и 'y' элемента напряжение на конце VA(T1) напряжение на выводах A длинной линии линии T1 ток двухполюсника I(D1) ток диода D1 ток, втекающий в вывод IB(Q1) ток базы транзистора Q1 элемента ток на конце длинной IA(T1) ток на выводах A линии T1 линии цифровой сигнал D(DA) сигнал цифрового узла DA цифрового узла
Форматы V(<имя>) и I(<имя>) применимы к двухполюсным элементам C, D, E, F, G, H, I, L, R, V. Форматы Vx(<имя>), Vxy(<имя>) и Ix(<имя>) применимы к трех- и четырех-полюсным элементам, для которых “x” и “y” в зависимости от вида элемента могут принимать следующие значения : биполярный транзистор Q: МДП-транзистор M:
C - коллектор, B - база, E - эмиттер, S - подложка; D - сток, G - затвор, S - исток, B - подложка;
3.1. Описание переменных в информации об анализе
57
полевые транзисторы J и B: D - сток, G - затвор, S - исток. Если имя узла символьное и начинается не с цифры, то в форматах V(<узел>) и V(<узел+>,<узел->) оно заключается в квадратные скобки. Например, V([OUT]). Не все токи могут фигурировать в качестве выходных величин. Нельзя непосредственно печатать токи элементов F и G - зависимых источников тока. Если все же эти токи требуются, надо включить последовательно в интересующую цепь источник нулевого напряжения и печатать ток этого источника. Для обозначения переменной, относящейся к внутреннему узлу или элементу подсхемы, перед узлом или элементом указывается имя подсхемы (или цепочка имен, если подсхемы вложенные), завершающееся символом "." . Например, V(X1.3) - напряжение узла 3 подсхемы X1. Или V(XEXT2.XINT1.R3) - напряжение резистора R3 подсхемы XINT1, входящей в подсхему XEXT2. Переменные, соответствующие частотному анализу, являются комплексными величинами. Для их обозначения используются те же форматы, которые приведены в табл. 3.1. Но к ним добавляются суффиксы, приведенные в табл. 3.2. Таблица 3.2 Суффиксы, применяемые к комплексным переменным Суффикс суффикс отсутствует M DB
Значение модуль модуль модуль в децибеллах
P
фаза
G R
групповая задержка d(фаза)/d(частота) действительная часть
I
мнимая часть
Пример V(2,3)
Пояснение примера модуль разности потенциалов узлов 2 и3 VM(2) модуль напряжения узла 2 VDB(R1) модуль напряжения на резисторе R1 в децибеллах VBEP(Q1) фаза напряжения база-эмиттер транзистора Q1 IAG(T1) ток выводов A линии T1 IBR(Q1) II(R1)
действительная часть базового тока транзистора Q1 мнимая часть тока резистора R1
3.2. Расчет по постоянному току
59
3.2. РАСЧЕТ ПО ПОСТОЯННОМУ ТОКУ 3.2.1. МЕТОД РАСЧЕТА, ЕГО ТОЧНОСТЬ И СХОДИМОСТЬ В процессе расчета схемы по постоянному току все реактивности из схемы убираются; в частности, емкости и индуктивности считаются равными нулю, что эквивалентно разрыву емкостей и короткому замыканию индуктивностей. Исходная система уравнений для расчета формируется методом узловых потенциалов и сводится к системе уравнений Iy(U)=0, где Iy - вектор узловых токов (т.е. вектор сумм токов в узлах схемы), U - вектор узловых потенциалов. Система уравнений решается методом Ньютона-Рафсона. Это итерационный метод, начинающийся с некоторого начального приближения (0) (k+1) U . Каждое следующее приближение U рассчитывается из предыдущего (k) (k+1) (k) =U +t⋅ΔU, где ΔU - поправка Ньютона, определяемая U по формуле U (k) (k) решением системы линейных уравнений Iy(U )+Y(U )⋅ΔU=0, Y - матрица узловых проводимостей, t≤1 - коэффициент Рафсона, обеспечивающий нерасходимость метода. Геометрическая интерпретация метода Ньютона в одномерном случае приведена на рис. 3.1. Как видно, метод сводится к тому, (k) что в точке U , начальной для очередной итерации, проводится касательная (k+1) берется точка, в которой к Iy(U) и в качестве очередного приближения U касательная равна нулю. (k) Из рис. 3.1 видно, что последовательность U сходится к корню, но никогда (за исключением линейного случая) его не достигает. Поэтому должен использоваться какой-нибудь критерий окончания работы алгоритма, прерывающий вычисления по достижении требуемой точности. Таких критериев используется два (см. рис. 3.1б): - по напряжению - расчет может заканчиваться в случае, если норма вектора ||ΔU|| < εu, ε где εu - заданная погрешность по напряжению; - по току - расчет может заканчиваться в случае, если норма вектора ||Iy||<εi, где εi - заданная погрешность по току.
60
Виды анализа в PSpice
Рис. 3.1. Одномерная иллюстрация метода Ньютона
Вычисления заканчиваются, если выполнены оба указанных условия. Погрешности εu и εi определяются заданными пользователем абсолютными и относительными погрешностями напряжения и тока. Прежде всего надо уяснить, почему задаются и абсолютные, и относительные погрешности. Ограничиться только абсолютными погрешностями в общем случае нельзя, поскольку в схеме могут быть узлы с существенно различающимися уровнями токов и напряжений. Например, при расчете операционных усилителей входные напряжения могут быть порядка миливольт, а входные токи - порядка наноампер; в то же время на выходе операционного усилителя напряжения составляют вольты, а токи - милиамперы. Рассчитывать сигналы в таких разных узлах с одной и той же абсолютной погрешностью невозможно: если, например, выбрать погрешности порядка нановольт и пикоампер, исходя из входного узла, то невозможно будет с такой точностью рассчитать сигналы в выходном узле (PSpice осуществляет вычисления с удвоенной точностью, что соответствует примерно 12десятичным разрядам, однако за счет накопления ошибок округления достоверными являются обычно не более 6 - 9-десятичных цифр результата). Ограничиться при расчетах только относительными погрешностями тоже невозможно, так как если, например, в каком-то узле напряжение должно быть равно нулю, то любая сколь угодно
3.2. Расчет по постоянному току
61
малая абсолютная погрешность в данном узле будет восприниматься как бесконечно большая относительная погрешность и расчет никогда не закончится. По этой причине задаются и абсолютные, и относительные погрешности, а в качестве результирующей принимается максимальная из них. Если обозначить Δx, δx и εx соответственно как абсолютную, относительную и результирующую погрешности напряжения или тока, то результирующая погрешность определяется соотношением εx=макс{Δx, δx ⋅ ⏐xi⏐}, т.е. для малых по модулю значений переменных действует абсолютная погрешность, а для больших - относительная. Погрешности в PSpice задаются опциями RELTOL - относительная погрешность по току и напряжению (по умолчанию 0.001); VNTOL - абсолютная погрешность по напряжению (в вольтах, по умолчанию 1мкВ); ABSTOL - абсолютная погрешность по току (в амперах, по -12 умолчанию 10 A). Если значения погрешностей, принятые по умолчанию, пользователя не устраивают, он может задать необходимые значения с помощью оператора .OPTIONS (см. п. 3.9 и работу [3]). Например, .OPTIONS RELTOL=1E-4, ABSTOL=1NA, VNTOL=10UV Значения допустимых погрешностей должны выбираться исходя из свойств анализируемой схемы. Задавая погрешность по току, надо иметь ввиду, что в результате расчета к каждому узлу схемы может быть как бы подключен паразитный источник тока величиной до εi. Поэтому, если в схеме есть высокоомные узлы, в которых такой ток может создать заметный сдвиг напряжений, погрешности ABSTOL и RELTOL следует уменьшать. Если же схема мощная с высокими уровнями токов, то ABSTOL необходимо увеличивать так, чтобы -9 величина ABSTOL была не менее, чем 10 от уровня тока. Аналогично, абсолютную погрешность по напряжению VNTOL надо уменьшать в схемах с уровнями сигналов миливольты и ниже и увеличивать в схемах с высокими уровнями напряжений (сотни вольт и киловольты) -9 так, чтобы величина VNTOL была не менее, чем 10 от уровня напряжений. Задавая допустимые погрешности, надо учитывать, что они, вообще говоря, не гарантируют точность расчета, поскольку, как видно из рис.
62
Виды анализа в PSpice
3.1 б, это погрешности на итерации, а не погрешности действительного корня уравнений. Например, контроль напряжений осуществляется по приращению ΔU на итерации, но величина ΔU может быть много меньшей, чем расстояние до истинного корня. Поэтому в ответственных случаях убедиться в точности полученного решения можно только одним путем: повторить расчет с уменьшенными на 1÷2 порядка допустимыми погрешностями и посмотреть, насколько изменятся результаты. Остановимся теперь на вопросах сходимости метода, т.е. на возможности вообще получить приемлемое решение. Сам по себе метод Ньютона может расходиться. В этом случае вместо приближения к корню получается удаление от него и неограниченный рост погрешности от итерации к итерации. Чтобы этого не происходило, в методе Ньютона-Рафсона используется параметр t, который выбирается так, чтобы исключить увеличение узловых токов от итерации к итерации. Это гарантирует нерасходимость метода, но, к сожалению, не гарантирует его сходимости. Поэтому в PSpice используется дополнительно один из вариантов метода движущейся области сходимости. Он основан на предположении, что метод НьютонаРафсона сходится, если его начальная точка достаточно близка к корню. Вариант, используемый в PSpice, сводится к следующему. Сначала делается попытка рассчитать режим обычным путем. Если получить решение не удается, то источники питания уменьшаются в 4 раза и повторяется попытка расчета схемы. Если она опять заканчивается неудачей, источники питания уменьшаются еще в 4 раза и т.д. В конце концов обычно решение находится, поскольку при стремлении к нулю источников питания потенциалы всех узлов схемы также стремятся к нулю и это простое решение программа находит. Затем источники питания начинают аналогичным образом увеличиваться, и каждый раз в качестве исходной точки для метода Ньютона-Рафсона берется точка, рассчитанная для предыдущего значения источников питания. Если зависимость напряжений схемы от источников питания непрерывна, то эта точка достаточно близка к корню и решение находится. В конце концов питание достигает номинального значения и режим схемы оказывается посчитанным. На экране дисплея этот процесс изменения питания сопровождается сообщением: Power supplies cut back to ... %.
3.2. Расчет по постоянному току
63
К сожалению, и этот метод не всегда дает возможность успешно рассчитать режим по постоянному току. Некоторые советы по поводу того, что делать в этих случаях, приведены в п. 3.2.5. А сейчас рассмотрим виды анализа по постоянному току в PSpice и соответствующие операторы входного языка. 3.2.2. РАСЧЕТ РАБОЧЕЙ ТОЧКИ Расчет схемы по постоянному току осуществляется в PSpice в двух вариантах: ♦ определение рабочей точки, т.е. расчет состояния схемы, являющегося исходным для других видов анализ - малосигнального, расчета переходных процессов и т.д.; ♦ расчет зависимости постоянных напряжений и токов схемы от уровня какого-либо источника напряжения и тока. Расчет рабочей точки осуществляется по умолчанию всегда, так как не рассчитав режим невозможно (во всяком случае для нелинейных схем) проводить никакой другой вид анализа. Даже если в задании на расчет схемы вообще не указано никаких видов анализа, расчет рабочей точки все равно осуществляется. Следует различать две рабочие точки, которые могут быть разными: рабочая точка малосигнального анализа и начальная точка расчета переходных процессов. Первая из них, как указывалось выше, рассчитывается всегда. Вторая рассчитывается только в тех случаях, когда задан расчет переходных процессов. Различие между ними заключается в том, что для рабочей точки малосигнального анализа независимые источники напряжения и тока принимают значения, заданные в их описании по постоянному току (DC), а для начальной точки переходных процессов они получают значения, соответствующие описанным в их моделях сигналов в нулевой момент времени. Если сигналы в нулевой момент времени не совпадают со значениями, заданными для постоянного тока, то будут различаться и эти две рабочие точки. В некоторых, сравнительно редких, случаях возникает необходимость запретить расчет начальной точки переходных процессов. Это прежде всего относится к схемам генераторов, работающих в автоколебательном режиме. Практически всегда в таких генераторах имеется точка неустойчивого равновесия, в которую реальная схема не попадает, а если даже и попадет, то вследствие любой флуктуации тока или напряжения немедленно выйдет из
64
Виды анализа в PSpice
нее. Но поскольку программа рассчитывает идеальную схему без каких-либо флуктуаций, то велика опасность, что в результате расчета по постоянному току схема окажется именно в этой точке равновесия, и в этом случае генерация не возникнет. Поэтому в PSpice предусмотрена возможность отменить расчет начальной точки переходных процессов. Это делается опцией UIC в операторе расчета переходного процесса .TRAN. Подробнее об этом будет сказано в п. 3.4. По результатам расчета рабочей точки в листинге (файле с расширением .OUT) печатаются таблица узловых потенциалов (NODE VOLTAGE), таблица токов независимых источников напряжения (VOLTAGE SOURCE CURRENTS) и полная рассеиваемая мощность (TOTAL POWER DISSIPATION). Например: NODE VOLTAGE NODE VOLTAGE NODE VOLTAGE NODE ( 1) 4.0000 ( 2) .8883 ( 3) 5.0000 ( 4) 2.3760 ( 5) 1.6039 ( 6) .8328 ( 7) -1.0000 ( 8) .0136
VOLTAGE
VOLTAGE SOURCE CURRENTS NAME CURRENT VEC -5.167E-02 V1 -1.833E-04 VIN 1.009E-12 TOTAL POWER DISSIPATION 2.59E-01 WATTS
Для получения более подробной информации о рабочей точке малосигнального анализа можно в файл задания на расчет схемы включить оператор .OP (OPERATING POINT). Тогда в листинге дополнительно будут распечатаны таблицы режимов всех нелинейных элементов схемы и их параметров в рабочей точке. Например, для биполярных транзисторов таблица может иметь вид: **** BIPOLAR JUNCTION TRANSISTORS NAME Q1 MODEL QNPN IB 1.25E-03 IC 4.25E-02 VBE 8.33E-01 VBC -5.55E-02 VCE 8.88E-01 BETADC 3.39E+01 GM 1.43E+00 RPI 2.21E+01
Q2 QNPN 2.77E-03 4.99E-03 8.33E-01 8.19E-01 1.36E-02 1.80E+00 2.48E-01 3.84E+01
Q3 Q4 QNPN QNPN -2.97E-13 5.25E-04 1.31E-12 -5.57E-03 -1.62E+00 -2.62E+00 -2.62E+00 7.72E-01 1.00E+00 -3.40E+00 -4.40E+00 -1.06E+01 -1.35E-14 -1.95E-01 6.56E+13 6.56E+13
3.2. Расчет по постоянному току RX 1.00E+01 RO 1.74E+03 CBE 1.73E-10 CBC 2.37E-12 CBX 0.00E+00 CJS 0.00E+00 BETAAC 3.16E+01 FT 1.29E+09
1.00E+01 1.45E+00 1.07E-10 1.46E-08 0.00E+00 0.00E+00 9.54E+00 2.68E+06
1.00E+01 9.53E+11 3.24E-12 1.43E-12 0.00E+00 0.00E+00 -8.86E-01 -4.60E-04
65
1.00E+01 5.13E+00 2.84E-12 3.75E-09 0.00E+00 0.00E+00 -1.28E+13 -8.28E+06
Пользуясь этой информацией можно для всех биполярных транзисторов схемы узнать их режимы: базовый и коллекторный токи IB и IC, а также напряжения база-эмиттер, база-коллектор, коллектор-эмиттер - VBE, VBC, VCE. Подобная информация позволяет оценить, в каком режиме находится каждый транзистор: в приведенном примере транзистор Q1 работает в нормальной активной области (VBE>0, VBC<0) при токе коллектора 42,5 мА, транзистор Q2 насыщен (VBE>0, VBC>0), Q3 заперт (VBE<0, VBC<0), Q4 - в инверсном включении (VBE<0, VBC>0). Подобный анализ незаменим, в частности, при отладке задания на расчет, поскольку позволяет быстро найти ошибки в схеме. Поэтому на этапе отладки можно рекомендовать всегда использовать оператор .OP. Помимо режима в таблице содержатся параметры транзисторов в рабочей точке, в частности коэффициенты передачи базового тока (по постоянному и переменному току - BETADC и BETAAC), емкости база-эмиттер - CBE, базаколлектор - CBC и CBX (см. п. 4.2.1) и коллектор-подложка - CJS. Параметр BETAAC имеет смысл только для транзистора, работающего в нормальной активной области (в примере - транзистор Q1). Параметр BETADC равен отношению коллекторного и базового токов и имеет смысл как в нормальной активной области, так и в насыщении (в этом случае он позволяет оценить степень насыщения). Для диодов аналогичная таблица имеет, например, такой вид: **** DIODES NAME D1 MODEL KD512A ID 4.21E-03 VD 7.71E-01 REQ 6.14E+00 CAP 1.58E-10
D2 KD512A 1.36E-03 7.16E-01 1.90E+01 5.22E-11
В ней приводится режим (ID - ток, VD - напряжение диода), дифференциальное сопротивление REQ и емкость CAP в рабочей точке.
66
Виды анализа в PSpice
Особо следует сказать о расчете рабочей точки в многостабильных схемах, например в триггерах. В результате расчета такая схема может оказаться не в том состоянии, которое желательно пользователю. В этих случаях возможны два подхода: либо задать такие входные сигналы, которые обеспечат расчет именно требуемого состояния, либо воспользоваться описанными ниже возможностями задания начальных условий для расчета по постоянному току. 3.2.3. ЗАДАНИЕ НАЧАЛЬНЫХ УСЛОВИЙ Задание начальных условий при расчете схемы по постоянному току может преследовать три цели. 1. Сокращение или, вообще, ликвидация затрат времени на расчет режима при повторных анализах схемы. 2. Расчет в многостабильных схемах именно того варианта статического режима, который требуется. 3. Повышение сходимости в тех случаях, когда рассчитать статический режим обычным образом не получается. Прежде, чем обсуждать способы решения сформулированных задач, рассмотрим способы задания начальных условий, используемые в PSpice. Первый вариант задания начальных условий осуществляется оператором .IC, имеющим вид: .IC
3.2. Расчет по постоянному току
67
Второй вариант задания начальных условий осуществляется оператором .NODESET, имеющим вид: .NODESET
68
Виды анализа в PSpice
Оператор загружает потенциалы узлов схемы из внешнего текстового файла, который может содержать комментарии и оператор .NODESET или оператор .IC. Соответственно загруженные потенциалы используются при расчете рабочей так же, как в описанных операторах .IC или .NODESET. Четвертый вариант связан с заданием начальных условий на реактивностях: напряжений на емкостях и токов индуктивностей. Этот вариант относится только к заданию начальной точки для переходных процессов. Начальные условия задаются опцией IC в операторах описания емкостей и индуктивностей (см. п. 2.3.2 и работу [3]). Если эти опции заданы и к тому же в операторе задания переходного процесса задана опция UIC (см. п. 3.4 и оператор .TRAN в пособии [3]), то расчет начальной точки отменяется и в качестве нее берутся значения, заданные в опциях IC, в операторах .IC и .LOADBIAS. К рассмотренным вариантам задания начальных условий примыкает еще один оператор, введенный только начиная с PSpice 5 и нередко использующийся совместно с перечисленными выше - оператор запоминания режима по постоянному току .SAVEBIAS. Формат этого оператора в простейшем случае, применимом к рассматриваемым нами задачам, имеет вид (подробнее об этом операторе см. в работе [3]): .SAVEBIAS “<имя файла>” OP. Например: .SAVEBIAS “F1” OP Оператор запоминает потенциалы всех узлов схемы в текстовом файле с заданным именем. В файле содержатся комментарии, поясняющие условия создания файла (дату, время, схему, вид анализа, температуру), и оператор .NODESET с перечислением всех потенциалов. Например, этот файл может иметь вид: **************************************************************************
* PSpice Bias Point Save File from: * CIRCUIT: "OPAMP01.CIR" * TITLE: "*opamp01 operational amplifier "macromodel" subcircuit"* * DATE OF RUN: 04/17/95 * TIME OF RUN: 21:46:45 * ANALYSIS: "Small Signal Bias Point (OP)" * TEMP: 27.0 * **************************************************************************
.NODESET + V(1) + V(2)
= 100.00000E-06 = 0.00000000
3.2. Расчет по постоянному току
+ V(3)
69
= 15.00000000
........................................................................................................
Файл, запомненный оператором .SAVEBIAS при следующих расчетах может быть прочитан оператором .LOADBIAS. Теперь рассмотрим некоторые пути решения указанных в начале данного раздела задач. Первая из них связана с сокращением затрат времени на расчет по постоянному току при повторных анализах схемы. Пусть, например, в процессе проектирования схемы она многократно рассчитывается с различными сигналами и при различных значениях реактивных компонентов - емкостей или индуктивностей. В этих случаях статический режим схемы во всех расчетах остается одинаковым. Тогда для экономии времени на расчет статического режима (а это время для некоторых схем достаточно большое) можно воспользоваться следующим приемом. При первом расчете схемы в задание включается оператор .SAVEBIAS и статический режим запоминается в некотором файле. А при последующих расчетах оператор .SAVEBIAS исключается и вместо него включается оператор .LOADBIAS. В результате затраты на расчет режима существенно сокращаются. Если в схеме рассчитывается переходной процесс, то при этом в оператор .TRAN целесообразно включить опцию UIC, которая вообще исключит расчет начальной точки. Описанным приемом можно сократить затраты времени на расчет по постоянному току и в тех случаях, когда от одного к другому варианту расчета режим изменяется, но не кардинально (например, в результате небольших изменений параметров резисторов или транзисторов). Конечно, в этих случаях нельзя пользоваться опцией UIC, полностью исключающей расчет по постоянному току. Вторая из указанных в начале данного пункта задач - расчет заданного варианта режима в многостабильных схемах, может быть решена использованием оператора .NODESET, в котором задаются начальные напряжения одного или более узлов. Например, в схеме триггера можно задать этим оператором низкий потенциал одного из выходов, не заботясь о точном значении этого потенциала. Поскольку оператор .NODESET действует только на первой итерации, режим в итоге будет посчитан верный, причем почти наверняка (но без полной гарантии) тот вариант режима, который соответствует логическому сигналу “0” на выходе, указанном в .NODESET. Третья из указанных задач - улучшение сходимости алгоритмов, будет подробно рассмотрена в п.3.2.6.
70
Виды анализа в PSpice
3.2.4. DC АНАЛИЗ Расчет зависимости режима по состоянному току от какой-то переменной, принимаемой в качестве аргумента, осуществляется оператором .DC. Этот оператор может быть записан в одной из следующих форм: 1) .DC [LIN] <переменная - аргумент> <начальное значение> + <конечное значение> <приращение> + [<описание для следующего аргумента>] 2) .DC <шкала> <переменная - аргумент> <начальное значение> + <конечное значение>
3.2. Расчет по постоянному току
71
Граница изменения переменной <начальное значение> может задаваться как больше, так и меньше, чем <конечное значение>. Тем самым меняется направление изменения аргумента: от меньшего значения к большему или наоборот. При этом <приращение> или
IB 0mA 1mA 50uA
72
Виды анализа в PSpice
задает вложенное изменение двух величин - напряжения VCE (это может быть напряжение коллектор-эмиттер биполярного транзистора) и тока IB (это может быть базовый ток того же транзистора). Для каждого значения IB напряжение VCE пробегает весь заданный диапазон 0÷10 В. Приведенный оператор позволяет построить семейство выходных характеристик транзистора для разных значений базового тока IB. В качестве величины <переменная - аргумент> может задаваться : ♦ имя независимого источника напряжения и тока, тогда на время выполнения оператора .DC значение соответствующего источника меняется в заданных пределах; ♦ имя параметра модели элемента, в этом случае задается <тип модели> (например, RES, NPN, PNP и т.п.), после пробела имя модели и затем в круглых скобках имя параметра; в этом плане в операторе .DC не могут использоваться параметры L и W для МДП-транзистора (но могут LD и WD), а также любые температурные параметры, такие как TC1 и TC2 для резисторов и др.; ♦ температура, обозначаемая ключевым словом TEMP, тогда в процессе выполнения оператора .DC при каждом изменении значения температуры пересчитываются все зависящие от нее параметры элементов; ♦ имя глобального параметра, в этом случае пишется ключевое слово PARAM, а затем после пробела указывается имя параметра; при каждом изменении параметра пересчитываются все зависящие от него выражения. Приведем примеры применения оператора .DC к различным видам аргументов. Примеры для имен независимых источников напряжений и токов уже приводились выше. Пример оператора, изменяющего параметр модели транзистора IS, также уже приводился. Если требуется в качестве аргумента задать значение какого-либо резистора, то непосредственно это сделать нельзя. Соответствующий резистор должен быть описан с указанием модели (см. п. 4.4) и в качестве аргумента оператора .DC должен быть задан параметр этой модели. Например, если аргументом надо указать сопротивление некоторого резистора R1, то это можно сделать следующим образом: R1 1 5 RMOD 10K .MODEL RMOD RES .DC RES RMOD(R) 0.5 1.5 0.1
3.2. Расчет по постоянному току
73
В этом примере резистор R1, включенный между узлами 1 и 5 и имеющий номинал 10 кОм, описан моделью RMOD, в которой параметр R (коэффициент пропорциональности, см. п. 4.4) не указан и, следовательно, по умолчанию равен 1. Поэтому во всех видах анализа, кроме DC, номинал этого резистора просто равен указанному значению 10 кОм. А при DC анализе коэффициент пропорциональности R изменяется и соответственно номинал резистора варьируется от 5 до 10 кОм с шагом 1 кОм. Точно того же результата можно достичь с помощью следующих операторов: R1 1 5 RMOD 1 .MODEL RMOD RES R=10K .DC RES RMOD(R) 5K 15K 1K Приведем пример использования в качестве аргумента температуры: .DC RES RMOD(R) 5K 15K 1K TEMP LIST -60 27 85 Этот оператор обеспечивает тот же расчет зависимостей от сопротивления, что и в предыдущих примерах, но расчет будет проведен при трех температурах: -60, 27 и 85 °C. Приведем теперь пример использования в операторе .DC глобального параметра: .PARAM VNOM=1 V1 1 0 {10*VNOM} V2 2 0 {-5*VNOM} .DC PARAM VNOM 0.8 1.1 0.1 В этом примере аргументом является глобальный параметр VNOM, который определяет напряжения двух источников питания V1 и V2. Изменение VNOM вызывает синхронное изменение напряжений питания. Тем самым моделируется, например, влияние изменения напряжения сети или другого первичного источника напряжения, от которого питаются V1 и V2. В DC анализе, начиная с версий PSpice 5, можно использовать оператор .SAVEBIAS, запоминающий какие-то из посчитанных точек, что в дальнейшем позволяет загружать их в качестве начальных значений. Оператор имеет вид:
74
Виды анализа в PSpice
.SAVEBIAS “<имя файла>” DC + [DC=<значение>] [DC1=<значение>] [DC2=<значение>] Оператор работает так же, как было рассмотрено ранее для расчета рабочей точки. Если в операторе отсутствуют члены DC=<значение>, DC1=<значение> или DC2=<значение>, то будет запомнено состояние при первом значении варьируемых переменных. Задание DC=<значение> позволяет запомнить состояние схемы при значении варьируемой переменной, равном заданному. Если в операторе DC варьируется две переменные, то значение DC1 относится к первой из них, а значение DC2 - ко второй. Если при расчете режима DC переменная не принимает заданное значение, то запоминание не производится и файл результата остается пустым. При выполнении оператора .DC расчет режима в каждой заданной точке осуществляется теми же методами, которые были описаны ранее в п. 3.2.1. При этом на каждом шаге расчета, кроме первого, в качестве начального приближения берется значение всех потенциалов, полученное на предыдущем шаге. При этом возможны некоторые проблемы со сходимостью вычислений, которые будут рассмотрены в следующем пункте. 3.2.5. ПРОБЛЕМЫ СХОДИМОСТИ ВЫЧИСЛЕНИЙ В пп. 3.2.1 и 3.2.5 указывалось, что при расчетах по постоянному току могут возникать проблемы со сходимостью вычислений. Это вызывает отказ PSpice от расчета и печать в выходном файле .OUT сообщения типа: *ERROR*: Convergence problem in bias point calculation (Проблемы со сходимостью при расчете рабочей точки) Last node voltages tried were: (Последние узловые потенциалы, для которых была попытка расчета:) NODE VOLTAGE NODE VOLTAGE NODE VOLTAGE NODE VOLTAGE ( 1) 10.0120 ( 2) 0.0000 ( 3) 0.0000 ( 11) 10.00E+09
Часто подобные результаты связаны с ошибками в схеме. Например, нередкая ошибка - неверное направление источника тока, что приводит к попытке задать ток в запертый p-n переход. Поэтому, получив подобный результат, прежде всего надо взлянуть на печатаемую таблицу напряжений, выяснить, в каких узлах напряжения ненормально большие, и проверить правильность описания схемы. Однако в некоторых случаях никаких ошибок
3.2. Расчет по постоянному току
75
в схеме нет, а программа все-таки не может рассчитать ее режим. В этих случаях можно рекомендовать принять следующие меры. Рекомендация 1. Отсутствие сходимости может быть связано с тем, что заданы слишком малые погрешности и программа не в состоянии вести расчет с подобной точностью. Поэтому прежде всего следует попробовать изменить заданные допустимые погрешности расчета RELTOL, VNTOL и ABSTOL в соответствии с рекомендациями, изложенными в п. 3.2.1. Рекомендация 2. Можно попробовать изменить ограничения на число итераций при расчете по постоянному току. Таких ограничений в PSpice два: ITL1 - максимальное число итераций метода Ньютона (по умолчанию 40); ITL2 - максимальное число итераций поиска оптимального приращения на одной итерации метода Ньютона (по умолчанию 20). Увеличение этих значений оператором .OPTIONS способно улучшить сходимость. Однако чрезмерное увеличение нежелательно, так как перестает влиять на сходимость, существенно затягивая при этом время расчета. Рекомендация 3. Отсутствие сходимости может быть связано с ошибками округления при решении системы линейных уравнений, определяющем приращение ΔU (см. п. 3.2.1). На это можно попытаться повлиять, изменяя параметры алгоритма решения линейных уравнений. Такими параметрами являются: PIVREL - минимальная относительная величина элемента строки матрицы, выделяемого в качестве ведущего (по умолчанию 10 3 ); PIVTOL - минимальная абсолютная величина элемента строки матрицы, -13 выделяемого в качестве ведущего (по умолчанию 10 ); TRTOL - показатель, определяющий погрешность усечения (по умолчанию 7.0). Эти параметры задают оператором .OPTIONS. Их изменение может потребоваться, если в схеме соседствуют узлы с проводимостями, различающимися на много порядков. При описании схемы надо по возможности избегать подобной ситуации. Если же сходимость нарушилась по этой причине, в выходном файле может появиться сообщение типа: *ERROR*:
Maximum entry in this column at step ... ( ...) is less than pivtol
Это является сигналом к изменению описания схемы или к изменению соответствующего параметра алгоритма. Рекомендация 4. Если предыдущие рекомендации не помогают, но исходя из схемотехники примерно известны некоторые узловые потенциалы схемы,
76
Виды анализа в PSpice
следует попытаться задать соответствующие начальные условия расчета оператором .NODESET (см. п. 3.2.4). При этом в первую очередь надо попытаться задать условия для тех узлов, в которых напечатанные потенциалы последней попытки расчета наиболее отличаются от ожидаемых. Рекомендация 5. Если при каких-то напряжениях или параметрах схемы расчет по постоянному току осуществляется успешно, а при каких-то нет, то можно испробовать два приема. Во первых, начиная с версий PSpice 5, можно использовать запоминание с помощью оператора .SAVEBIAS состояния схемы в том варианте, который просчитывается нормально, а затем загрузить полученный файл оператором .LOADBIAS в качестве начального значения. Если работа проводится с PSpice 4, можно проделать то же самое вручную: распечатать потенциалы всех узлов в нормально считающемся варианте схемы и занести их в оператор .NODESET для задания начальных условий при расчете нормально не считающегося варианта. Другой путь попробовать воспользоваться оператором .DC, изменяя напряжения или параметры схемы постепенно от хорошо просчитываемого варианта до того, который не просчитывается. При этом, начиная с версий PSpice 5, можно воспользоваться оператором .SAVEBIAS (см. п. 3.2.5) для запоминания состояния схемы при требуемых значениях параметров. Рекомендация 6. Если ничего из рассмотренного выше не помогает, можно попробовать заменить расчет по постоянному току расчетом переходного процесса при включении питания схемы. Для этого имеющиеся в схеме источники постоянного напряжения и тока надо заменить на постепенно нарастающие от нуля до номинала сигналы с достаточно большими фронтами. Настоящие же входные сигналы, если таковые имеются в схеме, должны быть постоянными и равными своим начальным значениям. Затем просчитывается переходной процесс в схеме в течение некоторого отрезка времени T, достаточного для того, чтобы все потенциалы схемы достигли своих установившихся значений. Иначе говоря, время расчета переходного процесса T должно заведомо превышать максимальную постоянную времени в схеме. Недостаточная величина T приведет к ошибкам в определении установившегося режима, который будет отличаться от расчета по постоянному току. Полученное в результате расчета состояние схемы можно запомнить оператором .SAVEBIAS (только начиная с версий PSpice 5) или вручную записать потенциалы узлов и использовать это при последующих расчетах для задания начальных условий с помощью оператора .NODESET. Если одновременно с расчетом по постоянному току требуется провести расчет переходных процессов при подаче каких-то входных сигналов, то расчет установившегося режима и расчет реакции на сигналы можно объединить. При этом, конечно, надо сдвинуть входные сигналы на время T и
3.2. Расчет по постоянному току
77
можно исключить из печати отрезок времени, связанный с установлением потенциалов (см. п. 3.4 и оператор .TRAN в работе [3]). Проблемы со сходимостью могут возникать не только при расчете рабочей точки, но и в процессе выполнения оператора .DC. Если эти проблемы возникают в первой же точке расчета, то применимы все указанные выше рекомендации. Впрочем, прежде всего в этом случае надо попробовать поменять местами пределы изменения аргумента оператора, т.е. попробовать начать расчет зависимости с другого конца. Однако проблемы со сходимостью могут возникать и в середине выполнения DC анализа. В этом случае в выходном файле .OUT печатается сообщение: *ERROR*: Convergence problem in DC sweep и расчет прерывается. В этих случаях можно попробовать применить приведенные выше рекомендации 1-3, но прежде всего надо попробовать поменять местами пределы изменения аргумента и существенно уменьшить шаг по аргументу. Дело в том, что несходимость вычислений в этих случаях обычно связана с резким изменением режима по постоянному току при изменении аргумента. А поскольку при DC анализе в качестве начального приближения в каждой точке берется состояние, просчитанное в предыдущей точке, уменьшение шага по аргументу уменьшает изменения режима от точки к точке и способствует сходимости. Если уменьшение шага слишком затягивает расчет, так как с этим шагом считается вся зависимость, а не только ее критическая с точки зрения сходимости часть, то можно разбить весь диапазон изменения аргумента на поддиапазоны и проводить отдельные расчеты для поддиапазонов с различными шагами. В релаксационных схемах с гистерезисом (типа триггера Шмидта) уменьшение шага может не помочь, так как в них при бесконечно малом изменении входного сигнала режим изменяется скачком. В этих случаях кардинальное решение проблемы сводится к замене DC анализа расчетом переходного процесса при медленном квазистатическом изменении входного сигнала. На вход при этом подается линейно изменяющийся сигнал, скорость изменения которого должна выбираться такой, чтобы на результатах расчета не сказывались реактивности схемы. Если желательно получить гистерезисную характеристику, то после нарастания сигнала следует предусмотреть столь же медленный его спад, чтобы просчитать обе ветви характеристики.
78
Виды анализа в PSpice
3.3. МАЛОСИГНАЛЬНЫЙ АНАЛИЗ К малосигнальным видам анализа в PSpice относятся: ♦ частотный анализ (оператор .AC); ♦ расчет передаточных малосигнальных функций по постоянному току (оператор .TF); ♦ анализ чувствительности по постоянному току (оператор .SENS); ♦ анализ шумов (оператор .NOISE). Малосигнальный анализ проводится на схеме, линеаризованной в рабочей точке, расчет которой рассматривался в п. 3.2. При этом все нелинейные модели элементов заменяются своими дифференциальными проводимостями в рабочей точке. Независимые источники постоянного напряжения (V) и тока (I) влияют на параметры нелинейных элементов в схеме, определяя их режим, но во время частотного анализа источники V считаются короткозамкнутыми, а источники I - разомкнутыми. Сигналы этих источников, определенные для расчета переходных процессов, на схему не действуют. Рассмотрим подробнее отдельные виды малосигнального анализа. 3.3.1. ЧАСТОТНЫЙ АНАЛИЗ Частотный анализ задается оператором .AC, имеющим вид .AC [<шкала>]
3.3. Малосигнальный анализ
79
.AC DEC 10 1MHz 100Mhz задает логарифмическую шкалу изменения частоты с числом точек на декаду, равным десяти. OCT - логарифмическое изменение частоты по октавам. При этом Nт число точек на октаву. Частоты в соседних точках отличаются друг от друга в постоянное число раз, равное 8 1 (NT − 1) . Границы задаваемого диапазона частот Fмин и Fмакс должны удовлетворять соотношению Fмин ≤ Fмакс и, кроме того, Fмин и Fмакс должны быть положительными. Таким образом, диапазон может состоять из всего одной точки, если задать Fмин = Fмакс. Расчет на нулевой частоте невозможен. Если это все-таки требуется, то надо или задать очень низкую частоту (например, доли герца), или воспользоваться другим оператором .TF, рассмотренным в следующем пункте. Проведение частотного анализа не требует подачи на входы схемы какихто синусоидальных сигналов. Единственными сигналами, поступающими на схему, считаются те, которые заданы в источниках V и I спецификацией AC. При этом все рассчитываемые напряжения и токи в схеме являются условными относительными величинами. Так, если в каком-то узле схемы посчитано напряжение 1 кВ при входном сигнале AC равном 1 В, это просто означает, что коэффициент передачи напряжения со входа в данный узел равен 1000. Никакие нелинейные искажения при этом не учитываются. По умолчанию никаких результатов частотного анализа на печать не выдается. Для получения результатов надо использовать операторы .PROBE, .PRINT, .PLOT, рассмотренные в п. 3.8. Если в качестве результатов частотного анализа интересует групповая задержка некоторой переменной (производная фазы по частоте), то надо обеспечить достаточно малый шаг по частоте, чтобы фаза в интересующей точке схемы изменялась плавно от одной частоты к другой. Дело в том, что групповая задержка вычисляется как разность фаз в соседних точках по частоте, деленная на приращение частоты. При большом шаге это может дать недопустимые погрешности. 3.3.2. РАСЧЕТ ПЕРЕДАТОЧНЫХ ФУНКЦИЙ ПО ПОСТОЯННОМУ ТОКУ Расчет малосигнальных передаточных функций по постоянному току осуществляется оператором .TF, имеющим вид: .TF <выходная переменная> <имя входного источника> Передаточные функции вычисляются путем линеаризации схемы в рабочей точке. Рассчитываются коэффициент передачи от входного источника <имя
80
Виды анализа в PSpice
входного источника> к выходной переменной, а также входное и выходное сопротивления схемы относительно узлов подключения входного источника и выходной переменной. Расчеты соответствуют нулевой частоте, т.е. приращениям постоянных напряжений и токов. Результаты расчетов заносятся в выходной файл .OUT. Для этого не требуется наличия операторов .PRINT, .PLOT или .PROBE. В качестве выходной переменной может задаваться напряжение узла, разность напряжений в двух узлах или ток независимого источника напряжения. Поэтому, если интересует ток какого-то другого элемента, то в соответствующую ветвь надо включить источник нулевого напряжения и его ток задавать в качестве выходной переменной. Приведем примеры использования оператора .TF. Пусть рассчитывается схема некоторого усилителя постоянного тока, ко входу которого подключен источник напряжения VIN, а выходным узлом является узел 5. В источнике VIN должна быть задана постоянная составляющая сигнала, если она имеется, необходимо чтобы правильно была рассчитана рабочая точка. В остальном с точки зрения использования оператора .TF описание источника VIN не имеет значения: в нем может присутствовать, а может отсутствовать опция AC, может быть задан любой сигнал для расчета переходного процесса. А может вообще ничего не задаваться, кроме узлов подключения: VIN 1 0 (по умолчанию это означает, что постоянный сигнал равен нулю) и в этом случае этот источник просто обозначает входные узлы схемы и указывает оператору .TF, что входной величиной является напряжение. Задание расчета передаточных функций осуществляется в этом случае оператором .TF V(5) VIN . Результатом расчета может быть следующий фрагмент выходного файла (в него включены комментарии, заключенные в скобки): **** SMALL-SIGNAL CHARACTERISTICS V(5)/VIN = 9.990E+01 INPUT RESISTANCE AT VIN = 2.000E+03 OUTPUT RESISTANCE AT V(5) = 9.990E+02
(малосигнальные характеристики) (коэффициент усиления) (входное сопротивление) (выходное сопротивление)
Конечно, надо иметь ввиду, что если между источником VIN и собственно входом усилителя включено сопротивление генератора, то в качестве входного сопротивления программа печатает суммарную величину сопротивления генератора и действительного входного сопротивления. Точно так же, если параллельно выходу усилителя включено сопротивление нагрузки, то программа печатает в качестве выходного сопротивления параллельное включение сопротивления нагрузки и действительного выходного сопротивления схемы.
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 рассчитать также передаточные характеристики на частоте, отличной от нуля.
82
Виды анализа в PSpice
3.3.3. АНАЛИЗ ЧУВСТВИТЕЛЬНОСТИ ПО ПОСТОЯННОМУ ТОКУ Анализ чувствительности выходных параметров схемы к параметрам компонентов является одним из важнейших этапов проектирования. При прочих равных условиях вариант схемы с меньшей чувствительностью всегда предпочтительнее: параметры такой схемы более стабильны, имеют меньший разброс, меньший температурный и временной дрейф, схема проще в настройке и удобнее в эксплуатации. Анализ чувствительности позволяет решить и ряд других задач: найти узлы схемы, наиболее чувствительные к паразитным емкостям - это дает исходные данные к конструкторскому проектированию топологии схемы, или найти компоненты, наиболее сильно влияющие на выходные параметры - это может дать информацию о необходимых изменениях в схеме для изменения ее выходных параметров в нужном направлении, для повышения ее стабильности или о наиболее целесообразной организации подстройки выходных параметров, если подобная подстройка должна быть реализована в схеме. П
Чувствительность оценивается коэффициентом чувствительности S XIJ выходного параметра схемы ПJ к параметру компонента xi, равным производной dПJ/dxi. Однако, такие коэффициенты чувствительности являются размерными величинами, чувствительными к масштабу параметров xi, и не позволяют непосредственно сравнивать чувствительности выходного параметра к различным xi. Например, если в схеме имеются резисторы R1=100 кОм и R2=1 кОм и получены коэффициенты чувствительности П
П
некоторого выходного параметра ПJ, равные SR1J =1 и SR 2J =10, то, ориентируясь на них, нельзя сказать, что чувствительность к R2 выше, чем чувствительность к R1. Действительно, коэффициент чувствительности показывает в данном случае, на сколько единиц изменится параметр ПJ при изменении сопротивления на 1 кОм. Но если R1 может реально измениться на 1 кОМ (это всего 1% от его номинала), то R2 измениться на 1 кОМ безусловно не может. Если считать, что реально сопротивления могут меняться, например, на 10%, то возможные изменения равны ΔR1=10 кОм, ΔR2=0,1 кОм. В итоге возможные изменения ПJ при вариациях R1 составят П
П
ΔR1⋅ SR1J =10, а при вариациях R2 - ΔR2⋅ SR 2J =1. Таким образом, чувствительность к R1 в десять раз выше, хотя коэффициент чувствительности к R1 в десять раз меньше. Поэтому для сравнения П
чувствительности по разным параметрам используют не коэффициенты S XIJ , а
нормированные
коэффициенты
чувствительности
~Пx J , S I
равные
3.3. Малосигнальный анализ
83
⎛x ⎞ производным dПJ/d ⎜⎝ I x ⎟⎠ , где xI - номинальное значение xi. Связь между I
~Пx J и SПXIJ выражается соотношением: S ~Пx J = xI ⋅ SПXIJ . В рассмотренном S I I ~R1J =100, а S ~R2J =10, что правильно отражает тот факт, что выше примере S чувствительность к 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. Однако дифференцирование исходного уравнения дает другой результат: E dβ( I к ) 2 d(Iк)=-β(Iк)⋅E/R ⋅dR+ ⋅ , откуда R d( I ) к 2 d( I к ) − β ( I к ) ⋅ E R = . E dβ ( I к ) dR 1− ⋅ 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 NAME {Имя параметра}
ELEMENT VALUE {Значение параметра}
ELEMENT SENSITIVITY (VOLTS/UNIT) {Чувствительность
NORMALIZED SENSITIVITY (VOLTS/PERCENT) {Нормализованная
3.3. Малосигнальный анализ к параметру (вольт/единица)} r4 v1 v2 ............. q1 RB RC .............
85
чувствительность (вольт/процент)}
1.000E+03 -1.117E-12 -1.117E-11 2.000E+00 1.000E+00 2.000E-02 0.000E+00 1.130E-09 0.000E+00 ............... ............... ............... {чувствительность к параметрам транзистора q1} 1.000E+01 8.592E-24 8.592E-25 1.000E+00 1.263E-21 1.263E-2 ............... ............... ...............
DC SENSITIVITIES OF OUTPUT I(v2)
{Чувствительность по постоянному току переменной I(v2)} ELEMENT NAME {Имя параметра}
ELEMENT VALUE {Значение параметра}
r4 v1 v2 q1 RB RC .............
1.000E+03 -1.262E-24 -1.262E-23 2.000E+00 -1.262E-23 2.260E-14 0.000E+00 -1.000E-03 0.000E+00 ............... ............... ............... {чувствительность к параметрам транзистора q1} 1.000E+01 8.592E-24 8.592E-25 1.000E+00 1.263E-21 1.263E-2 ............... ............... ...............
В
и
.............
третьем
ELEMENT SENSITIVITY (AMPERS/UNIT) {Чувствительность к параметру (ампер/единица)}
четвертом П
чувствительности S XIJ и
~Пx J S I
столбцах
таблиц
NORMALIZED SENSITIVITY (AMPERS/PERCENT) {Нормализованная чувствительность (ампер/процент)}
даются
коэффициенты
(последние в данном случае выражены в П
единицах на процент, т.е. равны xI ⋅ S XIJ ⋅100). Рассмотренный оператор - только одна из возможностей исследовать чувствительность в PSpice. Другая возможность будет рассмотрена в п. 3.6.3 при обсуждении использования оператора .WCASE.
86
Виды анализа в PSpice
3.3.4. АНАЛИЗ ШУМОВ Задание на анализ шумов осуществляется оператором .NOISE, имеющим форму: .NOISE V(<узел>[, <узел>]) <имя> <шаг печати> Анализ шумов проводится совместно с частотным анализом и требует наличия оператора .AC, в котором определяется частотный диапазон анализа. Спецификация V(<узел>[,<узел>]) определяет выход схемы. Спецификация <имя> - это имя независимого источника тока или напряжения. Сам по себе этот источник не является источником шума. Его упоминание в операторе .NOISE нужно только для того, чтобы указать, к каким точкам схемы и в какой форме программа должна пересчитывать эквивалентный шум на входе. Источниками шума считаются резисторы, полупроводниковые приборы и ключи. Резисторы являются генераторами теплового шума со спектральной 2 плотностью на 1 Гц, равной IR =4⋅k⋅T/R, где k - постоянная Больцмана, -23 равная 1,38⋅10 Дж/град; T - абсолютная температура; R - сопротивление. Аналогичными источниками шума являются все сопротивления, входящие в эквивалентные схемы полупроводниковых приборов и ключей. Кроме того, источниками шума в полупроводниковых приборах являются токи p-n переходов. В них учитываются дробовой и фликкер-шум со спектральной 2 AF плотностью, равной I =2q⋅I+KF⋅I /f, где I - ток перехода, f - частота, q заряд электрона, KF и AF - параметры модели. Для каждой частоты, заданной в операторе .AC, определяется вклад каждого источника и спектральная плотность его шума пересчитывается к выходному напряжению схемы. Bcе источники шума считаются статистически независимыми. Поэтому спектральная плотность напряжения 1/2 шума на выходе (обозначается как ONOISE, размерность - В/Гц ) определяется как корень квадратный из суммы квадратов спектральных плотностей отдельных источников. Одновременно рассчитывается коэффициент передачи схемы со входа на выход и с его помощью выходной шум пересчитывается ко входу (спектральная плотность эквивалентного шума на входе обозначается как INOISE). Если источник <имя> в операторе 1/2 .NOISE является источником напряжения, то размерность INOISE В/Гц
3.3. Малосигнальный анализ
87
(т.е. это напряжение шума). Если же источник <имя> в операторе .NOISE 1/2 является источником тока, то размерность INOISE А/Гц (т.е. это ток шума). Суммарные результаты анализа шумов могут быть выведены на печать операторами .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) RB RC RE IB IC FN TOTAL
q1 q2 0.000E+00 0.000E+00 0.000E+00 4.254E-09 1.154E-06 0.000E+00 1.158E-06
0.000E+00 0.000E+00 0.000E+00 4.254E-09 1.154E-06 0.000E+00 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/Гц)}
{Общий шум} {Источники шума в резисторах (В2/Гц)}
**** TOTAL OUTPUT NOISE VOLTAGE = 1.173E-05 SQ V/HZ {Выходной шум (В2/Гц)
88
Виды анализа в PSpice = 3.425E-03 V/RT HZ TRANSFER FUNCTION VALUE: V(5)/v1
= 1.992E+05
(В/Гц1/2)} {Передаточная функция V(5)/v1}
EQUIVALENT INPUT NOISE AT v1 = 1.720E-08 V/RT HZ {Эквивалентный входной шум (В/Гц1/2)}
Для вычисления дифференциального коэффициента шума Kш некоторой схемы, рассматриваемой как четырехполюсник, работающий от источника сигнала с внутренним сопротивлением RГ, можно воспользоваться соотношениями [1]: INOISE2 INOISE2 при источнике напряжения на входе, = 4kT0 RГ 1, 656 ⋅ 10−20 ⋅ RГ INOISE2 INOISE2 при источнике тока на входе. Kш (f ) ≅ = 4kT0 RГ 1, 656 ⋅ 10−20 ⋅ RГ Kш (f ) ≅
Рис. 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 нс и задан отказ от расчета начальной точки. Остановимся подробнее на автоматическом выборе шага и на связанных с этим вопросах точности и устойчивости вычислений. При расчетах переходных процессов чем меньше шаг по времени, тем меньше погрешность расчета. Поэтому при выборе шага программа ориентируется на заданные допустимые погрешности на шаге. Сделав очередной шаг, программа оценивает погрешность на данном шаге и сравнивает ее с допустимой. Если
3.4. Расчет переходных процессов
91
погрешность на шаге оказалась больше допустимой, то этот шаг не засчитывается, осуществляется возврат к предыдущей временной точке и делается попытка сделать шаг меньшей величины. Таким образом шаг в необходимых случаях уменьшается. Если же погрешность на шаге оказалась меньше допустимой, то данный шаг засчитывается, а следующий шаг по времени будет выбран больше предыдущего. Это позволяет ускорять расчет переходных процессов на тех участках, где погрешность на шаге становится малой. Описанный алгоритм позволяет поддерживать примерно постоянную точность на всех участках переходного процесса. А поскольку погрешность на шаге зависит не только от его величины, но и от скорости изменения напряжений в схеме (чем больше скорость и нелинейность изменения напряжений, тем выше погрешность), то получается, что шаг уменьшается на участках быстрого изменения напряжений (на фронтах импульсов) и нарастает на тех участках, на которых в схеме протекают медленные процессы. Допустимые погрешности на шаге расчета переходного процесса задаются опциями, три из которых те же, что и при расчете по постоянныму току (см. п. 3.2.1): RELTOL - относительная погрешность по току и напряжению (по умолчанию 0.001); VNTOL - абсолютная погрешность по напряжению (в вольтах, по умолчанию 1мкВ); ABSTOL - абсолютная погрешность по току (в амперах, по умолчанию 10-12А); CHGTOL - абсолютная погрешность зарядов (в кулонах, по умолчанию 10-14K). Если значения погрешностей, принятые по умолчанию, пользователя не устраивают, он может задать необходимые значения с помощью оператора .OPTIONS (см. п. 3.9 и работу [3]). Например, .OPTIONS RELTOL=1E-4, VNTOL=10UV . Соображения по выбору допустимых погрешностей при расчете переходных процессов примерно те же, что были подробно изложены в пп. 3.2.1 и 3.2.6 при рассмотрении расчета по постоянному току. При этом надо учитывать, что опции RELTOL, VNTOL и CHGTOL напрямую влияют на выбор шага по времени. Поэтому уменьшение этих допустимых погрешностей приводит к уменьшению шага и тем самым затягивет расчет переходных процессов.
92
Виды анализа в PSpice
Задавая допустимые погрешности, необходимо учитывать, что это погрешности на шаге, а полная интегральная погрешность расчета переходного процесса, вообще говоря, никогда неизвестна и во всяком случае может накапливаться и намного превышать погрешность на шаге. Единственный способ в ответственных случаях оценить реальную погрешность расчета - провести повторный расчет с уменьшенными (например, на порядок) допустимыми погрешностями на шаге и сравнить результаты. Если результаты заметно изменились, следует опять повторить расчет, еще уменьшив допустимые погрешности, и так до тех пор, пока результаты не будут повторяться с требуемой точностью. При расчете переходных процессов могут возникать проблемы со сходимостью вычислений. Это может быть связано с чрезмерным уменьшением шага в случае, если погрешность на шаге все время оказывается больше заданной. Несходимость вычислений может также возникать при невозможности решить на шаге систему нелинейных уравнений, определяющую значения потенциалов в очередной временной точке. При возникновении подобных проблем на экране появляется сообщение: Unable to finish Transient Analysis, расчет прерывается а в выходном файле .OUT печатается сообщение вида *ERROR*: Convergence problem in Transient Analysis at TIME = ...... DELTA = ...... ITERATION = ...... Last node voltages tried were: (*ОШИБКА* Проблема сходимости в расчете переходного процесса при ВРЕМЯ = ... ШАГ = ... ИТЕРАЦИИ = ... Последние узловые потенциалы, с которыми делалась попытка считать:
после которого следует таблица с последними узловыми потенциалами. Рассмотрим меры, которые можно пытаться принять в подобных случаях. Одна из возможных причин несходимости - подача на вход схемы сигнала со слишком крутыми фронтами. Поэтому никогда не следует подавать импульсы с нулевыми фронтами, благо таких в реальных схемах не бывает. Если момент времени, в который получилась несходимость, совпадает с фронтом входного сигнала, то прежде всего следует увеличить длительность этого фронта и попробовать повторить расчет. Другой причиной несходимости могут быть неудачные параметры моделей элементов, приводящие к слишком
3.4. Расчет переходных процессов
93
резким скачкам потенциалов в схеме. В частности, нередко отсутствие сходимости связано с нулевыми емкостями p-n переходов в моделях полупроводниковых приборов (по умолчанию эти емкости равны нулю). Поэтому следующей мерой может быть проверка параметров моделей и увеличение паразитных емкостей до реальных значений. Наконец, причиной несходимости могут быть просто какие-то ошибки в описании схемы. Найти эти ошибки может помочь анализ значений узловых потенциалов, при которых прервались вычисления. Другая группа мер связана с изменением параметров алгоритмов, в частности допустимых погрешностей (этот вопрос подробно рассмотрен в п. 3.2.6). Кроме того, на сходимость влияет опция ITL4 - максимальное число итераций на шаге при расчете переходных процессов (по умолчанию - 10). Повышение этой величины (например, до 40) способствует улучшению сходимости, но может заметно замедлить расчет. В некоторых случаях расчет не завершается потому, что достигнуто максимальное суммарное число итераций при расчете переходных процессов, задаваемое опцией ITL5 (по умолчанию 5000). В этих случаях в выходном файле .OUT появляется сообщение вида *ERROR*: Transient Analysis iterations exceed limit of 5000 at time = ... This limit may be overridden by using the ITL5 on the .OPTION statement (*ОШИБКА* Превышен предел итераций для переходных процессов 5000 Этот предел может быть увеличен опцией ITL5 оператора .OPTION)
При получении такого сообщения следует увеличить значение ITL5. Оно может быть задано некоторым числом, не превышающим 2⋅109, или быть задано равным нулю, что означает снятие ограничений на общее число итераций. При расчете переходных процессов, начиная с PSpice 5, можно использовать оператор .SAVEBIAS, который в данном случае имеет формат .SAVEBIAS “<имя файла>” TRAN + [TIME=<значение> [REPEAT]] Например: .SAVEBIAS “TRAN” TRAN .SAVEBIAS “TRAN” TRAN TIME=100n
94
Виды анализа в PSpice
.SAVEBIAS “TRAN” TRAN TIME=100n REPEAT Оператор задает запоминание узловых потенциалов в файле с именем <имя файла>. В дальнейшем этот файл может быть прочитан оператором .LOADBIAS. Подробное описание этих операторов приведено в п. 3.2.4 и в работе [3]. Если в операторе не задано TIME=<значение>, то будет запомнена начальная точка, соответствующая нулевому моменту времени. Если значение TIME задано и не задан параметр REPEAT, то будет запомнено состояние на первом временном шаге, на котором время равно или больше заданного значения. Если задан параметр REPEAT, то значение TIME приобретает смысл интервала времени, через который (с точностью до временного шага) постоянно производится запоминание состояния схемы. Запомненное состояние можно использовать для возобновления расчета с запомненной точки. Это позволяет обезопасить длительный расчет от машинных сбоев, перерывов в питании компьютера и т.п. Можно также проводить длительный расчет в несколько сеансов работы с компьютером. Однако надо иметь ввиду, что это возможно далеко не для всех схем, а только для таких, состояние которых однозначно определяется узловыми потенциалами, запоминаемыми оператором .SAVEBIAS. В частности, рестарт расчета, начиная с запомненной точки, невозможен (точнее может дать неверные результаты) в схемах, содержащих индуктивности, длинные линии, зависимые источники с описанием частотных характеристик, магнитные сердечники, модели полупроводниковых приборов с внутренними узлами (такие узлы получаются, если омические сопротивления областей не равны нулю) и некоторые другие. А в схемах, не содержащих подобных элементов, при рестарте с запомненной точки надо ввести оператор .LOADBIAS, заменить в файле с запомненной точкой оператор .NODESET на оператор .IC, указать в операторе .TRAN опцию UIC. Кроме того, надо иметь ввиду, что отсчет времени в новом расчете пойдет с нуля. Поэтому надо будет мысленно сдвигать все переходные процессы на время, соответствующее запомненной точке. И надо не забыть во входном файле убрать начальную стадию входных сигналов, предшествующую этому времени. 3.5. АНАЛИЗ ФУРЬЕ Анализ Фурье заключается в разложении в ряд Фурье периодической функции f(t) с периодом T:
3.5. Анализ Фурье
95
a0 ∞ ⎡ ⎛ 2π ⎞ ⎤ ⎛ 2π ⎞ ⋅ t⎟ , f(t) = + ∑ ⎢a к ⋅ cos⎜ к ⋅ ⋅ t⎟ + b к ⋅ sin⎜ к ⋅ ⎝ T ⎠ ⎥⎦ ⎝ T ⎠ 2 к =1 ⎣ 2 aк = T
t +T 0
t +T 0
0
t0
2 ⎛ 2π ⎞ ∫ f(t) ⋅ cos⎜⎝ к ⋅ T ⋅ t⎟⎠ ⋅ dt; b к = T t
⎛
∫ f(t) ⋅ sin⎜⎝ к ⋅
2π ⎞ ⋅ t⎟ ⋅ dt, T ⎠
где aк и bк - коэффициенты Фурье. Если на отрезке [0,τ] раскладываемая в ряд функция - непериодическая функция, то она заменяется периодической с периодом T=τ. При этом, конечно, вне отрезка [0,τ] функция искажается. Основное применение разложения в ряд Фурье при проектировании электронной аппаратуры - анализ нелинейных искажений. При этом на вход схемы подается синусоидальный сигнал, частота которого соответствует области средних частот. Просчитывается переходный процесс на протяжении нескольких периодов, чтобы процессы в схеме успели установиться. А затем проводится анализ Фурье последнего из рассчитанных периодов выходного сигнала. В результате определяются амплитуды гармоник, возникших за счет нелинейных искажений, и коэффициент гармоник, равный ∞
КГ =
∑ Ai2
i =2
A1
,
где Ai - амплитуда i-й гармоники.
Коэффициент гармоник характеризует степень нелинейных искажений. В идеально линейной схеме амплитуды всех гармоник, кроме первой, равны нулю и соответственно равен нулю коэффициент гармоник. Анализ Фурье задается оператором .FOUR, имеющим формат: .FOUR <частота> [<число гармоник>] <список выходных переменных>.
Например, .FOUR 10KHz V(5) V(6,7) I(VSENS3) .FOUR 10KHz 20 V(5) V(6,7) I(VSENS3) В операторе .FOUR <частота> - такая частота, которая будет принята за частоту первой гармоники. При анализе нелинейных искажений она должна быть равна частоте синусоидального сигнала, подаваемого на вход схемы. В <список выходных переменных> могут включаться переменные в обычной форме, рассмотренной в п. 3.1. Необязательный параметр <число гармоник>
96
Виды анализа в PSpice
может задаваться только начиная с PSpice 5. В PSpice 4 число анализируемых гармоник фиксировано - 9. В PSpice 5 по умолчанию также анализируется 9 гармоник, но это число может быть изменено (от 1 до 100). Применение оператора .FOUR требует наличия в задании оператора .TRAN. Результаты расчета переходных процессов для величин, включенных в <список выходных переменных>, подвергаются разложению в ряд Фурье. Разложение ведется не на всей длительности переходного процесса, а только на последнем отрезке длиной 1/F1, т.е. на последнем периоде. Поэтому длительность переходного процесса должна быть не менее 1/F1. Анализ Фурье не требует использования операторов .PROBE, .PRINT, .PLOT для просмотра результатов. Результаты автоматически включаются в выходной файл с расширением .OUT. В нем указываются значения постоянной составляющей и высших гармоник величин, включенных в <список выходных переменных>. Рассчитываются также коэффициенты гармоник, представляющие собой корень из суммы квадратов относительных значений высших гармоник. Пример выдачи результатов анализа Фурье приведен ниже (в него включены комментарии на русском языке, заключенные в фигурные скобки): **** FOURIER ANALYSIS {АНАЛИЗ ФУРЬЕ
TEMPERATURE = 27.000 DEG C ТЕМПЕРАТУРА}
************************************************************** FOURIER COMPONENTS OF TRANSIENT RESPONSE V(5) {КОМПОНЕНТЫ ФУРЬЕ ПЕРЕХОДНОГО ПРОЦЕССА V(5)} DC COMPONENT = 6.400570E-01 {ПОСТОЯННАЯ СОСТАВЛЮЩАЯ} HARMONI FREQUENCY FOURIER NORMALIZE C D NO (HZ) COMPONENT COMPONENT {номера {частота (Гц)} {компоненгармоник} ты Фурье} 1 2 3 4 5
1.000E+03 2.000E+03 3.000E+03 4.000E+03 5.000E+03
1.476E+01 7.433E-01 1.355E+00 6.502E-02 5.448E-01
{нормализованные компоненты} 1.000E+00 5.037E-02 9.184E-02 4.406E-03 3.691E-02
PHASE
NORMALIZED
(DEG)
PHASE (DEG)
{фаза (градусы)} -7.388E-01 1.071E+02 -1.367E+00 6.596E+01 8.055E+01
{нормализованная фаза (градусы)} 0.000E+00 1.078E+02 6.284E-01 6.670E+01 8.129E+01
3.5. Анализ Фурье 6 7 8 9
6.000E+03 7.000E+03 8.000E+03 9.000E+03
1.043E-0 3.651E-01 6.892E-02 1.268E-01
7.066E-03 2.474E-02 4.670E-03 8.595E-03
1.079E+01 7.558E+01 5.241E+01 -8.695E+01
97 1.153E+01 7.632E+01 5.315E+01 -8.621E+01
TOTAL HARMONIC DISTORTION = 1.145065E+01 PERCENT {КОЭФФИЦИЕНТ ГАРМОНИК ПРОЦЕНТЫ}
Нормализованные значения амплитуды и фазы в 4-м и 6-м столбцах получены нормировкой на соответствующие значения первой гармоники. Относительно большие значения нечетных гармоник в данном примере свидетельствуют о несимметрии характеристики. Следует отметить, что точность вычислений тем ниже, чем выше номер гармоники. Поэтому амплитуды гармоник высокого порядка обычно недостоверны. Вообще для получения удовлетворительной точности расчета высоких гармоник желательно рассчитывать переходной процесс с повышенной точностью. В противном случае конечная величина шага при расчете переходного процесса может внести существенную погрешность в результаты разложения в ряд Фурье. Кроме того, надо обеспечить в операторе .TRAN шаг запоминания результатов, достаточно малый по сравнению с периодом первой гармоники. Иначе, также возможны грубые ошибки. Например, даже на чистой синусоиде при шаге запоминания порядка 0.1 от периода можно ошибочно получить коэффициент гармоник порядка нескольких процентов. При шаге запоминания порядка 0.1 от периода эта ошибка сокращается до сотых долей процента. Анализ Фурье невозможно проводить, если предварительно не просчитан переходный процесс. Поэтому, если переходный процесс не просчитался изза проблем со сходимостью или в силу других причин, то в выходном файле появляется сообщение: Error: can't find start point in FourAn! FOUR aborted. (Ошибка: невозможно найти начальные данные для анализа Фурье! Анализ прерван.) 3.6. РАСЧЕТ РАЗБРОСА ПАРАМЕТРОВ 3.6.1. ОБЩИЕ СВЕДЕНИЯ О РАЗБРОСЕ ПАРАМЕТРОВ И МЕТОДАХ ЕГО РАСЧЕТА
Чтобы Эти дваобойти понятия неизбежную - допуск и закон недостоверность распределения, исходных являются данных ключевыми. о законах В зависимости распределения, от иногда того, какое советуют из этих использовать понятий используется, аппроксимацию методы равномерным расчета законом, разброса как параметров наиболееВиды электронных “неблагоприятным”, схем можно обеспечивающим разделить намаксимальный две группы: 98 анализа в PSpice детерминированные тоды, оквадратичном перирующие понятием ска, и разброс при данном месреднем отклонении доп и упоэтому Закон распределения - наиболее полнаяпараметров характеристика случайных статистические методы, использующие закона создающим запасили привероятностные расчете. Для многих этапонятие рекомендация всегда имеютпараметры разброс, вызванный величин. Выходные Однако использовать схемыегоПвj если расчетах достаточно сложно. Поэтому распределения. Задачей метода обычно является такое оправдана, но параметры не всегда.детерминированного Например, измерить дискретных часто применяется более простая характеристика область практически проектирование схемы, при котором всеxоказывается, ее параметры вместе со резисторов или конденса-торов, то часто они подчиняются Расчет- что разброса выходных разбросом параметров компонентов i .выходные возможных называемая в вид приложениях полем допусков тприведен своими полями укладывались втехнических требования ехнического двумодальному закону распределения, которого на задания. рис. 3.5. параметров - значений, одна из важнейших задач при проектировании электронных допусков (рис. . статистических й)точки Основной задат3че методов является построение законов Такой закон с.4 зрения отразброса параметра еще “хуже”, чем устройств. Это расчет позволяет ветить на вопросы: распределения выходных параметров Задача проектирования при равномерный. вызван он тем,спроектированное что схемы. из компонентов заданной точности 1) насколько А серийно пригодно устройство; этом может ставиться по-ротобраны азному. Нап имер, спроектировать схему и (например, 10-процентных) на рзаводе компоненты 2) какой ожидается процент выхода годных схем;изготовителе повышенной точности (например, 5-процентные). выпуске (т.е. по 3) какие назначить нормы прибра серийном ка ε был выше допустимой выбрать нормы отбраковки так, отбраковки чтобы процент Ещекаким большие при определении закона значениям осуществлять отбраковку); ов возникают εдоп , или, чсложности топараметр то же самое, чтобы выход годных схем p=1-ε был не величины распределения системы вслучайных совокупности 4) нужна ли подстройка схеме, и есливеличин, нужна, тонапример, какой глубины? ниже допустимого. параметров транзистора. Отразить неизбежные связи Расчет разброса параметров необходим такжестохастические при сравнении различных Рассмотрим теперь, как и откуда получать исходные данные длямежду этих этими параметрами в PSpice можно только пытаясь обеспечить рассчитанные схемотехнических решений: при прочих равных условиях лучшим является расчетов. Рис. 3.3. Распределение случайных врНо, еличи xjразброса и xj : из коэффициенты корреляции. будет ,эксперимента пкак тотДетерминированные в котором разброс меньше. По результатам асчетнво-первых, аследующие араметров методы расчета используют числовые а) положительная корреляция; б) отрицательная показано не позволяет это сделать, или а во-вторых, обычно мниже, ожно PSpice обработать сдвинуть ожидания x i схему: - матеполностью матическоематематические ожидание среднее характеристики разброса: строго говоря, коэффициенты корреляции характеризуют только выходных параметров, уменьшить разброс и тем самым повысить начальную значение параметра xi , Δxi - допуск на параметр. Иногда для характеристики многомерный нормальный к другим законам схемную надежность. системы случайных парамзакон етров распределения, используется атакже коэффициент применимы с большими оговорками. Параметры компонентов, как и любые случайные величины, корреляции rxix j . Понятие допуска на параметр является очевидным и Рассмотрим теперь особенности разброса параметров При этомкомпонентов параметры, характеризуются своими законами распределения. однозначным только при соблюдении следующего условия: ри интегральных ксхем (ИС). типу Эти особенности что пвсе относящиеся одному компонента проявляются (например, ввсетом, параметры производстве или на систему входном контроле при ,сборке ппарастуры все параметры всех компонентов ИС стохастически связаны друг другом, транзистора), образуют случайных величин котораяахарактеризуется ы все всем компонент проходят двухстороннюю поскольку компоненты рамкахпараметрам, законом распределения данной сиизготавливаются стемы. отбраковку Параметры, впо входящие в сединого истему, влияющим на характеристики схемы, использующей эти компоненты, технологического цикла.друг В результате, например, все резисторы в схеме стохастически связаны с другом. Простейшей характеристикой такой причем отбраковка проводится в тех же условиях (режимы работы, коррелированы друг хотя каждый Коэффициент резистор можеткорреляции иметь большой rx x стохастической связис другом. являетсяИ корреляция. i j и температура т.п.), для в которых компоненты будут работать в схеме. разброс, этот разброс всех резисторов согласованный: если, например, двух случайных величин xi и xj лежит в пределах -1≤rxixне ≤1.резисторы Для независимых Естественно, это условие практически выполняется. Для один резисторчто оказался больше номинала, то иникогда остальные в схеме j простых компонентов типаПоложительные дискретных резисторов будут больше своих номиналов. Поэтому, несмотря на большой разброс всех rx x =0. rxиx конденсаторов случайных величин значения соответствуют i j i j двухсторонняя отбраковка проводится на выпускающем ихимеет заводе,небольшой но в силу резисторов, отношение двух любых резисторов в схеме положительной корреляции: это значит, что если одна из случайных величин временного дрейфа (от момента изготовления использования) разброс. И схема должна строиться так, чтобыдоеемомента характеристики зависелии в принимает относительно большое значение, то иаются”. другая Для в среднем окажется силу температурного дрейфа допуски “размы более сложных основном от отношения сопротивлений, а не вот их величины. Аналогично большой. Если измерить параметры в партии компонентов и нанести на компонентов, транзисторов, дело обстоит еще хуже. Понесмотря многим коррелированынапример друг с другом параметры транзисторов в ИС, т.е., график точки, соответствующие каждому компоненту, то при положительной важным параметрам (например, по параметрам инверсного на большой разброс параметров, транзисторы одного типа в ИС включения) достаточно получится корреляции картина, подобная представленной на рис. 3.3,а. При о у я т отбраковка вообще не проводится, по другим с ществл е ся только идентичны. Более того, в ИС коррелированы друг с другом и параметры rпо и соотношение т.е. отрицательной корреляции (рис 3.3,б)например, xix j <0 односторонняя отбраковка (например, значениям емкостейобратное, обратных совершенно различных компонентов, транзисторов и ирезисторов. токов). И,изконечно, условия отбраковки (режим и температура) всегда есликорреляцию одна случайных величин принимает большое значение, Эту необходимо учитывать приотносительно проектировании схемы, так как Рис. 3.4. Поле допусков н отличаются от тех, в которых аходятся компоненты в реальной схеме. Если то в среднем уменьшается. онадругая может приводить как к уменьшению так и Рис. к увеличению разброса 3.5. Двумодальное же проектируется интегральная схема, то в ней никакая отбраковка выходных параметров. Приведем классический пример. Пусть резистор R, распределение компонентов не производится. задающий режим транзистора, формируется одновременно с формированием Все это слоя делает понятие допуска неопределенным. Реально значения базового транзистора. Тогдаочень величина R и величина коэффициента допусков, если нетока говорить о простых типа дискретных передачи базового транзистора β будут компонентах иметь сильную положительную резисторов и если конденсаторо , можно получить олько у пнапример, роизводитеуже лей корреляцию: базовый вслой в данной ИС токазался, компонентов имеютувеличатся. необходимые статистические данные, но обычного, то (они R и обычно β синхронно Подобную корреляцию можно крайне неохотно ими с потребителями) или из результатов использовать дляделятся стабилизации усиления транзистора, работающегоизмерения на таком параметров в достаточно представительной партии компонентов. участке своих характеристик, где β растет с ростом тока. Если схема Простейшим, не лучшим, способом определения допуска построена так, чтоно с ростом R режимный ток уменьшается, то это приведетпок
3.6 Расчет разброса параметров
99
3.6.2. ОПИСАНИЕ РАЗБРОСА ПАРАМЕТРОВ КОМПОНЕНТОВ В PSPICE
Для описания характеристик разброса параметров моделей компонентов к описанию каждого параметра в операторе .MODEL может быть добавлена спецификация допуска в формате [DEV<описание допуска>] [LOT<описание допуска>] , где <описание допуска> имеет формат [/<№ генератора>][/<имя распределения>] <значение>[%] . Спецификация LOT определяет синхронный разброс параметров компонентов, который в интегральных схемах связан с непостоянством технологии во времени (см. п. 3.6.1). Все элементы, ссылающиеся на данную модель, имеют одновременно одну и ту же составляющую отклонения параметров, описанную в LOT. Спецификация DEV определяет независимый разброс параметров элементов. Смысл величины, задаваемой как <значение> зависит от того, какой закон распределения принят для данной величины. Если это - нормальный закон распределения, то задается среднее квадратичное отклонение. В остальных случаях (для равномерного или табличного законов) задается допуск. Величина <значение> задается или в единицах той же размерности, что и сам параметр, или в процентах - тогда после <значение> должен следовать символ "%". В тех случаях, когда значения спецификаций LOT и DEV заданы в процентах, подразумеваются проценты не от номинала, а от величины, обусловленной другой спецификацией. Например, при равномерном законе распределения максимальное значение параметра больше его номинального значения в (1+LOT/100)⋅(1+DEV/100) раз. Поэтому полный допуск Δ равен не сумме LOT+DEV, а определяется соотношением Δ=LOT+DEV+LOT⋅DEV/100. Если известен полный допуск Δ и независимый разброс DEV, то величина LOT может быть определена из соотношения LOT=(Δ-DEV)/(1+DEV/100). Комбинация спецификаций LOT и DEV позволяет описать положительную корреляцию параметров компонентов, описываемых данной моделью. Если вид законов распределения LOT и DEV одинаков, то коэффициент корреляции rx1x 2 некоторого параметра модели x в двух разных компонентах, описываемых данной моделью, равен
100
Виды анализа в PSpice
rx x
i j
2 LOT) ( = (LOT) 2 + (DEV) 2
(в данной формуле под LOT и DEV понимаются их значения). Необязательные элементы описания допусков <№ генератора> и <имя распределения> в спецификациях LOT и DEV будут рассмотрены позднее. А пока приведем примеры задания значений разброса. Пусть в схеме имеются два резистора R1 и R2, описанные в информации о схеме операторами R1 4 5 MR1 5K R2 7 8 MR1 1K т.е. рассчитываемые по одной и той же модели MR1 (если требуется учитывать разброс параметров резисторов, то обязательна ссылка на модель, в которой и описывается разброс). Рассмотрим различные варианты описания этой модели (знаки равенства перед описаниями допусков необязательны): 1) .MODEL MR1 RES(R=1 LOT=10%) 2) .MODEL MR1 RES(R=1 DEV 10%) 3) .MODEL MR1 RES(R=1 LOT=20% DEV=2%) 4) .MODEL MR1 RES(R=1 LOT=0.1K DEV=10)
3.6 Расчет разброса параметров
101
Во всех примерах сомножитель R=1, так что его разброс совпадает с относительным разбросом сопротивлений. В первом примере задана только спецификация LOT. Следовательно, сопротивления R1 и R2 имеют коэффициент корреляции, равный 1 и их разброс полностью согласованный. Если, например, R1 отклонится от номинала до 5,5 кОм, то R2 окажется равным 1,1 кОм. Такая ситуация может быть в идеализированной ИС. Во втором примере задана только спецификация DEV и сопротивления являются независимыми случайными величинами. Это характерно для дискретных резисторов. В третьем примере заданы обе спецификации. Следовательно, сопротивления коррелированы друг с другом с коэффициентом корреляции, равным, согласно приведенному выше соотношению, примерно 0,91. Это характерно для реальных ИС. В четвертом примере и LOT, и DEV заданы не в процентах, а в абсолютных величинах. Подобное задание использовать для сопротивлений разных номиналов, как в рассматриваемом примере, обычно невозможно, так как это означает одинаковый абсолютный разброс для сопротивлений разных номиналов. Теперь рассмотрим описание законов распределения. Можно задать равномерный закон распределения - его имя UNIFORM, или нормальный закон распределения Гаусса - его имя GAUSS, или закон, описанный пользователем в виде таблицы - его имя произвольное и задается самим пользователем. При задании нормального закона распределения надо соблюдать определенную осторожность. В нормальном законе вероятность конечна при любых значениях аргумента. В частности, конечна она и при отрицательных аргументах. Однако в действительности параметры компонентов практически никогда не могут становиться отрицательными. Возникновение отрицательных значений при статистическом расчете приведет к бессмысленным результатам и может вызвать проблемы со сходимостью. Поэтому задавать нормальный закон можно только при относительно небольших значениях среднего квадратичного отклонения - не более 10÷20%. По умолчанию все законы распределения равномерные. Задавать в качестве умолчания другие законы можно опцией DISTRIBUTION в операторе .OPTIONS. Например, .OPTIONS DISTRIBUTION=GAUSS .OPTIONS DISTRIBUTION=D1 В первом примере в качестве закона по умолчанию задается нормальный закон распределения. Во втором - закон, описанный пользователем и названный D1. В последнем случае во входном файле должен быть оператор .DISTRIBUTION вида
102
Виды анализа в PSpice
.DISTRIBUTION <имя> (<<отклонение> + <относительная вероятность>>) …
Задаваемый этим оператором закон распределения управляет вырабатываемыми в PSpice случайными числами, лежащими в диапазоне -1 ÷ 1 и используемыми при задании случайных значений параметров элементов в процессе статистического расчета. Описание закона в операторе .DISTRIBUTION состоит из пар значений <отклонение> и <относительная вероятность>. Может быть указано до 100 таких пар. Величины <отклонение> лежат в пределах -1 ÷ 1, причем каждое следующее значение величины <отклонение> должно быть не меньше предыдущего (но может быть равно ему). Величины <относительная вероятность> представляют собой относительные значения вероятностей и должны быть положительными или равными нулю. Между заданными точками таблицы осуществляется линейная интерполяция. Примеры операторов: .DISTRIBUTION bi_modal (-1,1) (-.5,1) (-0.5,0.5) (.5,0.5) (.5,1) + (.5,1) .DISTRIBUTION D1 (-1,0) (0,1) (1,0) . Первый оператор описывает двумодальный закон распределения, представленный на рис. 3.6,а. Такого вида закон, как указывалось в п. 3.6.1, свойственен некоторым дискретным резисторам и конденсаторам. Второй оператор описывает треугольный закон, представленный на рис. 3.6,б. В одном задании может быть несколько операторов .DISTRIBUTION, определяющих разные законы распределения с разными имена-ми. Одно из этих имен может задаваться опцией DISTRIBUTION в качестве Рис. 3.6. Законы распределения: закона по умолчанию. а) бимодальный; б) треугольный Помимо закона распреде-ления, задаваемого по умолчанию, можно устанавливать законы распределения индивидуально для отдельных параметров. Это делается элементами <имя распределения> в спецификациях LOT и DEV. Приведем соответствующие примеры: 1) .MODEL MR1 RES(R=1 LOT=10%) 2) .MODEL MR1 RES(R=1 LOT/GAUSS 10%) 3) .MODEL MR1 RES(R=1 DEV/UNIFORM 5% LOT/D1 10%)
В первом примере используется закон по умолчанию (если задан оператор .OPTIONS с опцией DISTRIBUTION, закон,параметров заданный этой опцией; если 3.6 Расчетто разброса 103 закон не задавался, то равномерный закон). Во втором примере задан нормальный закон. В третьем примере для DEV задан равномерный закон, а для LOT - закон с именем D1, который должен быть описан соответствующим оператором .DISTRIBUTION. Соотношение описанных ранее спецификаций LOT и DEV определяет корреляцию между одноименными параметрами компонентов, использующих данную модель. Однако, как рассматривалось в п. 3.6.1, различные параметры, относящиеся к одной модели в общем случае коррелированы друг с другом. Более того, в интегральных схемах коррелированы и параметры разных моделей. Рассмотрим теперь, как можно описать корреляцию разноименных параметров. Предварительно надо немного остановиться на том, как программа моделирует случайные числа. Программа генерирует псевдослучайные числа, распределенные равномерно в диапазоне -1÷1, а затем на их основе моделируются требуемые законы, включая нормальный и пользовательские. При этом в PSpice предусмотрена возможность использовать в законах распределения разных параметров одни и те же случайные числа. Это обеспечивает корреляцию между соответствующими параметрами. Для описания такой корреляции используются элементы <№ генератора> спецификаций LOT и DEV, в которых указывается номер от 0 до 9, соответствующий номеру квазислучайного числа. Поскольку числа для LOT и DEV различны, то номера для этих двух спецификаций никак не связаны друг с другом. Приведем примеры. Пусть для некоторого параметра P1 указано DEV/4 10%, а для другого параметра P2 указано DEV/4 20%. Поскольку для обоих параметров имеется ссылка на один и тот же номер числа - 4 и спецификация LOT не описана, то эти параметры окажутся коррелированы с коэффициентом корреляции, равным 1. Если же в каком-то параметре P3 будет указано LOT/4 10%, то параметр P3 никак не будет коррелирован с предыдущими, поскольку случайное число под номером 4 в описании LOT никак не связано со случайным числом под номером 4 в описании DEV. Ссылку на номер случайного числа можно сочетать со ссылкой на закон распределения этого числа. Например, DEV/4/GAUSS. Причем закон распределения для каждого числа должен быть указан в задании один и только один раз. Например, если в описании какого-то параметра встретится DEV/4, то закон распределения этого числа пока неизвестен. Если далее в описании другого параметра встретится DEV/4/GAUSS, то во всех параметрах, ссылающихся на это число будет принят нормальный закон
104
Виды анализа в PSpice
3.6.3. ДЕТЕРМИНИРОВАННЫЕ МЕТОДЫ И РАСЧЕТ НАИХУДШЕГО СЛУЧАЯ
На рис. 3.7 приведены примеры кривых, удовлетворяющих (кривые 1 и 2) и не удовлетворяющих (кривые 3, 4, 5) сформулированным условиям. Если при этих предположениях пренебречь стохастическими связями 3.6 Расчет разбросаеще параметров 105 между параметрами, то расчет наихудшего случая существенно упрощается. Достаточно определить знаки производных dПк/dxi при средних значениях Техническое задание на проектирование аппаратурыП обычно всех параметров xi и тогда для каждого электронной выходного параметра к легко формулируется в виде неравенств: определить наихудшее значение параметра компонента xi. Например, если наихудшим является максимальное значение Пк макс, а производная dПк/dxi Пк≥aк , Пк≤bк , aк≤Пк≤bк , положительна, то наихудшее значение параметра xi равно x i +Δxi. В том же где Пк - выходные параметры устройства, зависящие от вектора параметров случае при отрицательной производной dПк/dxi наихудшим значением компонентов X, aк и bк - минимальные и максимальные допустимые параметра xi является x i -Δxi. Если наихудшим является минимальное значения параметров. Формулировка каких-то разделов задания в виде значение Пк мин, то при положительной производной dПк/dxi наихудшим равенств невозможна, поскольку из-за разброса точное значение никакого значением является x -Δxi, а при отрицательной - x i +Δxi. параметра выдержаноi быть не может. Поэтому требование в виде равенства Именно такой упрощенный расчет наихудшего случая используется в Рис. 3.7. Зависимости, удовлетворяю-щие всегда должно быть заменено двухсторонним ограничением типа PSpice. Сначала рассчитываются выходные параметры схемы при и ов (кривые 1 2) и не уд -летворяющие приведенного выше. номинальных параметрах компонентов. Затем (кривые 3, 4, поочередно 5) упрощенномукаждому расчету Детерминированные методы проектирования схем с учетом разброса д о наиху шег случая параметру компонента дается приращение δxi, рассчитывается выходной параметров исходят из принципа: схема должна быть работоспособна при параметр схемы П и оцениваются коэффициенты чувствительности dПк/dxi любых сочетанияхк параметров компонентов, лежащих в поле допусков. как отношение соответствующих приращений Пк к δxi. Затем всем мы в пределах поля Иначе говоря, для каждого выходного параметра схе параметрам xi по указанным выше правилам присваиваются наихудшие допусков параметров компонентов должен быть найден наихудший случай значения, рассчитывается схема в этой наихудшей точке и определяется Пк мин , или Пк макс , или и то, и другое при двухсторонних неравенствах. И наихудшее значение Пк мин или Пк макс в зависимости от поставленной задачи. надо обеспечить, чтобы наихудшие значения укладывались в рамки Таким образом, если числоэти параметров компонентов равно n, то наихудший технического задания. Тогда приведенные выше неравенства заменяются на за n+2 просчета схемы: случай для некоторого параметра Пк определяется следующие: расчет в исходной и в наихудшей точках плюс n расчетов для определения коэффициентов чувствительности. Основной расчета на наихудший случай заключается в Пк мин= П к-Δнедостаток Пк≥aк, существенной недооценке возможностей схемы. Это вызвано тем, что Пк макс= П к+ΔП к≤bк. вероятность наихудшего случая обычно исчезающе мала. Одной из причин этого является ничтожно малая вероятность того, что все параметры Изложенныйодновременно принцип примут обеспечивает проектирование схем со компонентов свои наихудшие значения. Другая стопроцентной схемной надежностью, гарантируя стопроцентный причина связананачальной с неучетом корреляции между параметрами компонентов. Приведем простой аналитический пример. Частотные свойства многиха выход годных (конечно, речь идет только о параметрической надежности, транзисторных схем определяются постоянной времени коэффициента какой-то процент катастрофических отказов всегда неизбежен). Однако τβ в справочниках не приводятся, однако эта передачи тока базы τнаихудших точное определение по всем параметрам является очень β. Значения случаев сложной может и трудоемкой задачей, потребующей применения =τт⋅(1+β), где коэффициент величина быть рассчитана формуле τβмногократного процедур тока поиска экстремума при вналичии ограничений. точный передачи базы β приводится справочниках, а времяПоэтому пролета базы τт поиск наихудшего случая практически никогда не используется. Реально во может быть рассчитано из приводимой в справочниках частоты fт по всех программах, PSpice, применяется упрощенный метод расчета формуле τт=1/2πfвключая т. Если исходить из метода наихудшего случая, то . наихудшего случая максимальное значение τβ надо считать равным τβ макс=τт макс⋅(1+βмакс). Если Упрощение основано на сзначения ледующихτ предпиолβожениияхподставить . Считается,в что эту определить по справочнику т макс макс ( X ) непрерывны, дифференцируемы и роизводны dП /dx п е зависимости П к к i не формулу (нередко именно так и поступают при расчетах), то обычно изменяют знак в пределах полябольшая допуска.величина Таким обрτазом,, мне етонаблюдаемая д применим нев получается неправдоподобно β макс (xi ). для всех зависимостей ПкСвязано реальных транзисторах. это с тем, что параметры τт и β сильно коррелированы с отрицательным коэффициентом корреляции.
106
Виды анализа в PSpice
.WCASE <вид анализа> <выходная переменная> <критерий> +[<опции>], где <вид анализа> - DC, или AC, или TRAN. Оператор .WСASE задает расчет чувствительности схемы при выбранном виде анализа (DC, частотный анализ, расчет переходных процессов) к параметрам моделей элементов, а также основанный на этом анализе расчет наихудшего случая по заданному критерию. Сначала проводится заданный вид анализа при номинальных значениях параметров. Затем осуществляется многократный расчет при изменении каждый раз одного параметра модели элемента. На основании этих просчетов вычисляются коэффициенты чувствительности заданного критерия к каждому параметру моделей и по ним определяется наихудшее сочетание параметров. При этом каждый параметр модели увеличивается или уменьшается на величину допуска. Если законы распределения приняты нормальными, то параметры изменяются на утроенное значение величины, заданной как значение LOT и DEV (по правилу “трех сигм”). В итоге рассчитывается схема для этого наихудшего сочетания параметров. В процессе анализа чувствительности и расчета наихудшего случая варьируются параметры моделей, содержащие спецификации допусков DEV и LOT. Поскольку в качестве результатов печатается не только номинальный и наихудший случай, но и чувствительности по отдельным параметрам, то, пользуясь ими, можно рассчитать и допуск по методу статистического суммирования допусков. Спецификация <вид анализа> в операторе .WCASE равна DC, или AC, или TRAN. Она указывает, для какого из видов анализа проводится анализ чувствительности и расчет наихудшего случая. Все остальные виды анализа, указанные в задании на расчет схемы, проводятся один раз при номинальных значениях параметров элементов. Спецификация <выходная переменная> указывает, к значениям какой переменной относится заданный критерий наихудшего случая. Форма описания выходной переменной обычная (см. п. 3.1). Во всех трех видах анализа (DC, AC, TRAN), которые могут использоваться при расчете наихудшего случая, получается некоторая зависимость выходной переменной: от аргумента оператора DC, от частоты, от времени. На этих зависимостях (графиках кривых) и задается некоторый критерий (функционал), определяющий качество схемы и служащий для формулировки понятия "наихудший случай". Спецификация <критерий> может принимать значения:
3.6 Расчет разброса параметров
107
ищется максимальное отклонение каждой кривой от номинальной; MAX ищется максимальное значение каждой кривой; MIN ищется минимальое значение каждой кривой; RISE_EDGE (<значение>) ищется первый момент пересечения нарастающей кривой заданного значения; для того, чтобы результат был значимым, на кривой должен быть хотя бы один участок, на котором переменная в одной точке меньше заданного значения, а в следующей точке больше; FALL_EDGE (<значение>) ищется первый момент пересечения спадающей кривой заданного значения; для того, чтобы результат был значимым, на кривой должен быть хотя бы один участок, на котором переменная в одной точке больше заданного значения, а в следующей точке меньше. В оператор .WCASE могут быть включены одна или несколько опций, управляющих печатью результатов расчета, диапазоном изменения аргумента зависимостей, уточняющих понятие наихудшего случая. Опции могут принимать следующие значения. OUTPUT ALL задает вывод результатов расчетов, заданных операторами .PROBE, .PRINT, .PLOT (см. п. 3.8) при каждом изменении параметров. Если эта опция отсутствует, вывод результатов по операторам .PROBE, .PRINT, .PLOT осуществляется только в номинальной и в наихудшей точках. Печать коэффициентов чувствительности, значений заданного критерия и наихудшего сочетания параметров осуществляется в выходном файле всегда, независимо от этой опции и от присутствия в задании операторов .PROBE, .PRINT, .PLOT. RANGE (<минимальная величина>, <максимальная величина>) - задает ограничения на диапазон изменения аргумента (параметра DC, частоты, времени) при расчете критерия. В качестве <минимальная величина> или <максимальная величина> может быть задан символ "*", что означает "без ограничения". Например: RANGE(*,0.5) - критерий вычисляется только для значений аргумента ≤ 0.5. RANGE(-1,*) - критерий определяется только для значений аргумента ≥ -1. YMAX
108
HI или LO
Виды анализа в PSpice
определяет, какое значение критерия - максимальное или минимальное, является наихудшим. По умолчанию для критериев YMAX и MAX используется HI, а для остальных критериев - LO. Это умолчание и можно изменить, задавая эту опцию. VARY <спецификация> - определяет, какие параметры моделей варьируются в процессе расчета, <спецификация> может принимать значения: DEV - варьируются только параметры, допуск которых описан как DEV; LOT - варьируются только параметры, допуск которых описан как LOT; BOTH - варьируются параметры, имеющие описания или DEV, или LOT, или и то и другое (данная спецификация используется по умолчанию). BY <спецификация> - определяет, на какую долю от номинала варьируются параметры при расчете чувствительности. <спецификация> может принимать значения: RELTOL - варьирование осуществляется на величину, заданную опцией RETOL (по умолчанию RELTOL=0.001); <значение> - варьирование осуществляется на заданную величину. По умолчанию используется BY RELTOL. При выборе величины варьирования следует учитывать, что при слишком малых приращениях параметров значения коэффициентов чувствительности недостоверны из-за алгоритмических ошибок вычисления критерия. DEVICE <список видов элементов> - задает список видов элементов, параметры которых варьируются. По умолчанию варьируются параметры моделей всех видов элементов в схеме. Если требуется ограничиться только несколькими видами элементов, следует задать эту опцию и сформировать <список видов элементов>. В него записываются без пробелов и других разделителей символы, обозначающие соответствующие виды элементов. Например, если требуется варьировать только значения сопротивлений и емкостей, данная опция имеет вид DEVICES RC.
3.6 Расчет разброса параметров
109
Оператор .WCASE изменяет параметры элементов схемы. Но параметры могут изменяться и другими операторами: .DC, .STEP (п. 3.7), .MC (п. 3.6.4). Чтобы в подобных случаях не возникало недоразумений, в PSpice принято правило: нельзя совмещать в одном задании операторы, изменяющие одни и те же параметры. Поэтому операторы .MC и .WCASE всегда несовместимы друг с другом, а операторы .DC и .STEP несовместимы с .WCASE в некоторых случаях. Например, можно совместить в задании оператор .WCASE и операторы .DC или .STEP, изменяющие напряжение каких-либо источников. Но эти операторы нельзя объединить, если .DC или .STEP изменяют параметры резистора. Приведем примеры использования расчета на наихудший случай: .WCASE TRAN V(5) YMAX .WCASE DC IC(Q7) MAX VARY DEV .WCASE AC V(4,5) FALL_EDGE(7) DEVICES RC OUTPUT ALL .WCASE AC V(4,5) RISE_EDGE(7) HI DEVICES RC Первый пример задает расчет наихудшего случая по критерию "максимальное отклонение от номинала напряжения узла 5 во время переходного процесса". Второй пример задает расчет наихудшего случая по критерию "максимальное значение коллекторного тока транзистора Q7 при DC анализе" при учете только допусков типа DEV. Третий пример задает расчет наихудшего случая для частотного анализа по критерию "минимальная частота пересечения спадающим напряжением V(4,5) уровня 7 В" (например, верхняя граничная частота) при вариациях параметров только сопротивлений и емкостей, с подробной печатью промежуточных результатов расчета. Четвертый пример аналогичен третьему, но с критерием "максимальная частота пересечения нарастающим напряжением V(4,5) уровня 7 В" (например, нижняя граничная частота) и без подробной печати. В данном случае надо указывать опцию HI, чтобы рассчитывалась максимальная частота, поскольку по умолчанию для RISE_EDGE опция LO.
110
Виды анализа в PSpice
Рассмотрим форму выдачи результатов расчета наихудшего случая. Пусть, например, рассматривается схема, содержащая резисторы R1, R2, R3, R4, описываемые моделью MR, в которой для параметра R задано LOT=20% и DEV=5%. Схема содержит также емкости C1 и C2, описываемые моделью MC, в которой для параметра C задано LOT=20% и DEV=5%. Законы распределения по умолчанию считаются равномерными. Пусть в этой схеме требуется найти наихудший случай для нижней граничной частоты напряжения между узлами 4 и 5 при разбросе параметров сопротивлений и емкостей. Тогда задание на расчет наихудшего случая имеет вид, аналогичный приведенному выше последнему из примеров. Фрагмент выходного файла .OUT может выглядеть следующим образом (в фигурных скобках приведен перевод основных сообщений): **** SORTED DEVIATIONS OF V(4,5) TEMPERATURE = 27.000 DEG C {Сортировка отклонений V(4,5) температура = 27 град. C} SENSITIVITY SUMMARY {Итоги расчета чувствительности} RUN NOMINAL
FIRST RISING EDGE VALUE THRU 7 {Первое пересечение величины 7 при нарастании} 7.9050E+06
{Номинал}
MC C DEVICES 7.8982E+06 {Параметр C модели MC} (-.858 % change per 1% change in Model Parameter) {Изменяется на -0.858% при изменении параметра модели на 1%} MR R DEVICES 7.8982E+06 {Параметр R модели MR} (-.858 % change per 1% change in Model Parameter) {Изменяется на -0.858% при изменении параметра модели на 1%} **** WORST CASE ANALYSIS {Анализ наихудшего случая
TEMPERATURE = 27.000 DEG C температура = 27 град. C}
WORST CASE ALL DEVICES {Наихудший случай по всем элементам **** UPDATED MODEL PARAMETERS TEMPERATURE = 27.000 DEG C {Задание параметров моделей температура = 27 град. C} WORST CASE ALL DEVICES DEVICE {элемент} C1 MC
MODEL {модель} C
PARAMETER NEW VALUE {параметр} {новая величина} .75 (Decreased)
3.6 Расчет разброса параметров
111 {Уменьшение}
C2 MC R1 MR R2 MR R3 MR R4 MR
C R R R R
.75 (Decreased) .75 (Decreased) .75 (Decreased) .75 (Decreased) .75 (Decreased)
**** SORTED DEVIATIONS OF V(4,5) TEMPERATURE = 27.000 DEG C {Сортировка отклонений V(4,5) температура = 27 град. C} WORST CASE SUMMARY {Итоги расчета наихудшего случая} RUN NOMINAL ALL DEVICES
FIRST RISING EDGE VALUE THRU 7 {Первое пересечение величины 7 при нарастании} 7.9050E+06 {номинал} 14.1830E+06 {изменение всех элементов} ( 179.42% of Nominal) { 179.42% от номинала}
Как видно, при номинальном значении нижней граничной частоты 7.905 МГц наихудший случай составил 14.183 МГц или 179.42% от номинала (т.е.отклонение от номинала составило 79.42%). Таким образом, данный параметр очень чувствителен к разбросу параметров. На рис. 3.8 для рассматриваемого примера представлены кривые, полученные в постпроцессоре PROBE для номинального и наихудшего случаев. Попробуем теперь оценить допуск на граничную частоту по методу статистического суммирования допусков. Для этого надо получить коэффициенты чувствительности по каждому сопротивлению и емкости в отдельности. Это можно сделать, если добавить в оператор .WCASE опцию VAR DEV: .WCASE AC V(4,5) RISE_EDGE(7) HI DEVICES RC VAR DEV . Тогда секция выходного файла, содержащая параметрам, приобретет следующий вид:
RUN R1 MR R
чувствительность
SENSITIVITY SUMMARY FIRST RISING EDGE VALUE THRU 7 7.9084E+06 (.4241% change per 1% change in Model Parameter)
по
112 C2 MC C R3 MR R R4 MR R C1 MC C R2 MR R
Виды анализа в PSpice 7.9051E+06 (.0112% change per 1% change in Model Parameter) 7.9050E+06 (0 % change per 1% change in Model Parameter) 7.9050E+06 (0 % change per 1% change in Model Parameter) 7.8981E+06 (-.8692% change per 1% change in Model Parameter) 7.8949E+06 (-1.2814% change per 1% change in Model Parameter)
Рис. 3.8. График номинального и наихудшего случая
3.6 Расчет разброса параметров
113
В этой таблице приведены коэффициенты чувствительности по каждому сопротивлению и емкости. Если бы в описании разброса параметров моделей элементов присутствовали только спецификации DEV, то относительный допуск на нижнюю граничную частоту δfн.гр=Δfн.гр/fн.гр по методу статистического суммирования допусков можно было бы рассчитать из соотношения: 2
δfн.г р
2
⎛ df ⎞ ⎛ df ⎞ = ∑ ⎜ н.г р ⋅ (DEVR ) 2 + ∑ ⎜ н .г р ⋅ (DEVC ) 2 , ⎟ ⎟ dCi ⎠ dRi ⎠ ⎝ ⎝
⎞ ⎛ dfн.г р ⎛ dfн и ⎟ ⎜ dRi ⎠ ⎝ ⎝
где ⎜
.гр
⎞ dCi ⎟⎠ - коэффициенты чувствительности по
отдельным сопротивлениям и емкостям. Поскольку в приведенном примере имеются еще спецификации LOT, то формула должна быть расширена:
δfн.г р = DR + DC , где 2
⎛ df ⎞ ⎛ df DR = ∑ ⎜ н.г р ⋅ (DEVR)2 + ⎜ н ⎟ dRi ⎠ ⎝ ⎝
2
.г р
⎞ , dR⎟⎠
.г р
⎞ , dC⎟⎠
2
⎛ df ⎞ ⎛ df DC = ∑ ⎜ н.г р ⋅ (DEVC)2 + ⎜ н ⎟ dCi ⎠ ⎝ ⎝
2
⎛ dfн .гр ⎞ ⎛ df ⎞ и ⎜ н .гр ⎟ - коэффициенты чувствительности при ⎜ ⎟ dR⎠ dC⎠ ⎝ ⎝ согласованных изменениях сопротивлений и емкостей, полученные из предыдущего эксперимента, в котором не была задана опция VAR DEV. Подставив приведенные в таблицах числа, получим, что δfн.гр=25.6%, в то время как расчет наихудшего случая дал 79.42%, т.е. примерно в три раза больше. Различие было бы еще больше, если бы рассчитывалась схема на дискретных компонентах, в которой LOT=0. На этом примере можно показать одну специфическую ошибку расчета наихудшего случая в PSpice. Когда в параметрах заданы спецификации и LOT и DEV, то задавать в операторе .WCASE опцию VAR DEV для расчета наихудшего случая нельзя, т.к. при этом не будет учитываться составляющая
114
Виды анализа в PSpice
разброса LOT (в рассмотренном примере опция VAR DEV задавалась для определения коэффициентов чувствительности по отдельным параметрам, а не для расчета наихудшего случая). Если же не задано опции VAR DEV, то, как видно из приведенной ранее распечатки выходного файла, программа варьирует одновременно все компоненты на величину ± (LOT+DEV). При этом не учитывается, что в действительно наихудшем случае знак перед DEV должен определяться для каждого элемента индивидуально в зависимости от знака коэффициента чувствительности. Так, для приведенного выше примера из таблицы коэффициентов чувствительности по отдельным параметрам видно, что знаки коэффициентов чувствительности для R1 и C2 положительны, а для R2 и C1 - отрицательны (значит, для этих элементов должен приниматься знак “-” перед составляющей разброса DEV). Тогда с учетом того, что коэффициенты чувствительности по синхронному изменению сопротивлений и емкостей отрицательны, наихудшие относительные значения параметров должны быть для R2 и C1 равны 0.75 (1LOT-DEV), а для R1 и C2 - 0.85 (1-LOT+DEV). А программа, как видно из приведенных распечаток файлов, для всех параметров приняла коэффициент 0.75. Таким образом, при наличии в описании элементов обеих спецификаций LOT и DEV наихудший случай определяется неверно, с занижением. Степень ошибки, конечно, зависит от схемы и от соотношения значений LOT и DEV. Так, в схеме данного примера истинный наихудший случай составляет 15.2360 МГц, в то время как приведенный выше расчет наихудшего случая дал величину 14.183 МГц,. При больших значениях DEV ошибка могла бы быть еще больше. 3.6.4. СТАТИСТИЧЕСКИЙ РАСЧЕТ ПО МЕТОДУ МОНТЕ-КАРЛО
3.6 Расчет разброса параметров
115
♦ сбор исходной статистической информации о законах распределения Таблица 3.3 Оспараметров новной задачей вероятностных расчетов является построение законов компонентов (тут погрешность обусловлена Относительные погрешности расчета брака прежде всего распрнедостоверностью еделения выходных параметров по законам распределения информации из-засхемы непостоянства технологии); моделей элементов. Поскольку в(в общем задача параметров ♦ аппроксимация распределения SPICE случае очень эта скромные N законов тически неразрешима, рименяется метод испытаний аналивозможности 100 2законов 00 статистических 1000 описания пмногомерных распределения с учетомМонте-Карло. Суть его сводится к тому, что проводится N расчетов методстохастических ε (%)связей между переменными); в каждом20 из которых программа случайные сочетания схе♦мы, 33 23 задаетпаразитные 10 математические модели элементов, неучтенные параметры и ам етров моделей элементов в соответствии с их закон парам и распределения. 10 49 35 16 прочие погрешности математической модели схемы; 5 моделир72 51 о метод эквивалентно ованию выпуска й партии из N Эт♦ опытно23 Монте-Карло; 1 - схемы. Использование 115 52результатов этих проектируемой экз♦емпляров аппроксимация законов распределения отдельных выходных параметров ментов может учета быть корреляции различным: между можно выходными построить параметрами гистограмму экспеириневозможность еделения выходногобрака параметра; можно определить распрсхемы (вероятности по отдельным выходнымвероятность параметрам брака нельзяε выход суммировать, годных схем т.к. p=1-ε при известной можно или просто все параметры схемынорме всегдаотбраковки; коррелированы). брать норму отточность браковкистатистических по заданному допустимому проценту брака.Однако выВ результате, расчетов всегда невелика. Объем выборки N определяется требуемой точностью определения закона они остаются ценным инструментом исследования схемы, поскольку, распределения выходного параметра схемы. Если по результатам несмотря на недостоверность самих цифр прогнозируемого брака или расчета выхода требуетсяпозволяют определить вероятность бракасхемные ε при известной отбраковки,к годных, сравнить различные решения норме по устойчивости то теорияигласит, что при кN⋅ε >> 1 с вероятностью большей,брака. чем некоторое α, разбросу принять меры уменьшению параметрического расчет осуществляется осительнна ая пстатистический огрешность расчета брака δε не превыситоператором отнЗадание величины δ.MC, макс, имеющим вид определяемой соотношением:
δ макс = K α ⋅
1− ε , N⋅ε
где коэффициент Kα зависит от доверительной вероятности α, меняясь в пределах примерно 1.5÷3. Формула показывает, что при малых ε и N величина δмакс растет. Табл. 3.3 дает представление о численных значениях этой зависимости. В ней колонки соответствуют объему выборки N, строки рассчитываемой вероятности брака ε (в процентах), а эначения, содержащиеся на пересечениях строк и столбцов, - относительной погрешности расчета δмакс . Как видно из таблицы, сколько-нибудь достоверно можно определять вероятности брака не менее 5% при объемах выборки не менее 100÷200. Впрочем, надо иметь ввиду, что погрешность статистического расчета складывается из погрешностей всех его этапов, а не только самого метода Монте-Карло. Вклад в суммарную погрешность вносят .MC <объем выборки> <вид анализа> <выходная переменная> + <критерий> [<опции>] где <вид анализа> - DC, или AC, или TRAN.
116
Виды анализа в PSpice
Оператор .MC задает многократный расчет схемы с выбранным видом анализа. Первый расчет проводится при номинальных значениях всех параметров компонентов. Последующие расчеты ведутся с изменениями тех параметров моделей, для которых заданы допуски DEV и LOT. Заданный в операторе <объем выборки> определяет количество расчетов схемы N с вариациями параметров. Если результаты статистического расчета требуется выводить на печать, то N должен быть не больше 2000. Если результаты требуется смотреть с помощью PROBE, то Nв должен быть не больше 100. С другой стороны, при N меньшем 100 ÷ 200 точность метода Монте-Карло, как указывалось выше, низкая. Это противоречие можно разрешить, выводя для последующего просмотра результаты не всех просчетов (см. ниже опцию OUTPUT EVERY ...). Спецификация <вид анализа> в операторе .MC равна DC, или AC, или TRAN. Она указывает, для какого из видов анализа проводится метод МонтеКарло. Все остальные виды анализа, указанные в задании на расчет схемы, проводятся один раз при номинальных значениях параметров элементов. Спецификации <выходная переменная> и <критерий> аналогичны рассмотренным в предыдущем пункте для оператора .WCASE и указывают, какой параметр схемы определяется в процессе статистического анализа. Во всех трех видах анализа (DC, AC, TRAN), которые могут осуществляться в процессе статистического расчета, получается некоторая зависимость выходной переменной: от аргумента оператора DC, от частоты, от времени. Результаты расчетов, заданные операторами .PRINT и .PLOT, выводятся отдельными таблицами и графиками для различных посчитанных вариантов. В PROBE можно построить как отдельные кривые для различных вариантов, так и семейства кривых. Чтобы иметь возможность проводить сравнительную оценку получающихся кривых при варьировании параметров, вводится некоторый численный критерий - функционал, характеризующий качество каждой кривой. При печати результатов статистического расчета PSpice сортирует варианты расчета по значению функционала. Это позволяет легко построить гистограммы функционала. Вид функционала задается в операторе .MC спецификацией <критерий>, которая влияет только на распечатку результатов статистического анализа, на характер обработки этих результатов, но не затрагивает самого статистического метода. Спецификация <критерий> может принимать значения:
3.6 Расчет разброса параметров
117
ищется максимальное отклонение каждой кривой от номинальной; MAX ищется максимальное значение каждой кривой; MIN ищется минимальое значение каждой кривой; RISE_EDGE (<значение>) ищется первый момент пересечения нарастающей кривой заданного значения; для того, чтобы результат был значимым, на кривой должен быть хотя бы один участок, на котором переменная в одной точке меньше заданного значения, а в следующей точке больше; FALL_EDGE (<значение>) ищется первый момент пересечения спадающей кривой заданного значения; для того, чтобы результат был значимым, на кривой должен быть хотя бы один участок, на котором переменная в одной точке больше заданного значения, а в следующей точке меньше. В оператор .MC могут быть включены одна или несколько опций, управляющих печатью результатов расчета и диапазоном изменения аргумента функционала. Опции могут принимать следующие значения. LIST предписывает печатать перед каждым вариантом расчета значения случайных параметров элементов, используемые в данном варианте. OUTPUT <тип вывода> - управляет выводом результатов расчета (кроме первого - номинального), заданных операторами .PROBE, .PRINT, .PLOT (вывод значений функционала осуществляется независимо от этой опции). Если данная опция отсутствует, то операторы .PROBE, .PRINT, .PLOT выдают результаты только номинального расчета. При наличии опции характер выдачи определяется спецификацией <тип вывода>, которая может принимать значения : ALL - печатать результаты всех просчетов; FIRST <число N> - печатать результаты первых N просчетов; EVERY <число N> - печатать результаты каждого N-го расчета; RUNS <список значений> - проводить анализ и печатать результаты только для указанных в списке номеров расчетов; эту опцию можно использовать при повторных просчетах, когда требуется подробнее проанализировать какието конкретные из полученных кривых. YMAX
118
Виды анализа в PSpice
RANGE (<минимальная величина>, <максимальная величина>) - задает ограничения на диапазон изменения аргумента (параметра DC, частоты, времени) при расчете функционала. В качестве <минимальная величина> или <максимальная величина> может быть задан символ "*", что означает "без ограничения". Например : RANGE(*,0.5) - функционал вычисляется только для значений аргумента ≤ 0.5. RANGE(-1,*) - функционал определяется только для значений аргумента ≥ -1. SEED = <значение> - эта опция введена только в PSpice 5 и задает начальное значение датчика случайных чисел. По умолчанию значение SEED равно 17533 и может задаваться нечетным числом в пределах от 1 до 32767. При одинаковых значениях SEED результаты моделирования при последовательных запусках программы будут идентичны. Поскольку настройка датчика квази-случайных чисел дело тонкое, пользоваться этой опцией следует осторожно. Оператор .MC изменяет параметры элементов схемы. Но параметры могут изменяться и другими операторами: уже рассмотренными .DC и .WCASE, а также оператором многовариантного анализа .STEP. Чтобы в подобных случаях не возникало недоразумений, в PSpice принято правило: нельзя совмещать в одном задании операторы, изменяющие одни и те же параметры. Поэтому операторы .MC и .WCASE всегда несовместимы друг с другом, а операторы .DC и .STEP несовместимы с .MC в некоторых случаях. Например, можно совместить в задании оператор .MC и операторы .DC или .STEP, изменяющие напряжение каких-либо источников. Но эти операторы нельзя объединить, если .DC или .STEP изменяют параметры резистора. Приведем примеры задания на статистический расчет: .MC 10 TRAN V(5) YMAX .MC 100 DC IC(Q7) MAX LIST .MC 200 AC V(4,5) RISE_EDGE(7) OUTPUT EVERY 10
Первый пример задает статистический расчет переходного процесса с объемом выборки 10 (это очень мало) и с сортировкой по критерию "максимальное отклонение от номинала напряжения узла 5". Второй пример задает статистический DC анализ с объемом выборки 100, с сортировкой по критерию "максимальное значение коллекторного тока транзистора Q7 при DC анализе", с печатью значений параметров элементов, используемых в каждом варианте расчета. Третий пример задает статистический расчет АЧХ
3.6 Расчет разброса параметров
119
напряжения V(4,5) с объемом выборки 200, с сортировкой по критерию "частота пересечения нарастающим напряжением V(3) уровня 7В" (например, нижняя граничная частота), с выводом по операторам .PROBE, .PRINT, .PLOT каждого 10-го варианта. Результаты расчета помещаются в выходной файл .OUT в виде таблицы, в которой варианты расчетов упорядочены по заданному критерию. Фрагменты таблицы расчета некоторой схемы (той же, что рассматривалась в предыдущем пункте) при задании на статистический расчет, приведенном в последнем примере, может иметь следующий вид: **** SORTED DEVIATIONS OF V(4,5) TEMPERATURE = 27.000 DEG C {Сортировка разброса V(4,5) температура = 27 град. C} MONTE CARLO SUMMARY {Итоги Монте-Карло} RUN
FIRST RISING EDGE VALUE THRU 7 {Первое пересечение уровня 7 при нарастании}
Pass 89 {Просчет 89} Pass 2 Pass
16
Pass
93
Pass
75
.......................................... Pass 96 Pass
52
NOMINAL Pass 55 Pass
65
............................................. Pass 91 Pass
12.6670E+06 (160.25% of Nominal) {160.25% от номинала} 12.0080E+06 (151.91% of Nominal) 11.8370E+06 (149.74% of Nominal) 11.7320E+06 (148.41% of Nominal) 11.4340E+06 (144.64% of Nominal) 8.0825E+06 (102.25% of Nominal) 8.0153E+06 (101.39% of Nominal) 7.9050E+06 7.8806E+06 ( 99.691% of Nominal) 7.8679E+06 ( 99.531% of Nominal)
5.9887E+06 ( 75.758% of Nominal) 42 5.9803E+06 ( 75.652% of Nominal)
120
Виды анализа в PSpice
Как видно, результаты в таблице размещены в порядке возрастания заданного критерия - нижней граничной частоты. Это позволяет легко построить гистограмму распределения, пример которой представлен на рис. 3.9. Построение осуществляется вручную, так как в PSpice соответствующего механизма Рис. 3.9. Гистограмма не предусмотрено. В постпроцессоре PROBE можно качественно наблюдать семейство кривых, включающее результаты всех просчетов или, при задании опции OUTPUT EVERY
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т. Значения аргумента в соседних точках отличаются друг от друга в постоянное число раз, равное 10 1 (NT − 1) .
3.7 Многовариантный анализ
123
- логарифмическое изменение аргумента по октавам. При этом <число точек> - число точек на октаву Nт. Значения аргумента в соседних точках отличаются друг от друга в постоянное число раз, равное 8 1 (NT − 1) . LIST - аргумент принимает значения, перечисленные в спецификации <список значений>. Приведем примеры использования оператора .STEP: OCT
1) 2)
3)
4) 5) 6)
.STEP V1 0v 10v 1v 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 .PARAM RNOM=1 R1 1 6 {RNOM*5} R2 5 6 {RNOM*10} .STEP LIN PARAM RNOM 0.9 1.1 0.1 .PARAM A=1 V1 1 0 SIN(0 {A} 100khz) .STEP PARAM A LIST (1 2) .STEP DEC NPN MQ(IS) 1E-18 1E-14 5 .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 0.000E+00 1.000E-06 2.000E-06 3.000E-06
V(1) 0.000E+00 6.283E-07 1.257E-06 1.885E-06
V(4,5) -1.621E+01 -1.633E+01 -1.646E+01 -1.658E+01
IC(Q1) 7.477E-06 7.477E-06 7.477E-06 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”, расчет будет продолжен и в дальнейшем контроль значений данной переменной не будет проводиться. При нажатии клавиш “E” или Esc расчет прервется.
3.9 Операторы выдачи результатов расчета
129
В задании может быть несколько операторов .WATCH для разных видов анализа. Использование этих операторов очень полезно при длительных расчетах, так как позволяет контролировать ход вычислений и остановиться, если достигнут интересующий уровень сигнала или если схема работает неправильно и сигнал вышел из разумных пределов.
3.9. ЗАДАНИЕ ОПЦИЙ
Опции, определяющие условия расчета и выдачи результатов, задаются оператором .OPTIONS, имеющим формат: .OPTIONS <имя опции> [ = <значение>] ...
С точки зрения синтаксиса есть опции двух видов: в одних надо задавать значение опции, а в других достаточно указать только ее имя. А с точки 4.1. Модель диода 131 зрения функционального назначения опции можно разделить на 3 группы: ♦ опции, задающие параметры алгоритмов расчета; ♦ опции, задающие значения каких-то параметров, которые далее используются как значения по умолчанию; ♦ опции, управляющие выдачей результатов расчета. Полный перечень опций дается в работе [3]. Здесь коротко перечислим основные опции каждой группы и остановимся подробнее на опциях, управляющих выдачей результатов. Основные опции первой группы уже рассматривались в предыдущих пунктах. К ним относятся, прежде всего, допустимые погрешности RELTOL, VNTOL, ABSTOL и некоторые другие, а также ограничения итераций ITL1, ITL2, ITL4, ITL5. Рекомендации по их заданию, исходя из точности, сходимости и длительности расчетов, даны в пп. 3.2 и 3.4. Близка к ним по смыслу и опция CPTIME, задающая в секундах максимальное время процессора на расчет данного задания (по умолчанию 106 с, что составляет около 12 сут. беспрерывной работы). Величину CPTIME имеет смысл ограничивать в тех случаях, если ведется пакетный счет, т.е. в отсутствие пользователя компьютер должен просчитать несколько заданий. Тогда установка ограничения на CPTIME позволяет прервать недопустимо затянувшийся расчет какого-то одного задания и обеспечить расчет последующих задач. К первой группе относится также очень важная опция TNOM, задающая температуру, для которой считаются идентифицированными параметры всех моделей. От этой температуры (по умолчанию 27°C) в моделях отсчитываются температурные изменения параметров и соответственно определяются параметры при той температуре, для которой ведется расчет. Еще одна опция этой группы GMIN - минимальная проводимость ветви схемы (по умолчанию 10-12 Ом-1). Проводимости, меньшие GMIN, или сопротивления, большие 1/GMIN, задавать в описании схемы надо с осторожностью, т.к. это может привести к проблемам со сходимостью. К опциям второй группы относится рассмотренная ранее опция DISTRIBUTION, задающая вид закона распределения, принимаемый по умолчанию, а также ряд опций, задающих значения по умолчанию некоторых параметров моделей. Эти опции будут подробнее рассмотрены в пунктах, описывающих соответствующие модели. Опции третьей группы управляют печатью результатов расчета. Опция WIDTH (без указания значения) задает длину строки выходного файла, равной 132 символам. Если эта опция не указана, то длина строки 80 символов. Применение этой опции может быть оправдано, если выходной файл предназначен для печати или при работе с монитором, имеющим большой экран. Управлять длиной строки можно и не опциями, а операторами .WIDTH: .WIDTH IN = <значение> .WIDTH OUT = <значение> Первый из них задает длину строки входного файла, а второй - выходного. По умолчанию длина строк в обоих файлах - 80 символов, а с помощью данных операторов она может быть увеличена до 132 символов.
132
4. Модели элементов
4. М О Д Е Л И Э Л Е М Е Н Т О В 4.1. МОДЕЛЬ ДИОДА
Эквивалентная схема модели диода PSpice представлена на рис. 4.1. Ток диода I состоит из нескольких составляющих: I=Inrm⋅Kinj+Irec⋅Kgen-Irevh-Irevl. Первая составляющая Inrm отражает ток неосновных носителей ⎛ V ( N⋅ϕT ) ⎞ Inrm = Is ⋅ ⎜ e d − 1⎟ , заряда и определяется выражением: ⎝ ⎠
Рис. 4.1. Модель диода
где Is - тепловой ток, N - показатель экспоненты, определяющий неидеальность составляющей тока, ϕT - температурный потенциал, Vd Модель диода напряжение на p-n переходе.4.1. Для неосновных носителей показатель133 степени обычно близок к единице, поэтому по умолчанию в модели принимается N=1. Ток Inrm умножается на коэффициент Kinj, учитывающий замедление роста тока при высоких уровнях инжекции. Этот коэффициент определяется выражением: Ошибка! Ошибочный внедренный объект., где Ikf - ток, начиная с которого вольт-амперная характеристика начинает отклоняться от экспоненциальной. По умолчанию Ikf =∞ и Kinj при этом равен единице. Вторая составляющяя тока Irec отражает ток основных носителей заряда (т.е. рекомбинационный ток) через переход. Она описывается выражением, аналогичным приведенному для Inrm, с тепловым током Isr и показателем в экспоненте Nr.Эта составляющая тока уточняет вольт-амперную характеристику в области низких уровней инжекции, описывая относительно медленное нарастание тока при низких напряжениях. Коэффициент Nr обычно больше единицы; по умолчанию он равен 2. Тепловой ток Isr по умолчанию равен 0, т.е. по умолчанию рекомбинационная составляющая тока диода отсутствует. Наиболее существенная компонента тока основных носителей - ток рекомбинации-генерации в переходе, пропорциональна ширине перехода. А ширина перехода зависит от напряжения на нем Vd. Поэтому в модели ток Irec умножается на коэффициент генерации Kgen, который считается равным
[
]
Kgen = (1 − Vd Vj) + 0.005 2
M 2
,
где Vj - высота потенциального барьера (для кремния 0,7÷0,9 В, по умолчанию - 1 В), M - коэффициент, зависящий от технологических особенностей перехода (0,5 для резкого перехода, 1/3 для плавного перехода, по умолчанию - 0,5). Учет коэффициента генерации позволяет использовать Irec для уточнения не только прямой ветви вольтамперной характеристики, но и обратной, которая у многих кремниевых диодов имеет заметный наклон, связанный с ростом обратного тока изза расширения p-n перехода. Чтобы описать этот эффект, надо задавать тепловой ток Isr исходя из значения обратного тока диода. Составляющие тока диода Irevh и Irevl отражают пробой p-n перехода. Они описываются идентичными выражениями: − ( ( V + BV )) ( Nbv ⋅ ϕ ) T Irevh = Ibv ⋅ e d ,
((
− V + BV d
Irevl = Ibvl ⋅ e
)) ( Nbvl ⋅ϕT ) .
В этих выражениях параметр BV - пробивное напряжение, а параметры Ibv, Ibvl, Nbv, Nbvl позволяют подогнать две точки зависимости сопротивления от тока в области пробоя. По умолчанию BV=∞ и пробой не моделируется. Сопротивление Rs отражает падение напряжения в объеме полупроводника. По умолчанию Rs=0. Инерционность диода отражается емкостью C, состоящей из двух параллельно включенных емкостей: барьерной и диффузионной.
134
4. Модели элементов
Аналогичным выражением определяется температурная зависимость сопротивления RS: 2
RS(T)=RS⋅[1+TRS1⋅(T-Tном)+TRS2⋅(T-Tном) . В этих соотношениях TBV1, TBV2, TRS1, TRS2 - параметры модели. Зависимость барьерной емкости от температуры определяется температурной зависимостью высоты потенциального барьера Vj и емкости при нулевом смещении Cjo: Vj(T)=VJ⋅T/Tном-3⋅ϕT⋅ln(T/Tном)-EG(Tном)⋅T/Tном+EG(T) , 2 EG(T)=1.16-0.000702⋅T /(T+1108) , Cjo(T)=CJO⋅{1+M⋅[0.0004⋅(T-Tном)+(1-Vj(T)/VJ)]}, где VJ и CJO - параметры модели. Источниками шумов в модели считаются объемное сопротивление Rs (тепловой шум) и ток p-n перехода (дробовой и фликкер шумы). Спектральная плотность мощности шума сопротивления Rs на единицу частоты описывается выражением 2
In = 4⋅k⋅T/Rs, а спектральная плотность мощности шума тока p-n перехода равна 2
In = 2⋅q⋅I+KF⋅Ошибка! Ошибочный внедренный объект./f, где k - постоянная Больцмана, T - абсолютная температура, в K, q - заряд электрона, f - частота. Коэффициенты KF и AF - параметры модели, определяющие фликкер-шум. 4.2. МОДЕЛЬ БИПОЛЯРНОГО ТРАНЗИСТОРА 4.2.1. ЭКВИВАЛЕНТНАЯ СХЕМА МОДЕЛИ
Физический смысл токов Ibe1 и Ibc1 легко видеть, если в статическом 4.2. Модель биполярного транзистора ток с точностью135 режиме положить, например, Vbc=0. Тогда коллекторный до коэффициента Kqb будет равен Ibe1., т.е. ток Ibe1 описывает В качестве модели биполярного транзистора в PSpice используется один передаточную характеристику транзистора в прямом направлении из вариантов модели Гуммеля-Пуна, эквивалентная схема которого зависимость коллекторного тока от напряжения на эмиттерном переходе приведена на рис. 4.3. В основе этой модели лежит передаточная при короткозамкнутом коллекторном переходе. Отсюда и название эквивалентная схема, на Соответственно рисунке диодамипоIbпередаточной e1/BF, Ibe1/BR эквивалентной схемыпредставленная - передаточная. и генератором тока Эти элементы отражают тока be1-Ibc1)/Kqb.параметры . Аналогично характеристике надо(Iопределять модели Is и NFпередачу основных носителей в прямом (от эмиттера к коллектору) и обратном ток Ibc1 описывает передаточную характеристику транзистора в инверсном направлении включении. . Выражения для токов Ibe1 и Ibc1 следующие: ⎞⎟ ⎛⎜ ⎞⎟ ⎛⎜ ⎞ ⎛ V ⎞ VbeIbe1 ⋅ ϕT Поскольку ⎛⎜токи отражают токи неосновных носителей ⎝ N R ⋅ ϕ T ⎠ (иногда ⎠ ⎝ NиFIbc1 bc ⎟ ⎜ ⎟, ; I = I ⋅ e − 1 I I e 1 = ⋅ − 1 s ⎜ bc1 s ⎜ так как в идеальном ониbeназываются идеальными составляющими, ⎟ ⎟ ⎝ ⎠ ⎝ ⎠ транзисторе только эти полезные токи и протекают), то показатели NF и NR в экспонентах этих токов обычно практически равны единицам. Vbe иЗависимости V -напряжения на соответствующих p-n переходах, Is гдеРис. кими они и bc принимаются в модели по умолчанию. Та 4.5. относительной величины B от температуры тепДиоды ловой ток. разных значений пара XTB зитные токи основных с токами Ibe2 и для Ibc2 отражают носителей. Они описываются выражениями:
⎛ V I be2 = I se ⋅ ⎜ e be ⎝
( NE ⋅ϕT )
⎛ V ⎞ − 1⎟ ; I bc2 = I sc ⋅ ⎜ e bc ⎠ ⎝
( NC ⋅ϕT ) − 1⎞⎟ . ⎠
В выражениях для основных носителей показатели в экспонентах всегда больше единицы. Соответственно по биполярного умолчаниютранзистора NE=1,5, NC=2. Рис. 4.3. Модель Токи основных носителей влияют на режимные зависимости коэффициентов передачи токов транзистора. Рассмотрим, например, нормальную активную область работы транзистора, когда коллекторный переход включен в обратном, а эмиттерный - в прямом направлении. Тогда, как видно из эквивалентной схемы модели, если пренебречь тепловыми токами по сравнению с режимными, коллекторный ток Ic определяется выражением: Ic=Ibe1/Kqb. Домножив и разделив это выражение на Ie, после несложных преобразований получим:
Ic =
B F K qb 1 + B F K qb
I be1
⋅ I be1 + I be2
BF ⋅ 1 + B F K qb
⋅ I e = α TN 0 ⋅ γ 0 ⋅ I e = α N 0 ⋅ I e.
Таким образом, коэффициент передачи эмиттерного тока α N0 = α TN 0 ⋅ γ 0 , где α TN 0 - коэффициент переноса носителей через область базы, а γ 0 коэффициент инжекции эмиттерного перехода, показывающий, какую часть от полного тока эмиттера составляет полезный ток неосновных носителей. Коэффициент инжекции, как видно из приведенных выражений, зависит от соотношения токов неосновных и основных носителей. А поскольку из-за разных показателей в экспонентах ток Ibe1, имеющий показатель близкий к единице, нарастает с ростом напряжения на переходе быстрее, чем ток Ibe2, имеющий показатель больший единицы,
136
4. Модели элементов
4.2.2. ПОГРЕШНОСТИ И ОБЛАСТЬ АДЕКВАТНОСТИ МОДЕЛИ
Модель PSpice, как и любая другая, имеет определенные погрешности и соответственно ограниченную область адекватности, в которой погрешности невелики4.2. и Модель результатам моделирования можно верить.137 биполярного транзистора Знание области адекватности необходимо для грамотного использования где l и dмодели. - длина иПоэтому диаметр всегда вывода,надо в см; обращать L - индуктивность, нГн.основные Обычно любой вниманиев на эквивалентная схема может быть При оформлена каквыше подсхема индуктивности равны примерно 1 нГн/мм. частотах 200 этиПриведенная грешности используемых моделей. по и использоваться вместо моделив составляет транзистора, что 10 существенно МГц сопротивление такойобычной индуктивности Ом.работы Такое Рассмотрим сначала погрешности активной более области аадекватности расширяет моделирования в ссторону сопротивление уже зобласти метно переходные влияет на характеристики хемы, особенно ввысоких транзистора.область В этой процессы определяются первуюв поскольку сопротивление транзистора со тостороны частот. цепи переходной характеристикой коэффициента передачи ка α(t), очередьэмиттера, эмиттера такого же порядка и даже меньше при больших токах. Поэтому которая представляет собой экспоненту с постоянной времени TF , равной ка пролета сотен мегагерц по крайней мере на частотахвремен поряди 4.3. ПОЛЕВЫЕ И МДП ТРАНЗИСТОРЫ Э0 среднему в прямLом носителей заряда черезиндукт базуивность всегда необходимо учитывать. Индуктивности LЭ и LБ, составляющие направлении: В PSpiceнескольких имеется тринаногенри, типа моделей этого класса: модели этоэлементов индуктивности внутренних порядка t ⎛ соединяющих МДП транзисторов (NMOS, PMOS), полевых транзисторов с p-n проводников, эмиттермодели и базу с внешними выводами. TF ⎞ α t = α ⋅ 1 − e . ⎜ ⎟ ( ) переходомС0(NJF, модель арсенид-галлиевого транзистора СКБи⎠ это внутренние емкости полевого между контактными Емкости КЭ⎝ и PJF) (GASFET). Все их можно отобразить одной обобщенной эквивалентной площадками эмиттера и базы и контактом коллектора. В реальном транзисторе эта переходная характеристика выглядит иначе. схемой, представленной на рис. 4.7 для N-канального транзистора. Не все Сначала имеется некоторая задержка, так как ни один носитель заряда не указанные на ней элементы присутсвуют во всех случаях. В моделях МДП может мгновенно достичь коллекторного перехода. А затем передача тока и Dgs, отражающие переход транзисторов отсутствуют диоды Dgdвремени, начинает возрастать с постоянной определяемойp-nразбросом затвора, и нет етелей. мкости сток-исток Cсхема моделях полевых транзис Рис. 4.7. В Эквивалентная и МДП транзисторов ds. В полевых итоге постоянная времени фронта получторов скоростей носи ается Рис. 4.6. Модель транзистора для высоких частот отсутствует выводвремени подложки и все связанные ним элементы: Dbd и модельдиоды игнорирует меньше среднего пролета TF. Таким собразом, D Cgb, Cbdи завышает и Cbs, сопротивление Rb.погрешность В моделях начальную задержку постоянную вподложки ремени. Эта bs, емкости если рассматривать заметно временах t< Tемкости полевых сказывается транзисторов,при кроме того, нет Cds (она F, или, сток-исток ⋅fT, где fT - предельная частота транзистора. частотную область, при f>0,5 имеется только в модели арсенид-галлиевого полевого транзистора) и нет Отсюда вытекает первое на Rобласть применения модели: Сопротивление сопротивления затвора Rg. ограничение ds, шунтирующее сток-исток, модель только притранзистора. временах, больших TF, и при частотах, имеется достоверна только в модели МДП Это сопротивление отражает K ⎧ 0,5 ⋅ f . 2 ших ем мень ч поверхностными эффектами в транзисторе. В утечку, pопределяемую T п ри 0 ≤ Vgs - Vto ≤ Vds , ⋅ (1 + λ ⋅ Vds ) ⋅ Vgs − V to ⎪ Др га у я погрешность связана свсеописанием процессаодинаково запирания из рисунка, модели и остальном, как видно построены 2 ⎪ K транз тор ывает ис а. Данная модель квазистатическая, то есть она не учит содержат ⎪ p генератор тока, описывающий ВАХ транзистора, а также диоды пври −V −V I =⎨ ⋅между + λ ⋅распределениями Vds ) ⋅ Vds ⋅ 2 ⋅ VVносителей Vdsв <статическом Vgs - V to , и (1имеющихся ds различия заряда базе в приборахgs p-n toпереходов. Описание емкостей и емкости 2 ⎪ вдиодов пе⎪реходном Это проявляется в том, не0имеет существенных отличий отп рассмотренного в целом процессах. ричто Vgs -диффузионные V to < 0 . ранее емкости становятся практически равными нулю,накак толькоосновного переход в моделях других элементов. Поэтому остановимся описании ⎪ ⎩ смещается в обратном направлен элемента модели - генератора тока. ии. При этом не учитывается заряд носителей, накопленных вдали от перехода, постепенно дрейфующих к нему и поддерживающих тем самым в течение некоторого времени ток через закрывшийся переход. Поэтому модель дает более быстрый спад токов закрывшегося транзистора, чем это получается в реальном транзисторе. Длительности спада токов в реальном транзисторе определяются средними временами пролета носителей заряда через соответствующие области, то есть и по этой причине модель достоверна только при временах, больших чем заданные в ней времена пролета. Еще одна погрешность модели проявляется при описании режима насыщения. В модели отсутствует специальный параметр, определяющий постоянную времени в режиме насыщения. Эквивалентная постоянная времени в режиме насыщения представляет собой некоторую функцию от параметров TF и TR, характеризующих частотные характеристики транзистора в нормальной и инверсной активных областях работы. Причем эта функциональная связь дает заметную погрешность по
(
)
[ (
)
]
Выражения для генератора тока, в моделях полевых транзисторов и в моделях первого (самого низкого) уровня сложности МДП транзисторов одинаковы: для нормального включения, когда напряжение сток-исток Vds 138 4. Модели элементов ≥0, Емкость сток-исток в модели арсенид-галлиевого полевого транзистора постоянна. Остальные в этой модели, а также впологой моделях полевых Первая строка этогоемкости выражения соответствует области транзисторов являются обычными барьерными емкостями, описание характеристик, вторая - крутой области, третья - области отсечки. которых приводилось в п. когда 4.1. В транзисторов каждая <0, в этомМДП выражении надо поменять В инверсном включении, Vdsмоделях емкость сток состоит из трех барьерной емкости местами и исток, т.е. компонентов: взаимно поменять индексы d и s. дна перехода, барьерной емкости боковых стенок p-n перехода и диффузионной В приведенном выражении K - удельная крутизна транзистора, Vto емкости. Описание этих емкостей вp моделях уровня 1 традиционно. поИсточниками λ - сопротивления коэффициент, роговое напряжени ли напряжение отсечки, шума ев имоделях считаются объемные Vds определяющий роводстока имость(дробовой транзистора, Vgs, шумы). (тепловой шум) выходную и источник птока и фликкер соответственно внутренние плотности (т.е. после объемных Выражения для спектральной шума объемных сопротивлений) сопротивлений и напряжения затворсток, сток-исток. не отличаются от приведенного в п. 4.1 для диода. А спектральная = Kp ⋅W/L, где Kp - параметр, задаваемый в В МДП шума транзисторах Kpтока плотность источника I равна модели в качестве удельной крутизны, W и L - длина и ширина канала. в Kp=2⋅BETA, где BETA - параметр, задаваемый Для 2полевых транзистоAро In = 4⋅к⋅T⋅ g m + K F ⋅ I F /f, в модели. В арсенид-галлиевых полевых транзисторах выражение для генератора где k - постоянная Больцмана; T - абсолютная температура, f - частота, а тока отличается от приведенного тем, что используется единая Коэффициенты KF и AF - параметры модели, m = dI/dVgs в рабочей аgппроксимация крутой точке. и пологой областей характеристик. определяющие фликкер-шум. В МДП транзисторе выражение несколько Параметр Vto во всех моделях полевых транзисторов является отличается от приведенного за счет коэффициента, учитывающего постоянной величиной. В МДП транзисторах пороговое напряжение геометрические размерына прибора. зависит от напряжения подложке. Эта зависимость аппроксимируется выражением
VT0 = VT0 + GAMMA ⋅
(
)
PHI − Vbs − PHI ,
где VT0, GAMMA и PHI - параметры модели. Рассмотрим подробнее приведенные выражения и установим их связь с электрическими параметрами транзисторов. В пологой области характеристик выражение для тока можно переписать в виде
(
)
2
I = I М ⋅ Vgs Vt 0 − 1 , где Iм - так называемый масштабный ток,
соответствующий напряжению Vgs, отстоящему от порогового на величину Vto. Для транзисторов со встроенным каналом, в частности, для полевых транзисторов, это - ток при Vgs=0 (рис. 4.8а). Для транзисторов с индуцированным каналом это - ток при Vgs=2⋅Vto (рис. 4.8б). Ток Iм, Kp ⋅ (1 + λ ⋅ Vds ) . Крутизна определяющий масштаб ВАХ, равен I М = 2 2⋅ I М ⋅ Vgs Vt 0 − 1 . В прибора, определяемая как S=dI/dVgs, равна S = Vt 0
(
)
точке, соответствующей масштабному току Iм, крутизна Sм равна 2⋅ IМ SМ = . Таким образом, три важнейших параметра Iм, Sм и Vto Vt 0
4.4 Резисторы, конденсаторы, индуктивности, межсоединения
139
4.4. РЕЗИСТОРЫ, КОНДЕНСАТОРЫ, ИНДУКТИВНОСТИ, МЕЖСОЕДИНЕНИЯ
Обычно используется описание резисторов и конденсаторов без обращения к специальным моделям. Однако, в ряде случаев обращение к моделям необходимо (как осуществляется это обращение показано в п. 2.3.2 и в работе [3]). Модели позволяют описать температурные зависимости сопротивления и емкости, разброс параметров, шумы резистора, нелинейную емкость. Модель сопротивления имеет вид r=RH⋅R⋅К(T), где r - результирующее значение сопротивления, RH - номинальное значение сопротивления, заданное в операторе R (см. п. 2.3.2.и работу [3]), R - коэффициент пропорциональности, являющийся параметром модели, К(T) зависящий от температуры коэффициент пропорциональности, который может иметь две различные формы:
К (T) = 1 + TC1 ⋅ (T − Tн ом) + TC2 ⋅ (T − Tн ом) 2 или TCE⋅( T − T ) н ом
К (T) = 101 .
.
В этих выражениях TC1, TC2 и TCE - параметры модели, определяющие температурную зависимость сопротивления, T - текущее значение температуры, для которого рассчитывается схема (она задается оператором TEMP, описанным в п. 3.7), Tном - номинальная температура, для которой заданы значения RH и R (Tном задается опцией TNOM, см. п. 3.9 и оператор .OPTIONS в работе [3]). Способы выбора той или иной температурной модели описаны в [3]. По умолчанию TC1, TC2 и TCE равны нулю, т.е. температурная зависимость не описывается. Таким образом, модель позволяет описывать линейную и квадратичную или экспоненциальную зависимости сопротивления от температуры. Нелинейные резисторы моделью не описываются. Однако построить нелинейный резистор можно, используя зависимые источники тока и напряжения. Методика моделирования нелинейных резисторов изложена в п. 5.2. При анализе шумов сопротивление считается генератором теплового шума 2 с плотностью мощности на единицу частотного диапазона, равной i =4⋅k⋅T/r, где k - постоянная Больцмана.
140
4. Модели элементов
Если рассчитывается пленочный или диффузионный резистор в интегральной схеме, располагающийся в общем случае на подложке или кристалле в виде “змейки”, то его номинал выражается через геометрические размеры следующим соотношением: R=ρ⋅l/w+R′⋅Nизг+Rконт , где ρ - поверхностное сопротивление, имеющее размерность Ом/ (это сопротивление квадратного резистора), l и w - длина и ширина резистора, Nизг - число изгибов, Rконт - сопротивление контактных площадок, R′ описывает повышение сопротивления в местах изгибов. Величина R′ зависит от формы изгиба. Для прямоугольного изгиба R′=2,55ρ. При расчетах схем на высоких частотах порядка сотен мегагерц и выше часто надо учитывать паразитные параметры резисторов. Для дискретных резисторов небольших номиналов необходимо учитывать прежде всего индуктивности выводов. В первом приближении эти индуктивности могут быть рассчитаны по формуле
( )
3⎞ ⎛ L в = 2 ⋅ l ⋅ ⎜ ln 4l − ⎟ , d ⎝ 4⎠ где l и d - длина и диаметр вывода, в см, Lв - индуктивность, в нГн. Обычно эти индуктивности равны примерно 1 нГн/мм. При частотах выше 200 МГц сопротивление такой индуктивности составляет более 10 Ом, что может оказаться существенной добавкой для небольших номиналов резисторов. Для резисторов больших номиналов более существенное влияние на характеристики может оказать емкость между выводами Cв. Полная модель дискретного резистора на высоких частотах представлена на рис. 4.9а.
Рис. 4.9. Модели дискретного резистора а); интегрального резистора с изоляцией диэлектриком б); интегрального резистора с изоляцией p-n переходом в); дискретного конденсатора г); катушки индуктивности д)
В пленочных резисторах гибридных микросхем и в диффузионных резисторах интегральных схем на высоких частотах необходимо учитывать
4.4 Резисторы, конденсаторы, индуктивности, межсоединения
141
паразитные емкости. При изоляции резистора диэлектриком это обычная линейная емкость. При изоляции диффузионного резистора p-n переходом это - нелинейная емкость изолирующего перехода. В этом случае при повышенной температуре может потребоваться учитывать еще и обратный ток изолирующего перехода. Наконец, в некоторых схемах необходимо учитывать и выпрямляющие свойства перехода, если в какие-то моменты времени он может открываться. Строго говоря, на высоких частотах каждый резистор ведет себя как распределенная длинная RC-линия. Однако использовать многосекционные модели длинных линий обычно нецелесообразно. Достаточно хорошей моделью является сосредоточенная П-образная модель, представленная на рис. 4.9б и 4.9в. В ней емкость C представляет собой полную емкость изоляции. Она разбита на две емкости половинной величины. Диоды D1 и D2 - одинаковые диоды с площадью, равной половине площади изолирующего p-n перехода. Вывод П - вывод подложки. Модель емкости в PSpice отражает ее температурную зависимость и нелинейность. Величина емкости в общем случае равна 2 2 Cн⋅C⋅(1+VC1⋅V+VC2⋅V )⋅[1+TC1⋅(T-Tном)+TC2⋅(T-Tном) ], где Cн - номинальное значение емкости, указанное в описывающем ее операторе; C - коэффициент пропорциональности, являющийся параметром модели; VC1, VC2, TC1, TC2 - параметры модели, описывающие нелинейность и температурные зависимости (по умолчанию все они равны нулю); T - текущее значение температуры, для которого рассчитывается схема (она задается оператором TEMP, описанным в п. 3.7); Tном номинальная температура, для которой заданы значения Cн и C (Tном задается опцией TNOM, см. п. 3.9 и оператор .OPTIONS в работе [3]). Модель емкости дает возможность описать только нелинейность, задаваемую полиномом не выше второго порядка. Моделирование емкости с произвольной нелинейностью рассмотрено в п. 5.2. На высоких частотах для дискретных конденсаторов надо учитывать сопротивление потерь r и индуктивность выводов LB, а для некоторых схем с большими времязадающими цепями существенным является учет сопротивления утечки RУ. Полная модель дискретного конденсатора, учитывающая все эти паразитные эффекты, представлена на рис. 4.9г. В интегральных схемах емкости обычно реализуются обратно смещенными p-n переходами и при моделировании отражаются моделями диодов. Линейная постоянная индуктивность в схеме описывается без обращения к модели. Модель используется, если надо описать нелинейность
142
4. Модели элементов
индуктивности или ее температурную зависимость. При использовании модели величина индуктивности определяется соотношением: 2
2
Lн⋅L⋅(1+IL1⋅V+IL2⋅V )⋅[1+TC1⋅(T-Tном)+TC2⋅(T-Tном) ], где Lн - номинальное значение индуктивности, указанное в описывающем ее операторе; L - коэффициент пропорциональности, являющийся параметром модели; IL1, IL2, TC1, TC2 - параметры модели, описывающие нелинейность и температурные зависимости. При моделировании реальной катушки индуктивности часто необходимо учитывать паразитные параметры: сопротивление обмотки r и межвитковую емкость СВ, изображенные на рис. 4.9д. Модель индуктивности дает возможность описать нелинейность, задаваемую только полиномом не выше второго порядка. Моделирование индуктивностей с произвольной нелинейностью рассмотрено в п. 5.2. Способы моделирования межсоединений в схеме - проводов, полосковых линий, кабелей и т.д. - зависят от их длины и от частотного или временного диапазона работы схемы. На низких частотах межсоединения можно вообще не моделировать. На высоких частотах способ моделирования определяется соотношением фронтов на концах межсоединения tф и собственной задержки межсоединения TЗ. Собственная задержка равна TЗ=T0⋅l, где T0 - погонная задержка на единицу длины, l - длина межсоединения. Для полосковых линий и кабелей T0 порядка 5 нс/м. Если tф>>2⋅ TЗ, то такое межсоединение можно считать коротким; если это соотношение не выполняется - длинным. Например, при T0=5 нс/м и tф=10 нс короткими можно считать межсоединения, длина которых меньше 10 см, т.е. в этом случае все соединения на печатной плате обычно относятся к коротким, а межплатные к длинным. При tф=1 нс к коротким можно отнести только соединения длиной менее 1 см. При этом уже большинство соединений на печатной плате нельзя считать безусловно короткими. Короткие межсоединения в большинстве случаев могут отражаться при моделировании просто паразитной емкостью связи Cп, включаемой между землей и узлом, к которому подключено межсоединение. Она состоит из емкости контактной площадки Cк и емкости связи Cсв, определяемой размерами межсоединения: Cсв=C0⋅d⋅l, где C0 - удельная емкость на единицу площади, d и l - ширина и длина межсоединения. Типичные значения: 2 для печатных плат - C0≈0,3 пФ/мм , d≈0,5 мм, погонная емкость на единицу длины ≈ 0,15 пФ/мм;
4.4 Резисторы, конденсаторы, индуктивности, межсоединения 2
143
для интегральных схем - C0≈50 пФ/мм , d≈(5÷10) мкм, погонная емкость на единицу длины ≈ (0,2÷0,5) пФ/мм. Для межсоединений в ИС, произведенных не металлизацией, а подокисной диффузией, необходимо дополнительно учитывать их сопротивление. Тогда величина этого дополнительного сопротивления описывается выражением, приведенным выше для диффузионного резистора, а модель подобного межсоединения оказывается тождественной той, которая приведена на рис. 4.9а. В этом случае узлы, соединяемые этой связью, представляются на принципиальной схеме отдельными узлами, между которыми и включается данная модель. Для длинных межсоединений при расчетах схемы должна использоваться мо-дель длинной линии, которая способна описать отражения от ее концов и другие эффекты. В PSpice 4 имеется модель линии без потерь, характеризуемой своим волновым сопротивлением Z0. Длина линии задержки может характеризоваться задержкой TЗ в секундах. Другой вариант - задание частоты F, при которой на длине линии укладывается часть волны NL. По умолчанию NL=0.25, т.е. F четвертьволновая частота. Модель линии описывает идеальную задержку и имеет эквивалентную схему, представленную на рис. 4.10. Она состоит из идеальных генераторов тока, передающих с задержкой tЗ токи с противоположного конца линии, и идеальных генераторов напряже-ния, передающих с той же задержкой напряжения на противоположном конце линии. Рис. 4.10. Идеальная линия без потерь Таким образом, процессы в линии определяются наложением падающих и отраженных волн. При расчетах переходных процессов в схеме шаг по времени устанавливается не более половины минимальной задержки самой короткой линии в схеме. Поэтому включение в схему коротких линий может вызвать существенное увеличение времени расчета. Так что этой моделью надо отражать только действительно длинные межсоединения. Наряду с этой моделью, начиная с PSpice 5, введена модель линии с потерями. Она характеризуется длиной линии и погонными значениями сопротивления R, индуктивности L, проводимости G и емкости C. Модель описывается многосекционной схемой замещения, представленной на рис.
Рис. 4.11. Распределенная модель линии с потерями
144
4. Модели элементов
4.11. Она требует заметных затрат машинной памяти и времени и применима практически только при наличии в компьютере расширенной памяти. В заключение отметим, что в начале проектирования, до того, как разработана топология и конструкция схемы, точное моделирование большинства межсоединений невозможно, так как неизвестна их протяженность. Исключения могут составлять только кабели, длина которых часто бывает заранее указана в техническом задании. Остальные межсоединения на первых этапах могут моделироваться просто малыми емкостями, подсоединенными между всеми узлами схемы и землей. Анализ чувствительности к этим емкостям позволяет предъявить определенные требования к конструкторскому проектированию, так как дает возможность указать чувствительные узлы схемы, к которым надо стараться подводить по возможности более короткие межсоединения. А после того, как разработана конструкция схемы и проведена трассировка межсоединений, наступает этап верификации проекта. На этом этапе должен быть повторен схемотехнический расчет с учетом конкретных паразитных параметров межсоединений. И только если при этом характеристики схемы окажутся в пределах технического задания, проектирование можно считать завершенным. 4.5. ДРОССЕЛИ, ТРАНСФОРМАТОРЫ
Идеальный дроссель можно отражать той же моделью, которая была рассмотрена в предыдущем параграфе для катушки индуктивности. Идеальный трансформатор можно отразить как систему линейных взаимных индукций двух или более индуктивностей. Для этого используются K элементы, не обращающиеся к модели сердечника. Форма такого оператора: <имя элемента> <список индуктивностей обмоток> + <коэффициент связи>. Пусть, например, требуется описать трансформатор с тремя обмотками, имеющий имя K1. Пусть первая из них названа LPRIM, имеет индуктивность 20 мГн и подключена к узлам 10 и 11. Вторая и третья названы L2 и L3, имеют индуктивности по 60 мГн и подключены соответственно к узлам 12, 13 и 14, 15. И пусть коэффициент связи между индуктивностями 0.999. Тогда операторы описания такого трансформатора будут иметь вид: K1 LPRIM L2 L3 0.999 LPRIM 10 11 20u
4.5. Дроссели, трансформаторы
145
L2 12 13 60u L3 14 15 60u Направления индукции определяются порядком перечисления узлов в операторах описания индуктивностей обмоток. Коэффициент связи, задаваемый оператором описания трансформатора, лежит в пределах от 0 до 1 и определяется соотношением M ij L i ⋅ L j , где Mij -взаимоиндукция индуктивностей Li и Lj. Для трансформаторов с сердечником коэффициент связи обычно не менее 0.999. Напряжение на взаимосвязанных индуктивностях определяется соотношением: Vi=Li ⋅dIi/dt + Mij ⋅dIj/dt + Mik ⋅dIk/dt + ..., где Vi и Ii - напряжение и ток соответствующей обмотки. Модель идеального трансформатора можно дополнить сопротивлениями обмоток и межвитковыми емкостями так же, как это делалось ранее для катушек индуктивностей. Рассмотренные простейшие модели дросселя и трансформатора не учитывают эффектов в магнитном сердечнике: магнитное насыщение, гистерезис и др. Если необходимо учесть эти эффекты, надо использовать нелинейную модель сердечника. Это делается с помощью другой формы оператора, описывающего K элемент: <имя элемента> <список индуктивностей обмоток> + <коэффициент связи> <имя модели сердечника> + [<относительный размер магнитопровода>] . Оператор отличается от ранее рассмотренного ссылкой на модель сердечника, описанную соответствующим оператором вида: .MODEL <имя модели> CORE [<параметры модели>] и тем, что может содержать только одну обмотку, если речь идет о модели дросселя. При использовании этого оператора в описаниях соответствующих индуктивностей обмоток указываются не их индуктивности, а число витков. А значения индуктивностей получаются автоматически в процессе расчета с учетом геометрических размеров и свойств сердечника.
146
4. Модели элементов
Пусть, например, требуется описать тот же трансформатор, что и ранее, но вместо индуктивностей задано, что первичная обмотка имеет 50 витков, а вторичные - по 150 витков. Тогда соответствующие операторы имеют вид: K1 LPRIM L2 L3 0.999 MK1 LPRIM 10 11 50 L2 12 13 150 L3 14 15 150 . .MODEL MK1 CORE ... В последнем операторе указываются значения параметров модели сердечника, полный список которых приведен в работе [3], а их смысл будет пояснен ниже. Модель дросселя с именем MD и с обмоткой LD, состоящей из 100 витков и подключенной к узлам 20, 21, может быть описана операторами: KD LD 0.999 MD1 .MODEL MD1 CORE ... Модели трансформаторов и дросселей, учитывающие свойства сердечника, могут быть дополнены сопротивлениями обмоток и межвитковыми емкостями так же, как это было указано для идеальных моделей дросселей и трансформаторов. Остановимся теперь на моделях магнитных сердечников. К конструктивным и геометрическим параметрам сердечника относятся AREA - площадь сечения магнитопровода, PATH - средняя длина магнитопровода, GAP - эффективная ширина зазора, PACK - коэффициент заполнения сердечника. К физическим параметрам относятся MS - намагниченность насыщения, ALPHA - параметр поля, A - параметр формы безгистерезисной кривой намагниченности, C - постоянная упругого смещения доменных границ, K - постоянная подвижности доменов, GAMMA - параметр демпфирования доменов. Параметр LEVEL определяет в PSpice 5 уровень модели. Уравнения, описывающие модель в PSpice 4 для сердечника без воздушного зазора, следующие: Mбг(Hэф) = MS⋅F(Hэф/A),
4.5. Дроссели, трансформаторы
147
⎧⎪ cth(x) − 1 x для PSPIC E 4 или дл я LEVEL = 1, F(x) = ⎨ x для LEVEL = 2, ⎪⎩1+ x Hэф = H + ALPHA⋅Mбг,
Mб г− M dM б г dM C = + ⋅ . δ ⋅ K / μ 0 − ALPHA ⋅ ( M б г − M ) 1 + C dH dH В этих уравнениях M - намагниченность, H - напряженность поля, Mбг безгистерезисная намагниченность, Hэф - эффективная напряженность поля, δ - коэффициент, равный +1 при увеличении H (при dH/dt>0) и -1 при уменьшении H. Эти уравнения определяют кривую гистерезиса сердечника без воздушного зазора. Влияние зазора определяется соотношением H⋅PATH + HЗ ⋅GAP = n⋅I, где HЗ - напряженность поля в зазоре, n⋅I - произведение числа витков обмотки на протекающий в них ток. При этом предполагается, что ширина зазора мала по сравнению с другими размерами сердечника, краевые эффекты малы и намагниченность в зазоре пренебрежимо мала. Частотные свойства магнитного материала определяются параметром GAMMA, представляющим собой граничную частоту магнитного материала. Мгновенные значения напряженности M(t) определяются уравнением dM ( t ) = GAMMA ⋅ [ M ( H) − M ( t )] , dt
где M(H) - статическая кривая намагниченности. Параметры модели сердечника подбираются в PSpice 5 с помощью программы PARTS (см. работу [2]).
4.6. МОДЕЛИ ИСТОЧНИКОВ СИГНАЛОВ
Встроенные в PSpice модели источников сигналов - напряжений и токов, перечислялись в п. 2.3.5 и подробно описаны в работе [3]. Поэтому здесь рассмотрим только дополнительные возможности генерации сигналов, для которых нет встроенных моделей. Одна из таких возможностей - смешение стандартных сигналов с помощью зависимых источников тока или напряжения с опцией POLY (см. п. 2.3.6). Например, если надо получить радиосигнал, модулированный по амплитуде другим сигналом, это можно сделать, задав синусоидальное напряжение в один узел, моделирующий сигнал - в другой, а с помощью зависимого источника напряжения передать произведение этих сигналов в третий узел. Пусть, например, требуется задать такой модулированный прямоугольными импульсами радиосигнал в узел с номером 1. Тогда, если ввести в схему два вспомогательных узла с номерами, например, 101 и 102, то задача выработки такого сигнала может быть решена следующими операторами: VSIN 101 0 SIN(0 1 10MEG) VPULS 102 0 PULSE(0 0.1 0 1U 1U 10U 100U) EMOD 1 0 POLY(2) 101 0 102 0 0 0 0 0 1 Первый из этих операторов задает в узел 101 синусоидальный сигнал с частотой 10 мГц и с амплитудой 1 В. Второй оператор задает в узел 102 периодический импульсный сигнал амплитудой 0,1 В, длительностью 10 мкс, фронтами по 1 мкс и с периодом 100 мкс. А третий оператор задает в узел 1 произведение этих сигналов (среди коэффициентов полинома указан ненулевым и равным 1 только один, соответствующий произведению сигналов). Другая возможность описания сигналов произвольными функциями использование зависимых источников напряжения или тока с опцией VALUE (см. п. 2.3.9 и операторы E и G в работе [3]). В выражениях, записываемых с этой опцией, можно использовать переменную времени TIME, чего нельзя делать в других выражениях. Например, оператор E 1 0 VALUE = {SIN(6.28*10MEG*TIME+SIN(6.28*10KHZ*TIME))} описывает гармонический сигнал частотой 10 мГц, фаза которого модулирована синусоидальным сигналом частотой 10 кГц. Еще одна возможность моделирования сложных последовательностей сигналов - использование преобразования цифрового сигнала в аналоговый. Но эта возможность будет описана позднее при рассмотрении смешанного цифро-аналогового моделирования в PSpice. 5. М А К Р О М О Д Е Л И Р О В А Н И Е
5.6. Формальные макромодели аналоговых устройств
149
5.1. НАЗНАЧЕНИЕ И ПРИНЦИПЫ ПОСТРОЕНИЯ МАКРОМОДЕЛЕЙ
Макромоделью называется упрощенная модель некоторого устройства, отражающая его реакцию на внешние сигналы. Исходными данными для построения макромодели и идентификации ее параметров являются внешние характеристики моделируемого устройства. Структура макромодели не обязательно должна отражать внутреннюю структуру устройства и процессы, протекающие в нем. Достаточно, чтобы правильно описывались его внешние параметры и характеристики. Макромоделями могут описываться как аналоговые, так и цифровые устройства. В п. 5 речь пойдет только об аналоговых устройствах. Моделирование цифровых схем рассмотрено в работе [2]. Создание макромоделей преследует две цели. Первая - сокращение затрат машинного времени и памяти при моделированиии сложных электронных схем. Например, современные интегральные операционные усилители, триггеры и другие схемы могут содержать десятки транзисторов. И моделирование электронной аппаратуры, содержащей десятки и сотни операционных усилителей, триггеров и других интегральных элементов может требовать непомерных затрат машинного времени и памяти. Еще острее эти проблемы при моделировании больших интегральных схем, содержащих сотни тысяч и миллионы транзисторов. В подобных случаях использование PSpice без макромоделей невозможно (хотя некоторые программы на основе SPICE могут решать очень большие задачи, но все равно без использования макромоделей затраты времени на расчет становятся непомерными). Другая цель, преследуемая при создании макромоделей, - еще более принципиальная. Если аппаратура строится на готовых схемах, в частности на интегральных микросхемах, то пользователь просто не в состоянии моделировать их на уровне компонентов, поскольку не знает параметров использованных компонентов (например, транзисторов), внутренних паразитных параметров, а иногда не знает и принципиальной схемы. Обычно вся имеющаяся у него информация - электрические параметры и характеристики используемой схемы. И, значит, единственный путь использовать макромодели. В настоящее время серьезные фирмы, выпускающие микросхемы, как правило, снабжают их не только справочными данными по параметрам и характеристикам, но и макромоделями для программ типа SPICE. Пользуясь этими макромоделями, можно, еще не приобретая самих схем, промоделировать проектируемое устройство на их основе и, если результаты удовлетворительны, то решать вопрос о приобретении комплектующих.
150
5. Макромоделирование
К сожалению, далеко не все схемы на рынке ИС снабжаются уже разработанными макромоделями. Поэтому часто разработчику аппаратуры приходится самому создавать библиотеку макромоделей для наиболее часто используемых схем. А для грамотного решения этой задачи необходимо знать принципы построения макромоделей. Существуют две крайние точки зрения на построение макромоделей. Первая из них заключается в упрощении исходной принципиальной схемы моделируемого устройства. Например, источники тока, содержащие в реальных ИС по нескольку транзисторов, заменяются идеальными источниками тока с конечным сопротивлением; исключаются промежуточные, стабилизирующие, развязывающие цепи; используются идеализированные компоненты. Достоинством таких макромоделей является их повышенная точность. Недостатков у такого пути несколько: во-первых, сложность идентификации параметров такой макромодели по внешним характеристикам устройства; во-вторых, индивидуальный подход к построению каждой макромодели, возможный только при знании принципиальной схемы моделируемого устройства. Если, например, речь идет о создании макромодели какой-то ИС, то этот путь доступен обычно для разработчика этой ИС, а не для рядового пользователя. Еще одним недостатком является малая эффективность подобных макромоделей. Они, конечно, ускоряют расчет по сравнению с моделированием на уровне компонентов, но выигрыш обычно получается не очень большим.
5.2. Моделирование нелинейных двухполюсников
151
Другой путь - создание чисто формальных макромоделей, никак не отражающих внутреннюю структуру устройства. Этот путь может быть достаточно легко формализован и распространен на большинство аналоговых устройств. Макромодели получаются простыми и эффективными, их параметрами являются непосредственно справочные данные моделируемых устройств. Но точность подобных макромоделей не всегда удовлетворительна. Нередко на практике используется комбинация этих двух подходов. Макромодель строится как функциональная, но некоторые ее каскады учитывают особенности построения реального устройства. Такой подход часто оказывается оптимальным с точки зрения достижения компромисса между точностью и эффективностью макромодели. С точки зрения практического использования макромоделей возможны несколько вариантов. Можно каждый раз включать описание необходимой макромодели в исходный файл задания. Но это нецелесообразно, если макромодель имеет не одноразовое применение. Целесообразнее оформлять макромодели в виде подсхем и включать их в соответствующую библиотеку. Тогда многократное применение макромодели не будет вызывать сложностей. В некоторых случаях возможен и наиболее целесообразен еще один подход: автоматизация включения макромоделей в исходный файл с помощью специальной вспомогательной программы. Это имеет смысл делать в сложных случаях, к которым, например, относятся описанные в п. 5 макромодели радиационных эффектов и электротепловых расчетов. В подобных случаях вспомогательная программа осуществляет как бы макрорасширение входного языка PSpice. Перед запуском исходного файла на счет такая программа просматривает текст, находит в нем предназначенные ей команды или имена моделей и в соответствии с ними преобразует текст исходного файла, встраивая в него необходимые макромодели и проводя другие изменения в описании схемы. А после этого преобразованный файл поступает на вход PSpice. Таким образом, расширяются возможности PSpice, в программу как бы включаются макромодели, не требуя от пользователя никакой дополнительной работы по их описанию. Имеется подобная программа, осуществляющая, в частности, макромоделирование на основе PSpice радиационных и электро-тепловых эффектов. 5.2. МОДЕЛИРОВАНИЕ НЕЛИНЕЙНЫХ ДВУХПОЛЮСНИКОВ
При разработке макромоделей нередко в качестве элементов требуются нелинейные двухполюсники. Однако в ряде случаев нелинейные
152
5. Макромоделирование
двухполюсники имеют и самостоятельное значение как формальная модель какого-либо нелинейного двухполюсного электронного компонента. Модели нелинейных двухполюсников могут строиться на основе зависимых источников E или G с табличным описанием коэффициента передачи (см. п. 2.3.9). Напомним основные сведения о них. Элемент E описывает источник напряжения, элемент G - источник тока. Аргументом таблицы может быть любое арифметическое выражение, включающее токи независимых источников напряжения и потенциалы. Таблица должна описывать однозначную функцию. Между точками таблицы осуществляется линейная интерполяция. Вне описанного диапазона изменения аргумента таблицы значения источников постоянны и равны соответствующим крайним значениям, указанным в таблице. При описании нелинейного двухполюсника элементом типа G аргументом таблицы задается напряжение на его зажимах и тогда таблица описывает зависимость тока двухполюсника от напряжения на нем. Например, если двухполюсник должен быть включен между узлами 5 и 7 (рис. 5.1а), то соответствующий оператор может иметь вид: G1 5 7 TABLE={V(5,7)} (0 0) (1 1E-3) .., где после указания аргумента - напряжения между узлами 5 и 7, даются пары значений аргумент-функция, описывающие таблицу. При описании нелинейного двухполюсника элементом типа E аргументом таблицы должен быть ток данного элемента. Однако в выражение, указывающее аргумент таблицы, могут входить только токи независимых идеальных источников напряжения. Поэтому последовательно с элементом типа E надо включить независимый источник нулевого напряжения (V1 на рис. 5.1б) и его ток сделать аргументом таблицы. Тогда соответствующие Рис.5.1. Моделирование операторы могут иметь вид: двухполюсника элементом G (а), элементом E (б)
V1 77 7 E1 5 77 TABLE={V1} (0 0) (1 1E-3) ...
5.2. Моделирование нелинейных двухполюсников
153
Для многих нелинейных двухполюсников можно с равным правом использовать как E, так и G элементы. Это относится к двухполюсникам, ВАХ которых однозначна и по току, и по напряжению (например, ВАХ рис. 5.2а). Тогда, несомненно, проще применять моделирование G элементами. Однако в тех случаях, когда взаимная однозначность тока и напряжения не соблюдается, использовать можно только один конкретный тип зависимого источника. Например, в N-образной характеристике (рис. 5.2б), свойственной, в частности, туннельным диодам, зависимость I(V) однозначна, а зависимость V(I) неоднозначна. Поэтому для моделирования подобных двухполюсников можно использовать только G элементы. То же самое относится к характеристике, представленной на рис. 5.2в, и очень часто используемой как элемент макромоделей. В этой ВАХ имеются участки постоянного тока и на этих участках зависимость V(I) неоднозначна - одному значению тока соответствует множество значений напряжения. Поэтому такие ВАХ можно описывать только G элементами. В то же время в Sобразной ВАХ (рис. 5.2г), свойственной, например, динисторам, однозначной является зависимость U(I) и неоднозначной - I(U). Поэтому для таких моделей можно использовать только E элементы.
Рис. 5.2. ВАХ, изображаемые элементами: а) E и G; б),в) только G; г) только E
При задании таблицы, описывающей ВАХ, надо не забывать, что вне указанных в ней пределов значений аргумента функция постоянна, т.е. для G элементов постоянен ток, а для E элементов - напряжение. Иногда это полезно, например, для кривой рис. 5.2в, в которой достаточно указать только две точки излома в таблице. В других случаях, например, для кривых рис. 5.2а, б, г, надо учитывать, что при больших отрицательных и положительных значениях аргумента ВАХ исказятся - для рис. 5.2а, б будет постоянный ток, а для рис. 5.2г - постоянное напряжение. Если это недопустимо, надо задавать в таблице пределы изменения аргумента такими, чтобы они перекрывали все возможные на практике значения.
154
5. Макромоделирование
Если составляется модель какого-то компонента, например туннельного диода, целесообразно оформить ее в виде подсхемы и включить в библиотеку, чтобы потом ее легко было использовать. Например, .SUBCKT TUNNEL * Модель туннельного диода 1 - анод, 2 - катод .G1 ANODE CATHODE TABLE={V(ANODE,CATHODE)} (-1 1) (0 0) + (0.02 3m) ... .ENDS TUNNEL По тем же принципам можно, конечно, строить модели не только с табличными, но и с другими аналитическими функциями, если имеется аналитическое описание моделируемого двухполюсника. Нередко для построения макромоделей требуются нелинейные двухполюсники, имеющие характеристики идеализированных диодов, т.е. имеющие очень малое сопротивление в прямом направлении и очень большое в обратном. Конечно, такие двухполюсники можно строить по приведенной выше методике на основе зависимых источников. Однако проще и эффективней использовать для этих целей модели диодов. При этом все параметры диода можно взять по умолчанию, задав только один: показатель в экспоненте N. Величину N целесообразно задавать малой, например, N=0.01. Это примерно в 100 раз уменьшит прямые падения напряжения, свойственные реальным диодам, и приблизит диод к идеальному. Если нужен двухполюсник, имеющий фиксированное сопротивление R в прямом направлении и большое в обратном, то его можно построить, включив последовательно резистор R и идеализированный диод. Теперь остановимся на моделировании управляемых двухполюсников с произвольными нелинейностями, заданными в табличном виде. Фактически, речь пойдет о трехполюсниках, представляющих собой нелинейный источник тока, управляемый сигналом (например, напряжением) на входном узле (рис. 5.3а). Выходной ток зависит от напряжения на источнике тока (от разности потенциалов узлов 2 и 3) и от входного сигнала (разности потенциалов узлов 1 и 3). Выходные характеристики заданы семейством табличных кривых (рис. 5.3б), параметром которого является входной сигнал. Эти кривые могут быть получены либо в результате измерений на реальном объекте, либо в результате машинных расчетов на полной модели с помощью PSpice (оператором .DC с двумя изменяемыми напряжениями) или другой программы моделирования. К описанному виду сводятся очень многие элементы и схемы, начиная с транзисторов и кончая усилителями с
5.2. Моделирование нелинейных двухполюсников
155
регулировкой усиления. Посмотрим, как можно построить макромодель такого элемента.
Рис. 5.3. Управляемый источник (а), семейство кривых (б),базовая функция (в)
Поскольку выходной ток I является табличной функцией двух переменных - входного и выходного напряжений, а в PSpice такие таблицы не предусмотрены, то таблицу по входной переменной и ее интерполяцию надо организовывать искусственно. Это можно сделать, представив I в виде суммы произведений табличных кривых, соответствующих значениям xi входного сигнала, на базовые функции, вид которых представлен на рис. 5.3в. Такое представление I в виде ряда обеспечивает точное отображение табличных кривых при заданных значениях xi и линейную интерполяцию двух ближайших кривых при значениях x, не совпадающих с заданными величинами xi. Пользуясь средствами PSpice 5 базовую функцию проще всего описать, пользуясь табличной функцией, например, с помощью следующего оператора: .FUNC FB(X, XI, DX) TABLE(X, XI-DX, 0, XI, 1, XI+DX, 0) В этой функции DX - шаг по входному сигналу, т.е. по параметру семейства кривых. При необходимости функцию легко можно изменить, введя неравномерный шаг по параметру. Если при расчетах на модели возможен выход входного сигнала за пределы, указанные в исходных данных, то для крайних значений входного сигнала функцию лучше изменить, обеспечив, например, одну и ту же выходную кривую для сигналов, превышающих заданный диапазон. Иначе при выходе сигнала за пределы диапазона выходной ток станет равным нулю, что вряд ли будет отвечать реальным свойствам моделируемого объекта. Например, для конечной точки диапазона целесообразно ввести функцию:
156
5. Макромоделирование
.FUNC FEND(X, XI, DX) TABLE(X, XI-DX, 0, XI, 1) Сама модель в этом случае представляет собой управляемый источник тока с опцией VALUE: G 2 0 VALUE = {FB(V(1),2,2)*TABLE(V(2),0,0,2,2,20,3)+...} Сложность заключается в том, что арифметическое выражение должно быть записано в одну строку, что даже при небольших таблицах обычно невозможно, даже если использовать оператор .WIDTH IN 132, увеличивающий длину строки. Выходом из положения может служить включение параллельно нескольких зависимых источников, каждый из которых использует описание только одной или двух таблиц. Так для примера рис. 5.3 можно записать модель в виде: G1 2 0 VALUE = {FB(V(1),2,2)*TABLE(V(2),0,0,2,2mA,10,3mA)} G2 2 0 VALUE = {FB(V(1),4,2)*TABLE(V(2),0,0,4,5mA,10,6mA)} G3 2 0 VALUE = {FEND(V(1),6,2)*TABLE(V(2),0,0,6,9mA,10,10mA)} В последнем операторе использована функция FEND, что обеспечивает повторение максимальной кривой для любых сигналов, превышающих 6 В. Для PSpice 4, не содержащего табличных функций описание несколько усложняется. В этом случае базовая функция может быть записана, например, следующим выражением: .FUNC FB(X,XI,DX) 1/(2*DX)*(ABS(X-XI+DX)-2*ABS(X-XI)+ABS(X-XIDX)), которое дает тот же результат, что и приведенное ранее описание. Таблицы выходных кривых должны быть предварительно транслированы в напряжения или токи зависимых источников с опцией TABLE, т.к. это единственная возможность в PSpice 4 оперировать табличными функциями. И только затем эти токи или напряжения могут умножаться на базовые функции и суммироваться. В итоге макромодель примера рис. 5.3 может иметь вид: E3 3 0 TABLE {V(2)} = 0,0,2,2,10,3 E4 4 0 TABLE {V(2)} = 0,0,4,5,10,6 E5 5 0 TABLE {V(2)} = 0,0,6,9,10,10 R3 3 0 1
5.2. Моделирование нелинейных двухполюсников
157
R4 4 0 1 R5 5 0 1 G 2 0 VALUE ={FB(V(1),2,2)*V(3)+FB(V(1),4,2)*V(4)+FB(V(1),6,2)*V(5)} Здесь узлы 3, 4, 5 - вспомогательные, на которых формируются напряжения, описываемые таблицами. А резисторы R3, R4, R5 включены только для того, чтобы эти узлы не оказались висячими. Перейдем теперь к рассмотрению моделирования нелинейных емкостных и индуктивных двухполюсников. В п. 4.4 указывалось, что встроенные в PSpice модели емкостей и индуктивностей могут описывать только нелинейности, представляемых полиномами не выше второго порядка. Если же требуется моделировать иные нелинейности, описываемые какими-нибудь математическими выражениями или представленные в табличном виде, то это можно сделать с помощью эквивалентных схем, изображенных на рис. 5.4. Если требуется поcтроить модель нелинейной емкости, зависимость которой от напряжения выражается произвольной функцией F(UC), то эту функцию целесообразно представить в виде F(UC)=C0⋅f(UC), где C0 - емкость при UC=0. Эквивалентная схема нелинейной емкости приведена на рис. 5.4а. Она включает емкость C с номиналом C0, токосъемный источник нулевого напряжения V0 и зависимый источник тока G0, осуществляющий перемножение тока емкости IC на функцию f(UC)-1. В результате, если учесть, что IC=dUC/dt, то суммарный ток через внешние выводы модели равен IC+IC⋅[f(UC)-1]= =IC⋅f(UC)=F(UC)⋅dUC/dt. Нелинейная емкость легко может 3 быть оформлена как подсхема. Например, если F(UC)=C0⋅(1+UС ), то такая подсхема может иметь вид: SUBCKT CN 1 2 PARAMS: C0=1P C 1 CN1 {C0} V0 CN1 2 G0 1 2 VALUE = {I(V0)*PWR(V(1,CN1),3)} .ENDS CN
158
5. Макромоделирование
Рис. 5.4. Модели нелинейной емкости (а) и индуктивности (б)
Для построения некоторых макромоделей требуются емкости, имеющие разные значения при нарастании и спаде напряжения, т.е. при разных направлениях тока. Такие элементы позволяют моделировать с помощью RC цепочек разные значения фронтов нарастания и спада сигнала. Подобную нелинейную емкость можно создать на основе той же эквивалентной схемы рис. 5.4а, изменив функцию нелинейности. Ниже приведено возможное описание такой емкости в виде подсхемы: SUBCKT CNN 1 2 PARAMS: C1=1P C2=2P * емкость равна C1 при dU/dt>0 и C2 при dU/dt<0 C 1 CN1 {C2} V0 CN1 2 G0 1 2 VALUE = {0.5*(ABS(I(V0))+I(V0))*(C1/C2-1)} .ENDS CN В этом описании ток источника G0 равен нулю при отрицательном токе через емкость C. Поэтому при отрицательных токах действует только емкость C, номинал которой равен величине C2. А при положительных токах действие емкости C и источника G0 складывается, давая в итоге величину емкости, равную C1. Если надо поcтроить модель нелинейной индуктивности, зависимость которой от тока выражается произвольной функцией F(IL), то эту функцию целесообразно представить в виде F(IL)=L0⋅f(IL), где L0 - индуктивность при IL=0. Эквивалентная схема нелинейной индуктивности приведена на рис. 5.4б. Она включает индуктивность L с номиналом L0, токосъемный источник нулевого напряжения V0 и зависимый источник напряжения E0, осуществляющий перемножение напряжения индуктивности UL на функцию f(IL)-1. В результате если учесть, что напряжение на индуктивности равно UL=dIL/dt, то суммарное напряжение между внешними выводами модели
5.3. Моделирование линейных многополюсников
159
равно UL+UL⋅[f(IL)-1]=UL⋅f(IL)=F(IL)⋅dIL/dt. Нелинейная индуктивность может 3 быть оформлена как подсхема. Например, если F(IL)=L0⋅(1+IL ), то такая подсхема может иметь вид: .SUBCKT LN 1 2 PARAMS: L0=1U L 1 LN1 {L0} V0 LN1 LN2 E0 LN2 2 VALUE = {V(1,LN1)*PWR(I(V0),3)} .ENDS LN 5.3. МОДЕЛИРОВАНИЕ ЛИНЕЙНЫХ МНОГОПОЛЮСНИКОВ
Макромодели линейных многополюсников могут создаваться двумя путями: использованием эквивалентных схем, состоящих из сопротивлений, емкостей, индуктивностей, зависимых источников напряжения и тока, или непосредственной реализацией. Примером первого подхода может служить модель кварцевого резонатора, представленная на рис. 5.5. Она отражает как последовательный, так и параллельный резонанс. Их частоты определяются выражениями: Рис. 5.5. Модель кварцевого резонатора
f п ос л = fп ар =
1 2π L к C к
; 1
2π L к C к C 0 (С к + C 0 )
= f п ос л 1 +
Добротность резонатора равна Q =
Cк . C0
2πf 0 L к , где f0 - частота последоваrк
тельного или параллельного резонанса. Добротность и параметры rк, C0 определяются типом резонатора, а параметры Lк, Cк рассчитываются из значений Q и f0. Для моделирования линейной зависимости резонансной частоты от температуры в модели индуктивности Lк следует задать коэффициент квадратичной температурной зависимости TC2.
160
5. Макромоделирование
Другой путь создания макромоделей линейных многополюсников аппроксимация частотных зависимостей матричных коэффициентов системы уравнений. Рассмотрим для примера модель трехполюсника, к которой сводятся многие узлы электронных схем. Система его уравнений может быть записана через Y параметры: I1=Y11⋅U1+Y12⋅U2 , I2=Y21⋅U1+Y22⋅U2 . Частотные зависимости матричных коэффициентов Y11, Y12, Y21, Y22 могут быть заданы в табличном виде по результатам измерения на реальном объекте или получены в результате машинного эксперимента - расчета полной модели объекта с помощью PSpice или какой-то другой моделирующей программы. На рис. 5.6 представлены некоторые возможные макромодели. В этих моделях G11 и G22 - зависимые источники тока, управляемые напряжениями на своих выводах, G12 и G21 - зависимые источники тока, управляемые напряжениями на противоположных выводах (например, G12 управляется напряжением между узлами 2 и 3). E11 и E22 - зависимые источники напряжения, управляемые протекающим через них током (необходимые для реализации этого токосъемные источники нулевого напряжения на рисунке не показаны). В схеме рис. 5.6а коэффициенты передачи (крутизна) источников тока G11, G22, G12 и G21 равны соответственно Y11, Y22, Y12, Y21,. Задание частотной характеристики в табличном виде может осуществляться с помощью опции FREQ. Например, источник G11 может быть описан оператором вида G11 1 3 FREQ {V(1,3)} (0 0 0) (1kHz -10 -30) ... В этом операторе, как указывалось в п. 2.3.9, частотная характеристика коэффициента передачи задается таблицей, каждая сторока которой содержит частоту, модуль коэффициента передачи в децибеллах и фазу в градусах. При интерполяции таблицы модуль коэффициента передачи считается линейно зависимым от логарифма частоты, а фаза - линейно зависимой от частоты. Вне диапазона частот, указанного в таблице, модуль и фаза считаются постоянными и равными соответствующим крайним табличным значениям.
5.3. Моделирование линейных многополюсников
161
Рис. 5.6. Макромодели линейных трехполюсников: а, б, д - активные трехполюсники; в, г - пассивные трехполюсники
В схеме рис. 5.6б источники G12 и G21 задаются так же, а частотные характеристики источников напряжения E11 и E22 описываются таблицами не проводимостей, а импедансов, которые легко могут быть пересчитаны из таблиц проводимостей. В пассивных трехполюсниках, не содержащих активных компонентов, как известно из теории электрических цепей, Y12=Y21. При моделировании таких трехполюсников могут использоваться более компактные схемы, показанные на рис. 5.6в и г, где G12 управляется разностью напряжений в узлах 1 и 2. В этих эквивалентных схемах используется только по три источника. Однако их характеристики несколько изменяются. В данных схемах узловые проводимости равны Y11=S11+S12, Y22=S22+S12, Y12=S12, где S11, S12, S22 соответственно коэффициенты передачи источников G11, G12, G22. Отсюда следует, что задаваемые значения коэффициентов передачи должны пересчитываться по выражениям S11=Y11-Y12, S22=Y22-Y12. Приведенные варианты моделей, показанных на рис. 5.6а,б и в,г, попарно тождественны друг другу в частотных точках, заданных в таблицах. Зачем же могут потребоваться эти разные варианты? Все дело в указанных выше способах интерполяции и экстраполяции таблиц, принятых в PSpice. Вследствие того, что модуль коэффициента передачи считается линейно зависимым от логарифма частоты, а фаза - линейно, приведенные модели теряют эквивалентность при частотах, лежащих между точками таблиц или
162
5. Макромоделирование
вне частотного диапазона, описываемого таблицами. Поэтому при выборе того или иного варианта надо ориентироваться на свойства моделируемого объекта, т. е. на то, частотные характеристики какой величины проводимости или импеданса - ближе к принятым правилам интерполяции: к линейной зависимости фазы от частоты и модуля от логарифма частоты. Правильный выбор варианта может позволить при той же точности существенно уменьшить число строк, задаваемых в таблице, или при той же таблице повысить точность модели. Более того, иногда целесообразно дополнить модель какими-то сосредоточенными реактивностями, как, например, сделано в схеме рис. 5.6д для входной и выходной емкостей C11 и C22. Дело в том, что принятые в PSpice правила интерполяции не позволяют даже удовлетворительно описать частотную зависимость проводимости или импеданса простой емкости. В емкости проводимость линейно падает с частотой, а импеданс обратно пропорционален частоте, что не совпадает с принятой линейной зависимостью от логарифма частоты. Поэтому, если, например, характер какой-то проводимости в некотором диапазоне частот близок к емкостному, целесообразно отразить эту проводимость емкостью, а в параллельный ей зависимый источник включить только отклонение характеристики от чисто емкостной. Описанные макромодели позволяют очень точно отразить частотные свойства различных электронных элементов. Например, по описанной методике можно создать линейную макромодель биполярного транзистора на высоких частотах и в области СВЧ. Можно создать достаточно точную линейную макромодель операционного усилителя, причем в ней можно отразить не только входы и выход, но и выводы подключения внешних цепей коррекции. Конечно, операционный усилитель не трехполюсник; он имеет минимум 4 полюса (2 входа, выход и общая точка), а с учетом выводов подключения коррекции имеет 5-7 полюсов. Но макромодель его можно составить по тому же принципу, какой описан выше для трехполюсника. Можно создавать модели и сложных функциональных элементов, которые иными способами моделировать трудно. Например, на рассмотренных принципах была создана макромодель элемента на поверхностных акустических волнах, который имеет чрезвычайно сложную частотную характеристику, одна из которых представлена на рис. 5.7. Исходные данные брались из расчета распределенной физической модели элемента и автоматически подставлялись в макромодель. Эксперименты показали высокую точность модели в частотной области - погрешности не превышали долей процента и лежали в пределах ошибок округления.
5.3. Моделирование линейных многополюсников
163
Рассмотренные модели на основе непосредственного моделирования элементов матрицы очень хороши, компактны и точны при частотном анализе. К сожалению, при расчетах переходных процессов с их помощью
Рис. 5.7. Характеристика элемента ПАВ
возникают серьезные проблемы, рассмотренные в п. 2.3.9. Может возникать расходимость вычислений, могут получаться неверные результаты. Поэтому применять их для расчета переходных процессов следует с осторожностью. 5.4. МАКРОМОДЕЛЬ ОПЕРАЦИОННОГО УСИЛИТЕЛЯ ПРОГРАММЫ PARTS
Программно реализованной макромодели операционного усилителя в PSpice нет. Однако PSpice предоставляет широкие возможности по разработке макромоделей в виде эквивалентных схем. Библиотеки PSpice содержат много таких макромоделей, разработанных для конкретных операционных усилителей. Входящая в PSpice программа идентификации параметров моделей (см. п. 6) дает возможность автоматически сгенерировать некоторую стандартную макромодель операционного усилителя в виде подсхемы и определить ее параметры, исходя из справочных данных.
164
5. Макромоделирование
Рис. 5.8. Макромодель операционного усилителя
В несколько упрощенном виде эквивалентная схема этой макромодели представлена на рис. 5.8. На рисунке обозначены номера узлов, являющихся в подсхеме внешними : 1 - неинвертирующий вход; 2 - инвертирующий вход; 3 - узел подключения положительного питающего напряжения; 4 - узел подключения отрицательного питающего напряжения; 5 - выход; 6, 7 - узлы подключения внешней корректируюей емкости. Представлен вариант входного каскада на биполярных n-p-n транзисторах. Варианты для p-n-p а также для полевых транзисторов отличаются практически только типом входных элементов. Корректирующая емкость C2 включается в макромодель, если усилитель имеет внутреннюю коррекцию. В этом случае узлы 6 и 7 внутренние. В макромоделях усилителей с внешней коррекцией эта емкость внешняя, подключаемая пользователем. Тогда узлы 6 и 7 являются внешними. Внешние узлы макромодели: инвертирующий и неинвертирующий входы (на рисунке обозначены как (-) и (+)), выход (OUT), выводы положительного и отрицательного напряжений питания (E+, E-). В макромодели усилителя с
5.4. Макромодель операционного усилителя
165
внешней коррекцией, кроме того, внешними являются узлы, к которым подключается емкость C2. Рассмотрим подробнее назначение отдельных элементов макромодели и выясним, какие свойства операционного усилителя данная макромодель описывает. Входной каскад макромодели выполнен непосредственно на транзисторах того вида (биполярных или полевых), которые стоят на входе усилителя. Это имеет свои достоинства и недостатки. Некоторые нелинейные эффекты на входе описываются достовернее, чем в чисто формальной макромодели. Однако возникают серьезные трудности с идентификацией параметров транзисторов и резисторов входного каскада, влияющих на входной импеданс и быстродействие макромодели. Поэтому программа PARTS, вообще, не подгоняет входной импеданс под справочные данные, что является, конечно, серьезным недостатком для многих применений макромодели. Входная емкость получается равной нулю, поскольку PARTS не задает емкостей транзистора. Еще один недостаток - отсутствие описания пробоя (отпирания охранных диодов или обратимого пробоя эмиттерных переходов) при больших запирающих входных сигналах. Остановимся подробнее на варианте входного каскада на биполярных транзисторах. Входное сопротивление Rп для парафазного сигнала в линейном режиме определяется режимным током транзисторов (задается источником IEE), их коэффициентами передачи базового тока β и сопротивлениями RC1, RC2. Rп примерно равно β⋅(2Re+Rэ1+Rэ2), где Re=RE1=RE2, Rэi - дифференциальное сопротивление эмиттерного перехода i-го транзистора. При нулевых напряжениях на входе Rэ1=Rэ2=Rэ=25/(IEE/2)=50/IEE и Rп=β⋅2(Re+Rэ). Коэффициент β равен параметру модели транзистора BF, если не описаны зависимости β от режима (PARTS эти зависимости не описывает). В итоге Rп=2⋅BF⋅(Re+50/IEE). Поэтому если требуется подогнать входное сопротивление, то в первую очередь следует изменять сопротивления RE1 и RE2, поскольку IEE и BF влияют и на другие характеристики макромодели. При изменении входных напряжений происходит перераспределение эмиттерных токов между транзисторами и сопротивление Rп возрастает, поскольку сопротивление Rэi открывающегося транзистора уменьшается не более, чем в два раза, а сопротивление Rэi другого транзистора возрастает, стремясь к бесконечности по мере уменьшения эмиттерного тока до нуля. Входное сопротивление Rс для синфазного сигнала определяется сопротивлением источника эмиттерного тока REE, коэффициентами β и примерно равно β⋅REE. Поэтому подогнать Rc можно, изменяя REE.
166
5. Макромоделирование
Входные токи смещения для биполярных транзисторов определяются базовыми токами, т.е. равны IEE/2β. Ток сдвига (разность токов смещения) не описывается, так как входной каскад совершенно симметричен. Это тоже является существенным недостатком во многих приложениях. Впрочем, от этого недостатка можно уйти, рассиметризировав входные транзисторы. Но это еще более усложнит аппроксимацию входного импеданса. Напряжение источника EGND равно среднему значению напряжений источников питания: 0.5⋅((E+)+(E-)). Если E+ и E- равны по модулю и противоположны по знаку, как это обычно бывает, то напряжение EGND=0. Запирание транзисторов при больших входных сигналах моделирует нелинейные искажения во входном каскаде усилителя и связанное с этим ограничение максимальной скорости отклика выходного сигнала. Включение емкости CEE задерживает изменение эмиттерного напряжения при изменениях входных сигналов. Тем самым моделируется различие скоростей отклика для разной полярности и разных фронтов входных сигналов. Правда, идентифицировать требуемое значение емкости крайне сложно и PARTS по умолчанию полагает ее равной нулю, предоставляя пользователю самому, если надо, задавать ее величину. Выходное напряжение входного каскада макромодели (напряжение на емкости C1) передается генератором тока GA, численно равным этому напряжению, на цепочку R2-C2, которая определяет первый полюс частотной характеристики. Второй полюс определяется цепочкой C1-RC1-RC2. На цепочку R2-C2 поступает также синфазная составляющая сигнала, передаваемая источником тока GCM, численно равным падению напряжения на сопротивлении REE. Это падение напряжения примерно равно Uс-UбэEGND, где Uс - синфазный сигнал, Uбэ - напряжение база-эмиттер транзисторов. При Uс=0 это напряжение с соответствующим коэффициентом передачи на выход определяет напряжение смещения нуля Uсм операционного усилителя. Следовательно, Uсм в макромодели определяется величиной Uбэ и разбалансом питающих напряжений, создающим отличную от нуля величину EGND. Таким образом, в макромодели получаются однозначно связанными три разных характеристики усилителя: коэффициент подавления синфазного сигнала, напряжение смещения и дрейф за счет изменения питающих напряжений. Причем, в PARTS подгоняется под экспериментальные данные только коэффициент подавления синфазного сигнала, а Uсм и влияние питающих напряжений получаются произвольными. Это, конечно, является недостатком макромодели. Ток, протекающий через сопротивление R2, передается источником тока FB с соответствующим коэффициентом усиления на выходной каскад макромодели. В описание источника FB, помимо тока сопротивления R2,
5.5. Макромодель компаратора напряжения
167
входят также слагаемыми с соответствующими коэффициентами - токи источников VE, VC, VLP, VLN. Эти токи определяют нелинейности в выходном каскаде. Напряжения VC и VE определяются разностями между питающими напряжениями и максимальными выходными напряжениями. Если, например, выходное напряжение превысило величину (E+)-VC, то открывается диод DC, нарастает ток источника VC, он передается в FB и таким образом возникает обратная связь, ограничивающая дальнейшее изменение выходного сигнала. Аналогичное ограничение происходит, если отрицательный выходной сигнал стал меньше величины (E-)+VE. На диоды DLP и DLN поступает напряжение зависимого источника HLIM, численно равное току через выходное сопротивление макромодели RO1. Эти диоды открываются, если выходной ток модели, равный току через сопротивление RO1, превышает допустимую для данного усилителя величину. В результате нарастает ток источника VLP или VLN, он передается в FB и возникшая обратная связь прекращает изменение выходного сигнала. Таким образом моделируется ограничение, связанное с превышением допустимого значения выходного тока. Разделение в макромодели выходного сопротивления на две составляющие RO1 и RO2 связано с описанным выше моделированием ограничений по току. В линейной области работы пока этого ограничения нет, выходное сопротивление равно сумме RO1+RO2. Различается влияние этих сопротивлений только в области ограничения выходного тока. Однако паспортные данные на выходное сопротивление в области ограничения тока никогда не приводятся. Поэтому разделение выходного сопротивления на две составляющие может проводиться, вообще говоря, произвольно. Сопротивление RP отражает потребление усилителем мощности от источников питания. Ни на какие другие характеристики макромодели оно не влияет. Диод DP является охранным диодом, предотвращающим неправильную полярность питающих напряжений. 5.5. МАКРОМОДЕЛЬ КОМПАРАТОРА НАПРЯЖЕНИЯ ПРОГРАММЫ PARTS
Программно реализованной макромодели операционного усилителя в PSpice нет. Однако библиотеки PSpice содержат много макромоделей конкретных компараторов напряжения, разработанных в виде подсхем. Входящая в PSpice программа идентификации параметров моделей (см. п. 6) дает возможность автоматически сгенерировать некоторую стандартную макромодель компаратора напряжения в виде подсхемы и определить ее параметры исходя из справочных данных.
168
5. Макромоделирование
Рис. 5.9. Макромодель компаратора
Эквивалентная схема макромодели несколько в упрощенном виде представлена на рис. 5.9. На ней цифрами 1÷5 обозначены узлы, являющиеся внешними узлами подсхемы: 1 - неинвертирующий вход; 2 - инвертирующий вход; 3 - узел подключения положительного питающего напряжения; 4 - узел подключения отрицательного питающего напряжения; 5 - выход; 6 - земля. Макромодель имеет выход с открытым коллектором. Поэтому при ее использовании требуется подключать между точкой выхода и напряжением питания внешнее сопротивление нагрузки. В PARTS заложены две разновидности макромодели: с выводом общей точки 6 и с несимметричным выходом. В последнем случае узел 6 в подсхеме отсутствует и соответствующая точка подключена к узлу 4. В макромодели могут также отсутствовать источники Vi1, Vi2, если они не заданы в процессе работы с PARTS отличными от нуля. Макромодель построена не как формальная. В ней практически достоверно, на элементном уровне моделируются входной и выходной каскады компаратора. Входные токи смещения Iсм равны базовым токам входных транзисторов и определяются их коэффициентом передачи тока β и величиной эмиттерного тока, т.е. Iсм=IEE/2β. Поскольку программа PARTS не задает зависимости β от режима, то коэффициент β равен параметру BF входного транзистора,
5.5. Макромодель компаратора напряжения
169
который и рассчитывается по заданным токам смещения. Величину IEE PARTS задает независимо от исходных данных равной 100 мкА. Разность токов смещения (т.е. ток сдвига Iсдв) макромодель не отражает. Чтобы отразить ток сдвига надо ввести разные модели для входных транзисторов и задать в них разные значения BF: BF1=IEE/[2⋅(Iсм+Iсдв/2)], BF1=IEE/[2⋅(Iсм-Iсдв/2)]. Входное сопротивление Rп для парафазного сигнала при малых входных сигналах определяется режимным током IEE и коэффициентами передачи β: Rп=β⋅(Rэ1+Rэ2), где Rэi - дифференциальное сопротивление эмиттерного перехода i-го транзистора. При нулевых напряжениях на входе Rэ1=Rэ2=Rэ=25/(IEE/2)=50/IEE и Rп=β⋅2Rэ. Коэффициент β равен параметру модели транзистора BF, если не описаны зависимости β от режима. Тогда Rп=100⋅BF/IEE, а с учетом приведенного выше выражения для тока смещения получается Rп=50/Iсм. Таким образом, величина Iсм однозначно определяет величину Rп, что, конечно, является недостатком модели. При изменении входных напряжений происходит перераспределение эмиттерных токов между транзисторами и сопротивление Rп возрастает, поскольку сопротивление Rэi открывающегося транзистора уменьшается не более, чем в два раза, а сопротивление Rэi другого транзистора возрастает, стремясь к бесконечности по мере уменьшения эмиттерного тока до нуля. Входное сопротивление Rс для синфазного сигнала макромоделью не описывается, поскольку источник эмиттерного тока в ней идеальный. Входная емкость компаратора также не описывается, так как PARTS задает во входных транзисторах нулевые емкости переходов. Можно, конечно, самому задать эти емкости, но тогда возникнут сложности с определением задержек переключения. Разность напряжений между узлами 3 и 9 передается в базу выходного транзистора Q5 источником E1, который и определяет выходной ток. Коэффициент усиления компаратора определяется коэффициентом передачи тока BF выходного транзистора Q5. Зависимый источник F1, величина тока которого равна базовому току выходного транзистора Q5, вносит в макромодель отрицательную обратную связь, контролирующую базовый ток и, следовательно, степень насыщения выходного транзистора в открытом состоянии.
170
5. Макромоделирование
Задержки переключения моделируются в макромодели транзисторами Q3 и Q5, которые имеют отличные от нуля емкости коллекторных переходов, времена пролета базы в инверсном направлении TRi, а транзистор Q5 еще и отличное от нуля время пролета базы в нормальном направлении TF. Величина TF вместе с емкостями определяет фронты выходного напряжения. Величина TR транзистора Q3 определяет время выхода его из насыщения, которое в свою очередь определяет начальную задержку выключения высокого уровня выходного сигнала. Источники Vi1 и Vi2, задающие смещения на базы входных транзисторов, мало влияют на характеристики макромодели, пока они имеют равную величину, присваиваемую им программой PARTS. Однако задание их величин различными позволяют моделировать сдвиг нуля и асимметрию входных транзисторов. 5.6. ФОРМАЛЬНЫЕ МАКРОМОДЕЛИ АНАЛОГОВЫХ УСТРОЙСТВ 5.6.1. СТРУКТУРА МАКРОМОДЕЛЕЙ
Формальные макромодели обычно состоят из ряда последовательно включенных каскадов, каждый из которых описывает ту или иную группу характеристик. На рис. 5.10 представлена простейшая структура, состоящая из трех каскадов: первый описывает входные характеристики (ВАХ, импедансы), второй - передаточные (линейные и нелинейные искажения), третий - выходные. Число каскадов может быть и больше. Например, могут быть отдельные промежуточные каскады, описывающие искажения в области низших и высших частот, описывающие отдельные полюса частотной характеристики и т.д.
Рис. 5.10. Структура формальной макромодели
5.6. Формальные макроромодели аналоговы устройств
171
Передача информации от каскада к каскаду производится с помощью зависимых источников тока или напряжения, как это показано на рис. 5.11. На этом рисунке Uк - выходное напряжение предыдущего каскада, а Eк+1 и Iк+1 - входное напряжение и ток последующего каскада. Рассмотрим построение каскадов, отражающих различные группы характеристик аналогового устройства, и методику расчета параметров макромоделей. Некоторые аспекты методики расчета макромоделей по эксперименРис. 5.11. Связь между каскадами тальным данным более подробно макромодели изложены работе [4]. 5.6.2. ВХОДНЫЕ И ВЫХОДНЫЕ ХАРАКТЕРИСТИКИ
Простейшие варианты входных каскадов макромодели для устройства с одним входом изображены на рис. 5.12. Основными элементами их являются входное сопротивление Rвх и входная емкость Cвх. В устройстве, не имеющем разделительного конденсатора на входе, каскад может содержать также источник входного тока смещения Iсм. При наличии разделительного конденсатора в макромодель включается отражающая его емкость Cр, а источник Iсм исключается. Если значение входной емкости Cвх не задано в справочных данных, но известна частотная зависимость модуля входного импеданса в области высших частот, то значение Cвх можно найти, зная всего одну точку Z1 при частоте f1. Модуль параллельного включения Cвх и Rвх равен
Z=R Рис. 5.12. Входные каскады макромодели: а) без разделительного конденсатора; б) с разделительным конденсатором
1 + (ωτ) , 2
где τ=CвхRвх. Отсюда: 2
C вх
⎛ R⎞ 1 = ⋅ ⎜ ⎟ −1 2πf1 ⎝ Z1 ⎠
172
5. Макромоделирование
Не все указанные элементы обязательно должны присутствовать в макромодели. Например, влияние Cвх сказывается на высоких частотах и при значительных сопротивлениях источника входного сигнала Rг. Постоянная времени этой емкости Cвх⋅(Rвх ⎢⎢Rг). Если эта постоянная времени достаточно мала и в требуемом диапазоне частот при реальных сопротивлениях входного сигнала Рис. 5.13. Входная нелинейная ВАХ сказывается несущественно, то Cвх в макромодель можно не включать. Можно из нее часто исключать и источник тока смещения Iсм, если при реальных значениях Rг он не создает заметного напряжения на входе. Наконец, в некоторых случаях, например при полевых или МДП транзисторах на входе, из макромодели можно исключить и сопротивление Rвх. С другой стороны, в ряде случаев входные каскады макромодели приходится усложнять. Иногда входной импеданс имеет в некотором диапазоне частот индуктивный характер. Тогда входной каскад макромодели надо дополнять индуктивностью, шунтированной сопротивлением, и включать эту цепь последовательно с Rвх. В ряде случаев для работы макромодели в широком диапазоне сигналов необходимо учитывать нелинейность сопротивления Rвх. Если входные каскады моделируемого устройства построены на биполярных транзисторах, то нелинейность связана прежде всего с запиранием этих транзисторов и соответствующим возрастанием Rвх. Кроме того, при больших запирающих сигналах может наступать пробой переходов или могут открываться охранные диоды, назначение которых - предотвратить этот пробой. И в том, и в другом случае Rвх резко снижается. В итоге входная ВАХ приобретает вид, представленный на рис. 5.13. Для моделирования этой нелинейности в макромодели надо заменить параллельное соединение Rвх и Iсм нелинейным двухполюсником с ВАХ, совпадающей со входной ВАХ моделируемого устройства. Спо-соб получения нелинейных двухпо-люсников рассмотрен в п. 5.2.
5.6. Формальные макроромодели аналоговы устройств
173
Выше был рассмотрен входной каскад макромодели устройства с одним входом. В макромоделях устройств с несколькими входами, например в макромодели операционного усилителя, надо дополнительно учитывать взаимодей-ствие входов. Эквивалентная схема входного каскада макромодели операционного усилителя представлена на рис. 5.14. В этой модели Rвх.д отражает Рис. 5.14. Входной каскад макромодели сопротивление для операционного усилителя дифференциального (парафазного) сигнала. Через это сопротивление осуществляется взаимное влияние входов. Сопротивление Rвх.с отражает сопротивление схемы для синфазного сигнала. Поскольку синфазный сигнал поступает сразу на два входа, то для него сопротивление будет равно 2Rвх.с ⎜⎜2Rвх.с, т.е. равно Rвх.с. Обычно Rвх.с >>Rвх.д. Токи ошибок Iош.i определяются током смещения Iсм и током сдвига Iсдв, равным разности входных токов при нулевых входных сигналах: Iош.1=Iсм+Iсдв/2 , Iош.2=Iсм-Iсдв/2 . Эти токи обусловливают ошибку на входе за счет падения напряжения на внешних сопротивлениях источников сигналов. В частности, Iсдв приводит к ошибке на входе даже при одинаковых внешних сопротивлениях. Если входные каскады операционного усилителя построены на полевых транзисторах, то все входные сопротивления можно считать бесконечно большими и исключить их из макромодели вместе с диодами. Если же на входах операционного усилителя стоят биполярные транзисторы, то для большого сигнала (а в операционных усилителях большим является входной сигнал порядка десятков - сотен миливольт) необходимо учитывать нелинейность входного сопротивления. Входные токи усилителя (базовые токи транзисторов входного дифференциаль-ного каскада) не могут становиться отрицательными. Равенство соответствую-щего тока нулю означает запирание транзистора. Этот нелинейный эффект моделируется диодами, включенными во входных цепях макромодели. При запирании одного из них сопротивление Rвх.д оказывается включенным последовательно с большим сопротивлением 2Rвх.с. Входное сопротивление относительно базы закрытого транзистора становится бесконечно большим, а
174
5. Макромоделирование
относительно базы открытого транзистора увеличивается от значения Rвх.д до Rвх.с. В данном случае, как и в ряде других, в макромодели требуется диод, близкий к идеальному: имеющий в прямом направлении малое падение напряжения и малое сопротивление. Как указывалось в п. 5.2, это можно сделать, задав в модели этого идеализированного диода малое значение показателя экспоненты N, например, N=0.01. Сравнивая рассмотренную формальную макромодель входа операционного усилителя с макромоделью, приведенной в п. 5.4 и использующей упрощение реального дифференциального каскада, можно отметить следующее. В формальной макромодели намного легче идентифицировать параметры по справочным данным. Точнее никакой идентификации не требуется, так как ее параметры Rвх.д, Rвх.с, Cвх, Iсм, Iсдв просто приводятся в справочниках (редко приводятся значения Rвх.с., но тогда эти сопротивления просто можно исключить из макромодели). В макромодели п. 5.4 идентификация является сложной процедурой, а такие параметры, как Cвх и Iсдв, вообще, промоделировать трудно. Емкость Cвх определяется емкостями транзистора, которые одновременно влияют и на частотные искажения коэффициента усиления. Разделить эти влияния практически невозможно. А моделирование тока Iсдв требует рассогласования входных транзисторов, т.е. описание их разными моделями с разными значениями параметров. С учетом многочисленных факторов, влияющих на величины базовых токов в моделях транзисторов, ввести нужное рассогласование в параметры моделей транзисторов весьма непросто. На этом примере видно, что формальные макромодели проще, эффективнее, легче поддаются идентификации, хотя в ряде случаев не отражают каких-то деталей моделируемых характеристик.
5.6. Формальные макроромодели аналоговы устройств
175
Рис. 5.15. Выходные каскады макромодели: а) с источником тока; б) с источником напряжения; в) с разделительной емкостью; г) с индуктивным импедансом
Простейшие эквивалентные схемы выходных каскадов макромодели приведены на рис. 5.15. На этих схемах Eвых и Iвых - сигналы, поступающие с предыдущих каскадов макромодели. Схемы рис. 5.15а и 5.15б тождественны друг другу в случаях конечной величины выходного сопротивления Rвых. Если требуется моделировать идеальный усилитель напряжения с нулевым выходным сопротивлением, то используется схема рис. 5.15б без Rвых. и Cвых. Если же требуется моделировать идеальный усилитель тока с бесконечным выходным сопротивлением, то используется схема рис. 5.15а без Rвых. Вообще, схема рис. 5.15а удобнее, если выходным сигналом моделируемого устройства является ток, а схема рис. 5.15б удобнее, если выходной величиной является напряжение. Выходная емкость Cвых может быть определена по АЧХ выходного импеданса так же, как это рассматривалось выше для Cвх. Разделительная емкость Cр (см. рис. 5.15в) включается в макромодель, если эта емкость присутствует в моделируемом усилителе. На высоких частотах на величине выходного импеданса обычно сказывается выходная емкость Cвых. Если эта емкость неизвестна по справочным данным или если ее влияние проявляется вне полосы пропускания усилителя, то ее можно убрать из макромодели.
176
5. Макромоделирование
Иногда выходной импеданс в некотором диапазоне частот проявляет индуктивный характер. В этих случаях последовательно с Rвых можно включить индуктивность L, зашунтированную сопротивлением Rl (см. рис. 5.15г). Более сложные выходные каскады макромодели, отражающие специфические нелинейности на выходе некоторых усилителей, будут рассмотрены ниже в п. 5.6.4. Теперь можно изобразить простейшие формальные макромодели идеальных усилителей, не вносящих линейных и нелинейных искажений в передаваемый сигнал. Идеальный усилитель напряжения с бесконечным входным и нулевым выходным сопротивлениями может быть реализован на одном зависимом источнике напряжения (рис. 5.16а). При этом для элемента Eout достаточно задать коэффициент передачи, равный коэффициенту усиления К. Например, при К=1000 соответствующий оператор может иметь вид: EOUT OUT 0 IN 0 1000. Такой же может быть макромодель идеального нелинейного усилителя, например логарифмирующего. В этом случае соответствующий оператор описания Eout может иметь вид EOUT OUT 0 VALUE = {1000*LOG(V([IN])+1mV)}, где сдвиг 1 мВ обеспечивает работу при любых неотрицательных входных сигналах, включая нулевой. Макромодель идеального операционного усилителя реализуется также на одном зависимом источнике напряжения (см. рис. 5.16б), управляемом разностью напряжений между входами: EOUT OUT 0 IN1 IN2 1000.
Рис. 5.16. Простейшие макромодели идеальных усилителей: а) с одним входом; б) с двумя входами; в) с конечными импедансами
5.6. Формальные макроромодели аналоговы устройств
177
В такой модели IN1 - неинвертирующий вход, а IN2 - инвертирующий. Коэффициент усиления синфазного сигнала равен нулю. Нетрудно в этой модели отразить и конечный коэффициент передачи синфазного сигнала. В общем случае выходное напряжение операционного усилителя равно К⋅(UIN1-UIN2)+Кс⋅(UIN1+UIN2)/2, где К - коэффициент усиления парафазного сигнала, а Кс - синфазного. Тогда, например, при К=10000 и Кс=0.1 описание источника Eout может иметь вид EOUT OUT 0 VALUE={10000*V([IN1],[IN2])+0.05*( V([IN1])+V([IN2])}. Рис.5.17. Моделирование высших частот
На рис. 5.16в приведена источником: а) тока; макромодель идеального усилителя без б) напряжения искажений с конечными входным и выходным импедансами. Выражение для Eout не отличается от приведенного для макромодели рис. 5.16а. 5.6.3. ЛИНЕЙНЫЕ ИСКАЖЕНИЯ
Линейные искажения в области высших и низших частот отражаются в промежуточных каскадах макромодели одновременно с описанием коэффициента усиления. Каскады, описывающие спад усиления в области высших частот и конечные фронты выходного сигнала, приведены на рис. 5.17. На этом рисунке I и E - сигналы, поступающие с предыдущего каскада макромодели. Обе схемы тождественны и имеют комплексный коэффициент передачи К& (отношение напряжения на емкости Uc ко входному сигналу), равный: К&=К0/(1+jωτ), где К0 - коэффициент передачи в области средних частот; ω - угловая частота, равная 2πf; τ - постоянная времени, равная RC. Каскад обеспечивает однополюсную аппроксимацию частотной зависимости коэффициента передачи. Модуль коэф-фициента передачи К определяется выражением: К = К 0
1 + (ωτ) . Если спад усиления в области высших 2
частот определяется в макромодели только этим каскадом, то верхняя
178
5. Макромоделирование
граничная частота усилителя ωв=1/τ, а фронт имульса на выходе по уровням 0,1÷0,9 при подаче ступеньки на вход равен tф=2,2τ. Таким образом, постоянная времени τ может быть определена по справочным значениям fв или tф моделируемого усилителя: τ=1/2πfв ил τ=1/2,2tф. Нередко в справочниках не дается граничная частота, но приводятся значения модуля коэффициента передачи К1 и К2 на двух частотах f1 и f2. Тогда, воспользовавшись приведенным выше выражением для частотной зависимости модуля К, можно определить значения К0 и τ:
К 0 = К1 ⋅
f 1 − ⎛⎜ 1 ⎞⎟ ⎝ f 2⎠
2
К f ⎞⎟ 1 − ⎛⎜ 1 1 К 2f 2 ⎠ ⎝
2
,
1 ⋅ τ= 2πf2
⎞⎟ ⎛⎜ K 1 ⎝ К 2⎠
2
−1
К f ⎞⎟ 1 − ⎛⎜ 1 1 К 2f 2 ⎠ ⎝
2
.
Эти соотношения существенно упрощаются в наиболее распространенном случае, когда f1 <
5.6. Формальные макроромодели аналоговы устройств
179
Каскады, описывающие спад усиления в области низших частот и спад вершины импульса, приведены на рис. 5.18. На этом рисунке, как и раньше, I и E - сигналы, поступающие с предыдущего каскада макромодели. Обе схемы тождественны и имеют комплексный коэффициент передачи К& (отношение напряжения на выходе ко входному сигналу), равный: К&=К0⋅jωτ/(1+jωτ), где τ - постоянная времени, равная L/R для схемы рис. 5.18а и RC для схемы рис. 5.18б. Каскад обеспечивает однополюсную аппроксимацию частотной зависимости коэффициента передачи в области низших частот. Модуль коэффициента передачи К’определяется выражением: К = К 0
1 + (ωτ)
−2
.
Если данный каскад - единственный в макромодели, определяющий спад усиления в области низших частот, то нижняя граничная частота усилителя ωн=1/τ. Таким образом, постоянная времени τ может быть определена по справочному значению fн: τ=1/2πfн. Естественно, что рассматриваемые каскады не включаются в макромодели усилителей постоянного тока, не имеющих спад усиления в области низших частот. С другой стороны, иногда для более точной аппроксимации спада желательно включать в макромодель несколько последовательных каскадов, отражающих этот спад, т.е. переходить к многополюсной аппроксимации АЧХ. В этих случаях параметры каскадов приходится подбирать в процессе машинного эксперимента при отладке макромодели. Приведенное выше рассмотрение каскадов, отражающих частотные свойства, основывалось на предположении, что только эти каскады влияют на частотную зависимость коэффициента усиления. Это справедливо, если во входных и выходных каскадах макромодели отсутствуют частотнозависимые элементы Cвх, Cвых, Cр. А в общем случае при расчете параметров макромодели надо учитывать линейные искажения во входных и выходных цепях. Для этого надо четко представлять, при каких условиях на входе и выходе должны браться исходные данные для идентификации параметров макромодели. Макромодель отражает только само моделируемое устройство и не включает в себя внешние по отношению к устройству сопротивления источника сигнала и нагрузки. Только в этом случае макромодель будет универсальной и ее можно будет использовать при различных источниках сигналов и нагрузках. Если входным сигналом моделируемого устройства является напряжение (например, строится макромодель усилителя напряжения), то исходные данные о коэффициенте передачи должны соответствовать нулевому сопротивлению источника сигнала Rг. Тогда входная цепь не вносит искажения в области высших частот, но при наличии разделительного
180
5. Макромоделирование
конденсатора Cр в области низших частот возникает полюс, соответствующий постоянной времени CрRвх. Если входным сигналом моделируемого устройства является ток, то исходные данные о коэффициенте передачи должны соответствовать бесконечно большому сопротивлению источника сигнала. Тогда входная цепь не вносит искажения в области низших частот, но при наличии входной емкости Cвх в области высших частот возникает полюс, соответствующий постоянной времени CвхRвх. Аналогично, если выходным сигналом моделируемого устройства является напряжение, то исходные данные о коэффициенте передачи должны соответствовать бесконечному сопротивлению нагрузки Rн. Тогда выходная цепь не вносит искажений в области низших частот, но при наличии выходной емкости Cвых в области высших частот возникает полюс, соответствующий постоянной времени CвыхRвых. И, наконец, если выходным сигналом является ток, то данные о коэффициенте передачи должны соответствовать нулевому (бесконечно малому) сопротивлению нагрузки. В этом случае выходная цепь не вносит искажений в области высших частот, но при наличии разделительного конденсатора Cр в области низших частот возникает полюс, соответствующий постоянной времени CрRвых. Таким образом, в общем случае входные и выходные цепи могут вносить один полюс в области высших частот и до двух полюсов в области низших частот. Эти полюса необходимо учитывать при расчете параметров промежуточных каскадов макромодели. На основании многополюсного описания коэффициента передачи нетрудно получить, что если в области высших частот за счет входной или выходной цепи вносится дополнительный полюс с постоянной времени τ1, то постоянную времени τ, соответствующую промежуточному каскаду макромодели, можно определить из соотношения:
1 − (ω вτ1) 1 ⋅ τ= . 2 ωв 1 + (ω вτ1) 2
Если входные и выходные цепи не вносят дополнительного полюса или постоянная времени τ1 очень мала, то это выражение переходит в приведенное ранее: τ=1/ωв. Если в области низших частот за счет входной и выходной цепей вносятся дополнительные полюса с постоянными времени τ1 и τ2, то постоянную
5.6. Формальные макроромодели аналоговы устройств
181
времени τ, соответствующую промежуточному каскаду макромодели, можно определить из соотношения: 1
τ = ωн ⋅
[1 + (ω
.
2
н
⋅ τ1 )
−2
] ⋅ [1 + (ω
н
⋅ τ2)
−2
]
−1
Если входная и выходная цепи вносят только один дополнительный полюс с постоянной времени τ1, то в этом выражении следует положить τ2=∞. Если дополнительных полюсов вообще нет, то обе постоянные времени бесконечно большие и выражение переходит в приведенное ранее: τ=1/ωн. При наличии дополнительных полюсов, вообще говоря, может возникнуть ситуация, когда определенные по приведенным соотношениям постоянные времени τ оказываются мнимыми величинами. Это означает, что для моделируемого устройства невозможно построить макромодель рассматриваемой структуры, которая одновременно отражает без ошибок частотные зависимости коэффициента передачи, входного и выходного импедансов. Тогда приходится или усложнять макромодель, или жертвовать точностью одной из характеристик. Обычно целесообразно пожертвовать точностью описания входных и выходных импедансов, поскольку все-таки коэффициент передачи - основная характеристика устройства. Моделирование высших и низших частот отдельными каскадами макромодели целесообразно для широкополосных усилителей, для которых частотные характеристики заданы граничными частотами. При моделировании избирательных усилителей, заданных резонансной частотой и добротностью эти два каскада макромодели объединяются в один, т.е. в макромодель включается параллельный LC контур, зашунтированный сопротивлением R. Расчет параметров макромодели в этом случае ведется по известным формулам, описывающим характеристики контура. Следует отметить, что, кроме рассмотренных каскадов макромодели, имитирующих частотные зависимости коэффициента передачи, есть еще один путь отображения в макромодели частотных характеристик применение зависимых источников напряжения или тока с опциями LAPLACE или FREQ (см. п. 2.3.9). Пользуясь опцией LAPLACE, можно описать в операторной форме частотную зависимость с любым требуемым числом полюсов. Впрочем, это требует сложной подгонки параметров операторного выражения. А пользуясь опцией FREQ, можно в табличном виде отразить по точкам зависимость от частоты амплитуды и фазы коэффициента передачи, причем с любой требуемой точностью. Если
182
5. Макромоделирование
исходными данными для построения макромодели являются АЧХ и ФЧХ, полученные экспериментально или как результат моделирования устройства на уровне компонентов, то использование опции FREQ позволяет построить практически идеальную макромодель со сколь угодно высокой точностью описания частотных характеристик. К сожалению, такую макромодель можно без проблем использовать в дальнейшем только для проведения расчета по постоянному току и малосигнального анализа. А использование такой макромодели для расчета переходных процессов вызывает существенные сложности, описанные в п. 2.3.9. В заключение рассмотрим пример макромодели линейного усилителя напряжения, с заданными значениями входного и выходного сопротивлений Rвх и Rвых, входной емкостью Cвх, заданным коэффициентом усиления К и заданными граничными частотами fв и fн. Возможный вариант такой макромодели приведен на рис. 5.19. Первый ее каскад отражает входное сопротивление Rвх и входную емкость Cвх. Второй каскад отражает верхнюю граничную частоту fв. Сигнал на вход второго каскада передается зависимым источником тока с крутизной S1, управляемым входным сигналом. Напряжение на емкости UС передается зависимым источником тока с крутизной S2 на вход третьего каскада, отражающего нижнюю граничную частоту fн. А напряжение на индуктивности UL передается зависимым источником напряжения с коэффициентом передачи К3 на выходной каскад, моделирующий выходное сопротивление Rвых. Развязка каскадов зависимыми источниками тока и напряжения позволяет легко рассчитывать параметры макромодели независимо друг от друга. Конечно, в любой части макромодели источник тока можно заменить источником напряжения и наоборот.
Рис. 5.19. Макромодель усилителя
Рассмотрим на данном примере расчет параметров макромодели. Выходное напряжение в области средних частот при нулевом сопротивлении источника сигнала и бесконечном сопротивлении нагрузки (как уже было сказано, именно в этих условиях рассчитываются параметры для усилителя
5.6. Формальные макроромодели аналоговы устройств
183
напряжения) равно Uвых=Uвх⋅S1⋅RС⋅S2⋅RL⋅К3. Значит, коэффициент усиления в области средних частот К=S1⋅RС⋅S2⋅RL⋅К3. Это соотношение представляет собой уравнение с пятью неизвестными параметрами: S1, S2, К3, RС, RL. Следовательно, четыре из них можно выбрать произвольно (включая RС и RL, поскольку граничные частоты можно обеспечить выбором C и L), а пятый рассчитать из заданного коэффициента усиления. Например, можно задать S1=S2=1, RС=RL=1, и тогда коэффициент К3 должна быть равен коэффициенту усиления К. Величина емкости C определяется из верхней граничной частоты: С⋅RС=1/2πfв, поскольку расчет ведется на нулевое сопротивление генератора и входная емкость Cвх в этих условиях не влияет на коэффициент усиления. Если бы в задании была указана еще и выходная емкость Cвых, то выражение для расчета C изменилось бы, как указывалось ранее, и надо было бы еще учесть постоянную времени τ1=Cвых⋅Rвых. Индуктивность L определяется из нижней граничной частоты: L=RL/2πfн. Если бы на входе и на выходе были разделительные конденсаторы, то это выражение надо было бы изменить, как указывалось ранее для учета соответствующих постоянных времени входной и выходной цепей. Если бы был задан усилитель тока, а не усилитель напряжения, то макромодель была бы той же самой, но изменился бы расчет коэффициента усиления. Выходной ток при коротком замыкании на выходе равен Iвых=Iвх⋅Rвх⋅S1⋅Rc⋅S2⋅RL⋅К3/Rвых, а коэффициент усиления по току КI=Rвх⋅S1⋅Rc⋅S2⋅RL⋅К3/Rвых. Опять имеется одно уравнение с пятью неизвестными параметрами, четыре из которых можно выбрать произвольно. 5.6.4. НЕЛИНЕЙНЫЕ ИСКАЖЕНИЯ
184
5. Макромоделирование
Если макромодель предназначена для использования в режиме большого сигнала, то в ней надо учитывать нелинейные искажения, ограничивающие динамический диапазон реального усилителя. В общем случае передаточная характеристика усилителя в области средних частот имеет вид, представленный на рис. 5.20. На нем диапазон входных сигналов от Uвх.мин до Uвх.макс, соответствующий примерно линейному участку характеристики, является динамическим диапазоном. Если макромодель строится на Рис. 5.20. Нелинейная передаточная основании справочных данных, характеристика то обычно детали нелинейной передаточной характеристики неизвестны. Заданы бывают только Uвх.мин и Uвх.макс или соответствующие им предельные выходные напряжения U- и U+. В этих случаях передаточную характеристику можно аппроксимировать тремя отрезками прямых, как показано на рисунке тонкими линиями, задавая внутри динамического диапазона наклон, соответствующий коэффициенту усиления К0, а вне динамического диапазона - нулевой или произвольный малый наклон. Перегрузки, приводящие к нелинейным искажениям, могут быть двух видов: - перегрузки входных или промежуточных каскадов усилителя; - перегрузки выходных каскадов. Перегрузки первого вида физически зависят от входного сигнала, а второго - от выходного. В области средних частот выходной сигнал однозначно связан с входным: Uвых=К0⋅Uвх, где К0 - коэффициент усиления в области средних частот. Поэтому в области средних частот эти перегрузки неразличимы. Соответственно в макромодели достаточно было бы просто отразить передаточную характеристику. Однако на переходных процессах, когда коэффициент усиления становится комплексной величиной и выходной сигнал теряет однозначную связь с мгновенными значениями входного сигнала, различные виды перегрузок сказываются по-разному.
5.6. Формальные макроромодели аналоговы устройств
185
Перегрузки на выходе не проявляются, пока Uвых не достигает одного из своих предельных значений: максимального U+ или минимального U-. Если считать, что внутри динамического диапазона коэффициент усиления то в постоянный и равен К0, + пределах U /К0≤Uвх≤U /К0 перегрузок на выходе нет. Тогда, как в любой линейной цепи, длительность фронта выходного сигнала при подаче на вход ступеньки не зависит от амплитуды входного сигнала и равна tф=2,2τв, где τв=1/ωв. Если же амплитуда Uвх превысит, например, величину U+/К0, то время фронта Рис. 5.21. Ограничение фронта начинает зависеть от амплитуды сигнала, на выходе так как часть переходного процесса “срезается” (рис. 5.21), он не успевает закончится и с ростом амплитуды входного сигнала фронт на выходе уменьшается. Если бы действовал только этот механизм, то с ростом амплитуды входного сигнала фронт на выходе стремился бы к нулю. Перегрузки во входных и промежуточных каскадах проявляются иначе. Если, например, транзистор во входном каскаде усилителя закрылся или вошел в насыщение, то амплитуда сигнала, поступающего на последующие каскады усилителя, становится постоянной и перестает зависеть от дальнейшего увеличения входного сигнала. Соответственно и фронт на выходе перестает зависеть от амплитуды входного сигнала. Тем самым прекращается уменьшение фронта с ростом амплитуды, вызванное перегрузками на выходе. Этим объясняется ограничение скорости нарастания выходного сигнала усилителя и определяется существенный параметр многих усилителей - максимальная скорость отклика Sот=макс(ΔUвых/Δt) при большом входном сигнале. Иными словами, различие между перегрузками на входе и выходе заключается в том, что в первом случае фронт формируется после ограничения сигнала, а во втором случае - до ограничения. С этим и связано различное влияние этих перегрузок на фронты сигналов.
186
5. Макромоделирование
Часто перегрузки на выходе наступают при меньших амплитудах входного сигнала, чем перегрузки во входных и выходных каскадах. В этом случае зависимость фронта сигнала на выходе от амплитуды входного сигнала имеет вид, представленный на рис. 5.22. Такую характеристику должна описывать макромодель, если она Рис. 5.22. Зависимость фронта на выходе от предназначена для амплитуды входного сигнала моделирования при больших уровнях сигналов. Причем надо отметить, что, например, для современных операционных усилителей большим входным сигналом, вызывающим перегрузки, является сигнал порядка десятков или сотен миливольт. Рассмотрим теперь способы отражения в макромоделях нели-нейных эффектов. Если нет сведений о максимальных скоро-стях отклика для моделируемого усилителя, то нет возможности различать перегрузки на входе и выходе. Поэтому достаточно про-моделировать нелинейную передаточную характеристику усили-теля, отнеся эту нелинейность или ко входному, или к выходному каскадам. Это можно сделать в рамках обычной макромодели, пример которой приведен на рис. 5.19. Достаточно ввести в один из зависимых источников, таблично заданный нелинейный коэффициент передачи. Если эта нелинейность введена до каскадов, отражающих частотные свойства усилителя, т.е. введена в первый источник тока, имеющий на рис. 5.19 крутизну S1, то это эквивалентно моделированию перегрузок во входном каскаде. В этом случае фронт выходного сигнала будет постоянным независимо от того, произошла перегрузка или нет. Спад вершины импульса также не будет зависеть от от наличия перегрузки. Если нелинейность ввести после каскадов, отражающих частотные свойства, т.е. в зависимый источник К3, это будет эквивалентно моделированию перегрузок в выходном каскаде. В этом случае при возникновении перегрузок фронт на выходе будет уменьшаться с ростом амплитуды входного сигнала. Причем уменьшение будет неограниченным при больших амплитудах фронт будет стремиться к нулю. Спад вершины импульса также будет зависеть от наличия и степени перегрузки. При подаче на вход длинного импульса большой амплитуды выходной сигнал
5.6. Формальные макроромодели аналоговы устройств
187
ограничится на предельном уровне и этот уровень будет поддерживаться до тех пор, пока напряжение на индуктивности не спадет до величины, обеспечивающей переход в линейную область характеристик. Только после этого, если входной импульс еще не закончится, будет формироваться спад вершины. Какой из двух рассмотренных вариантов более соответствует реальности, зависит от конкретной схемы моделируемого устройства. Чаще более соответствующим истине оказывается второй вариант, моделирующий ограничения на выходе. Рассмотрим расчет параметров макромодели в этом варианте. Входным сигналом зависимого источника выходного напряжения, как видно из рис. 5.19, является величина Uвх⋅S1⋅Rc⋅S2⋅RL. Коэффициент пропорциональности S1⋅Rc⋅S2⋅RL между Uвх и этой величиной можно выбрать произвольным. Чтобы не путаться с масштабами, удобно выбрать его равным 1. Тогда входной сигнал зависимого источника напряжения будет равен Uвх, а его выходной сигнал равен Uвых. Следовательно, коэффициент передачи источника просто должен повторять передаточную характеристику усилителя. Например, если передаточная характеристка усилителя аппроксимируется тремя отрезками прямых (см. рис. 5.20) и U+=10В, U-=10В, коэффициент усиления К0=1000, зависимый источник имеет имя E1, а узлы подключения имеют номера 3 - узел третьего каскада, 4 - узел подключения источника к сопротивлению Rвых, то описание зависимого источника может быть следующим: E1 4 0 TABLE={V(3)} (-0.01 -10) (0.01 10) . В этом описании -0.01 и 0.01 - соответственно значения U-/К0 и U+/К0, т.е входные сигналы в точках излома передаточной характеристики. Теперь рассмотрим моделирование таких параметров усилителя, как максимальные скорости отклика Sот+ и Sот− для положительного и отрицательного выходных сигналов. Для этого надо промоделировать перегрузки во входном каскаде усилителя, т.е. отразить в макромодели ограничение сигнала до каскадов, описывающих частотные искажения. Значит, первый зависимый источник тока в макромодели рис. 20 надо сделать нелинейным, чтобы его передаточная характеристика имела вид, представленный на рис. 5.23, где I+ и I- - уровни ограничения, которые можно + − рассчитать, исходя из максимальных скоростей отклика Sот и Sот . Проведем подобный расчет в ранее принятых предположениях: S1=S2=1, Rc=RL=1.
188
5. Макромоделирование
Проведем расчет для максимальной скорости отклика при положительном выходном + Sот сигнале . Для неинвертирующего усилителя она соответствует мгновенному переключению входного сигнала от большого отрицательного до большого положительного. При большом отрицательном сигнале Рис. 5.23. Источник тока для моделирования выходной ток зависимого перегрузок на входе источника равен I , а выходной сигнал усилителя за счет ограничения на выходе равен U-. При подаче большой ступеньки входного сигнала ток зависимого источника скачком изменяется до величины I+, а выходной сигнал усилителя после завершения переходных процессов установится равным U+. Чтобы эти утверждения были справедливы, должны выполняться соотношения К0⋅I-
I =
[( К {exp[( U
)S −U ) S
U + ⋅ exp U + − U − 0
+
−
+ от + от
] ⋅ τ ] − 1}
⋅ τв − U−
.
в
В результате аналогичных выводов можно рассчитать и требуемую величину I-:
5.6. Формальные макроромодели аналоговы устройств
I− =
[( К {exp[( U
)S −U ) S
U − ⋅ exp U + − U − 0
+
−
− от − от
] ⋅ τ ] − 1}
⋅ τв − U+
189
.
в
Мы рассмотрели моделирование эффектов, связанных с нелинейностями передаточной характеристики. Ранее в п. 5.6.2 было рассмотрено моделирование нелинейных входных ВАХ. Бывают, однако, в усилителях некоторые специфические нелинейные эффекты, связанные с нагрузкой и пока не рассмотренные. Первый из этих эффектов связан с ограничением выходного тока. В некоторых усилителях, в частности во многих операционных усилителях, приняты защитные меры против перегрузок по выходному току, предотвращающие выход схемы из строя при случайных коротких замыканиях на выходе или при слишком больших токах нагрузки. Осуществляется это обычно с помощью нелинейных обратных связей по току, резко увеличивающих выходное сопротивление схемы, если выходной ток превысил заданную предельную величину. Этот вид нелинейности определяется нагрузкой усилителя и, следовательно, однозначно не связан с нелинейностью коэффициента усиления, которая моделировалась ранее. Ограничение выходного тока легко моделируется в выходном каскаде макромодели с источником напряжения, изображенном на рис. 5.15б, если вместо линейного сопротивления Rвых поставить нелинейный двухполюсник с ограничениями тока на заданных уровнях. Характеристика подобного двухполюсника приводилась ранее в п. 5.2 на рис. 5.2в. Там же сказано, как реализуются подобные нелинейные двухполюсники в PSpice. В данном случае двухполюсник в линейной области должен иметь сопротивление, равное заданному значению Rвых, а предельные значения тока должны соответствовать установленным для моделируемого усилителя. Другой вид нелинейности, связанной с нагрузкой, характерен для так называемых схем с открытым коллектором. В этих схемах выходным зажимом является оборванная коллекторная цепь выходного транзистора. К этому выходу должно подключаться внешнее сопротивление нагрузки Rн, питаемое от некоторого внешнего источника напряжения E. Это позволяет легко задавать любой требуемый коэффициент усиления выбором соответствующего сопротивления Rн. Однако при неудачном выборе Rн и E может оказаться, что выходной транзистор войдет в насыщение при небольшом входном сигнале или даже в отсутствие сигнала. Моделирование этого эффекта легко осуществить в выходном каскаде макромодели с источником тока, изображенном на рис. 5.15а, если вместо линейного сопротивления Rвых поставить нелинейный двухполюсник с ограничением напряжения на заданном уровне.
190
5. Макромоделирование
Рассмотрим в качестве примера макромодель усилителя постоянного тока с открытым коллектором, для которого заданы: крутизна S0, входное сопротивление Rвх, верхняя граничная частота fв, выходное сопротивление Rвых, выходной ток в отсутствие сигнала I0 и указано, что выходное напряжение для предотвращения насыщения выходного транзистора должно быть положительным. Возможная макромодель подобного усилителя представлена на рис. 5.24а. В этой макромодели нелинейность выходной цепи отражается нелинейным двухполюсником Dвых. На рис. 5.24б представлен другой вариант выходного каскада макромодели, в котором нелинейность выходной цепи отражается диодом D. Рассмотрим подробнее данную макромодель.
Рис. 5.24. Макромодель усилителя с открытым коллектором
Нелинейность ее передаточной характеристики отражается генератором тока S2⋅Uc. Зависимость тока этого источника от его входного напряжения Uc представлена на рис. 5.24в. При Uc=0 ток должен быть равен заданной величине I0. Наклон характеристики в линейной области определяется заданной крутизной S0. Однако, выходной ток не может становиться отрицательным, поскольку он является коллекторным током транзистора. Поэтому, начиная с точки, в которой ток спадает до нуля, он остается нулевым при дальнейшем уменьшении Uc.
5.7. Макроромодели электронных ключей и реле
191
ВАХ нелинейного двухполюсника Dвых представлена на рис. 5.24г. Такой двухполюсник может быть реализован с помощью зависимого источника напряжения (элемента типа E) по Рис. 5.25. Выходные каскады с ограметодике, рассмотренной в п. 5.2. ничением по току и напряжению Тот же эффект можно отразить в каскаде, представленном рис. 5.24б с помощью идеализированного диода (с уменьшенным параметром N, см. п. 5.2). На рис. 5.25 представлены варианты выходных каскадов, моделирующих одновременно и ограничение выходного тока, и ограничение напряжения за счет насыщения выходного транзистора в схемах с открытым коллектором. В них использованы нелинейные двухполюсники. Каждый из них может быть реализован по методикам, рассмотренным в п. 5.2. Двухполюсники D1 отражают ограничение выходного тока, а двухполюсники D2 отражают ограничение выходного напряжения, свойственное схемам с открытым коллектором. Для каскада, показанного на рис. 5.25а, сопротивление D1 внутри диапазона допустимых выходных токов равно Rвых, а при ограничении тока сопротивление D1 резко возрастает. Сопротивление D2 внутри диапазона допустимых выходных напряжений очень большое, а при уровне, соответствующем насыщению выходного транзистора, резко падает. В каскаде, изображенном на рис. 5.25б, сопротивление D1 внутри диапазона допустимых выходных токов очень мало (много меньше Rвых), а при ограничении тока сопротивление D1 резко возрастает. Сопротивление D2 внутри диапазона допустимых выходных напряжений равно Rвых, а при уровне, соответствующем насыщению выходного транзистора, резко падает. 5.7. МАКРОМОДЕЛИ ЭЛЕКТРОННЫХ КЛЮЧЕЙ И РЕЛЕ
В PSpice включены в качестве элементов идеализированные макромодели ключей, которые могут использоваться как самостоятельно, так и для построения более сложных макромоделей. Имеются две модели ключей: ключ, управляемый напряжением (S элемент), и ключ, управляемый током (W элемент). Первый из них управляется разностью напряжений Vвх между заданными входными узлами. Второй управляется током Iвх какого-нибудь
192
5. Макромоделирование
источника независимого напряжения (V элемента). Если требуется управление от тока какой-то ветви, не содержащей такого источника напряжения, то этот источник с нулевым напряжением надо включить в управляющую ветвь. Для обоих ключей в качестве параметров задаются два пороговых уровня сигнала: порог включения (VON для S элемента и ION для W элемента) и порог выключения (VOFF для S элемента и IOFF для W элемента). Ключ может быть нормально закрытым или нормально открытым. Для нормально закрытого ключа задается порог выключения меньше, чем порог включения (VOFF
(
)
3 ⎡ 3 Xвх − 0.5( XON + XOFF) ⎛ Xвх − 0.5( XON + XOFF) ⎞ ⎤ ⎫⎪ ⋅⎢ ⋅ − 2⋅ ⎜ ⎟ ⎥⎬ ⎝ ⎠ ⎥⎪ XON − XOFF XON − XOFF ⎢⎣ 2 ⎦⎭
где Xвх - входной сигнал (напряжение или ток), XON и XOFF - пороги включения и выключения, знак "+" относится к нормально открытому ключу, а знак "-" - к нормально закрытому. Такой сложный характер изменения сопротивления выбран, чтобы минимизировать вычислительные проблемы. Однако при использовании моделей ключей полезно учитывать следующие рекомендации.
5.7. Макроромодели электронных ключей и реле
193
1. PSpice ведет расчеты с удвоенной точностью, что позволяет оперировать с диапазоном величин около двенадцати декад. Поэтому не рекомендуется делать отношение ROFF к RON больше, чем 1012 . 2. Не рекомендуется делать переходную область (разность между порогами включения и выключения) слишком узкой. Надо помнить, что в переходной области ключ усиливает. Чем уже переходная область, тем больше усиление и больше возможностей для возникновения вычислительных проблем. 3. Хотя требуется очень малое время для расчета самого ключа, но при переходных процессах PSpice должен поддерживать в переходной области достаточно малый шаг для получения требуемой точности. Поэтому в схемах с большим количеством переключений время расчета может сильно возрастать из-за большого числа шагов и соответственно необходимости очень много раз считать другие элементы схемы. На основе моделей ключей, управляемых напряжением или током, могут быть построены макромодели различных электронных ключевых элементов, электромагнитных реле и т.п. Например, простая модель электромагнитного реле приведена на рис. 5.26. В этой макромодели L индуктивность обмотки, r - сопротивление обмотки, V - источник нулевого напряжения, необходимый для того, чтобы задать управляющий ток ключа, Rкл - выходное сопротивление нормально закрытого ключа, управляемого током, протекающим через V.
а)
194
5. Макромоделирование
КOFF=R R огда U⋅U обавкл),ключа RON=R закрыты ⋅Uвыкл/(E-U и выкл напр ). яжение U определяется кл/(E-U вхв=0, сопротивлением закрытого первого ключа ROFF1: U=E⋅ROFF1/(R+ROFF1). образом входным может быть решенаэтой проблема резкого срабатывания и ПрТаким и достижении сигналом величины плюс малый порог гистерезиса ключи макромодели. Очевидно, что вы так создавать выключения начинают открываться, ходнможно ое сопротивление макромодели электронных устройств триггераUШмитта. первого ключаразличных уменьшается, это приводит к спадутипа напряжения и росту Инерционность ключей можно моделировать интегрирующими цепочками величины Uвх-U. Возникающая регенерация приводит к резкому Рис. 5.27. так же, как Макромодель это рассматривалось ранее устанавливается для макромоделей аналоговых открыванию обоих ключей. При этом напряжение U, реле с гистерезисом устройств. Если требуется моделировать устройство, управляемое током, меньшее, чем ранее: U=E⋅RON1/(R+RONа) 1). В результате если напряжение поставить зависимый источник, то достаточно на входе макромодели U начнет снижаться, то выключение реле произойдет при входном управляемый током и преобразующий этот ток в напряжение. В качестве напряжении, меньшем, чем напряжение включения, т.е. переключательная примера на рис. 5.28 приведена макромодель электромагнитного реле, б) характеристика будет иметь гистерезис. учитывающая гистерезис и инерционность. В этой макромодели нхарактеризуется Если заданы апряжения включения и выключения выклU то, задавши и значением R, легко оценить требуемые лек.втеличиной ромагнитного реле вкл (а) емкостью Cэвых ее переключательная характеристика сопротивлениия RON и ROFF первого ключа, считая, что его пороги (б) срабатывания много меньше Uвыкл: Недостатками такой простой модели б) тельно плавное переключение является сравниРис. 5.28. Макромодель электромагнитного реле с (см. рис. 5.26б), отсутствие сопротивления гистерезисом и инерционностью (а) и ее переключательная к отпускания в(б)модели больше гистерезиса (тохарактеристика тока срабатывания), отсутствие инерционности. От первых двух недостатков можно избавиться, если ввести в макромодель положительную обратную связь. На рис. 5.27 представлена подобная модель реле, управляемого напряжением, построенная на двух нормально закрытых ключах. Выход первого из них Rкл1 включен как плечо делителя опорного напряжения E. Выход второго ключа является выходом реле. Оба ключа управляются разностью напряжений Uвх-U. Пороги включения и выключения обоих ключей целесообразно сделать малыми, много меньшими, чем действительные пороги срабатывания и отпускания реле. 5.8. МОДЕЛИРОВАНИЕ РАДИАЦИОННЫХ ЭФФЕКТОВ
Облучение полупроводниковых приборов ионизирующим излучением вызывает в них ряд изменений и прежде всего появление фототоков и
5.8. Моделирование радиационных эффектов
195
деградацию параметров. Деградация параметров вызывается интегральной дозой облучения, полученной прибором. Моделирование деградации на PSpice в принципе возможно с помощью введения интегральной дозы в виде глобального параметра и записи соответствующих выражений, изменяющих параметры моделей компонентов. Однако это вряд ли Рис. 5.29. Модели диода (а) и биполярного целесообразно. Проще иметь в транзистора (б) с фототоками библиотеке параметры моделей, идентифицированные для разных доз облучения, и по мере необходимости брать те, которые соответствуют интересующей дозе. Поэтому, не останавливаясь далее на проблеме деградации параметров, перейдем к рассмотрению фототоков. Источники фототоков должны включаться параллельно p-n переходам во все полупроводниковые компоненты схемы. Однако реально в биполярных транзисторах определяющими являются фототоки переходов коллектор-база Icb и коллектор-подложка Ics. Их и достаточно учитывать в расчетах (рис. 5.29). Полярность фототока всегда такая, что он вытекает из области n- типа. Амплитуда и форма фототока определяется из эксперимента. Простейший вариант моделирования фототока - непосредственное описание его зависимости от времени. Например, генератор фототока IP, подключенный к узлам 5 и 6 может быть описан выражением: IP 5 6 .EXP (0 40MV 0 8NS 150NS 50NS) . В данном примере описана типичная форма фототока: импульс с экспоненциальными фронтами, с относительно коротким нарастанием и длинным спадом. Если в схеме имеется ряд одинаковых полупроводниковых приборов, то для сокращения записей можно один раз описать форму фототока, а затем передавать этот ток зависимыми источниками тока в нужные точки схемы: VP PD 0 EXP (0 40MV 0 8NS 150NS 50NS) RP PD 0 1 FP1 5 6 VP 1
196
5. Макромоделирование
В данном примере источник VP создает в узле PD импульс требуемой формы, а зависимый источник FP1 передает его ток в требуемые точки. Можно усложнить модель, учитывая линейную в определенных пределах зависимость амплитуды фототока от дозы облучения (при дозах, не превышающих примерно 108) и пропорциональность фототока площади перехода: .PARAM DOSE VP PD 0 EXP (0 {DOSE*4E-9} 0 8NS 150NS 50NS) RP PD 0 1 FP1 5 6 VP 2 В этом примере амплитуда дозы облучения введена как параметр, который можно изменять, например, оператором .STEP, просчитывая зависимость процессов в схеме от степени облучения. А в операторе FP1 введен коэффициент передачи 2, что соответствует площади p-n перехода, вдвое превышающей ту, для которой определена величина фототока в операторе VP. Рассмотренный подход к моделированию фототоков прост, но имеет ряд недостатков, связанных с тем, что не учитывается зависимость фототока от режима работы полупроводникового прибора и от формы воздействующего облучения. Более адекватные результаты можно получить, если исходить из более точной модели фототока. Причиной возникновения фототока является ионизация, приводящая к генерации в полупроводнике пар электрон-дырка. Пары, генерируемые в области пространственного заряда p-n перехода, сразу же разносятся полем и обеспечивают мгновенную составляющую фототока Iм. Эта составляющая повторяет форму ионизирующего воздействия и пропорциональна его величине: Iм=Aм⋅P(t), где Aм - коэффициент пропорциональности, а P(t) мгновенная мощность дозы облучения. Коэффициент Aм зависит от ширины перехода, а значит, и от напряжения на нем U по закону, аналогичному зависимости барьерной емкости. В п. 4 указывалось, что при обратном напряжении на переходе барьерная емкость описывается выражением C=C0/(1-U/Vd)N, где C0 - емкость при нулевом напряжении, Vd - высота потенциального барьера перехода (параметр VJ для диода, VJC для коллекторного перехода и VJS для перехода коллектор-подложка), N коэффициент нелинейности (параметр M для модели диода, MJC для коллекторного перехода и MJS для перехода коллектор-подложка). Аналогичным выражением определяется и коэффициент Aм модели мгновенной составляющей фототока: Aм=Aм0/(1-U/Vd)N. Величина Aм0 является параметром модели фототока.
5.8. Моделирование радиационных эффектов
197
Помимо мгновенной составляющей фототока имеется еще запаздывающая или объемная составляющая Iv, связанная с генерацией носителей заряда в объеме полупроводника, которым требуется время, чтобы достигнуть p-n перехода и внести свой вклад в его ток. Составляющая Iv описывается дифференциальным уравнением: Iv+τv⋅dIv/dt=Av⋅P(t), где Av и τv - параметры модели фототока. Параметры Aм0, Av и τv, характеризующие модель фототока, могут быть идентифицированы из экспериментально полученной зависимости фототока от времени при известной форме воздействующего облучения. Описанная модель фототока легко может быть реализована в PSpice. Вводится некоторый узел, например, DT, в который с помощью независимого источника напряжения задается сигнал, описывающий форму и амплитуду мгновенной мощности дозы облучения. Мгновенная составляющая фототока реализуется зависимым источником тока. Например, если диод подключен к узлам 5, 6, в его модели VJ=0.7, M=0.5 и параметр -13 Aм0=2,5⋅10 А⋅с/Р, то источник мгновенной составляющей GM может быть описан следующим образом: GM 6 5 VALUE = {V([DT])*2.5E-13*(PWR(1-V(5,6)/0.7,0.5)} Для моделирования запаздывающей составляющей фототока сначала зависимым источником напряжение узла DT (мгновенная мощность дозы) передается на интегрирующую RC цепочку, постоянная которой равна τv, а затем другими зависимыми источниками тока с коэффициентами передачи, равными Av сигнал с выхода интегрирующей цепочки передается в -12 соответствующие p-n переходы. Например, если τv=25 нс и Av=4⋅10 А⋅с/Р, то описание запаздывающей составляющей фототока может иметь вид: GP 0 PV1 DT 0 1 RV PV1 0 1 CV PV1 0 25NS GV 6 5 PV1 0 4E-12 Первый из приведенных операторов описывает источник GP, передающий ток, численно равный мгновенной мощности дозы, в узел PV1. Интегрирующая цепочка из емкости CV и сопротивления RV обеспечивает задержку с постоянной времени 25 нс. Источник тока GV формирует из напряжения в узле PV1 задержанную составляющую фототока. При расчетах фототоков в интегральных схемах, изготовленных по технологии с изоляцией компонентов p-n переходами, необходимо учитывать влияние изолирующих переходов диффузионных резисторов. В качестве
198
5. Макромоделирование
примера на рис. 5.30а приведена схема интегрального ТТЛ элемента, а на рис. 5.30б кривая 2 соответствует переходным процессам, просчитанным при облучении схемы, находящейся в состоянии логической “1”. Диоды DR1DR3 отражают влияние изолирующих переходов соответственно резисторов R1-R3 (см. п. 4.4 и модель диффузионного резистора, приведенную на рис.4.9в). Запаздывающие сотавляющие фототоков резисторов имеют одну и ту же постоянную времени. Поэтому для их моделирования достаточно одной интегрирующей цепочки, выходной сигнал которой передается в диоды с коэффициентами передачи, пропорциональными площадям резисторов, т.е. обычно пропорциональными номинальным сопротивлениям. Поскольку площадь изолирующего перехода резистора обычно заметно больше площади транзистора, то пренебрегать фототоками резисторов недопустимо. На рис. 5.30б кривая 1 показывает результаты расчета без учета фототоков резисторов. Сравнение кривых 1 и 2 показывает, что пренебрежение фототоками резисторов может приводить к количественно и качественно ошибочным результатам: кривая 1 показывает возникновение небольшой помехи, тогда как в действительности при воздействии облучения на некоторое время возникает четкий сбой - логическое состояние “1” сменяется на “0”.
а)
б)
Рис.5.30. Расчет фототоков в интегральном ТТЛ элементе
Можно отметить, что, строго говоря, включение диодов, отражающих изолирующие переходы, в эквивалентную схему не обязательно; достаточно промоделировать их фототоки. Но под воздействием фототоков часто в схеме возникают такие режимы, при которых изолирующие переходы на некоторое время открываются. Поэтому пренебрежение этими диодами может дать совершенно неверные результаты. По той же причине необходимо в
5.9. Моделирование тепловых процессов
199
транзисторах учитывать подложку, указав в их описаниях узел ее подключения (обочно 0) и задав в модели параметры перехода коллекторподложка, в частности ток ISS, который по умолчанию равен нулю. Расчет радиационных воздействий на PSpice позволяет в ряде случаев сократить объем сложных и дорогих экспериментов по определению радиационной стойкости схем, что дает хороший экономический эффект, и, кроме того, позволяет принять меры к повышению радиационной стойкости на этапе проектирования, когда натурные эксперименты вообще невозможны. 5.9. МОДЕЛИРОВАНИЕ ТЕПЛОВЫХ ПРОЦЕССОВ
Тепловые процессы оказывают серьезное влияние на характеристики многих схем. Компоненты схем при работе выделяют мощность, которая приводит к повышению температуры. Итогом является ряд эффектов. Вопервых, получается перегрев - повышение средней температура схемы по сравнению с температурой окражающей среды. Борьба с этим - одна из задач конструкторского проектирования электронной аппаратуры. Соответственно в рамках конструкторского проектирования и должен проводиться расчет тепловых процессов. Однако повышение температуры должно учитываться и на этапе схемотехнического проектирования, поскольку перегрев может привести к изменению электрических характеристик схемы. Второй эффект, связанный с тепловыми процессами, проявляется в том, что локальные температуры отдельных компонентов схемы различаются. За счет этого параметры даже идентичных компонентов в схеме становятся различными. Этот эффект особенно сильно влияет на балансные схемы, например на дифференциальные каскады интегральных операционных усилителей. Если локальные температуры входных транзисторов различаются, то дифференциальный каскад разбалансируется и это существенно ухудшает характеристики операционного усилителя, увеличиваются напряжение смещения и ток сдвига. Чтобы избежать таких эффектов, при разработке интегральных схем принимаются меры для выравнивания теплового поля. Эти меры могут быть различными: от чисто топологических, связанных с соответствующим взаимным расположением компонентов, до схемотехнических, когда в схему включаются специальные транзисторные каскады, единственным назначением которых является подогрев той или иной области кристалла. Конечно, это требует тщательных расчетов тепловых процессов. Рассмотрим, как это можно делать с помощью PSpice. Расчеты тепловых процессов с помощью PSpice могут основываться на электротепловых аналогиях, т.е. на том, что уравнения, описывающие
200
5. Макромоделирование
тепловые процессы, аналогичны уравнениям электрических цепей. Эта аналогия проявляется, если принять взаимное соответствие переменных T° ↔ U и Q ↔ I, где T° - теипература, U - потенциал, Q - поток тепла, I - ток. Тогда в статике уравнение теплопроводности принимает вид, аналогичный закону Ома: ΔT°=Rt⋅Q, где Rt - тепловое сопротивление. При расчете переходных процессов неебходимо дополнительно учитывать теплоемкость, являющуюся аналогом обыкновенной электрической емкости. Помимо закона, аналогичного закону Ома, для тепловых поцессов справедливы и законы Кирхгофа.
Рис. 5.31. Передача тепла через тонкую стенку (а) и соответствующая тепловая модель (б)
Посмотрим, как можно применить электротепловые аналогии для решения первой из сформулированных ранее задач: расчета установившегося значения средней температуры схемы. Начнем с простого примера. Представим схему точечным источником тепла, отделенным от внешней среды плоской стенкой корпуса (рис. 5.31а). Схема расположена на расстоянии h1 от стенки и излучает поток тепла Q, численно равный мощности, потребляемой схемой. Пусть T - температура схемы, которую надо определить, T0 - температура окружающей среды на некотором расстоянии h2 от стенки, T1 и T2 неизвестные температуры на внутренней и внешней сторонах стенки, l толщина стенки, S - ее площадь. Рассмотрим одномерное приближение уравнений передачи тепла. Передача тепла через стенку описывается уравнением теплопроводности: Q=k⋅S⋅(T1-T2)/l, где k - коэффициент теплопроводности материала стенки. Сравнив это с приведенным выше уравнением, записанным через тепловое сопротивление, получим, что тепловое сопротивление стенки равно Rс=l/(k⋅S). Вне стенки тепло передается через воздух путем конвекции. Поскольку в одномерном приближении поток тепла Q не уходит в стороны и
5.9. Моделирование тепловых процессов
201
постоянен, можно записать: Q=(T-T1)⋅h1⋅S=(T2-T0)⋅h2⋅S, где h1 и h2 коэффициенты теплопередачи. Они могут быть разными, поскольку зависят от температуры и от характера течения охлаждающего потока (турбулентный или ламинарный). Из приведенного соотношения можно получить тепловые сопротивления Rв внутри корпуса (от местоположения схемы до стенки) и Rн снаружи корпуса до точки, температура в которой принята за T0: Rв=1/(h1⋅S), Rн=1/(h2⋅S). В итоге получается эквивалентная схема тепловых процессов, приведенная на рис. 5.31б. В ней схема отражается генератором тока, численно равного потребляемой мощности P, а окружающая среда генератором напряжения, численно равного температуре окружающей среды T0. Потенциалы в узлах эквивалентной схемы численно равны температурам T, T1, T2. Конечно, приведенный пример очень упрощен. Реально надо учитывать растекание тепла в разные стороны и распределенный характер некоторых элементов конструкции, но от этого принцип не меняется. Просто вместо цепочки тепловых сопротивлений эквивалентная схема будет содержать сетку сопротивлений, отражающих отдельные участки тепловой цепи. Рассмотрим в качестве примера модель ребра радиатора некоторой горячей стенки с температурой T, от которого тепло отводится путем естественной конвекции или принудительным обдувом (рис. 5.32). Для моделирования ребро по мере удаления от стенки разбивается на несколько участков длиной Δx. Тепловое сопротивление, отражающее теплопроводность каждого участка, равно rij=Δx/(z⋅w⋅k). От каждого участка отходят сопротивления rci и r’ij, отражающие конвекцию с верхней и нижней плоскостей ребра. Если тепло отводится естественной конвекцией, то каждое из этих сопротивлений равно 1/(h⋅Δx⋅w). Внешние выводы этих сопротивлений подключаются к точке, отражающей температуру окружающего воздуха. Если осуществляется принудительный обдув, то изменяется величина этих сопротивлений и в схему добавляются диоды, отражающие одностороннюю передачу тепла.
202
5. Макромоделирование
Рис. 5.32. Охлаждающее ребро (а) и его тепловая модель (б)
Описанный подход позволяет для некоторой принятой методики конструкторского проектирования построить в виде подсхем библиотеку тепловых моделей основных элементов конструкций и проводить на PSpice тепловой расчет аппаратуры. При этом сначала проводится на PSpice электрический‘расчет и определяются мощности, потребляемые отдельными узлами аппаратуры. Затем эти мощности задаются в качестве источников тока в тепловую модель, которая рассчитывается на PSpice. В результате определяются температуры узлов аппаратуры. После этого можно повторить электрический расчет с учетом полученной температуры. Если в результате потребляемые мощности заметно изменились, то надо повторить итерацию, проведя повторный тепловой расчет с новыми значениями мощностей и т.д. Правда, такая методика расчета является методом простых итераций и в общем случае не гарантирует сходимость. Но обычно, если схема далека от теплового пробоя, проблем со сходимостью не возникает. Теперь рассмотрим вторую из перечисленных в начале п. 5.9 задач, связанную с учетом локальных температур элементов. Эта задача особенно актуальна при проектировании интегральных схем, о которых, в основном, ниже и пойдет речь. Сам по себе подход к тепловому расчету в этом случае аналогичен предыдущему. Вводятся тепловые сопротивления, а если рассчитываются переходные процессы, то и тепловые емкости; задаются источники тока, равные мощностям, выделяемым отдельными компонентами; и рассчитываются локальные температуры элементов. Более того, подобный расчет в данном случае, как будет показано ниже, можно вести одновременно с электрическим, что позволяет, в частности, рассчитывать температуры в динамике. Однако при желании учесть влияние рассчитанных локальных температур на электрические характеристики компонентов и схемы в целом возникают трудности, связанные с отсутствием в PSpice понятия “локальная температура”. Поэтому учет влияния локальных температур на компоненты приходится проводить
5.9. Моделирование тепловых процессов
203
приближенно, описывая это влияние имеющимися средствами входного языка. Посмотрим, как это можно сделать.
Рис. 5.33. Фрагмент электронной схемы и его тепловая модель
Будем считать, что тепловые сопротивления и тепловые емкости отдельных компонентов известны. Их расчет для кристалла ИС, содержащего не очень большое число компонентов, можно осуществить с помощью отдельных специализированных программ. Тогда в задании на расчет можно одновременно сформировать электрическую принципиальную схему и соответствующую ей тепловую схему. На рис. 5.33 показан для примера фрагмент некоторой схемы, содержащей транзисторы Q1 и Q2 и резистор R1. Соответствующая тепловая модель включает источник постоянного напряжения, численно равного температуре окружающей среды T0, и сетку тепловых сопротивлений. Сопротивления RQ1, RQ2, RR1 - тепловые сопротивления между компонентами Q1, Q2, R1 и внешней средой. Сопротивления RQ1Q2, RQ1R1, RQ2R1 - тепловые сопротивления между соответствующими компонентами. Если предполагается рассчитывать переходные тепловые процессы, то в модель добавляются теплоемкости компонентов CQ1, CQ2, CR1. Потенциалы узлов тепловой модели численно равны локальным температурам компонентов Q1, Q2 и R1. Сформировать такую тепловую модель одновременно с электрической не представляет труда. В тепловую модель надо передать токи, численно равные мощностям, рассеиваемым тем или иным компонентом. Для того чтобы это сделать, последовательно с ветвями компонента надо включить токосъемные источники нулевого напряжения и уже токи этих источников, умноженные на соответствующие напряжения, надо передавать с помощью зависимых источников тока в тепловую модель. Например, если биполярный транзистор подключен к узлам 5, 6, 7 (рис. 5.34а), то для совместого электротеплового расчета к нему надо добавить два (если не указана подложка) токосъемных источника нулевого напряжения V1Q1, V2Q1 (см. рис. 5.34б), не изменяя имен внешних выводов, чтобы не менять описания схемы, и тогда описание
204
5. Макромоделирование
источника тока GQ1, передающего значение мощности транзистора в узел TQ1 тепловой модели, может иметь вид GQ1 0 TQ1 VALUE = {I(V1Q1)*V(5,6)+I(V2Q1)*V(7,6)}
Рис. 5.34. Биполярный транзистор (а); его модель при электротепловом расчете (б); модель, учитывающая локальную температуру (в)
Сформировав таким образом электрическую и тепловую модель, можно проводить любые виды электрического анализа: расчет по постоянному току, расчет переходных процессов, малосигнальный анализ. Во всех случаях потенциалы узлов тепловой модели покажут локальные температуры компонентов схемы. Недостатком описанного подхода является отсутствие влияния локальных температур на электрические характеристики компонентов схемы. Для полупроводниковых приборов в первом приближении этот учет можно осуществить, если промоделировать температурные изменения напряжений открытых p-n переходов. Для этого достаточно включить последовательно с p-n переходами зависимые источники напряжения (E1Q1 и E2Q1 на рис. 5.34в), передающие с соответствующим коэффициентом (для кремниевых приборов примерно 1.8 мВ/град) локальные перегревы компонентов. Так для рассмотренного примера источник E2Q1 может быть описан оператором E2Q1 22Q2 7 VALUE = {1.8M*V([TQ1],[T0])} . В этом случае учитывается и прямая, и обратная тепловая связь, т.е. как влияние электрических процессов на локальные температуры, так и обратное влияние локальных перегревов на электрические характеристики. В заключение отметим, что тепловые связи могут носить не только паразитный характер, ухудшающий характеристики схемы. Возможно и целенаправленное использование подобных связей. В качестве примера приведем интегральный генератор длинных импульсов, использующий тепловую связь (рис. 5.35). В нем специально поддерживается сильная тепловая связь между резистором R1 и диодом D1. Это делается за счет
5.9. Моделирование тепловых процессов
205
близкого расположения этих элементов на кристалле. Рассмотрим работу схемы.
Рис. 5.35. Генератор импульсов с тепловой связью
В исходном состоянии транзистор Q1 закрыт, а транзистор Q2 открыт и насыщен. При подаче запирающего импульса тока транзистор Q2 запирается, а транзистор Q1 насыщается. На коллекторе транзистора Q1 формируется отрицательный перепад напряжения. Падение напряжения на резисторе R1 увеличивается, увеличивается и мощность, рассеиваемая этим резистором, он начинает нагреваться и это повышение температуры передается диоду D1 через тепловое сопротивление RR1D1. Скорость повышения температуры определяется тепловыми емкостями. По мере повышения температуры диода его ток увеличивается, что приводит к уменьшению базового тока транзистора Q1. В конце концов базовый ток настолько уменьшается, что транзистор Q1 выходит из насыщения и происходит обратный переброс схемы. Импульс на коллекторах транзисторов Q1 и Q2 заканчивается. Длительность его определяется сравнительно медленными тепловыми процессами и может быть сделана большой без применения больших конденсаторов, чего добиться иным образом в интегральной схеме трудно. Описанный подход к электротепловому расчету позволяет проанализировать эту и другие подобные схемы на PSpice. Имеется программа, которая автоматически создает тепловую модель схемы и осуществляет все необходимые изменения в файле задания на расчет.
ЛИТЕРАТУРА
1. Разевиг В.Д. Применение программ P-CAD и Pspice для схемотехнического моделирование на ПЭВМ. В 4-х вып. М.: Радио и связь, 1992. 2. Архангельский А.Я. PSpice и Design Center. Ч. 2. Модели цифровых и аналого-цифровых устройств. Идентификация параметров моделей. Графические редакторы. Учебное пособие. М.: МИФИ, 1996. 3. Архангельский А.Я. , Савинова Т.А. Справочное пособие по PSpice и Design Center. М.: МИФИ, 1996. 4. Архангельский А.Я., Савинова Т.А. Лабораторный практикум по PSpice. М.: МИФИ, 1996.
5.9. Моделирование тепловых процессов
Алексей Яковлевич Архангельский
PSPICE и DESIGN CENTER Ч а с т ь 1 Схемотехническое моделирование. Модели элементов. Макромоделирование
Редактор и техн. редактор М.В. Макарова
ЛР № 020676 от 09.12.92. Подписано в печать .Формат 60×84 1/16. Уч.-изд. л. . Печ. л. 14,75. Тираж 200 экз. Изд. № 012-1. Заказ №
Московский государственный инженерно-физический институт (технический университет). Типография МИФИ.
207
208
5. Макромоделирование 115409, Москва, Каширское ш., 31.