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

характеризация в liberate

Всем привет.
Сталкивался ли кто с такой проблемой. Подключаю простой нетлист с транзисторами типа nch_mac и pch_mac и спайс модели на эти мопы. Запускаю char_library но:

ERROR (LIB-508): (char_library): Unable to identify the device type for 'nch_mac' because no global or local NMOS or PMOS model has been loaded using 'read_spice' and no 'define_leafcell' command has been specified. Load the model using 'read_spice' or specify a 'define_leafcell' command and rerun. The 'define_leafcell' commands must precede 'read_spice' command. If the netlist has elements, also specify the '-element' argument with the 'define_leafcell' command.
ERROR (LIB-507): (char_library): Failed to process the model based element inst: 'MM73', model: 'MOS' in the cell DFD. This cell will be skipped. Check the model uses standard parameter names and the define_leafcell command options are used properly. Update the Tcl and rerun.

Пробовал на другом примере где мопы не pch_mac а просто pch, там все ок.

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


Ссылка на сообщение
Поделиться на другие сайты
Цитата(Mikhail241 @ Feb 13 2018, 13:51) <{POST_SNAPBACK}>
Всем привет.
Сталкивался ли кто с такой проблемой. Подключаю простой нетлист с транзисторами типа nch_mac и pch_mac и спайс модели на эти мопы. Запускаю char_library но:

ERROR (LIB-508): (char_library): Unable to identify the device type for 'nch_mac' because no global or local NMOS or PMOS model has been loaded using 'read_spice' and no 'define_leafcell' command has been specified. Load the model using 'read_spice' or specify a 'define_leafcell' command and rerun. The 'define_leafcell' commands must precede 'read_spice' command. If the netlist has elements, also specify the '-element' argument with the 'define_leafcell' command.
ERROR (LIB-507): (char_library): Failed to process the model based element inst: 'MM73', model: 'MOS' in the cell DFD. This cell will be skipped. Check the model uses standard parameter names and the define_leafcell command options are used properly. Update the Tcl and rerun.

Пробовал на другом примере где мопы не pch_mac а просто pch, там все ок.

Сделай нетлист / список цепей. Смотри какая модель грузится. А потом в папке смотри наличие моделей в scs-подобных файлах.

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


Ссылка на сообщение
Поделиться на другие сайты
Цитата(baumanets @ Feb 14 2018, 06:15) <{POST_SNAPBACK}>
Сделай нетлист / список цепей. Смотри какая модель грузится. А потом в папке смотри наличие моделей в scs-подобных файлах.

Я ведь с этого и начал. Сделал нетлист вентиля прочитал его и спайс модели. У меня не scs у меня L(hspice). Я итак знаю, что не грузится - nch_mac и pch_mac. Мне кажется это связано с тем, что *_mac это не модели, а subckt а сами модели находятся в нем и тулу нужно как-то это объяснить

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


Ссылка на сообщение
Поделиться на другие сайты
Частично решил проблему: названия инстанций макро транзисторов(*ch_mac) должны начинаться с буквы X. Но как быть с нетлистом у которого при генерации буква M?

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


Ссылка на сообщение
Поделиться на другие сайты
как вариант посмотри в UG: define_leafcell

CODE
define_leafcell -type nmos -pin_position { 0 1 2 3 } -extsim_model nch_mac


Цитата(Mikhail241 @ Feb 14 2018, 12:14) <{POST_SNAPBACK}>
Частично решил проблему: названия инстанций макро транзисторов(*ch_mac) должны начинаться с буквы X. Но как быть с нетлистом у которого при генерации буква M?


можно поподробнее? из текущего описания мне кажется что достаточно постобработки нетлиста небольшим шелл скриптом..

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


Ссылка на сообщение
Поделиться на другие сайты
Цитата(vermut.42 @ Feb 14 2018, 17:25) <{POST_SNAPBACK}>
как вариант посмотри в UG: define_leafcell

CODE
define_leafcell -type nmos -pin_position { 0 1 2 3 } -extsim_model nch_mac




можно поподробнее? из текущего описания мне кажется что достаточно постобработки нетлиста небольшим шелл скриптом..

Я сейчас так и делаю. Автозаменой. Но как-то странно: в описании tsmc сказано, что макро должны начинаться с "X", но все их же spi-нетлисты на стд ячейки с транзисторами на "М" !
define_leafcell пробовал, не помню с какими ключами, завтра еще раз запущу...

Спасибо за ответы! Еще вопрос. Как в liberate констрейнить входные данные которые тактируются внутренним клоком? Внутренний клок генерируется с помощью входного опорного клока.

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


Ссылка на сообщение
Поделиться на другие сайты
Цитата(Mikhail241 @ Feb 14 2018, 14:09) <{POST_SNAPBACK}>
Как в liberate констрейнить входные данные которые тактируются внутренним клоком? Внутренний клок генерируется с помощью входного опорного клока.


Либерейт может рассчитать временные ограничения для пары входных портов: сетап, холд и т.д.
Если я правильно понял - стройте арки для входных данных и опорного клока..

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


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

Всем привет! Есть вопрос по переносу настроек из одной либы в другую. Как дампить темплейты из загруженной либы понятно, как дампить скелет либы (udata.lib) тоже понятно. А вот как задампить весь хеадер билиотеки, включая пороги, напряжения, пауэр рейлы, переменные, таблицы .. - т.е. все, что идет до селлов?

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


Ссылка на сообщение
Поделиться на другие сайты
Всем привет! Есть вопрос по переносу настроек из одной либы в другую. Как дампить темплейты из загруженной либы понятно, как дампить скелет либы (udata.lib) тоже понятно. А вот как задампить весь хеадер билиотеки, включая пороги, напряжения, пауэр рейлы, переменные, таблицы .. - т.е. все, что идет до селлов?

ЕМНИП, "пороги, напряжения, пауэр рейлы, переменные, таблицы" - САПР сам тебе сгенерит, хотя внешне может выглядеть по другому. Добавить что-то в либу можно командой "add_lib_attribute"

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


Ссылка на сообщение
Поделиться на другие сайты
On 2/14/2018 at 12:14 PM, Mikhail241 said:

Частично решил проблему: названия инстанций макро транзисторов(*ch_mac) должны начинаться с буквы X. Но как быть с нетлистом у которого при генерации буква M?

Можно решить установкой переменной spice_instance_name_require_x_prefix  в 0

set_var spice_instance_name_require_x_prefix 0

 

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


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

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти