TLM 2.0
This two-day workshop introduces the student to the OSCI TLM 2.0 modeling standard. It is intended for engineers who are familiar with SystemC, with an interest in learning the TLM 2.0 modeling constructs and coding styles.
The student will learn how to write models that conform to the TLM2.0 standard, using both the Loosely-Timed (LT) and Approximately-timed (AT) coding styles, and offering additional features such as Direct-Memory (DMI), Debug access, and payload extensions.
This course is mixed lecture and exercises, with an exercise for nearly every topic.
Syllabus
- TLM 2.0 Overview
- Interface functions
- Sockets
- Generic payload
- Protocol
- Interfaces
- Transport
- DMI
- Debug
- Sockets
- Initiator and target
- Socket binding
- Hierarchy, multi-connect
- Topology examples
- Generic Payload Overview
- Attributes
- LT Coding style (+exercise)
- Transport interface
- Temporal decoupling
- Quantum Keeper
- AT Coding Style (+exercise)
- Protocol phases
- Forward, backward, and return paths
- Base protocol (2-phase)
- Payload Event Queue (PEQ)
- DMI interface
- DMI hint
- DMI data structure
- Invalidating DMI
- Debug Interface (+exercise)
- Debug Transport interface
- Convenience Sockets (+exercise)
- Simple sockets
- Tagged sockets
- Multi-passthrough sockets
- Generic Payload In-depth
- Byte Enable
- Streaming
- Endianness
- Memory management
- Generic Payload Extensions (+exercise)
- Base Protocol In-depth
- 4-state and variants