200 likes | 321 Views
Case Study: Complex Multi-Core Virtual Platform Enablement Using TLM 2.0 to co-simulate Diverse Simulation Models in a Multi-threaded Environment. April 9, 2012. Navaneet Kumar, Sandeep Jain, Rajesh Jain. Networking & Multimedia Solutions Group. Updated Jan 2012. Outline.
E N D
Case Study: Complex Multi-Core Virtual Platform Enablement Using TLM 2.0 to co-simulate Diverse Simulation Models in a Multi-threaded Environment April 9, 2012 Navaneet Kumar, Sandeep Jain, Rajesh Jain Networking & Multimedia Solutions Group Updated Jan 2012
Outline • Virtual Platform – Challenges & Requirement • Significance of TLM 2.0 • TLM LT Methodology • TLM LT Adapter • Moving to Multi -Threading • Challenges and Learning’s of Multi-Threading • Challenges and Learning’s of DMI • Performance result • Conclusion • References
Virtual Platform – Challenges & Requirement • SoCs are becoming more complex day by day • Today’s SoC contain multiple heterogeneous cores, hardware accelerators, peripherals, complex memory hierarchy with hardware supported coherency • High-fidelity models developed by different divisions and teams in a large organization follow diverse modeling framework • Porting all the complex models to a common modeling framework is no easy task • Timely availability of Virtual Platform is critical • Useful for Software driver development • A common methodology and infrastructure is required • To enable interoperability of such diverse simulation models • To demonstrate quick virtual platform integration and co-simulation
Significance of TLM 2.0 • TLM 2.0 introduces interoperability layer • Generic payload class is suitable for carrying most common payload information • Core interfaces are suitable for various model-to-model communication scenarios • TLM 2.0 enables seamless integration of diverse simulation models • Extensions can be used to carry any type of payload and phase information • Models from different modeling framework can suitably comply to TLM 2.0 APIs • Our virtual platform integration is a proof • Here, we present our TLM LT methodology as a case study
TLM LT Methodology TLM integration TLM Adapter Creation TLM definition TLM LT Adapters TLM Extension file C/C++ and SystemC Model Library Specs
TLM LT Adapters – An example TLM 2.0 Power Arch side C++ Components DSP side C++ Components TLM LT DSP Adapter TLM LT Power Adapter DSP Module Central Inter connect Module Mem Access MemAccess I/f b_transport Mem/ Reg Access Multi Init/Target Socket Pair On Each side tlm_generic_payload DSPCustom I/f tlm_generic_payload Snoop Request- Responses Snoop I/f b_transport
Multi-Thread setup DSP side Power Arch side TLM 2.0 Inter-connect Thread-1 Power Partition 1 TLM PA Adapter • DSP Partition 1 • TLM DSP Adapter Thread-3 • TLM PA Adapter • DSP Partition 2 • TLM DSP Adapter Thread-4 Thread-2 Power Partition 2 • TLM PA Adapter • DSP Partition 3 • TLM DSP Adapter Thread-5