前回動作しなかったのは、
エラボレーションerror→ インスタンス設定に間違いとbuild();の
set_config_string("..............
で設定するsequences名のつまらん書き間違え。。。
と言うことでsequencer→driverへデータを渡すことが出来るようになった。
波形も出るようになった。。喜
・トピック modelsimPE向け。。
`ovm_doの類はmacro展開せずに手打ちで行い
req.randomize_ptm()を追加する→当然データを記述しているクラスへ、
xbusで言えばxbus_transferの中に
function randomize_ptm() ;
.....
endfunction
を入れておく。
assert文は使用しないので削除。。。
→randomize_ptm()がギブアップした == 中身のプログラムが書けなかった時なので。。
不要。
記述例
注) インスタンスのreqは任意な名前では無いことに注意すること。
req.print()で中身をコンソールへ出力してくれる。
---------------------------------
req = new("") ;
`ovm_create(req) ;
start_item(req) ;
req.randomize_ptm()
req.read_write = WRITE ;
finish_item(req) ;
req.print() ;
----------------------------------
`ovm_do_withを使いたければ
randomize_ptm()の後
下記の様に値を再設定してくれ。
req.read_write = WRITE ;
systemverilo OVM OVM2.0 modelSim PE LSI検証 回路検証