HOME       UP       PREV       NEXT (TLM 1.0 Form Example.)  

ESL TLM in SystemC: First Standard TLM 1.0.

Transactional-level modelling (TLM) 1.0 standard used conventional C++ concepts of multiple inheritance.

An SC_MODULE that implements an interface just inherits it:

   class my_component: public sc_module, ethernet_if, usb_if
   {
     // SC_METHODs and SC_THREADs for normal internal behaviour
     ...

     // methods to implement ethernet_if
     ...

     // methods to implement usb_if
     ...

     // Constructor and sensitivity
     ...
   }

The sc_port and sc_export constructs are used to wire TLM ports together.

Problem: how to have multiple TLM ports on a component with the same interface type: e.g. a packet router.

Problem: no standardised structure for ports and payloads.

Problem: no standardised timing annotation mechanism.


15: (C) 2012-18, DJ Greaves, University of Cambridge, Computer Laboratory.