реклама на сайте
подробности

 
 
> Обработка нетлиста на Си, Ищутся библиотеки Cи под линукс
Shivers
сообщение Feb 13 2015, 05:34
Сообщение #1


Знающий
****

Группа: Свой
Сообщений: 680
Регистрация: 11-02-08
Из: Msk
Пользователь №: 34 950



Привет! Не нашел, куда лучше приткнуть тему, но думаю что здесь я скорее получу ответ.

Есть задача - сильно менять нетлист. Прежде всего, его нужно зачитать, представить как набор объектов, а затем править: удалять/добавлять порты, элементы, цепи и ассайны, делать переподключения. Все это хочется делать на Си. Если кто с подобным работал, есть такая библиотека Verilog-Perl. Вот, хочется ровно то же самое, но лучше. Perl устраивает, но производительности не хватает - нужен компилятор, а не интерпретатор.

Т.е. что я ищу: Библиотека должна содержать функции чтения и записи нетлиста, создания базы объектов, и должна предоставлять простые функции: соединять/удалять/создавать и т.д. И все это под линукс.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
SM
сообщение Feb 13 2015, 05:59
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 7 946
Регистрация: 25-02-05
Из: Moscow, Russia
Пользователь №: 2 881



Была еще библиотека nldb - на яве, которую можно использовать из C/C++. Это, вроде, более высокая степень компилированности, чем perl. Но я не знаю, померла, или нет...
Go to the top of the page
 
+Quote Post
Shivers
сообщение Feb 13 2015, 14:20
Сообщение #3


Знающий
****

Группа: Свой
Сообщений: 680
Регистрация: 11-02-08
Из: Msk
Пользователь №: 34 950



Цитата(SM @ Feb 13 2015, 09:59) *
Была еще библиотека nldb - на яве, которую можно использовать из C/C++. Это, вроде, более высокая степень компилированности, чем perl. Но я не знаю, померла, или нет...

Спасибо! Яву пока использовать не хочется, надеюсь найти чистые Си-шные либы.

Цитата(Fat Robot @ Feb 13 2015, 17:42) *
Вы могли бы уточнить, почему вас не устраивают средства, предоставляемые синтезаторами. Например, весь описанный вами функционал есть в DC и в RC. Средствами встроенного TCL всё прекрасно читается, меняется и записывается. Плюс: не будет сомнений в валидности инструментария.

Жутко тормозной интерпретатор. По моему опыту, интерпретатор perl обрабатывает нетлист в 20 раз быстрее, чем DC справляется с теми же алгоритмами на TCL. Хотя, работать с командами DC (конкретно - с коллекциями) намного удобнее. imho
Про RC ничего не знаю, но думаю что то же самое.
Из интерпретаторов вряд ли что нибудь сравнится с perl. Быстрее - только под компилятор писать. Да и с защитой авторских прав, компилятор лучше. Код на перле я пока не знаю как защитить (впрочем, особо этот вопрос пока не изучал, надеюсь переписать все на Си).

Цитата(Fat Robot @ Feb 13 2015, 17:42) *
Кстати, если не секрет, как для такого сильно модифицированного нетлиста сделать функциональную верификацию?

Только моделирование, ничего другого я не знаю. И еще DFT для проверки на фабе/плате.
Go to the top of the page
 
+Quote Post
SM
сообщение Feb 13 2015, 14:26
Сообщение #4


Гуру
******

Группа: Свой
Сообщений: 7 946
Регистрация: 25-02-05
Из: Moscow, Russia
Пользователь №: 2 881



Цитата(Shivers @ Feb 13 2015, 17:20) *
Из интерпретаторов вряд ли что нибудь сравнится с perl.

Возможно, ruby будет быстрее, вместе с вериложным gem
Go to the top of the page
 
+Quote Post
Shivers
сообщение Feb 13 2015, 14:33
Сообщение #5


Знающий
****

Группа: Свой
Сообщений: 680
Регистрация: 11-02-08
Из: Msk
Пользователь №: 34 950



Цитата(SM @ Feb 13 2015, 18:26) *
Возможно, ruby будет быстрее, вместе с вериложным gem

Спасибо! Про такое я вообще не слышал.

На Verilog-Perl больше всего не хватает команд вроде all_fanin/all_fanout, да и вообще там нет связей между объектами. Т.е. есть объекты - селл, пин, ассайн, нет. Пин связан с селлом, нет с пином. Но вот в обратную эти связи не работают, и получить что то вроде all_connected для цепи нельзя, надо создавать собственные массивы из связей. Переподключение пина выливается в его полное удаление, а затем создание нового. В общем, Verilog-Perl далек от идеала. Почитаю про ruby-gem, что умеет.
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 22nd June 2025 - 09:51
Рейтинг@Mail.ru


Страница сгенерированна за 0.01384 секунд с 7
ELECTRONIX ©2004-2016