- SPICE (симулятор электронных схем)
-
SPICE (Simulation Program with Integrated Circuit Emphasis) — симулятор электронных схем общего назначения с открытым исходным кодом. Является мощной программой, используемой в разработке как интегральных схем, так и печатных плат для проверки целостности схемы и для анализа ее поведения.
Содержание
Введение
Интегральные схемы, в отличие от печатных плат, практически не поддаются макетированию перед производством. Кроме того, высокая стоимость создания фотолитографических масок и других этапов полупроводникового производства приводят к необходимости очень тщательной разработки и верификации. Симуляция схемы при помощи SPICE является общепринятым в полупроводниковой промышленности способом верификации работы схемы на транзисторном уровне (перед её реализацией в кремнии).
Для печатных плат, особенно небольшой сложности, возможно проводить макетирование. Но на макетной плате некоторые свойства схем могут быть неточны по сравнению с итоговой платой. Например, на макетной плате у печатных дорожек будут иные паразитные сопротивления и ёмкости. Подобные паразитные элементы часто можно оценить при помощи симуляции на SPICE.
История
SPICE был разработан в Electronics Research Laboratory в University of California, Berkeley SPICE1 был основан на более ранней программе CANCER,[1] того же автора, Laurence Nagel. Название программы расшифровывалось как «Computer Analysis of Nonlinear Circuits, Excluding Radiation» (Компьютерный анализ нелинейных схем, исключая радиацию), что было отсылкой к относительной свободе в Университете Berkeley в 1960-е года. В то время большая часть симуляторов электронных схем разрабатывалась по грантам и контрактам министерства обороны США и одним из требований была возможность оценки влияния радиации на работу схем (См. en:radiation hardness). После смены научного руководителя, Нагелю пришлось переписать проприетарный CANCER так, чтобы новую программу можно было публиковать и передать в общественное достояние.[2]
Впервые SPICE1 был представлен на конференции в 1973.[3] Программа была написана на языке FORTRAN и использовала анализ цепи методом узловых потенциалов для построения уравнений схемы. Метод узловых потенциалов имел ограничения в работе с индуктивностями, источниками переменного напряжения, и с различными вариантами управляемых генераторов тока и напряжения. В SPICE1 было доступно небольшое количество элементов, программа использовала анализ переходных процессов с фиксированным шагом по времени. Популярность пришла ко второй версии программы, SPICE2[4], в 1975 году. Она тоже была написана на FORTRAN, но имела больше элементов, позволяла изменять шаг по времени в transient analysis, устраняя тем самым ограничения метода узловых потенциалов. Последняя версия SPICE на языке FORTRAN — 2G.6 (1983). Следующая версия, SPICE3[5] разработана Thomas Quarles в 1989. Она написана на языке Си, использует тот же синтаксис входного формата (netlist) и поддерживает визуализацию в среде X Window System.
Виды анализа
SPICE2 включает в себя:
- AC анализ
- DC анализ
- анализ DC transfer curve
- анализ шумов
- анализ передаточной функции (входное и выходное усиление малых сигналов и вычисление импеданса)
- анализ переходных процессов
Модели элементов
Входные и выходные форматы: Netlist, schematic capture и plotting
SPICE2 принимает netlist в текстовом виде на вход и выдает line-printer listings как результат своей работы. Такая программа была типичной для 1975 года. Листинги представляют либо колонки с номерами, соответствующими рассчитанным выходным параметрам (чаще всего, токам и напряжением), либо представляли собой рисунок из символов (ASCII art). SPICE3 оставил формат netlist для описания схем, но позволил контролировать анализ с помощью командного интерфейса (CLI). Также в SPICE3 появились базовые варианты отрисовки схемы в графической среде X Window, по мере того, как Unix и рабочие станции становились более популярными.
См. также
- HSPICE
- Advanced Design System Transient Convolution Simulator
- Input Output Buffer Information Specification (IBIS)
- List of free electronics circuit simulators
- Multisim
- PSpice
- Ngspice
- Spectre Circuit Simulator
- Transistor models (BSIM4, Модель МОП-транзистора ЭКВ)
Примечания
- ↑ Nagel, L. W., and Rohrer, R. A. (August 1971). «Computer Analysis of Nonlinear Circuits, Excluding Radiation». IEEE Journal of Solid State Circuits SC-6: 166–182. DOI:10.1109/JSSC.1971.1050166.
- ↑ Perry, T. (June 1998). «Donald O. Pederson». IEEE Spectrum 35: 22–27. DOI:10.1109/6.681968.
- ↑ 2nd spice1 ref
- ↑ 2nd spice2 ref
- ↑ Quarles, Thomas L., Analysis of Performance and Convergence Issues for Circuit Simulation, Memorandum No. UCB/ERL M89/42, University of California, Berkeley, Apr. 1989.
Ссылки
SPICE (симулятор электронных схем) на Викискладе? Оригинальные работы о SPICE
- The original SPICE1 paper
- L. W. Nagel’s dissertation (SPICE2)
- Thomas Quarles' dissertation (SPICE3)
- Larry Nagel, «The Life of SPICE»
- A brief history of SPICE
Версии SPICE с исходными кодами
- SPICE2 and SPICE3 at UC Berkeley
- Cider at UC Berkeley
- ngspice: SPICE3 with updates and XSPICE extensions
- tclspice: ngspice and Tcl scripting
- XSPICE at Georgia Tech
- (Free to use online code)Spice3f4
Руководства, информация для пользователей
- Comprehensive, detailed PSPICE tutorial and user guide at Wilfrid Laurier University, Canada
- The Spice Page
- SPICE on gEDA HOWTO
- Spice 3 Userguide
- Spice 3 Quickstart Tutorial
- Designer’s Guide Community
- SPICE Simulation tutorial
Applications
Категории:- Свободное программное обеспечение, написанное на Си
- Свободное программное обеспечение, написанное на Fortran
- Автоматизация проектирования электроники
Wikimedia Foundation. 2010.