Vengineerの戯言

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

OVM e (その2)

Verification Engineerの戯言

OVM eのソースコードは、ファイルを展開すると、ovm_ml/ovm_lib/ovm_e/eに展開されます。
ソースコードは、Apache 2.0ライセンスで公開されています。
    ・ovm_base_class.e
    ・ovm_config.e
    ・ovm_cover_sequence.
    ・ovm_e_top.e
    ・ovm_seq_utils.e
    ・tf_util_clock_switch.e
    ・tf_util_command.e
    ・tf_util_dep.e
    ・tf_util_seq.e
    ・tf_util_top.e
    ・tf_util_unit.e
この中で、ovm_e_top.eファイルがすべてのファイルをimportしているようです。
(importは、SystemVerilogの`includeと同じ機能です)
<'
import ovm_e/e/ovm_base_class.e;
import ovm_e/e/tf_util_top.e;
import ovm_e/e/ovm_cover_sequence.e;
import ovm_e/e/ovm_config.e;
import ovm_e/e/ovm_seq_utils.e;
'>

tf_util_xxx.eファイルには、次のようなコードがあります。
    package testflow;
これは、SystemVerilogのpackageと同じ機能のようです。

すべてのbase unitは、ovm_base_class.eファイル内のovm_base_unitです。
そして、下記の6つがovm_base_unitを継承しています。
    ・ovm_signal_map
    ・ovm_agent_config
    ・ovm_collector
    ・ovm_monitor
    ・ovm_bfm
    ・ovm_agent

検証、Verification、e、OVM、Open Verification Methodology