Verification Engineerの戯言
ovm_report_objectクラスは、ovm_objectクラスにReport機能を付けるためのものです。
base/ovm_report_object.svh
基本的には、ovm_report_message関数ではなく、ovm_report_info関数を使うべき。
また、グローバルな関数と区別するために、this.ovm_report_xxxのようき記述したほうが良いかも?
リファレンス・マニュアルには無いが、コードにはAVMとの互換性のために、次の4つの関数がある。
base/ovm_report_object.svh
virtual class ovm_report_object extends ovm_object; function new(string name=""); function void ovm_report_error( string id, string message, int verbosity_level=100, string filename="", int line=0); function void ovm_report_fatal( string id, string message, int verbosity_level=0, string filename="", int line=0); function void ovm_report_info( string id, string message, int verbosity_level=300, string filename="", int line=0); function void ovm_report_warning(string id, string message, int verbosity_level=200, string filenamee="", int line=0); virtual function bit report_hook( string id, string message, int verbosity, string filename, int line); virtual function bit report_error_hook( string id, string message, int verbosity, string filename, int line); virtual function bit report_fatal_hook( string id, string message, int verbosity, string filename, int line); virtual function bit report_info_hook( string id, string message, int verbosity, string filename, int line); virtual function bit report_warning_hook( string id, string message, int verbosity, string filename, int line); function string get_report_name(); virtual function void report_header(FILE f=0); function void report_summarize(FILE f=0); function void reset_report_handler(); function ovm_report_handler get_report_handler(); function void set_report_handler(ovm_report_handler hndlr); function void set_report_max_quit_count(int m); function void set_report_name(string s); function void set_report_severity_action ( ovm_severity s, ovm_action a); function void set_report_verbosity_level(int verbosity_level); function void set_report_id_action (string id, ovm_action a); function void set_report_severity_id_action ( ovm_severity s, string id, ovm_action a); function void set_report_default_file (input FILE f); function void set_report_severity_file (ovm_severity s, FILE f); function void set_report_id_file (input string id, input FILE f); function void set_report_severity_id_file (ovm_severity s, string id, FILE f); function void dump_report_state(); virtual function void die(); end classグローバルなReport関数であるovm_report_message関数と同じ名前の関数はないので、
基本的には、ovm_report_message関数ではなく、ovm_report_info関数を使うべき。
また、グローバルな関数と区別するために、this.ovm_report_xxxのようき記述したほうが良いかも?
リファレンス・マニュアルには無いが、コードにはAVMとの互換性のために、次の4つの関数がある。
function void avm_report_message(string id, string message, int verbosity_level=300, string filename="", int line=0); function void avm_report_warning(string id, string message, int verbosity_level=200, string filenamee="", int line=0); function void avm_report_error( string id, string message, int verbosity_level=100, string filename="", int line=0); function void avm_report_fatal( string id, string message, int verbosity_level=0, string filename="", int line=0);
P.S
昨日(1/16)に7,000訪問者を達成できました。ありがとうございました。
たぶん、今月いっぱい、OVM関連が続くと思います。
たぶん、今月いっぱい、OVM関連が続くと思います。
検証、Verification、SystemVerilog、OVM、Open Verification Methodology