Vengineerの妄想(準備期間)

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

OVM : OVM-SV and OVM-e to SystemC TLM2 Integration Example(その5)

Verification Engineerの戯言 : SystemVerilogの世界へようこそ

OVM-SVのtlm1_to_tlm2クラスのtransportは、次のようになっています。
引数のrequestと戻り値のresponseからtlm_generic_payloadクラスのインスタンス(tx)に変換し、
isocket->b_transport(tx,t)を呼び出し、SystemC TLM-2を呼び出しています。
    RSP transport( const REQ &request ) {
      RSP response;
      tlm_generic_payload tx;

      request.sync_request_to_tlm2_gp(tx);
      response.sync_response_to_tlm2_gp(tx); 

      sc_time t(SC_ZERO_TIME);

      // send a TLM2 transaction on the initiator socket
      isocket->b_transport(tx, t);
      response.sync_tlm2_gp_to_response(tx);

      // if target annotated any time, sync with simulator scheduler now.
      if (t != sc_time(SC_ZERO_TIME))
        wait(t);
      return response;
    }

検証、Verification、SystemVerilog、OVM、Open Verification Methodology