Разработка компонента интегрированной библиотеки
Реализацию модели компонента для дальнейшего применения удобно выполнить в виде макромодели, которую часто называют подсхемой (subcircuit). Макромодели для имитатора электрических цепей Altium Designer должны находиться в файлах с расширением .ckt. Файл .ckt представляет собой простой текст и может содержать несколько макромоделей, т.е., по сути, может являться библиотекой макромоделей компонентов. Однако для удобства работы, как правило, размещают одну макромодель.
Чтобы сформировать макромодель, необходимо соблюсти требования SPICE-языка. Описание макромодели состоит из четырёх основных частей, три из которых являются обязательными:
- объявление макромодели с перечнем внутренних узлов, которые являются портами макромодели для соединения с другими моделями и макромоделями схемы (обязательная часть);
- параметры макромодели, которые позволяют выполнить более точную настройку поведения макромодели без необходимости её изменения (необязательная часть);
- тело макромодели, которое реализует основную функциональность макромодели и состоит из моделей-экземпляров, реализующих модели имитатора или другие макромодели (обязательная часть);
- закрытие макромодели (обязательная часть).
Объявление макромодели должно иметь следующий вид:
.subckt <имя макромодели> <узел макромодели 1> [<узел макромодели 2>...<узел макромодели n>]
Обязательное ключевое слово .subckt указывает на начало описания макромодели. В объявлении должно присутствовать название макромодели, уникальное в пределах множества доступных имитатору файлов макромоделей. Обязательно должен присутствовать хотя бы один узел макромодели, осуществляющий взаимосвязь тела макромодели и её окружения. При этом перечисление узлов при вызове макромодели должно иметь тот же порядок, что и в объявлении макромодели. В квадратных скобках здесь и далее указаны необязательные параметры.
Объявление параметров макромодели должно быть выполнено в строке объявления макромодели и имеет следующий вид:
params: <имя параметра 1>={<значение по умолчанию>} [, <имя параметра 2>={<значение по умолчанию>}, ... <имя параметра m>={<значение по умолчанию>}]
Ключевое слово params должно присутствовать только при наличии хотя бы одного параметра макромодели. Версия имитатора для Altium Designer до 19.1 включительно требует обязательного наличия фигурных скобок при объявлении значения параметра по умолчанию. В Altium Designer 20.0 и последующих версиях синтаксис SPICE-языка является более гибким и позволяет опускать фигурные скобки. Обращение к параметру макромодели может быть выполнено по имени, но строго в пределах данной макромодели. Как правило, объявление параметров выполняют в следующей за объявлением макромодели строке, предваряя объявление параметров знаком «+»:
+ params: ...
Использование отдельной строки при объявлении параметров делает код более удобочитаемым.
Тело макромодели должно содержать хотя бы одну модель-экземпляр или макромодель, имеющую в своём вызове указание узла/узлов макромодели. При необходимости тело макромодели может содержать не только вызовы моделей-экземпляров и макромоделей, но и объявления их прототипов. Модель-прототип – это описание встроенной модели имитатора, снабжённое определениями её параметров. Модель-экземпляр – это вызов модели-прототипа. На одну модель-прототип может ссылаться множество моделей-экземпляров. Встроенная модель имитатора, указанная в объявлении модели-прототипа, указывает имитатору тип модели-прототипа.
Пример вызова модели-экземпляра D1, имеющей модель-прототип dbulk, подключённую к узлам anode и cathode электрической цепи:
D1 anode cathode dbulk
Пример объявления модели-экземпляра dbulk типа D (диод) с определённым значением параметра IS=10–7:
.model dbulk D(IS=1e-7)
Закрытие макромодели всегда имеет вид:
.ends [<имя макромодели>]
Формирование файла задания имитатора для расчёта электрической цепи. С помощью выполненного в задании описания построенной модели микросхемы MC14520B можно выполнить с минимальными корректировками, используя файл из задания на моделирование (см. рис. 17).
На рисунке 18 показан фрагмент кода со строкой объявления макромодели.
Перечень параметров (см. рис. 19), которые требуется менять в объявлении макромодели, следует преобразовать согласно указанным ранее требованиям (см. рис. 20).
Тело макромодели следует откорректировать, убрав из него модели-экземпляры, реализующие тестовое окружение макромодели – источники G1–G6 (см. рис. 21).
Завершить описание макромодели следует командой закрытия (см. рис. 22).
Сформированная макромодель описывает один из двух вентилей микросхемы, а сама модель содержит два таких вентиля, поэтому следует сформировать ещё одну макромодель, содержащую в теле два вызова макромодели одного вентиля микросхемы (см. рис. 23).
Сведения из спецификации по условному графическому обозначению (УГО) (см. рис. 24) могут быть использованы для разработки УГО элемента схемы в Altium Designer (см. рис. 25).
Последним шагом в разработке элемента схемы будет назначение модели в редакторе УГО. Назначение модели не требует больших усилий, однако важно проверить назначение выводов УГО и портов модели. Если требуется, назначение выводов можно изменить в столбце Model Pin на вкладке Port Map окна Sim Model (см. рис. 26).
Заключение
Разработанная модель достаточно точно соответствует предельным требованиям, заявленным в спецификации электронного компонента. Модель разработана на основе сведений из спецификации, которые не являются исчерпывающими. При использовании в качестве источника информации большего массива данных, полученных с помощью средств измерений и статистического усреднения, можно разработать модель, отражающую не предельные характеристики элемента, а нормальные эксплуатационные. Разработанная модель (SPICE-код) может быть использована с имитаторами электрических цепей, совместимых с Altium Mixed Sim по синтаксису, например ngspice и некоторых других.
В статье подробно описаны процессы разработки модели и применение для этих целей средств моделирования Altium Designer как средства верификации.
В качестве дополнительных материалов для изучения имитатора электрических цепей автор рекомендует обратиться к руководству пользователя [1] и библиотеке базовых моделей имитатора Altium Mixed Sim Primitive Library.IntLib [2]. Библиотека будет хорошим подспорьем для начинающих пользователей имитатора, т.к. большинство компонентов в ней сопровождается описанием на русском языке и примерами электрических цепей включения в виде отдельных проектов. Таким образом, библиотека играет роль практического пособия. Все компоненты библиотеки снабжены условными графическими обозначениями, соответствующими определениям ЕСКД (ГОСТ 2.721).
Литература
- Altium Mixed Sim. Руководство пользователя Altium Designer. Сайт компании Altium. URL: https://resources.altium.com/sites/default/files/2020-05/Altium Mixed Sim - Руководство пользователя Altium Designer.pdf.
- Библиотека базовых моделей Sim Lib GOST. Сайт представительства компании Altium в России и СНГ. URL: https://www.altium-ru.com/sites/default/files/attachments/Sim%20Lib%20GOST.zip.
Если вам понравился материал, кликните значок - вы поможете нам узнать, каким статьям и новостям следует отдавать предпочтение. Если вы хотите обсудить материал - не стесняйтесь оставлять свои комментарии : возможно, они будут полезны другим нашим читателям!