Перейти к содержанию
    

BSIM и ее API

Уважаемые форумчане!

Мне надо написать модуль к программе, который бы расчитывал ВАХи с использованием SPICE моделей BSIM (версия пока не сильно принципиальна) с заданными мной параметрами. Исходники скачал - не проблема. Но что с ними делить дальше – ума не приложу. Основная загвоздка — интерфейс библиотеки. Где входная функция которой передавать параметры (второй вопрос — как их задавать)?. Рылся в исходниках NGSPICE — пока не догнал что к чему. Надо мне всего ничего (? :)) - подать напряжения на контакты и получить токи и напряжения транзистора. Прошу помощи. Если есть какой -нить простой примерчик — буду благодарен. Никаких расчетов больших электрических цепей не предполагается.

Заранее благодарен)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Возможно я неправильно понимаю задачу, но расчет ВАХ нужно производить следующим образом.

1. Формируете нетлист - текстовый файл со схемой измерения. В случае выходных характеристик

NMOS транзистора он будет выглядеть примерно так:

 

* I-V curve of NMOS

M1 N1 N2 Gnd Gnd CMOSN L=2u W=22u AD=66p PD=24u AS=66p PS=24u

.include bsim_spice_model.md

 

v1 N1 Gnd 5

v2 N2 Gnd 5.0

.dc lin source v1 0 5 0.1 v2 0 5 1

.print dc id(M1)

 

Синтаксис может меняться от симулятора к симулятору. Смотрите руководство пользователя.

 

2. В файле bsim_spice_model.md задаете нужную модель.

3. Подаете нетлист на вход симулятора (просто вызов исполняемого файла с параметрами). Какие именно ключи для этого используются

тоже найдете в руководстве.

4. Результатом работы будет некий выходной файл (обычно имеющий расширение out). В нем будут результаты симуляции

в текстовом виде.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Немного не то.

Задача такая, есть модель прибора (BSIM МОП). Я хочу в своей программе провести моделирование данного прибора в заранее определенной не сложной схеме (источник питания, максимум резистор - другой, все значения компонентов известны). Как это можно сделать. Пытался разобраться в исходниках NGSPICE - не получилось.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Вы хотите запустить стороннюю программу аналогового моделирования внутри своей или описать уравнения модели самому?

Ваша программа будет заточена только под транзистор с резистором и определения ВАХ? (простите, не пользовался ngspicе'ом)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

В-том то и дело, что пока я запускаю внешнюю программу (ngspice) для моделирования cir-файла, а подумал отвязаться от сторонних приложений.

 

Делаю программу для экстракции SPICE-параметров моделей приборов на основании экспериментальных данных (или результата моделирования). Так что мне не надо моделировать очень большое количество различных схем (и все они простые), вот и подумал запихнуть все внутрь.

 

А вообще, кто-нибудь из посетителей форума занимается экстракцией Spice-параметров?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

В-том то и дело, что пока я запускаю внешнюю программу (ngspice) для моделирования cir-файла, а подумал отвязаться от сторонних приложений.

 

Делаю программу для экстракции SPICE-параметров моделей приборов на основании экспериментальных данных (или результата моделирования). Так что мне не надо моделировать очень большое количество различных схем (и все они простые), вот и подумал запихнуть все внутрь.

 

А вообще, кто-нибудь из посетителей форума занимается экстракцией Spice-параметров?

 

В принципе, вы можете сами написать решатель систем нелинейных дифференциальных уравнений, попутно решая проблему сходимости математических методов.

Только, боюсь, это работа на несколько человеко-лет и несколько диссертаций.

Либо попытаться выдрать решатель из самого ngspice (он ведь open-source).

 

Но, честно говоря, запуск внешней программы в данном случае выглядит наиболее логичным методом.

Кстати, могут оказаться полезными программы типа

http://sourceforge.net/projects/asco/

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Но, честно говоря, запуск внешней программы в данном случае выглядит наиболее логичным методом.

Кстати, могут оказаться полезными программы типа

http://sourceforge.net/projects/asco/

Спасибо за совет. Посмотрю.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...