アウトプットブログ

勉強したことをまとめていきます。

OVL(Open Verification Library)を導入する

FPGAで組む回路規模が大きくなってくると、波形目視でのシミュレーションは抜けが多くなり、どうすれば良いか悩んでいます。少し検証手法について調べてみると、「アサーション」という手法があることを知りました。(詳細説明は以下ページが詳しいです)
その基本から、記述ノウハウ、フォーマル解析への展開まで:アサーション活用の手引き (1/5) - EDN Japan

SystemVerilogにもアサーション検証機能はあるのですが、その機能を使用可能なツールは調べた限りでは有償です。フリーで使用可能なものがあるのかを探してみたところ、OVL(Open Verification Library)というライブラリがあるようです。

OVLでは合成可能なモジュールもあるようなので、実機評価時にも役に立ちそうだということで、勉強してみることにしました。

今回はOVLをModelSimにて使用するまでの前準備をまとめます。

前準備

  1. OVLのダウンロード
  2. ModelSimでのライブラリ化とプロジェクトへの追加
  3. ソースファイルでのライブラリ, パッケージ指定

1. OVLのダウンロード
以下ページからダウンロード可能です。
OVL Statement of Use

2. ModelSimでのライブラリ化とプロジェクトへの追加
下記ページを参考にさせて頂きました。ツールバージョンはModelSim ASE 10.4bでしたが、全く同じ手順で問題なし。
FPGAの部屋 VHDLでOVLアサーションを使用する1(ライブラリのコンパイル)
FPGAの部屋 VHDLでOVLアサーションを使用する2(VHDLライブラリを使用)

3. VHDLソースファイルでのライブラリ, パッケージ指定
上記ページ内にもありますが、以下を記述します。(ライブラリ名は生成時に指定したもの)

library accellera_ovl_vhdl;
use accellera_ovl_vhdl.std_ovl.all;
use accellera_ovl_vhdl.std_ovl_components.all;
use accellera_ovl_vhdl.std_ovl_procs.all;

ここまで進めると、VHDLにてOVLを使用可能になります。今回はほぼ他ページのご紹介でしたが、次回以降OVLモジュールを実際に試してみたいと思います。