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

 
 
> Парсер языка Verilog
Fitc
сообщение May 28 2015, 11:06
Сообщение #1


Частый гость
**

Группа: Свой
Сообщений: 80
Регистрация: 21-10-11
Пользователь №: 67 894



Добрый день,
Кто-нибудь встречал парсер языка verilog (в частности verilog-netlist)?
Желательно open-source на Си/Си++
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Shivers
сообщение Jan 8 2017, 21:14
Сообщение #2


Знающий
****

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



Спасибо за отзыв, очень любопытно!

По собственному опыту (я писал парсер для сильного видоизменения нетлиста на Verilog-Perl) советую потестить с разными версиями DC/RC/Genus. Даже в DC от релиза к релизу бывают изменения. К примеру, я сталкивался с тем, что в DC одной версии к каждому неиспользуемому порту подключается *LOGIC0*, а в другой версии заводится цепь с assign XXX=0; , а потом уже эта цепь заводится на все порты. В общем, бывают всякие чудеса, надо хорошенько все тестить.
На Verilog-Perl я проблем почти не имел, поскольку библиотека отлажена уже много лет. Но зато и код не защитить, не скомпилировать в бинарник. Т.е. я понимаю, почему Вы затеяли писать все с нуля.

Про Liberty - удивлен что используете. Зачем это Вам? А если уж решили все проверять, то и LEF грузите - бывает что нетлист выгружен с ключем physical, когда и цепи питания и аналог выписываются - их в Liberty может и не быть, зато в LEF присутствуют обязательно.
Go to the top of the page
 
+Quote Post
Fitc
сообщение Jan 9 2017, 20:42
Сообщение #3


Частый гость
**

Группа: Свой
Сообщений: 80
Регистрация: 21-10-11
Пользователь №: 67 894



Цитата(Shivers @ Jan 9 2017, 00:14) *
Спасибо за отзыв, очень любопытно!

По собственному опыту (я писал парсер для сильного видоизменения нетлиста на Verilog-Perl) советую потестить с разными версиями DC/RC/Genus. Даже в DC от релиза к релизу бывают изменения. К примеру, я сталкивался с тем, что в DC одной версии к каждому неиспользуемому порту подключается *LOGIC0*, а в другой версии заводится цепь с assign XXX=0; , а потом уже эта цепь заводится на все порты. В общем, бывают всякие чудеса, надо хорошенько все тестить.
На Verilog-Perl я проблем почти не имел, поскольку библиотека отлажена уже много лет. Но зато и код не защитить, не скомпилировать в бинарник. Т.е. я понимаю, почему Вы затеяли писать все с нуля.

Про Liberty - удивлен что используете. Зачем это Вам? А если уж решили все проверять, то и LEF грузите - бывает что нетлист выгружен с ключем physical, когда и цепи питания и аналог выписываются - их в Liberty может и не быть, зато в LEF присутствуют обязательно.

Пока протестил с DC 2013 и 2016, проблем не обнаружил, но конечно тесты нужны получше. Как появится возможность, проверю с RC/Genus.
При необходимости расширения Verilog-Perl возможно могли возникнуть проблемы с их лицензией. Также это довольно сложный проект, который тащит за собой много функционала, который мне не нужен. Отсутствие опыта разработки парсеров также затрудняло понимание кода, сейчас стало гораздо проще.
Мне нужна лишь небольшая информация из Liberty файлов, а до уровня LEF я не доходил, так как такой задачи не было.

Цитата(AVR @ Jan 9 2017, 09:18) *
Мое личное мнение, что без SV для ПЛИС можно прожить. Ему самое место в вышеперечисленном софте моделирования, а то что ПЛИС будут поддерживать лишь Verilog то это не беда.

У нас многие RTL-щики на verilog плюются, разбаловались SV, но согласен, если была бы поддержка хотя бы verilog было бы уже хорошо.

Цитата(Shivers @ Jan 9 2017, 00:14) *
..


Под необходимостью расширения Verilog-Perl я имел ввиду их ядро парсера, которое написано на C++ с применением flex и bison (судя по содержимому git-репозитория Verilog-Perl). Причем похоже, что flex и bison файлы полностью взяты из verilator-а.

