Verification Engineerの戯言
CadenceがIEEE Verilog BTFにVerilog HDLに対するTransaction Recording機能をPLIを使って提案したものがDraft Standard for Verilog Transaction Recording Extensionsにあります。
Copyrightが2003年になっているので、
まだ、SystemVerilogが3.0から3.1ぐらいでまだ標準化されていないときですね!
Copyrightが2003年になっているので、
まだ、SystemVerilogが3.0から3.1ぐらいでまだ標準化されていないときですね!
このTransaction Recording機能では、PLIを使って、次のようなシステムタスクと関数を定義しています。
$tr_open: Open a transaction recording file $tr_close: Close a recording file $tr_set_recording: Enable/disable transaction recording at a specified scope $tr_stream: Create a transaction stream $tr_generator: Create a transaction generator in a stream $tr_begin_attribute: Define an attribute of a generator that is set at the beginning of a transaction $tr_end_attribute: Define an attribute of a generator that is set at the end of a transaction $tr_begin: Begin a transaction $tr_end: End a transaction $tr_record_attribute: Record an attribute on a transaction $tr_get_transaction_handle: Get a transaction handle from a stream $tr_link: Link two transactions
これらを見ると、SystemC Verification Library(SCV)のTransaction Recording同等の機能ではないでしょうか?
でも、SCVのおおもとはTestBuilderですよね!
TestBuilderは、PLIを使って、C++でテストベンチを構築しましたよね!
ということは、TestBuilderで使っていたTransation Recording部分をうまくPLIで使えるようにすればいいのです。
でも、SCVのおおもとはTestBuilderですよね!
TestBuilderは、PLIを使って、C++でテストベンチを構築しましたよね!
ということは、TestBuilderで使っていたTransation Recording部分をうまくPLIで使えるようにすればいいのです。
再利用ができているのであれば、グー、グー、グー
検証、Verification、Verilog HDL