Initial commit of OpenSPARC T2 design and verification files.
[OpenSPARC-T2-DV] / verif / model / vendor / TLM-2006-11-29 / tlm / README
CommitLineData
86530b38
AT
1
2The basic user level include is tlm.h. Everything is in the tlm namespace.
3
4There are five sub namespaces
5
61. tlm_core
7
8This contains the old TLM 1.0 standard, with the addition of a few new methods
9such as the reference based form of transport.
10
112. analysis
12
13This contains the basic mechanisms for doing analysis : analysis_if,
14analysis_port, analysis_fifo, analysis_triple.
15
163. tlm_annotated
17
18This contains all the annotated interfaces and channels.
19
20These interfaces add
21
22bool nb_put( const T & , const sc_time & );
23bool nb_can_put( const sc_time & , tlm_tag<T> * );
24
25to any interface which inherits, however indirectly, from
26tlm_nonblocking_put_if,
27
28and
29
30bool nb_get( const T & , const sc_time & );
31bool nb_can_get( const sc_time & , tlm_tag<T> * );
32
33to any interface which inherits, however indirectly, from
34tlm_nonblocking_get_if.
35
36The annotated interfaces are all of the form tlm_annotated_*
37
38The annotated channels are tlm_annotated_fifo and tlm_annotated_req_rsp_channel
39
40This code depends on tlm_core and analysis.
41
424. tlm_bus
43
44This contains the transaction level interoperability section of the TLM 2.0
45standard.
46
47This consists of the request and response datastructures, and everything
48required for these datastructures.
49
50In addition, there is
51
525. tlm_ports
53
54This contains all the code for tlm_initiator_port and tlm_target_port. These
55provide some infrastructure used for transaction recording and target ids (
56see To Be Done below ).
57
58In addition to these five directories, there is an extension to the analysis
59namespace in :
60
616. tlm_bus_analysis
62
63This contains prototype code that disables analysis fifo for pointer versions
64of tlm_request and tlm_response, and an adaptor widget to convert from pointer
65versions to by-val versions. This code is currently untested !
66
67To be Done :
68
69Analysis
70- add analysis_buffer to analysis
71- test tlm_bus_anlysis
72- merge tlm_initiator_port and tlm_target_port functionality into analysis
73- enable / disable for both local analysis and upward propagation
74TLM_BUS
75- ostream & operators for request and response
76GENERAL
77- add more docs
78