Jump to content

Transaction level modeling

From Wikipedia, the free encyclopedia

This is an old revision of this page, as edited by Markusaachen (talk | contribs) at 14:21, 18 January 2007 (External links). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

Transaction-level modeling (TLM) is a high-level approach to modeling digital systems where details of communication among modules are separated from the details of the implementation of functional units or of the communication architecture. Communication mechanisms such as busses or FIFOs are modeled as channels, and are presented to modules using SystemC interface classes. Transaction requests take place by calling interface functions of these channel models, which encapsulate low-level details of the information exchange. At the transaction level, the emphasis is more on the functionality of the data transfers - what data are transferred to and from what locations - and less on their actual implementation, that is, on the actual protocol used for data transfer. This approach makes it easier for the system-level designer to experiment, for example, with different bus architectures (all supporting a common abstract interface) without having to recode models that interact with any of the buses, provided these models interact with the bus though the common interface. (Cited with permission from [1]).

Roots of the term TLM, or "Where is the Level in TLM?": TLM was supposed to come out as TBM (= transaction based modeling). In 2000, Thorsten Grötker, R&D Manager at Synopsys was preparing a presentation on the communication mechanism in what was to become the SystemC 2.0 standard. Gilles Baillieu, then a corporate application engineer at Synopsys, insisted that the new term had to contain "level", as in "register transfer level" or "behavioral level". The fact that TLM does not denote a single level of abstraction but rather a modeling technique didn't make him change this mind. It had to be "level" in order to make it stick. So it became "TLM", and it stuck.

Footnote: The use of "transaction-based" was quite normal at that time. Examples include TestBuilder ("transaction-based verification") or IKOS ("transaction-based interface").


References

  1. T. Grötker, S. Liao, G. Martin, S. Swan, System Design with SystemC. Springer, 2002, Chapter 8., pp. 131.
  2. Frank Ghenassia (Editor), Transaction-Level Modeling with Systemc: Tlm Concepts and Applications for Embedded Systems, Springer 2006.
  • SystemC.org - SystemC home page.
  • ESCUG - Prof. Rosenstiel's European SystemC Users Group (ESCUG) webpage.
  • NASCUG - North American SystemC User's Group.