Сообщение отредактировал Fitc - Jan 9 2017, 20:43
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- Fitc   Парсер языка Verilog   May 28 2015, 11:06
- - dvladim   Посмотрите открытые проекты. Например Icarus Veril...   May 29 2015, 15:58
|- - Fitc   Цитата(dvladim @ May 29 2015, 18:58) Посм...   May 29 2015, 18:02
- - krux   распарсить верилог - относительно несложно. вопрос...   May 29 2015, 18:12
|- - Fitc   Цитата(krux @ May 29 2015, 21:12) распарс...   May 29 2015, 18:23
- - krux   т.е. вам нужно неким образом обрабатывать синтезир...   May 29 2015, 18:26
|- - Fitc   Цитата(krux @ May 29 2015, 21:26) т.е. ва...   May 29 2015, 18:43
- - krux   то, что после синтеза, обычно называют gate-level ...   May 29 2015, 18:53
|- - Fitc   Цитата(krux @ May 29 2015, 21:53) то, что...   May 29 2015, 21:00
|- - Shivers   Цитата(Fitc @ May 30 2015, 00:00) Есть ли...   May 31 2015, 07:49
|- - Fitc   Цитата(Shivers @ May 31 2015, 10:49) А вы...   May 31 2015, 13:45
|- - Shivers   Цитата(Fitc @ May 31 2015, 16:45) Пока Ve...   May 31 2015, 20:10
|- - Fitc   Цитата(Shivers @ May 31 2015, 23:10) Ваш ...   Jun 1 2015, 17:50
|- - krux   Цитата(Fitc @ Jun 1 2015, 20:50) А почему...   Jun 1 2015, 18:21
|- - Shivers   Работа с нетлистом подразумевает разработку для AS...   Jun 1 2015, 18:34
|- - krux   Цитата(Shivers @ Jun 1 2015, 21:34) Работ...   Jun 1 2015, 18:42
- - Golikov A.   Дико любопытно, а зачем это все надо? Не слишком л...   Jun 1 2015, 18:15
- - dvladim   2 TC У альтеры есть университетская программа (QUI...   Jun 2 2015, 17:32
- - Fitc   Тем временем прошло 2 года с того момента, как я з...   Jan 8 2017, 12:39
|- - AVR   Цитата(Fitc @ Jan 8 2017, 15:39) права пр...   Jan 8 2017, 17:20
|- - Fitc   Цитата(AVR @ Jan 8 2017, 20:20) В Воронеж...   Jan 8 2017, 20:12
|- - AVR   Цитата(Fitc @ Jan 8 2017, 23:12) многие С...   Jan 9 2017, 06:18
|- - Ergond   Цитата(Fitc @ Jan 9 2017, 03:12) Потому ч...   May 17 2018, 13:22
||- - Marat Zuev   Цитата(Ergond @ May 17 2018, 14:22) Как м...   May 17 2018, 15:40
|||- - Ergond   Цитата(Marat Zuev @ May 17 2018, 22:40) В...   May 17 2018, 16:28
||- - Nieve   Как вариант сделать синтез в ISE / Quartus. САПР с...   May 17 2018, 15:44
|- - AVR   Цитата(Fitc @ Jan 8 2017, 23:12) а возмож...   May 18 2018, 13:01
|- - Marat Zuev   Цитата(AVR @ May 18 2018, 13:01) О каком ...   May 18 2018, 13:09
- - Flood   Достаточно редкая задача, написание такого парсера...   Jan 8 2017, 12:59
|- - Fitc   Цитата(Flood @ Jan 8 2017, 15:59) Достато...   Jan 8 2017, 13:41
- - Flip-fl0p   ЦитатаОставить в Veriloge не вариант, т.к. я пишу ...   May 17 2018, 17:04
- - andrew_b   Цитата(Flip-fl0p @ May 17 2018, 20:0...   May 17 2018, 17:46


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

 


RSS Текстовая версия Сейчас: 23rd July 2025 - 09:52
Рейтинг@Mail.ru


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