1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

[SystemVerilog]svlibの紹介

Last updated at Posted at 2014-04-26

##svlibって?
米国の設計コンサル会社Velirab社が今年のDVConで発表したSystemVerilogのパッケージらしい。ライセンスはApache2.0形式。
http://www.verilab.com/resources/svlib/

ざっくり見たところ、SystemVerilogのテストコーディングの手助けするパッケージっぽい。正規表現といった文字列のマニピュレーションと、今はini、ゆくゆくはYAMLをサポートしてテストシステムを組めるようになっている。

中身はSystemVerilog書かれたメソッドと、足りないものはDPIでC言語をimportしている。

##やろうとしたけど
現時点ではドキュメントが十分とは言えず、サンプルコードもあまりないので挫折orz
ソースコードは、いじってはいけないBaseクラスといじれるクラスがある。まあimportすれば良さげな感じ。

##ちょっと使ってみよう
ドキュメントにはツールとしてQuesta/Incisive/VCSを想定したコンパイル方法が記述されている。
ISE? Vivado? 知らない子ですね。ModelSim ASEだったらいけそうな気がする。

Whitepaperからちょっと拝借してコードを書いてみた。
svlibパッケージをimportさせ、走らせるには、svlib.fに書かれているパスを編集する必要がある。

tb.sv
`include "svlib_macros.svh"

module tb();
  import svlib_pkg::*;

  string cdir;

  initial begin

    cdir = sys_getCwd();

    $display("Current directory is %s", cdir);

    $finish(1);

  end

endmodule

実行すると、カレントディレクトリが表示される。

##今後に期待
もうちょっとドキュメントを充実させてくれると面白いかも。
応用例が思いついたらまた書いてみようかと思います。
今はとりあえずのメモ程度に後悔しておきます。

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?