TLMChecker

The code for this protocol checker has been donated by John Aynsley of Doulos

Class tlm2_base_protocol_checker is a SystemC module that can be instantiated in-line between a pair of existing TLM-2.0 initiator and target sockets. It performs a comprehensive set of checks to help achieve compliance with the TLM-2.0 Base Protocol. The Base Protocol represents the highest level of interoperability provided by the TLM-2.0 standard. Two models that are functionally compatible and that fully support the TLM-2.0 Base Protocol should be interoperable off-the-shelf without modification; at least, that has been the goal of the OSCI TLM Working Group. This checker is intended to help reach that goal.

This checker is specific to the Base Protocol. Any model that includes non-ignorable extensions to the Generic Payload or Base Protocol may cause the checker to fail. Any socket that uses some other protocol will fail to bind to the Base Protocol Checker.

This Base Protocol Checker is a dynamic checker, not a static checker or linting tool. Whether or not it uncovers errors in your model will depend on the transactions passed through it; there is no guarantee that errors in the source code of the model will actually be detected. Also, although this Base Protocol Checker performs a comprehensive set of checks, there are many errors that it will be unable to detect. For example, it cannot detect that a target correctly implements a read or write operation, or that an ignorable extension can indeed be ignored.

The original source code and documentation of the TLM-2.0 Protocol Checker from Doulos can be found here


Documentation:

license: 
No Releases
Mail List: 
This group has an email list, all issues will be sent to all members of the group