久々のVMMネタ→大人の事情でVMMをもう一度 ③コンパイルして見る。

vmm_xvc_manager,xvc_xactor,xvc_action
を繋げてコンパイルみる。

 →結論を先に書きましょ。。
   vmm_xvc_manager.svを使用したい時。。
  * VMM-1.0.1の場合modelSimPEで使用できる見込みは無いと思う。
          ->修正困難なエラーがでる。
    *   VMM-1.1の場合modelSimPEで使用できる見込み??
     ->良くVMMを理解している人なら。。使えるかも

   =====メンター版のVMM-1.1待ちですな。。====== 


コンパイルしてみたらやっぱり。。error&warningが沢山出てきた。
-- Compiling package vmm_std_lib
** Error: ../../vmm-1.0.1/sv/std_lib/vmm_xvc_event.sv(195): Non-class type was used for the super class of vmm_xvc_event_any_all.
** Error: ../../vmm-1.0.1/sv/std_lib/vmm_xvc_event.sv(246): super.new() call illegal for class with no super-class.
** Error: ../../vmm-1.0.1/sv/std_lib/vmm_xvc_manager.sv(49): near "[": syntax error, unexpected '[', expecting ';'
取っつきやすそうな3番目のsyntax errorから見てみる。。
ソースはvmm_xvc_manager.svのline49
   local vmm_xvc_stop_on_event stop_on[string]; 
  "["の近くに文法errorありと言っているが。。目視ではエラー発見出来ず。
でline-49をコメントアウトして再コンパイル
。。消えました3番目の文法error
あはは。。これが”Verification Engineer”氏のブログに有った
  >>でも、これだけではなぜか、使えません。
http://blogs.yahoo.co.jp/verification_engineer/46507677.html
の事なのね。。単純な文法エラーなら作者が直しているはずだし
`include "std_lib/vmm_xvc_manager.sv"
も消去してないな。

VMM-1.0.1は諦めてVMM-1.1に置き換えを行いvmm.svを見てみると
line-2610
`ifdef VMM_XVC_MANAGER
`include "std_lib/vmm_xvc_manager.sv"
`endif
あるじゃんvmm_xvc_manager.sv
defineでVMM_XVC_MANAGERを追加すれば良いのか。。
コンパイルすると新しいエラーが。。
** Error: ../../vmm-1.1/sv/std_lib/vmm_version.sv(129): Undefined macro 'VMM_DATA_BASE_NEW_CALL'.
VMM_DATA_BASE_NEW_CALLてなんだ。。Undefined macroだから`define VMM_DATA_BASE_NEW_CALL
としてみる。
3番目の文法エラーは無くなったけど。。
suer.new()エラーが増えた
** Error: ../../vmm-1.1/sv/std_lib/vmm_xvc_manager.sv(26): "DPI" is deprecated in import/export declarations; use "DPI-C" instead.
** Error: ../../vmm-1.1/sv/std_lib/vmm_xvc_manager.sv(28): "DPI" is deprecated in import/export declarations; use "DPI-C" instead.
** Error: ../../vmm-1.1/sv/std_lib/vmm_xvc_event.sv(196): Non-class type was used for the super class of vmm_xvc_event_any_all.
** Error: ../../vmm-1.1/sv/std_lib/vmm_xvc_event.sv(247): super.new() call illegal for class with no super-class.
DPI-Cの所のエラーはvmm.sv line-96と同様にVMM_NO_STR_DPIを選択
選択(define VMM_NO_STR_DPIを追加)
するようにすれば良いと思うが、どう記述すれば良いのやら。。
結論 メンター版VMM-1.1を待ちましょ

systemVerilog VMM 回路検証 LSI検証