LINUX.ORG.RU

Вышел симулятор электроники Ngspice-27

 , , ,


4

2

Ngspice — консольный симулятор электронных схем, использующий формат списка цепей (netlist) SPICE-3f5, совместимый с большинством проприетарных SPICE-симуляторов. Ngspice позволяет моделировать электронные схемы в статическом режиме, во временной и частотной области, производить спектральный анализ, шумовой анализ, анализ нелинейных искажений.

17 сентября вышла очередная версия программы — Ngspice-27. С момента предыдущего релиза прошло три года. Функциональные возможности программы устоялись, поэтому улучшений немного. Список изменений следующий:

  • добавлены таблично задаваемые элементы XSPICE;
  • добавлены функции постпроцессора, улучшающие экспорт результатов моделирования, в том числе из цифровых схем XSPICE;
  • улучшена реализация моделей МДП-транзисторов HiSIM и BSIM;
  • добавлена поддержка OpenMP для моделей транзисторов BSIM;
  • добавлены новые математические функции и системные переменные;
  • исправлены ошибки, обновлена документация.

В качестве графического интерфейса для Ngspice можно использовать KiCAD (последние версии) и Qucs-S, либо экспортировать нетлист из gEda или Eagle. Полный список возможных GUI для Ngspice смотрите здесь: http://ngspice.sourceforge.net/resources.html.

>>> Подробности

★★★★

Проверено: Shaman007 ()
Последнее исправление: AP (всего исправлений: 4)

Ответ на: комментарий от DarthVadimius

Полного закрытия кода быть не должно. В худшем случае будет как RedHat.

Может ли CERN брать деньги за обслуживание программы, как это делает Red Hat? Мне кажется, что нет. Придётся создавать сопутствующие службы, что для международной организации, финансируемой кучей правительств, бюрократически сложно.

Может ли CERN продавать программу в розницу? Возражения те же, хотя это будет легче.

Может ли CERN единовременно закрыть и продать программу? Вполне, хотя не уверен, что это окупится.

Может ли CERN развивать программу для внутреннего использования, чтобы не тратиться каждый год на продление лицензий на несвободные аналоги? Вполне. Вопрос в том, сколько человек в CERN регулярно пользуются Альтиумом? (Или с чем там гонка?) Окупит ли это работу нескольких сотрудников?

Бессрочная лицензия на Altium Design с базовой техподдержкой стоит в России до 11 000 долларов. Цену на подписку не нашёл. И как часто нужно обновлять программу?

question4 ★★★★★
()
Ответ на: комментарий от simplere

Проблема с Verilog-A/AMS ещё и в том, что вроде как единственный более-менее живой компилятор этих языков уже умер, так и не обзаведясь полной поддержкой стандарта (какие-то проблемы с <+ были указаны).

anonymous
()
Ответ на: комментарий от the1

Для электромагнитного моделирования есть openEMS, который интегрируется в Octave или Matlab. В САПР он не интегрирован, хотя такие задумки были.

DarthVadimius ★★★★
() автор топика
Ответ на: комментарий от simplere

Первая проблема в том, что он гораздо медленнее коммерческих spectre, eldo или hspice

На небольших схемах масштаба одного ОУ (внутренняя структура на уровне транзиторов, а не макромодель), также асинхронная логика, медленности Ngspice я не замечал. Для моделирования системного уровня также всё нормально. Заметная просадка скорости начинается с моделями BSIM. У них ещё есть cudaSPICE, который считает схемы на GPU.

хилая поддержка смешанного моделирования поведенческих Verilog-A/MS

На начальном уровне эта поддержка присутствует. Здесь проблема в том, что требуется перекомпилировать весь Ngspice, чтобы добавить модель Verilog-A. Собрать модуль отдельно нельзя. Это делает использование Verilog-A невозможным. Verilog-A модели также работают ощутимо медленнее. Динамическую подгрузку Verilog-A моделей пока делать некому. В Ngspice ещё есть модели XSPICE CodeModel. Недавно мы синтезировали даже XSPICE-модель транзистора EKV. Эти модели и работают быстрее, и их можно загружать без перекомпиляции всей программы.

DarthVadimius ★★★★
() автор топика
Ответ на: комментарий от anonymous

олее-менее живой компилятор этих языков уже умер

Нет, ADMS ещё жив. Недавно была новая версия, но там изменения в основном косметические и багфиксы. Есть ещё pyADMS. Пробелемы с опрацией <+ были в том, что там поддерживаются только токи, поэтому нелинейная индуктивность реализуется жуткими костылями. Здесь опять же пока решать эту проблему некому, т.к. все разработчики работают фултайм в других конторах, и занимаются программой в свободное время.

DarthVadimius ★★★★
() автор топика
Ответ на: комментарий от anonymous

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

Т.к. как я понимаю, spectre как раз довольно давно стала компилировать Verilog-A модули перед симуляцией.

simplere
()
Ответ на: комментарий от Oberstserj

они далеко не реалистичны, да, собственно, и не претендуют

С ИМС ситуация значительно отличается от моделирования системного уровня. Дело в том, что там макетирование на тестовой ПП выполнить невозможно, а делать кристалл --- дорого. Поэтому все проблемы нужно решать до того, как кристалл ушёл в производство. Поэтому там нужно обеспечить реалистичность моделирования любой ценой. В моделировании ИМС лидирует продукция Cadence. Там есть и специальный модуль, который извлекает паразитные RCL из разводки кристалла и подставляет их в модель.

DarthVadimius ★★★★
() автор топика
Ответ на: комментарий от simplere

