Анализатор связности сигналов в модуле Verilog - PullRequest
0 голосов
/ 11 ноября 2019

Я пытаюсь сформировать анализатор подключения сигнала в файле модуля. Он может читать (один или несколько) файлов Verilog и выполнять следующие действия:

  • Понимать модуль и находить различные источники и места назначения внутри этого модуля. Другой источник и назначение сигнала внутри файла Verilog (из очень хорошей статьи Jianguo SONG и др.) -
    - Combo block
    - Flop block
    - condition blocks
    - blocking statement (ass--ign statement/ wi--re declaration )
    - non-blocking .
    - instantiation  of another file.
  • Создание хеш / словаря, подобного данным-структура с каждым сигналом (рег или провод в файле) в качестве ключей первого уровня.
  • Затем создайте ключи источника и назначения для каждого из этих сигналов в качестве портов модуля или одного из внутренних источников / назначений, как упомянуто выше.
  • Конечно, вектор сигнала может иметь несколько допустимых источников (учитываячасть вектора исходит от источника досягаемости) и нескольких мест назначения. Его можно поддерживать соответствующим образом.

Теперь вопрос -

Я искал подходящую работу-прекурсор, с которой мы можем начать это. Я прошел через BisonParser и попытался понять грамматику ANTLR и т. Д. Есть несколько предыдущих работ, которые упомянуты ниже

и несколько других.

Это хорошие пакеты, которые извлекают много информации о файлах и иногда генерируют отчет о подключении между файлами. Хотя я все еще копаюсь, я пока что не видел внутри файловой части.

Если кто-то знает более подходящую предыдущую работу, не могли бы вы указать на нее. Мы хотим начать нашу работу сэту базу, или нам придется начинать самостоятельно (вероятно, с одной из вышеперечисленных работ.)

Любая помощь приветствуется.

Спасибо.

...