Vengineerの妄想(準備期間)

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

tlm_fw_nb_transport_ifとtlm_bw_nb_transport_if

Verification Engineerの戯言

http://blogs.yahoo.co.jp/verification_engineer/27943609.html で書きました「socket」では、
tlm_fw_nb_transport_iftlm_bw_nb_transport_ifというクラスをパラメータの
デフォルト値として使用しています。
この2つのクラスは、次のように定義されています。
    template< typename TYPES = tlm_generic_payload_types >
    class tlm_fw_nb_transport_if
        : public virtual tlm_nonblocking_transport_if< typename TYPES::tlm_payload_type ,
                                                       typename TYPES::tlm_phase_type >
        , public virtual tlm_fw_direct_mem_if<typename TYPES::tlm_dmi_mode_type>
        , public virtual tlm_transport_dbg_if
    {};

    template < typename TYPES = tlm_generic_payload_types >
    class tlm_bw_nb_transport_if
        : public virtual tlm_nonblocking_transport_if< typename TYPES::tlm_payload_type ,
                                                       typename TYPES::tlm_phase_type >
        , public virtual tlm_bw_direct_mem_if
    {};
tlm_fw_nb_transportクラスは、
    1)、tlm_nonblocking_transport_if
    2)、tlm_fw_direct_mem_if
    3)、tlm_transport_dbg_if
をクラスを継承します。一方、tlm_bw_nb_transportクラスは、
    1)、tlm_nonblocking_transport_if
    2)、tlm_bw_direct_mem_if
をクラスを継承します。

tlm_nonblocking_transport_ifクラスについては、
http://blogs.yahoo.co.jp/verification_engineer/28018589.html で説明したものです。
tlm_fw_direct_mem_ifクラスとtlm_bw_direct_mem_ifクラスは、
http://blogs.yahoo.co.jp/verification_engineer/28224954.html で説明したものです。
tlm_transport_dbg_ifクラスについては、
http://blogs.yahoo.co.jp/verification_engineer/28300422.html で説明したものです。

ここでやっと「socket」のForward PathとBackward Pathのインターフェースの説明が終わりました。

次回からは、ユーザーマニュアルに載っているInitiatorとTargetについて見ていきます。