tlm_defines.svh File Reference

#include "tlm/tlm_imps.svh"
Include dependency graph for tlm_defines.svh:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Defines

#define ovm_blocking_put_imp_decl(SFX)
#define ovm_nonblocking_put_imp_decl(SFX)
#define ovm_put_imp_decl(SFX)
#define ovm_blocking_get_imp_decl(SFX)
#define ovm_nonblocking_get_imp_decl(SFX)
#define ovm_get_imp_decl(SFX)
#define ovm_blocking_peek_imp_decl(SFX)
#define ovm_nonblocking_peek_imp_decl(SFX)
#define ovm_peek_imp_decl(SFX)
#define ovm_blocking_get_peek_imp_decl(SFX)
#define ovm_nonblocking_get_peek_imp_decl(SFX)
#define ovm_get_peek_imp_decl(SFX)
#define ovm_blocking_master_imp_decl(SFX)
#define ovm_nonblocking_master_imp_decl(SFX)
#define ovm_master_imp_decl(SFX)
#define ovm_blocking_slave_imp_decl(SFX)
#define ovm_nonblocking_slave_imp_decl(SFX)
#define ovm_slave_imp_decl(SFX)
#define ovm_blocking_transport_imp_decl(SFX)
#define ovm_non_blocking_transport_imp_decl(SFX)   ovm_nonblocking_transport_imp_decl(SFX)
#define ovm_nonblocking_transport_imp_decl(SFX)
#define ovm_transport_imp_decl(SFX)
#define ovm_analysis_imp_decl(SFX)
#define BLOCKING_PUT_IMP_SFX(SFX, imp, TYPE, arg)   task put( input TYPE arg) { imp.put##SFX( arg); }
#define BLOCKING_GET_IMP_SFX(SFX, imp, TYPE, arg)   task get( output TYPE arg) { imp.get##SFX( arg); }
#define BLOCKING_PEEK_IMP_SFX(SFX, imp, TYPE, arg)   task peek( output TYPE arg) {imp.peek##SFX( arg); }
#define NONBLOCKING_PUT_IMP_SFX(SFX, imp, TYPE, arg)
#define NONBLOCKING_GET_IMP_SFX(SFX, imp, TYPE, arg)
#define NONBLOCKING_PEEK_IMP_SFX(SFX, imp, TYPE, arg)
#define BLOCKING_TRANSPORT_IMP_SFX(SFX, imp, REQ, RSP, req_arg, rsp_arg)
#define NONBLOCKING_TRANSPORT_IMP_SFX(SFX, imp, REQ, RSP, req_arg, rsp_arg)
#define SEQ_ITEM_PULL_IMP(imp, REQ, RSP, req_arg, rsp_arg)
#define TLM_BLOCKING_PUT_MASK   (1 <<0)
#define TLM_BLOCKING_GET_MASK   (1 <<1)
#define TLM_BLOCKING_PEEK_MASK   (1 <<2)
#define TLM_BLOCKING_TRANSPORT_MASK   (1 <<3)
#define TLM_NONBLOCKING_PUT_MASK   (1 <<4)
#define TLM_NONBLOCKING_GET_MASK   (1 <<5)
#define TLM_NONBLOCKING_PEEK_MASK   (1 <<6)
#define TLM_NONBLOCKING_TRANSPORT_MASK   (1 <<7)
#define TLM_ANALYSIS_MASK   (1 <<8)
#define TLM_MASTER_BIT_MASK   (1 <<9)
#define TLM_SLAVE_BIT_MASK   (1 <<10)
#define TLM_PUT_MASK   (TLM_BLOCKING_PUT_MASK | TLM_NONBLOCKING_PUT_MASK)
#define TLM_GET_MASK   (TLM_BLOCKING_GET_MASK | TLM_NONBLOCKING_GET_MASK)
#define TLM_PEEK_MASK   (TLM_BLOCKING_PEEK_MASK | TLM_NONBLOCKING_PEEK_MASK)
#define TLM_BLOCKING_GET_PEEK_MASK   (TLM_BLOCKING_GET_MASK | TLM_BLOCKING_PEEK_MASK)
#define TLM_BLOCKING_MASTER_MASK   (TLM_BLOCKING_PUT_MASK | TLM_BLOCKING_GET_MASK | TLM_BLOCKING_PEEK_MASK | TLM_MASTER_BIT_MASK)
#define TLM_BLOCKING_SLAVE_MASK   (TLM_BLOCKING_PUT_MASK | TLM_BLOCKING_GET_MASK | TLM_BLOCKING_PEEK_MASK | TLM_SLAVE_BIT_MASK)
#define TLM_NONBLOCKING_GET_PEEK_MASK   (TLM_NONBLOCKING_GET_MASK | TLM_NONBLOCKING_PEEK_MASK)
#define TLM_NONBLOCKING_MASTER_MASK   (TLM_NONBLOCKING_PUT_MASK | TLM_NONBLOCKING_GET_MASK | TLM_NONBLOCKING_PEEK_MASK | TLM_MASTER_BIT_MASK)
#define TLM_NONBLOCKING_SLAVE_MASK   (TLM_NONBLOCKING_PUT_MASK | TLM_NONBLOCKING_GET_MASK | TLM_NONBLOCKING_PEEK_MASK | TLM_SLAVE_BIT_MASK)
#define TLM_GET_PEEK_MASK   (TLM_GET_MASK | TLM_PEEK_MASK)
#define TLM_MASTER_MASK   (TLM_BLOCKING_MASTER_MASK | TLM_NONBLOCKING_MASTER_MASK)
#define TLM_SLAVE_MASK   (TLM_BLOCKING_SLAVE_MASK | TLM_NONBLOCKING_SLAVE_MASK)
#define TLM_TRANSPORT_MASK   (TLM_BLOCKING_TRANSPORT_MASK | TLM_NONBLOCKING_TRANSPORT_MASK)
#define SEQ_ITEM_GET_NEXT_ITEM_MASK   (1 <<0)
#define SEQ_ITEM_TRY_NEXT_ITEM_MASK   (1 <<1)
#define SEQ_ITEM_ITEM_DONE_MASK   (1 <<2)
#define SEQ_ITEM_HAS_DO_AVAILABLE_MASK   (1 <<3)
#define SEQ_ITEM_WAIT_FOR_SEQUENCES_MASK   (1 <<4)
#define SEQ_ITEM_PUT_RESPONSE_MASK   (1 <<5)
#define SEQ_ITEM_PUT_MASK   (1 <<6)
#define SEQ_ITEM_GET_MASK   (1 <<7)
#define SEQ_ITEM_PEEK_MASK   (1 <<8)
#define SEQ_ITEM_PULL_MASK
#define SEQ_ITEM_UNI_PULL_MASK
#define SEQ_ITEM_PUSH_MASK   (SEQ_ITEM_PUT_MASK)