ADMS ещё растащили в проприетарные симуляторы. Например --- Symica.

DarthVadimius ★★★★
() автор топика
Ответ на: комментарий от anonymous

Ну вообще этот симулятор подойдёт и может даже проектировался для ИС.

SPICE изначально был разработан для моделирования ИМС. На это указывают буквы IC.

DarthVadimius ★★★★
() автор топика
Ответ на: комментарий от simplere

поведенческих Verilog-A/MS моделей

В смысле дискретно-событийных?

А случайно никто не знает достаточно добротный, полный и опенсорсный парсер для Verilog или VHDL? Язык программирования любой

dave ★★★★★
()
Ответ на: комментарий от DarthVadimius

Заметная просадка скорости начинается с моделями BSIM.

Только с ними и работаю. Поэтому собственно ngspice использовал несколько лет назад для студенческих лабораторных работ когда не было достаточного количества лицензий на spectre. Из-за отсутствия поддержки Verilog-A, как только появились лицензии на Cadence, эксперимент с ngspice прекратил.

Динамическую подгрузку Verilog-A моделей пока делать некому.

Жалко, задача-то вроде важная. Существование всяких мелких конторок типа Dolphin или Sylvaco, говорит вроде о том, что не Cadence/Mentor/Synopsys одним жив человек. Нашлось бы и для ещё одного свободного симулятора ИС место.

simplere
()
Ответ на: комментарий от dave

В смысле дискретно-событийных?

Verilog-A --- это аналоговый HDL https://en.wikipedia.org/wiki/Verilog-A в нём моделируют например транзистор, представляемый эквивалентной аналоговой схемой. Verilog-AMS --- это mixed-signal, он позволяет моделировать например АЦП.

DarthVadimius ★★★★
() автор топика
Ответ на: комментарий от simplere

Динамическая подгрузка Verilog-A моделей ожидается в XYCE https://xyce.sandia.gov/ Там она уже есть, но чтобы её включить нужно собрать симулятор с особым ключом. Скоро она будет по дефолту. Т.к. XYCE разрабатывает Sandia, то шансы дождаться работающей реализации есть.

DarthVadimius ★★★★
() автор топика
Ответ на: комментарий от simplere

Ещё Qucs умеет динамически подгружать Verilog-A модели. Но там движок Qucsator создавался для моделирования в частотной области, и во временной области модели BSIM со сколько-нибудь сложной схемой имеют проблемы со сходимостью. Но для изучения Verilog-A и для отладки новых моделей Qucs годится.

DarthVadimius ★★★★
() автор топика
Ответ на: комментарий от DarthVadimius

Спасибо за наводку, нужно будет посмотреть. QUCS несколько лет назад (2012 наверное) пробовал, тоже расстроило тогда отсутствие полноценной поддержки Verilog-A.

Сейчас, правда, курсы учебные уже устоялись как-то с Cadence. С другой стороны использование таких инструментов позволяет отвязать студентов от университетских серверов, т.к. домой Cadence каждому не установишь. Да и нельзя, с прошлого года Cadence обязала даже логи университетских серверов хранить и собирать с каждого студента подписанные обязательства не копировать, не распространять и т.д.

simplere
()
Ответ на: комментарий от simplere

Компиляцию модулей Verilog-A «на лету» в Qucs сделали около 2013 года. В прошлом году я добавил синтезатор кода Verilog-A из подсхемы, но он доступен только в Qucs-S.

Текущее состояние поддержки Verilog-A в Qucs можно посмотреть здесь: http://www.mos-ak.org/berkeley_2014/presentations/04_Wladek_Grabinski_MOS-AK_... и здесь: http://www.mos-ak.org/graz_2015/presentations/T_5_Brinson_MOS-AK_Graz_2015.pdf Также на http://www.mos-ak.org/ есть наши презентации, где упоминаются модели, синтезированные при помощи Qucs.

Сейчас, правда, курсы учебные уже устоялись как-то с Cadence.

У нас тоже Cadence собираются внедрять, т.к. он нужен на производстве. Qucs мы изучаем, но Verilog-A не изучаем.

DarthVadimius ★★★★
() автор топика
Ответ на: комментарий от shkolnick-kun

Так мы и говорили про KiCAD, кстати в него начали запиливать интеграцию ngspice.

Я имел ввиду другую интеграцию. Не вычислительного движка в ГУЮ (это ерунда), а двух движков друг с другом, spice+fdtd.

Не уверен, но вроде нигде, даже в проприетарщине, нет учёта ЭМ-свойств 3Д-форм резючков-кондючков и пр. элементиков. 3Д-картинки рисуют многие, но в fdtd оно не учитывается. Только медь и плата (и их слои).

DarthVadimius, спасибо, я знаю об этом.

the1 ★★
()
Ответ на: комментарий от the1

нигде, даже в проприетарщине, нет учёта ЭМ-свойств 3Д-форм резючков-кондючков и пр. элементиков

Вместо неуверенной отсебятины, напишу лучше по факту: пару лет назад на сайтах производителей рассыпухи (мурата, и ещё какие-то, вишэй?) не было данных для ЭМ-симуляций, только 3Д-модельки. Отсюда я и сделал этот вывод..

the1 ★★
()
Ответ на: комментарий от the1

В презентация софта от CST я видел подобное. Там отмоделирована вся ПП с активными компонентами. Как это сделано внутри --- неизвестно. Ещё AWR мог извлекать S-параметры из результатов электромагнитного моделирования и подставлять их в моделирование на уровне схемы автоматически.

DarthVadimius ★★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.