ЧАСТЬ II. PROTEUS для продвинутых пользователей
3. Виды симуляции и типы моделей в ISIS.
3.1. Интерактивное и графическое моделирование. PROSpice - ядро симулятора ISIS.
Прежде чем мы продолжим изучение непосредственно программы
Proteus, необходимо сделать небольшое лирическое отступление для того, чтобы следующий материал был более понятен. Имитация реального поведения электронных компонентов и схем составленных из них в программе
ISIS основывается на применении SPICE-моделирования поведения компонентов. Язык
SPICE (Simulation Program with Integrated Circuit Emphasis) был разработан в Калифорнийском университете Беркли в начале семидесятых годов прошлого века и де-факто стал основой для большинства программ, симулирующих поведение электронных компонентов. Это и
P-CAD и
MultiSim (Workbench) и даже такой монстр, как
OrCAD. Отличие Протеуса от упомянутых заключается в том, что если там используется версия языка
PSPICE (разработанная фирмой MicroSim Corporation, которую в 1998 году благополучно «проглотил» OrCAD), то ISIS
ProSPICE базируется на другом клоне, именуемом
SPICE3F5. Поскольку начиная с версии
PSPICE2 в ней появились некоторые отличия от стандарта
SPICE разработчики Протеуса предупреждают, что не всегда SPICE-модели сторонних фирм, большинство из которых предоставляет PSPICE-модели будут адекватно симулироваться в ISIS. Тем не менее, если заглянуть в библиотеки аналоговых компонентов ISIS, то можно заметить, что большинство моделей представлены именно SPICE-моделями.
ISIS поддерживает как интерактивную симуляцию в реальном времени, так и симуляцию с помощью графиков, воспроизводящих сигналы в определенных точках схемы с установленными там пробниками. В любом случае поведение схемы просчитывается с помощью встроенного в программу симулятора
ProSPICE. С каждой новой версией Proteus ядро
Prospice обновляется, например в версии 7.6 SP0 поставляется и версия симулятора
ProSPICE 7.6.00. Версию ядра вашей копии Proteus всегда можно посмотреть в логе симуляции после запуска на выполнение любого проекта или графика.
ProSPICE различных версий не взаимозаменяемы и защищены лицензией на программу. Чем новее версия
Proteus, тем более быстрое ядро
ProSPICE встроено в программу.
Однако, даже самые последние версии не в состоянии удовлетворить запросы наших амбициозных пользователей. Поэтому, если вы при симуляции схемы в реальном времени получаете в логе программы загрузку ЦП компьютера 100% и сообщение:
Simulation is not running in real time due to excessive CPU load
Симуляция не работает в реальном времени из-за чрезмерной загрузки центрального процессора
стоит подумать об использовании графиков для анализа поведения схемы.
Как правило это сообщение вылетает из-за чрезмерной нагруженности схемы аналоговыми компонентами и попыткой иммитировать их работу на достаточно высоких частотах. Возможности ЦП компьютера небезграничны, а при интерактивной симуляции львиная часть ресурсов «съедается» на поддержку элементов, содержащих активную графику: индикация, анимированные провода и пробники и т.п. Не стоит забывать, что и виртуальные инструменты: осциллограф, таймер-частотомер, вольтметры/амперметры и пр. сами по себе являются активными моделями и тоже нагружают симулятор. В то же время при рассчете графиков такой важный фактор, как быстродействие компьютера отходит на второй план. Протеус все равно рассчитает точки графика, только затратит на это больше времени. Именно поэтому применение графиков для анализа аналоговых схем предпочтительно. По этому поводу приведу дословную цитату из
ProSPICE HELP (раздел
ADVANCED TOPICS =› How to make interactive simulations run faster (Как сделать интерактивную симуляцию быстрее):
|
Цитата:
|
«Моделирование цифровой схемы на два три порядка (т.е. вплоть до 1000 раз) быстрее, чем аналоговой. Это объясняется тем, что входящий в ProSPICE цифровой симулятор при обработке цифровых элементов опускает множество ненужных вычислений.
Например, компьютер с процессором Пентиум III 600 МГц может обрабатывать до 2 миллионов цифровых событий в секунду, но у того же компьютера при симуляции синусоидального генератора частотой 2 кГц загрузка ЦПУ может достигнуть 100%. Такая форма сигнала потребует расчета приблизительно 60 000 временных точек в секунду и для каждой из этих точек необходимо, чтобы было найдено решение уравнения сходимости – процесс намного более сложный, чем обработка простого цифрового сигнала.
Для многих компонентов интуитивно понятно: какое моделирование требуется – аналоговое или цифровое. Например, почти вся ТТЛ-логика и часть КМОП представлены цифровыми моделями, в то время, как аналоговые ИС: операционные усилители, компараторы - аналоговыми. Все компоненты представленные (имеется ввиду в библиотеках) стандартными SPICE моделями требуют только аналогового моделирования.
Для некоторых целей строго аналоговые по своей природе компоненты диоды и резисторы могут быть представлены цифровой моделью. Это справедливо для монтажного ИЛИ, подтягивающих резисторов, элементов с открытым коллектором на выходе и диодно-резисторной логики.»
|
Ну вот мы постепенно и подошли к рассмотрению типов моделей в Протеусе.