Define Documentation

#define BLOCKING_GET_IMP_SFX ( SFX,
imp,
TYPE,
arg   )     task get( output TYPE arg) { imp.get##SFX( arg); }

Definition at line 463 of file tlm_defines.svh.

#define BLOCKING_PEEK_IMP_SFX ( SFX,
imp,
TYPE,
arg   )     task peek( output TYPE arg) {imp.peek##SFX( arg); }

Definition at line 466 of file tlm_defines.svh.

#define BLOCKING_PUT_IMP_SFX ( SFX,
imp,
TYPE,
arg   )     task put( input TYPE arg) { imp.put##SFX( arg); }

Definition at line 460 of file tlm_defines.svh.

#define BLOCKING_TRANSPORT_IMP_SFX ( SFX,
imp,
REQ,
RSP,
req_arg,
rsp_arg   ) 
Value:
task transport( input REQ req_arg, output RSP rsp_arg) { \
    imp.transport##SFX(req_arg, rsp_arg); \
  }

Definition at line 490 of file tlm_defines.svh.

#define NONBLOCKING_GET_IMP_SFX ( SFX,
imp,
TYPE,
arg   ) 
Value:
bit try_get( output TYPE arg) { \
    if( !imp.try_get##SFX( arg)) return 0; \
    return 1; \
  } \
   bit can_get() { return imp.can_get##SFX(); }

Definition at line 476 of file tlm_defines.svh.

#define NONBLOCKING_PEEK_IMP_SFX ( SFX,
imp,
TYPE,
arg   ) 
Value:
bit try_peek( output TYPE arg) { \
    if( !imp.try_peek##SFX( arg)) return 0; \
    return 1; \
  } \
   bit can_peek() { return imp.can_peek##SFX(); }

Definition at line 483 of file tlm_defines.svh.

#define NONBLOCKING_PUT_IMP_SFX ( SFX,
imp,
TYPE,
arg   ) 
Value:
bit try_put( input TYPE arg) { \
    if( !imp.try_put##SFX( arg)) return 0; \
    return 1; \
  } \
   bit can_put() { return imp.can_put##SFX(); }

Definition at line 469 of file tlm_defines.svh.

#define NONBLOCKING_TRANSPORT_IMP_SFX ( SFX,
imp,
REQ,
RSP,
req_arg,
rsp_arg   ) 
Value:
bit nb_transport( input REQ req_arg, output RSP rsp_arg) { \
    if(imp) return imp.nb_transport##SFX(req_arg, rsp_arg); \
  }

Definition at line 495 of file tlm_defines.svh.

#define ovm_analysis_imp_decl ( SFX   ) 
Value:
template  <typename T=int, typename IMP=int> class ovm_analysis_imp##SFX   \
  : public ovm_port_base <tlm_if_base <T,T> >  { public:  \
  OVM_IMP_COMMON(TLM_ANALYSIS_MASK,"ovm_analysis_imp##SFX",IMP) \
   void write( input T t) { \
    m_imp.write##SFX( t); \
  } \
  \
};

Definition at line 446 of file tlm_defines.svh.

#define ovm_blocking_get_imp_decl ( SFX   ) 
Value:
template  <typename T=int, typename IMP=int> class ovm_blocking_get_imp##SFX   \
  : public ovm_port_base <tlm_if_base <T,T> >  { public:  \
  OVM_IMP_COMMON(TLM_BLOCKING_GET_MASK,"ovm_blocking_get_imp##SFX",IMP) \
  BLOCKING_GET_IMP_SFX(SFX, m_imp, T, t) \
};

Definition at line 119 of file tlm_defines.svh.

#define ovm_blocking_get_peek_imp_decl ( SFX   ) 
Value:
template  <typename T=int, typename IMP=int> class ovm_blocking_get_peek_imp##SFX   \
  : public ovm_port_base <tlm_if_base <T,T> >  { public:  \
  OVM_IMP_COMMON(TLM_BLOCKING_GET_PEEK_MASK,"ovm_blocking_get_peek_imp##SFX",IMP) \
  BLOCKING_GET_IMP_SFX(SFX, m_imp, T, t) \
  BLOCKING_PEEK_IMP_SFX(SFX, m_imp, T, t) \
};

Definition at line 196 of file tlm_defines.svh.

#define ovm_blocking_master_imp_decl ( SFX   ) 
Value:
template  <typename REQ=int, typename RSP=int, typename IMP=int, \
                                     typename REQ_IMP=IMP, typename RSP_IMP=IMP> class ovm_blocking_master_imp##SFX   \
  : public ovm_port_base <tlm_if_base <REQ, RSP> >  { public:  \
  typedef IMP     this_imp_type; \
  typedef REQ_IMP this_req_type; \
  typedef RSP_IMP this_rsp_type; \
  OVM_MS_IMP_COMMON(TLM_BLOCKING_MASTER_MASK,"ovm_blocking_master_imp##SFX") \
  \
  BLOCKING_PUT_IMP_SFX(SFX, m_req_imp, REQ, t) /* req */ \
  \
  BLOCKING_GET_IMP_SFX(SFX, m_rsp_imp, RSP, t) /* rsp */ \
  BLOCKING_PEEK_IMP_SFX(SFX, m_rsp_imp, RSP, t) /* rsp */ \
  \
};

Definition at line 239 of file tlm_defines.svh.

#define ovm_blocking_peek_imp_decl ( SFX   ) 
Value:
template  <typename T=int, typename IMP=int> class ovm_blocking_peek_imp##SFX   \
  : public ovm_port_base <tlm_if_base <T,T> >  { public:  \
  OVM_IMP_COMMON(TLM_BLOCKING_PEEK_MASK,"ovm_blocking_peek_imp##SFX",IMP) \
  BLOCKING_PEEK_IMP_SFX(SFX, m_imp, T, t) \
};

Definition at line 157 of file tlm_defines.svh.

#define ovm_blocking_put_imp_decl ( SFX   ) 
Value:
template  <typename T=int, typename IMP=int> class ovm_blocking_put_imp##SFX   \
  : public ovm_port_base <tlm_if_base <T,T> >  { public:  \
  OVM_IMP_COMMON(TLM_BLOCKING_PUT_MASK,"ovm_blocking_put_imp##SFX",IMP) \
  BLOCKING_PUT_IMP_SFX(SFX, m_imp, T, t) \
};

Definition at line 81 of file tlm_defines.svh.

#define ovm_blocking_slave_imp_decl ( SFX   ) 
Value:
template  <typename REQ=int, typename RSP=int, typename IMP=int, \
                                    typename REQ_IMP=IMP, typename RSP_IMP=IMP> class ovm_blocking_slave_imp##SFX   \
  : public ovm_port_base <tlm_if_base <RSP, REQ> >  { public:  \
  typedef IMP     this_imp_type; \
  typedef REQ_IMP this_req_type; \
  typedef RSP_IMP this_rsp_type; \
  OVM_MS_IMP_COMMON(TLM_BLOCKING_SLAVE_MASK,"ovm_blocking_slave_imp##SFX") \
  \
  BLOCKING_PUT_IMP_SFX(SFX, m_rsp_imp, RSP, t) /* rsp */ \
  \
  BLOCKING_GET_IMP_SFX(SFX, m_req_imp, REQ, t) /* req */ \
  BLOCKING_PEEK_IMP_SFX(SFX, m_req_imp, REQ, t) /* req */ \
  \
};

Definition at line 306 of file tlm_defines.svh.

#define ovm_blocking_transport_imp_decl ( SFX   ) 
Value:
template  <typename REQ=int, typename RSP=int, typename IMP=int> class ovm_blocking_transport_imp##SFX   \
  : public ovm_port_base <tlm_if_base <REQ, RSP> >  { public:  \
  OVM_IMP_COMMON(TLM_BLOCKING_TRANSPORT_MASK,"ovm_blocking_transport_imp##SFX",IMP) \
  BLOCKING_TRANSPORT_IMP_SFX(SFX, m_imp, REQ, RSP, req, rsp) \
};

Definition at line 373 of file tlm_defines.svh.

#define ovm_get_imp_decl ( SFX   ) 
Value:
template  <typename T=int, typename IMP=int> class ovm_get_imp##SFX   \
  : public ovm_port_base <tlm_if_base <T,T> >  { public:  \
  OVM_IMP_COMMON(TLM_GET_MASK,"ovm_get_imp##SFX",IMP) \
  BLOCKING_GET_IMP_SFX(SFX, m_imp, T, t) \
  NONBLOCKING_GET_IMP_SFX(SFX, m_imp, T, t) \
};

Definition at line 144 of file tlm_defines.svh.

#define ovm_get_peek_imp_decl ( SFX   ) 
Value:
template  <typename T=int, typename IMP=int> class ovm_get_peek_imp##SFX   \
  : public ovm_port_base <tlm_if_base <T,T> >  { public:  \
  OVM_IMP_COMMON(TLM_GET_PEEK_MASK,"ovm_get_peek_imp##SFX",IMP) \
  BLOCKING_GET_IMP_SFX(SFX, m_imp, T, t) \
  NONBLOCKING_GET_IMP_SFX(SFX, m_imp, T, t) \
  BLOCKING_PEEK_IMP_SFX(SFX, m_imp, T, t) \
  NONBLOCKING_PEEK_IMP_SFX(SFX, m_imp, T, t) \
};

Definition at line 224 of file tlm_defines.svh.

#define ovm_master_imp_decl ( SFX   ) 
Value:
template  <typename REQ=int, typename RSP=int, typename IMP=int, \
                            typename REQ_IMP=IMP, typename RSP_IMP=IMP> class ovm_master_imp##SFX   \
  : public ovm_port_base <tlm_if_base <REQ, RSP> >  { public:  \
  typedef IMP     this_imp_type; \
  typedef REQ_IMP this_req_type; \
  typedef RSP_IMP this_rsp_type; \
  OVM_MS_IMP_COMMON(TLM_MASTER_MASK,"ovm_master_imp##SFX") \
  \
  BLOCKING_PUT_IMP_SFX(SFX, m_req_imp, REQ, t) /* req */ \
  NONBLOCKING_PUT_IMP_SFX(SFX, m_req_imp, REQ, t) /* req */ \
  \
  BLOCKING_GET_IMP_SFX(SFX, m_rsp_imp, RSP, t) /* rsp */ \
  BLOCKING_PEEK_IMP_SFX(SFX, m_rsp_imp, RSP, t) /* rsp */ \
  NONBLOCKING_GET_IMP_SFX(SFX, m_rsp_imp, RSP, t) /* rsp */ \
  NONBLOCKING_PEEK_IMP_SFX(SFX, m_rsp_imp, RSP, t) /* rsp */ \
  \
};

Definition at line 282 of file tlm_defines.svh.

#define ovm_non_blocking_transport_imp_decl ( SFX   )     ovm_nonblocking_transport_imp_decl(SFX)

Definition at line 385 of file tlm_defines.svh.

#define ovm_nonblocking_get_imp_decl ( SFX   ) 
Value:
template  <typename T=int, typename IMP=int> class ovm_nonblocking_get_imp##SFX   \
  : public ovm_port_base <tlm_if_base <T,T> >  { public:  \
  OVM_IMP_COMMON(TLM_NONBLOCKING_GET_MASK,"ovm_nonblocking_get_imp##SFX",IMP) \
  NONBLOCKING_GET_IMP_SFX(SFX, m_imp, T, t) \
};

Definition at line 131 of file tlm_defines.svh.

#define ovm_nonblocking_get_peek_imp_decl ( SFX   ) 
Value:
template  <typename T=int, typename IMP=int> class ovm_nonblocking_get_peek_imp##SFX   \
  : public ovm_port_base <tlm_if_base <T,T> >  { public:  \
  OVM_IMP_COMMON(TLM_NONBLOCKING_GET_PEEK_MASK,"ovm_nonblocking_get_peek_imp##SFX",IMP) \
  NONBLOCKING_GET_IMP_SFX(SFX, m_imp, T, t) \
  NONBLOCKING_PEEK_IMP_SFX(SFX, m_imp, T, t) \
};

Definition at line 209 of file tlm_defines.svh.

#define ovm_nonblocking_master_imp_decl ( SFX   ) 
Value:
template  <typename REQ=int, typename RSP=int, typename IMP=int, \
                                   typename REQ_IMP=IMP, typename RSP_IMP=IMP> class ovm_nonblocking_master_imp##SFX   \
  : public ovm_port_base <tlm_if_base <REQ, RSP> >  { public:  \
  typedef IMP     this_imp_type; \
  typedef REQ_IMP this_req_type; \
  typedef RSP_IMP this_rsp_type; \
  OVM_MS_IMP_COMMON(TLM_NONBLOCKING_MASTER_MASK,"ovm_nonblocking_master_imp##SFX") \
  \
  NONBLOCKING_PUT_IMP_SFX(SFX, m_req_imp, REQ, t) /* req */ \
  \
  NONBLOCKING_GET_IMP_SFX(SFX, m_rsp_imp, RSP, t) /* rsp */ \
  NONBLOCKING_PEEK_IMP_SFX(SFX, m_rsp_imp, RSP, t) /* rsp */ \
  \
};

Definition at line 260 of file tlm_defines.svh.

#define ovm_nonblocking_peek_imp_decl ( SFX   ) 
Value:
template  <typename T=int, typename IMP=int> class ovm_nonblocking_peek_imp##SFX   \
  : public ovm_port_base <tlm_if_base <T,T> >  { public:  \
  OVM_IMP_COMMON(TLM_NONBLOCKING_PEEK_MASK,"ovm_nonblocking_peek_imp##SFX",IMP) \
  NONBLOCKING_PEEK_IMP_SFX(SFX, m_imp, T, t) \
};

Definition at line 169 of file tlm_defines.svh.

#define ovm_nonblocking_put_imp_decl ( SFX   ) 
Value:
template  <typename T=int, typename IMP=int> class ovm_nonblocking_put_imp##SFX   \
  : public ovm_port_base <tlm_if_base <T,T> >  { public:  \
  OVM_IMP_COMMON(TLM_NONBLOCKING_PUT_MASK,"ovm_nonblocking_put_imp##SFX",IMP) \
  NONBLOCKING_PUT_IMP_SFX( SFX, m_imp, T, t) \
};

Definition at line 93 of file tlm_defines.svh.

#define ovm_nonblocking_slave_imp_decl ( SFX   ) 
Value:
template  <typename REQ=int, typename RSP=int, typename IMP=int, \
                                       typename REQ_IMP=IMP, typename RSP_IMP=IMP> class ovm_nonblocking_slave_imp##SFX   \
  : public ovm_port_base <tlm_if_base <RSP, REQ> >  { public:  \
  typedef IMP     this_imp_type; \
  typedef REQ_IMP this_req_type; \
  typedef RSP_IMP this_rsp_type; \
  OVM_MS_IMP_COMMON(TLM_NONBLOCKING_SLAVE_MASK,"ovm_nonblocking_slave_imp##SFX") \
  \
  NONBLOCKING_PUT_IMP_SFX(SFX, m_rsp_imp, RSP, t) /* rsp */ \
  \
  NONBLOCKING_GET_IMP_SFX(SFX, m_req_imp, REQ, t) /* req */ \
  NONBLOCKING_PEEK_IMP_SFX(SFX, m_req_imp, REQ, t) /* req */ \
  \
};

Definition at line 327 of file tlm_defines.svh.

#define ovm_nonblocking_transport_imp_decl ( SFX   ) 
Value:
template  <typename REQ=int, typename RSP=int, typename IMP=int> class ovm_nonblocking_transport_imp##SFX   \
  : public ovm_port_base <tlm_if_base <REQ, RSP> >  { public:  \
  OVM_IMP_COMMON(TLM_NONBLOCKING_TRANSPORT_MASK,"ovm_nonblocking_transport_imp##SFX",IMP) \
  NONBLOCKING_TRANSPORT_IMP_SFX(SFX, m_imp, REQ, RSP, req, rsp) \
};

Definition at line 388 of file tlm_defines.svh.

#define ovm_peek_imp_decl ( SFX   ) 
Value:
template  <typename T=int, typename IMP=int> class ovm_peek_imp##SFX   \
  : public ovm_port_base <tlm_if_base <T,T> >  { public:  \
  OVM_IMP_COMMON(TLM_PEEK_MASK,"ovm_peek_imp##SFX",IMP) \
  BLOCKING_PEEK_IMP_SFX(SFX, m_imp, T, t) \
  NONBLOCKING_PEEK_IMP_SFX(SFX, m_imp, T, t) \
};

Definition at line 182 of file tlm_defines.svh.

#define ovm_put_imp_decl ( SFX   ) 
Value:
template  <typename T=int, typename IMP=int> class ovm_put_imp##SFX   \
  : public ovm_port_base <tlm_if_base <T,T> >  { public:  \
  OVM_IMP_COMMON(TLM_PUT_MASK,"ovm_put_imp##SFX",IMP) \
  BLOCKING_PUT_IMP_SFX(SFX, m_imp, T, t) \
  NONBLOCKING_PUT_IMP_SFX(SFX, m_imp, T, t) \
};

Definition at line 106 of file tlm_defines.svh.

#define ovm_slave_imp_decl ( SFX   ) 
Value:
template  <typename REQ=int, typename RSP=int, typename IMP=int, \
                           typename REQ_IMP=IMP, typename RSP_IMP=IMP> class ovm_slave_imp##SFX   \
  : public ovm_port_base <tlm_if_base <RSP, REQ> >  { public:  \
  typedef IMP     this_imp_type; \
  typedef REQ_IMP this_req_type; \
  typedef RSP_IMP this_rsp_type; \
  OVM_MS_IMP_COMMON(TLM_SLAVE_MASK,"ovm_slave_imp##SFX") \
  \
  BLOCKING_PUT_IMP_SFX(SFX, m_rsp_imp, RSP, t) /* rsp */ \
  NONBLOCKING_PUT_IMP_SFX(SFX, m_rsp_imp, RSP, t) /* rsp */ \
  \
  BLOCKING_GET_IMP_SFX(SFX, m_req_imp, REQ, t) /* req */ \
  BLOCKING_PEEK_IMP_SFX(SFX, m_req_imp, REQ, t) /* req */ \
  NONBLOCKING_GET_IMP_SFX(SFX, m_req_imp, REQ, t) /* req */ \
  NONBLOCKING_PEEK_IMP_SFX(SFX, m_req_imp, REQ, t) /* req */ \
  \
};

Definition at line 349 of file tlm_defines.svh.

#define ovm_transport_imp_decl ( SFX   ) 
Value:
template  <typename REQ=int, typename RSP=int, typename IMP=int> class ovm_transport_imp##SFX   \
  : public ovm_port_base <tlm_if_base <REQ, RSP> >  { public:  \
  OVM_IMP_COMMON(TLM_TRANSPORT_MASK,"ovm_transport_imp##SFX",IMP) \
  BLOCKING_TRANSPORT_IMP_SFX(SFX, m_imp, REQ, RSP, req, rsp) \
  NONBLOCKING_TRANSPORT_IMP_SFX(SFX, m_imp, REQ, RSP, req, rsp) \
};

Definition at line 401 of file tlm_defines.svh.

#define SEQ_ITEM_GET_MASK   (1 <<7)

Definition at line 554 of file tlm_defines.svh.

#define SEQ_ITEM_GET_NEXT_ITEM_MASK   (1 <<0)

Definition at line 547 of file tlm_defines.svh.

#define SEQ_ITEM_HAS_DO_AVAILABLE_MASK   (1 <<3)

Definition at line 550 of file tlm_defines.svh.

#define SEQ_ITEM_ITEM_DONE_MASK   (1 <<2)

Definition at line 549 of file tlm_defines.svh.

#define SEQ_ITEM_PEEK_MASK   (1 <<8)

Definition at line 555 of file tlm_defines.svh.

#define SEQ_ITEM_PULL_IMP ( imp,
REQ,
RSP,
req_arg,
rsp_arg   ) 
Value:
task get_next_item(output REQ req_arg) { imp.get_next_item(req_arg); } \
  task try_next_item(output REQ req_arg) { imp.try_next_item(req_arg); } \
   void item_done(input RSP rsp_arg = null) { imp.item_done(rsp_arg); } \
  task wait_for_sequences() { imp.wait_for_sequences(); } \
   bit has_do_available() { return imp.has_do_available(); } \
   void put_response(input RSP rsp_arg) { imp.put_response(rsp_arg); } \
  task get(output REQ req_arg) { imp.get(req_arg); } \
  task peek(output REQ req_arg) { imp.peek(req_arg); } \
  task put(input RSP rsp_arg) { imp.put(rsp_arg); }

Definition at line 503 of file tlm_defines.svh.

#define SEQ_ITEM_PULL_MASK
#define SEQ_ITEM_PUSH_MASK   (SEQ_ITEM_PUT_MASK)

Definition at line 567 of file tlm_defines.svh.

#define SEQ_ITEM_PUT_MASK   (1 <<6)

Definition at line 553 of file tlm_defines.svh.

#define SEQ_ITEM_PUT_RESPONSE_MASK   (1 <<5)

Definition at line 552 of file tlm_defines.svh.

#define SEQ_ITEM_TRY_NEXT_ITEM_MASK   (1 <<1)

Definition at line 548 of file tlm_defines.svh.

#define SEQ_ITEM_UNI_PULL_MASK
#define SEQ_ITEM_WAIT_FOR_SEQUENCES_MASK   (1 <<4)

Definition at line 551 of file tlm_defines.svh.

#define TLM_ANALYSIS_MASK   (1 <<8)

Definition at line 525 of file tlm_defines.svh.

#define TLM_BLOCKING_GET_MASK   (1 <<1)

Definition at line 516 of file tlm_defines.svh.

#define TLM_BLOCKING_GET_PEEK_MASK   (TLM_BLOCKING_GET_MASK | TLM_BLOCKING_PEEK_MASK)

Definition at line 534 of file tlm_defines.svh.

#define TLM_BLOCKING_MASTER_MASK   (TLM_BLOCKING_PUT_MASK | TLM_BLOCKING_GET_MASK | TLM_BLOCKING_PEEK_MASK | TLM_MASTER_BIT_MASK)

Definition at line 535 of file tlm_defines.svh.

#define TLM_BLOCKING_PEEK_MASK   (1 <<2)

Definition at line 517 of file tlm_defines.svh.

#define TLM_BLOCKING_PUT_MASK   (1 <<0)

Definition at line 515 of file tlm_defines.svh.

#define TLM_BLOCKING_SLAVE_MASK   (TLM_BLOCKING_PUT_MASK | TLM_BLOCKING_GET_MASK | TLM_BLOCKING_PEEK_MASK | TLM_SLAVE_BIT_MASK)

Definition at line 536 of file tlm_defines.svh.

#define TLM_BLOCKING_TRANSPORT_MASK   (1 <<3)

Definition at line 518 of file tlm_defines.svh.

#define TLM_GET_MASK   (TLM_BLOCKING_GET_MASK | TLM_NONBLOCKING_GET_MASK)

Definition at line 531 of file tlm_defines.svh.

#define TLM_GET_PEEK_MASK   (TLM_GET_MASK | TLM_PEEK_MASK)

Definition at line 542 of file tlm_defines.svh.

#define TLM_MASTER_BIT_MASK   (1 <<9)

Definition at line 527 of file tlm_defines.svh.

#define TLM_MASTER_MASK   (TLM_BLOCKING_MASTER_MASK | TLM_NONBLOCKING_MASTER_MASK)

Definition at line 543 of file tlm_defines.svh.

#define TLM_NONBLOCKING_GET_MASK   (1 <<5)

Definition at line 521 of file tlm_defines.svh.

#define TLM_NONBLOCKING_GET_PEEK_MASK   (TLM_NONBLOCKING_GET_MASK | TLM_NONBLOCKING_PEEK_MASK)

Definition at line 538 of file tlm_defines.svh.

#define TLM_NONBLOCKING_MASTER_MASK   (TLM_NONBLOCKING_PUT_MASK | TLM_NONBLOCKING_GET_MASK | TLM_NONBLOCKING_PEEK_MASK | TLM_MASTER_BIT_MASK)

Definition at line 539 of file tlm_defines.svh.

#define TLM_NONBLOCKING_PEEK_MASK   (1 <<6)

Definition at line 522 of file tlm_defines.svh.

#define TLM_NONBLOCKING_PUT_MASK   (1 <<4)

Definition at line 520 of file tlm_defines.svh.

#define TLM_NONBLOCKING_SLAVE_MASK   (TLM_NONBLOCKING_PUT_MASK | TLM_NONBLOCKING_GET_MASK | TLM_NONBLOCKING_PEEK_MASK | TLM_SLAVE_BIT_MASK)

Definition at line 540 of file tlm_defines.svh.

#define TLM_NONBLOCKING_TRANSPORT_MASK   (1 <<7)

Definition at line 523 of file tlm_defines.svh.

#define TLM_PEEK_MASK   (TLM_BLOCKING_PEEK_MASK | TLM_NONBLOCKING_PEEK_MASK)

Definition at line 532 of file tlm_defines.svh.

#define TLM_PUT_MASK   (TLM_BLOCKING_PUT_MASK | TLM_NONBLOCKING_PUT_MASK)

Definition at line 530 of file tlm_defines.svh.

#define TLM_SLAVE_BIT_MASK   (1 <<10)

Definition at line 528 of file tlm_defines.svh.

#define TLM_SLAVE_MASK   (TLM_BLOCKING_SLAVE_MASK | TLM_NONBLOCKING_SLAVE_MASK)

Definition at line 544 of file tlm_defines.svh.

#define TLM_TRANSPORT_MASK   (TLM_BLOCKING_TRANSPORT_MASK | TLM_NONBLOCKING_TRANSPORT_MASK)

Definition at line 545 of file tlm_defines.svh.


Intelligent Design Verification
Intelligent Design Verification
Project: OVM, Revision: 2.1.0
Copyright (c) 2008-2010 Intelligent Design Verification.
Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.
A copy of the license is included here:
http://www.intelligentdv.com/licenses/fdl.txt
doxygen
Doxygen Version: 1.6.3
IDV SV Filter Version: 2.6.3
Sat Jun 19 11:51:39 2010
Find a documentation bug? Report bugs to: bugs.intelligentdv.com Project: DoxygenFilterSV