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

    

Система автосборки Verilog проекта.

Есть такая идея для текущего проекта. Собрать автосборку и проверку на ошибки при различных конфигурациях проекта (define).

Исходники на  Verilog, окружение на Perl,  все хранится в  CVS.

Хочется автоматически при обновлении в CVS запускать компиляцию проекта с различными дефайнами и несколько простых тестов с выдачей результата. Возможно ли это осуществить? 

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


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

люди делают и не такое

USRP X300: https://github.com/EttusResearch/fpga

Vivado, Xilinx HLS,, GNU make, Git

для виндузятников у них всё даже в cygwin абсолютно также собрается, но тогда система совсем монстрообразная

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


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

Вы бы для начала описали используемый инструментарий(СПАР, семейство FPGA, симулятор), иначе о чем вообще говорить?

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


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

ASIC, не FPGA. Только компиляция кода и запуск нескольких тестов.

Симулятор ncverilog, в его последней реинкарнации.

Окружение на perl-е, вызов симуляций также из него.

 

P.S. Всегда возникает вопрос, а нужно ли оно мне вообще. Просто проверить код можно и вручную, запуск линта занимает не так и много времени, анализ вообще отдельный таск. Это не огромный С проект, где сборка занимает часы. Синтез отдельная задача минимум на 2 дня.

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


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

Польза подобных проверок действительно под сомнением.

Но если уж хочется покодить, то очень полезно, к примеру, организовать работу со списками файлов и дефайнов: чтобы по одному списку файлов с синтезируемым кодом запускать симуляцию, и по тому же списку - синтез (компиляцию/элаборацию). Очевидно, что для симуляции нужен третий список - верилог моделей (модели нельзя мешать с синтезируемым кодом), а для синтеза - аналогичный список либерти моделей. Работа со списками позволит гарантировать, что на синтез передан тот же самый код, что был проверен в симуляции. Это позволит избежать множества ошибок.

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


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

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

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

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

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

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

Войти

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

Войти
Авторизация