はじめに
PythonでHDLのテストベンチを書いて、シミュレーションをするという cocotb をざっくり眺めてみました。
cocotb
ドキュメントをざーと眺めてみて、わかったこと。
- VPI, VHPI, FLI にて、HDL Simulatorと接続している
ということで、下記の4社の市販HDL SImulator
- Synopsys VCS
- Mentor/Siemens EDA Questa
- Mentor/Siemens EDA ModelSim
- Cadence Incisive
- Cadence Xcelium
- Aldec Riviera-PRO
- Aldec Active-HDL
とオープンソースなHDL Simulator
- Icarus Verilog (Verilog HDL)
- Verilator (Verilog HDL/SystemVerilog)
- GHDL (VHDL)
- Tachyon DA CVC (Verilog HDL)
もサポートしています。
しかしながら、
は、VPI をサポートしていないので、サポートしていません。
おわりに
Verilog HDL の PLI (Programming Language Interface)、VPI, VHDI, FLI を使って、同じ検証用モデルを作って、色々と試したことがあります。 今は、SystemVerilog DPI-Cがあるので、PLIやVPIを使ってそのような検証用モデルを作る必要が無くなり、便利になりました。。。