Введение

Программное обеспечение для моделирования аналоговых схем

Ngspice – это электронный симулятор схем с открытым исходным кодом, работающий на смешанном уровне/смешанными сигналами. Он является преемником последнего стабильного выпуска Berkeley SPICE, версии 3f.5, который был выпущен в 1993 году. Небольшая группа разработчиков и пользовательское сообщество вносят вклад в проект ngspice, добавляя новые функции, улучшения и исправления ошибок. Ngspice основан на трех пакетах свободного программного обеспечения с открытым исходным кодом: Spice3f5, Xspice и Cider1b1: SPICE является основой большинства современных симуляторов электронных схем, а его потомки широко используются в электронной промышленности. Xspice – это расширение Spice3, которое предоставляет дополнительные модели на языке C для поддержки аналогового поведенческого моделирования и совместного моделирования цифровых компонентов с использованием быстрого алгоритма, управляемого событиями. Cider добавляет в ngspice численный симулятор приборов. Он связывает симулятор на уровне схемы с симулятором приборов для повышения точности моделирования (за счет увеличения времени моделирования). Критические приборы могут быть описаны с использованием их технологических параметров (численных моделей), в то время как для всех остальных можно использовать оригинальные компактные модели ngspice. Он является преемником CODECS.

Модели устройств

Ngspice реализует различные элементы схем, такие как резисторы, конденсаторы, индуктивности (одиночные или взаимные), линии передачи и все большее количество полупроводниковых приборов, включая диоды, биполярные транзисторы, MOSFET (как с объемным, так и с SOI-каналом), MESFET, JFET и HFET.

Сетевые списки

Ngspice поддерживает параметрические схемы (т.е. схемы могут содержать параметры и выражения). Параметрические макромодели, совместимые с PSPICE, часто предоставляемые производителями, могут быть импортированы в симулятор без изменений. Доступны полиномиальные источники. Ngspice предоставляет встроенный язык сценариев для упрощения сложных процессов моделирования и управления ходом расчетов.

Разработка

Ngspice может быть скомпилирован в общую библиотеку (*.dll или *.so) для простой интеграции в вызывающую программу. Его интерфейс предоставляет доступ ко всем параметрам моделирования, входным и выходным данным. tclspice, еще одна версия общей библиотеки, предлагает интерфейс для Tcl/Tk (программного обеспечения) для лучшей интеграции с такими программами, как XCircuits. Ngspice распространяется под лицензией BSD 3-Clause. Эта разрешительная лицензия с открытым исходным кодом позволяет интегрировать его в качестве вычислительного ядра в различные — проприетарные или свободные — EDA-инструменты, такие как KiCad, EAGLE (программа), CoolSPICE, Altium и другие. Ngspice имеет интерфейс командной строки и предоставляет возможности построения графиков. Qucs S предоставляет графический интерфейс с открытым исходным кодом для создания схем, моделирования и построения графиков. Последние достижения в Ngspice были представлены на конференциях, таких как FOSDEM и FSiC.