Vengineerの妄想(準備期間)

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

OVM SystemC

Verification Engineerの戯言

OVM Multi-language Release 2.0.1では、SystemCへの拡張を行っています。

OVM SystemCのソースコードは、ファイルを展開すると、ovm_ml/ovm_lib/ovm_sc/scに展開されます。
ソースコードは、Apache 2.0ライセンスで公開されています。
    ・ovm.h
    ・base/ovm_component.h
    ・base/ovm_component.cpp
    ・base/ovm_config.h
    ・base/ovm_config.cpp
    ・base/ovm_factory.h
    ・base/ovm_factory.cpp
    ・base/ovm_globals.h
    ・base/ovm_globals.cpp
    ・base/ovm_ids.h
    ・base/ovm_ids.cpp
    ・base/ovm_manager.h
    ・base/ovm_manager.cpp
    ・base/ovm_object.h
    ・base/ovm_object.cpp
    ・base/ovm_packer.h
    ・base/ovm_packer.cpp
    ・base/ovm_typed.h
    ・base/ovm_typed.cpp
    ・base/ovm_void.h

ovm.hファイルは、次のようにbase/xxxx.hをインクルードしているだけです。
#ifndef OVM_H
#define OVM_H

#include "base/ovm_globals.h"
#include "base/ovm_component.h"
#include "base/ovm_config.h"
#include "base/ovm_factory.h"
#include "base/ovm_object.h"
#include "base/ovm_packer.h"

#endif

各クラスの階層構造は、次のようになっています。
    ・ovm_object
        ・ovm_typed
            ・ovm_void
    ・ovm_component
        ・sc_module, ovm_typed
ovm_componentクラスは、SystemVerilogと同じ機能のようです。


検証、Verification、OVM、Open Verification Methodology、SystemC