はじめに
- 自分の環境整理や研究室への情報共有のため,Verilog の環境構築についてまとめる
- 以下の環境を想定している
エディタ
- VSCode が使いやすい
- 以下の拡張機能を用いると,VerilogHDL・SystemVerilog・tcl・xdc ファイルなどにフォーマッタなどを適用できる
周辺開発ツール
- 以下に便利な開発ツールとそのインストール方法を示す
- これらは,VSCode の拡張機能と連携して利用できる
steveicarus iverilog
- VerilogHDL/SystemVerilog シミュレーション用のコンパイラ
インストール方法
Windows
- Scoop からインストール(推奨)
scoop install iverilog
Linux
- apt からインストール(推奨)
sudo apt install iverilog
dalance svls
- SystemVerilog の LanguageServer
インストール方法
Windows
- Scoop からインストール(推奨)
scoop bucket add motty https://github.com/motty-mio2/scoop-bucket/
scoop install svls
Linux
- brew からインストール(推奨)
brew install svls
- cargo からインストール
cargo install svls
dalance svlint
- SystemVerilog の Linter
インストール方法
Windows
- Scoop からインストール(推奨)
scoop bucket add motty https://github.com/motty-mio2/scoop-bucket/
scoop install svlint
Linux
- brew からインストール(推奨)
brew install svlint
- cargo からインストール
cargo install svlint
chipsalliance verible
- SystemVerilog の Linter Formatter LanguageServer
インストール方法
Windows
- Scoop からインストール(推奨)
scoop bucket add motty https://github.com/motty-mio2/scoop-bucket/
scoop install verible
Linux
- brew からインストール(推奨)
brew install motty-mio2/tap/verible
suoto hdl_checker
- VerilogHDL に対応する LanguageServer
- 他にあまり選択肢がないため,これを利用する
インストール方法
Windows
- Scoop / pip からインストール(推奨)
scoop install python
~\scoop\shims\python3.exe -m pip install hdl_checker
Linux
- pip からインストール(推奨)
/usb/bin/python -m pip install hdl_checker
設定
-
VSCode
-
settings.json に以下の内容を追記する
- 以下の設定は,自分の環境に合わせて適宜変更すること
"verilog.formatting.iStyleVerilogFormatter.style": "ANSI", "verilog.formatting.verilogHDL.formatter": "verible-verilog-format", "verilog.languageServer.hdlChecker.enabled": true, "verilog.languageServer.svls.enabled": true, "verilog.languageServer.veribleVerilogLs.enabled": true, "verilog.linting.iverilog.arguments": "-g2012", "verilog.linting.iverilog.runAtFileLocation": true, "verilog.linting.linter": "xvlog", // Vivadoが入っている場合 // "verilog.linting.linter": "iverilog", // Vivadoが入っていない場合 "verilog.linting.verilator.runAtFileLocation": true, "verilog.linting.verilator.useWSL": true,
-
-
svls / svlint
- 公式ドキュメントを参考に,設定ファイルを設置