Vengineerの戯言

人生は短いけど、長いです。人生を楽しみましょう!

モデル、トップテストベンチ、テストプログラム

Verification Engineerの戯言

検証環境の実装では、3つの要素(モデル、トップテストベンチ、テストプログラム)が必要なると思います。これは、SystemVerilogを使っても、SystemCを使っても同じです。

モデルは、独自のモデルの他にVIP(検証用IP)を使うことがあります。

トップテストベンチは、DUVの周りにどのようにモデルをつなぎ合わせていくかというものです。
VMMやAVMなどの階層構造にしたりするのも、トップテストベンチの作り方です。

テストプログラムについては、DUVやモデルを制御するためのものです。

Verification3.0において、モデルはSystemVerilogやSystemCで使えるVIPがあれば、非常に便利です。トップテストベンチは、DUVがHDL(Verilog HDL/VHDL)、SystemCによって記述する言語を決めていきます。テストプログラムは、SystemVerilogを使ったり、SystemCを使ったりします。しかしながら、実際にH/Wを制御するのはS/Wで、実装言語は主にC言語です。できれば、C言語でテストプログラムが書ければ、後工程でも利用できる可能性があります。

みなさんは、3つの要素(モデル、トップテストベンチ、テストプログラム)について、どう思いますか?