130 likes | 373 Views
The TLM 2.0 Loosely Time (LT) with DMI System Example. Jack Donovan, Charles Wilson ESLX, Inc. 19 May 2008. AT Minimum System Example Use Cases. Virtual Development Platform Initial Hardware/Software Partitioning Initial Architectural Performance Analysis.
E N D
The TLM 2.0 Loosely Time (LT) with DMI System Example Jack Donovan, Charles Wilson ESLX, Inc. 19 May 2008
AT Minimum System Example Use Cases • Virtual Development Platform • Initial Hardware/Software Partitioning • Initial Architectural Performance Analysis
Approximately Timed (AT) Block Diagram Router (SimpleBusLT) Initiator 1 (initiatior_top) Initiator 2 (initiator_top) Target 1 (lt_dmi_target) Target 2 (lt_dmi_target) TLM 2 GP
How to run this example (Linux) • Set SYSTEMC_HOME and TLM_HOME • cd examples/tlm/lt_dmi/build-unix • make clean • make • make run
How to run this example (MSVC) • Open a explorer window on examples/tlm/lt_dmi/build-windows • Launch lt_dmi.sln • Select ‘Property Manager’ from the ‘View’ menu • Under ‘lt_dmi > Debug | Win32’ select ‘systemc’ • Select ‘Properties’ from the ‘View’ menu • Select ‘User Macros’ under ‘Common Properties’ • Update the ‘SYSTEMC’ and ‘TLM’ entries and apply • Build and run
Initiator Component tlm_initiator_socket tlm_target_socket sc_export sc_port Initiator Model (lt_dmi_top) Traffic Generator (traffic_generator) Request Queue (sc_fifo) Response Queue (sc_fifo) Bus Interface Logic (lt_dmi_inititator)
Bus Interface Logic tlm_initiator_socket tlm_target_socket sc_export sc_port Initiator Model (lt_dmi_initiator) b_transport request_in_port transaction_thread initiator_socket get_direct_mem_ptr request_out_port invalidate_direct_mem_ptr Direct pointer access to memory in target dmi_memory
Target Component tlm_initiator_socket tlm_target_socket sc_export sc_port Target Module (lt_dmi_target) Direct pointer access from an initiator b_transport memory start_dmi_base_address_flag toggle_dmi_method invalidate_direct_mem_ptr get_direct_memo_ptr
Router Component Router Model (SimpleBusLT<2,2>) initiator sockets (2) target sockets (2) tlm_initiator_socket tlm_target_socket sc_export sc_port