112922Sgabeblack@google.comSimpleLTInitiator1/SimpleLTTarget1 212922Sgabeblack@google.com---------------------------------- 312922Sgabeblack@google.com 412922Sgabeblack@google.com- LT Initiator/Target model using the base (standard) tlm socket 512922Sgabeblack@google.com- Added support for DMI in SimpleLTTarget1 612922Sgabeblack@google.com 712922Sgabeblack@google.comSimpleLTInitiator1_DMI 812922Sgabeblack@google.com---------------------- 912922Sgabeblack@google.com 1012922Sgabeblack@google.com- uses DMI transactions, the DMI structure is using the DMI-hint 1112922Sgabeblack@google.com to check if a DMI request would make sense. 1212922Sgabeblack@google.com- uses a single transport_dbg transaction at end_of_simulation() 1312922Sgabeblack@google.com 1412922Sgabeblack@google.comSimpleLTInitiator2/SimpleLTTarget2 1512922Sgabeblack@google.com---------------------------------- 1612922Sgabeblack@google.com 1712922Sgabeblack@google.com- LT Initiator/Target model using the convenience tlm socket 1812922Sgabeblack@google.com- Target and Initiator model use the REGISTER_DEBUGTRANSPORT macro to register 1912922Sgabeblack@google.com a transport callback to the socket 2012922Sgabeblack@google.com- Added support for DMI handling, callback registration with 2112922Sgabeblack@google.com REGISTER_DMI 2212922Sgabeblack@google.com- SimpleLTTarget2 does not register the transport_dbg callback, so that 2312922Sgabeblack@google.com we are able to test this case in bus_dmi. 2412922Sgabeblack@google.com 2512922Sgabeblack@google.comSimpleLTInitiator2_DMI 2612922Sgabeblack@google.com---------------------- 2712922Sgabeblack@google.com 2812922Sgabeblack@google.com- uses DMI transactions, but ignoring the DMI hint 2912922Sgabeblack@google.com- uses a single transport_dbg transaction at end_of_simulation() 3012922Sgabeblack@google.com 3112922Sgabeblack@google.comSimpleLTInitiator3 3212922Sgabeblack@google.com------------------ 3312922Sgabeblack@google.com 3412922Sgabeblack@google.com- LT Initiator model using the convenience tlm socket 3512922Sgabeblack@google.com- Initiator model uses the endEvent of the socket to wait until the 3612922Sgabeblack@google.com transaction is finished 3712922Sgabeblack@google.com 3812922Sgabeblack@google.comSimpleLTInitiator3_DMI 3912922Sgabeblack@google.com---------------------- 4012922Sgabeblack@google.com 4112922Sgabeblack@google.com- based on SimpleInitiator3, uses DMI (without DMI hint) 4212922Sgabeblack@google.com 4312922Sgabeblack@google.comSimpleATInitiator1/SimpleATTarget1 4412922Sgabeblack@google.com---------------------------------- 4512922Sgabeblack@google.com 4612922Sgabeblack@google.com- AT Initiator/Target model implementing the AT protocol 4712922Sgabeblack@google.com- one call of nb_transport for each timing point in the protocol (BEGIN_REQ, 4812922Sgabeblack@google.com END_REQ, BEGIN_RESP and END_RESP) 4912922Sgabeblack@google.com 5012922Sgabeblack@google.comSimpleATInitiator2/SimpleATTarget2 5112922Sgabeblack@google.com---------------------------------- 5212922Sgabeblack@google.com 5312922Sgabeblack@google.com- AT Initiator/Target model implementing the AT protocol with timing annotation 5412922Sgabeblack@google.com- only a call of nb_transport for the start of a phase (BEGIN_REQ and 5512922Sgabeblack@google.com BEGIN_RESP) 5612922Sgabeblack@google.com- end of a phase is notified via timing annotation (t argument) 5712922Sgabeblack@google.com 5812922Sgabeblack@google.comCoreDecouplingLTInitiator 5912922Sgabeblack@google.com------------------------- 6012922Sgabeblack@google.com 6112922Sgabeblack@google.com- LT Initiator using 'Core Decoupling' 6212922Sgabeblack@google.com 6312922Sgabeblack@google.comExplicitLTTarget 6412922Sgabeblack@google.com---------------- 6512922Sgabeblack@google.com 6612922Sgabeblack@google.com- LT Target that uses explicit timing (calls wait) 6712922Sgabeblack@google.com- added support for debug transactions 6812922Sgabeblack@google.com 6912922Sgabeblack@google.comExplicitLTTarget 7012922Sgabeblack@google.com---------------- 7112922Sgabeblack@google.com 7212922Sgabeblack@google.com- AT Target, only registers nb_transport 7312922Sgabeblack@google.com 7412922Sgabeblack@google.comSimpleBus 7512922Sgabeblack@google.com--------- 7612922Sgabeblack@google.com 7712922Sgabeblack@google.com- Simple bus model 7812922Sgabeblack@google.com- Runtime switcheable between LT and AT (can only switch if no transactions 7912922Sgabeblack@google.com are pending) 8012922Sgabeblack@google.com- No limitation on number of pending transactions (all targets that can return 8112922Sgabeblack@google.com false must support multiple transactions) 8212922Sgabeblack@google.com- added support for DMI and debug transactions 8312922Sgabeblack@google.com- LT mode: 8412922Sgabeblack@google.com-- Forward nb_transport calls to initiator/targets 8512922Sgabeblack@google.com-- Only one active request/response phase 8612922Sgabeblack@google.com- AT mode: 8712922Sgabeblack@google.com-- Incoming transactions are queued 8812922Sgabeblack@google.com-- AT protocol is executed from a different SC_THREAD 8912922Sgabeblack@google.com-- A target is notified immediately of the end of a transaction (using timing 9012922Sgabeblack@google.com annotation). This is needed because the initiator can re-use the 9112922Sgabeblack@google.com transaction (and the target may use the transaction pointer to identify the 9212922Sgabeblack@google.com transaction) 93