TG Telegram Group & Channel
VLSI HUB | United States America (US)
Create: Update:

Существует достаточное количество опенсорсных парсеров/лексических анализаторов Verilog/SystemVerilog и мне всегда не до конца были понятны юзкейсы их использования: ведь намного проще и гибче управлять генерацией HDL кода, чем потом пытаться его анализировать или изменять имеющуюся кодовую базу.

И вот наконец мне встретился кейс для применения анализатора HDL на практике: выявление изменений портов модуля между текущей и предыдущей версиями HDL.

Это можно было бы решить малой кровью и полуручными операциями с использованием grep|cut|sort|sed если бы не особый синтаксис описания портов в стиле:

inout a1, a2, a3, a4, a5;
input [7:0] bcc, bcd, bcf;
..

который башу уже не по зубам.

Подробнее про кейс: разработчик аналогового/миксед-сигнал блока может выгрузить автоматически генерируемый HDL на 100500 портов, часть из которых изменилась (в т.ч. может измениться тип порта) и задача обнаружить эти изменения и проапдейтить инстанциирование модуля в топ-левел блоке и при появлении непонятных портов (или нелогичных типов портов) задать необходимые вопросы разработчику.

Т.е. утилита такого формата здорово бы уменьшила влияние человеческого фактора и сократила расходуемые на это инженеро-часы:
verilog-ports-diff verilog-a.v verilog-b.v


Не попадалось ли кому-либо чего-то готового на эту тему?
(реплики "да там работы на 5 минут" к рассмотрению не принимаются)

@vlsihub

Существует достаточное количество опенсорсных парсеров/лексических анализаторов Verilog/SystemVerilog и мне всегда не до конца были понятны юзкейсы их использования: ведь намного проще и гибче управлять генерацией HDL кода, чем потом пытаться его анализировать или изменять имеющуюся кодовую базу.

И вот наконец мне встретился кейс для применения анализатора HDL на практике: выявление изменений портов модуля между текущей и предыдущей версиями HDL.

Это можно было бы решить малой кровью и полуручными операциями с использованием grep|cut|sort|sed если бы не особый синтаксис описания портов в стиле:
inout a1, a2, a3, a4, a5;
input [7:0] bcc, bcd, bcf;
..

который башу уже не по зубам.

Подробнее про кейс: разработчик аналогового/миксед-сигнал блока может выгрузить автоматически генерируемый HDL на 100500 портов, часть из которых изменилась (в т.ч. может измениться тип порта) и задача обнаружить эти изменения и проапдейтить инстанциирование модуля в топ-левел блоке и при появлении непонятных портов (или нелогичных типов портов) задать необходимые вопросы разработчику.

Т.е. утилита такого формата здорово бы уменьшила влияние человеческого фактора и сократила расходуемые на это инженеро-часы:
verilog-ports-diff verilog-a.v verilog-b.v


Не попадалось ли кому-либо чего-то готового на эту тему?
(реплики "да там работы на 5 минут" к рассмотрению не принимаются)

@vlsihub
🤔511👍1🤯1🫡1


>>Click here to continue<<

VLSI HUB




Share with your best friend
VIEW MORE

United States America Popular Telegram Group (US)