Tutorial for the MASCOTS Conference 2005:

 

Attendees:

 

Senior Architects, Processor designers, DSP engineers,  Software Architects, and Modeling and Simulation Specialists

 

Duration:

 

½ day combining presentation, demonstration and interactive sessions

 

Presenter:

 

Deepak Shankar is the Founder and CEO of Mirabilis Design Inc, a systems engineering solutions provider.  Shankar has an MS in Electrical Engineering from Clemson  University and MBA from  University of  California Berkeley.  He has over 15 years experience in electronics system design and has created 3 electronic systems engineering design and simulation tools prior to Mirabilis Design.  Mr. Shankar was the founder and member of the early management team at three different startups in the systems engineering and electronics industry. He has presented at a number of  IEEE and Industry Consortium conferences in Asia,  Europe and the  USA.

 

Tutorial Title:

 

Designing real-time architectures using performance and power analysis through Discrete-Event modeling

 

Benefits

 

Attendees will understand how efficient system-level architecture modeling can increase the performance of reconfigurable, real-time software designs and validate hardware performance requirements. A baseline system performance model can be developed to allow design tradeoffs and minimize impact of design changes due to technology upgrades. 

 

Brief:

 

Next generation multi-processor, multi-core systems including FPGAs will provide significant more performance than real-time application architects are accustomed with.  At the same time, the requirements of wireless technologies and higher clock rates generate power that makes cooling a challenge.  Early system tradeoffs are especially important for systems that involve high throughput or fidelity requirements, such as real-time imaging processing, or critical power requirements for hand-held consumer devices. Performance load balancing is becoming even more critical when designing new and novel multi-core microprocessor architectures.  The trade-off between power and performance on parallel processing and multi-threading will be discussed.

 

Decisions such as hardware-software partitioning, multi-threading vs. parallel processing, and task partitioning require evaluating numerous architectures and making large number of trade-off decisions.   System designers must make the architectures support a variety of software implementation techniques.   The trade-offs in the cache configuration for multiple cores include question such as dedicated or shared, on-chip frame buffer or off-chip, and DMA access or DSP-direct. Additional questions t raised are the number of pipeline stages, type of communication bus between the resources (cache, DMA etc.) and the cores, speed of the logic gates and custom instruction sets per execution units. 

 

During this tutorial, attendees will learn

 

1.       The various models of computation available for combining different sub-systems and engineering domains

 

2.       The use of pre-built, parameterized libraries to rapidly construct models of the of the proposed or current complex system architecture.

 

3.       The use of statistical models, trace information, abstraction of non-essential system specification and modeling for analysis

 

4.       The effective use of benchmark information and trace information from existing systems for validating system models

 

5.       How system performance models can be used for creating better program proposals and justifying decisions.

 

There will be a demonstration on how to simulate the performance of complex systems made up of hardware, software, and networks (wired, wireless, and transaction level) very early in the specification and design cycle.  The design methodology described starts with a mathematical functional model and rough architectural proposals.  The mathematical functions are dynamically mapped on to rough architecture to achieve optimal system operation and balanced loading. Models can be successively refined from functional and transaction level down to cycle approximate and bit true detail.