Аннотация:
Рост сложности современных цифровых систем и увеличение объемов кода на языках описания аппаратуры требуют эффективных инструментов для выявления ошибок на ранних этапах разработки цифровых СБИС. Для своевременного обнаружения ошибок составляются сборники правил, регламентирующие описание аппаратуры. Эти сборники содержат набор правил, описывающих неточности, ошибки и последствия их нарушения. В данной работе рассмотрен список правил, разработанный на основе опыта работы инженеров, использующих язык SystemVerilog, и представлена система статического анализа SVAN, разработанная для языка SystemVerilog и учитывающая специфику описаний аппаратуры. Предлагаемая система обеспечивает полную поддержку стандарта SystemVerilog IEEE 1800-2017 и предоставляет возможности анализа описаний на наличие структурных и семантических ошибок.
Ключевые слова:
статический анализ, язык описания аппаратуры, язык описания аппаратуры Verilog, язык описания аппаратуры SystemVerilog, интегральная схема, система автоматизации проектирования (САПР), инструментарий анализа, компиляции и выполнения описаний аппаратуры slang, slang-tidy, KLEE, Yosys, Verilator, CIRCT, проект LLVM, абстрактное синтаксическое дерево АСД