Electronic System Level

Models and their Application

Codesign experiences based on a virtual platform

 






















 

 

 

 

 

 

 

 

 

Chapter 7 Codesign experiences based on a virtual platform

One of the key elements of the electronic system level (ESL) methodology [BIB - Bailey07] is the concept of platform-based design. Platform-based design (PBD) allows extensive reuse of components, which reduces the time-to-market for the first release of a product, maintenance and subsequent releases. When the platform is modeled at a high level of abstraction, we often call the model a "virtual platform" [REF chapters 5 and 8]. By recreating - in a simulation model - the full architectural environment of a system as well as the algorithms that it implements, virtual platform-based design enables quick design space exploration through experimentation with different design possibilities, without having to first invest time and effort in the design of a physical prototype. The final, optimal, solution might be one that was not usually explored using past methods.

Design teams usually perform a full functional verification of their specifications by creating executable C/C++ or Java models of their specifications instead of directly working with the final target platform. Working at this higher level of abstraction both enables and speeds up the verification and validation of the specifications [REF chapter 4 section 4.1.2], as developers do not need to worry about micro-architectural details such as clock rates, exact pin-outs, line signals, or bus protocol designs. ESL design promotes the use of virtual platforms, by mixing the executable application model with a model of the architecture, resulting in a full simulation of the architecture executing the application. There is a tradeoff between the simulation speed of these applications and architecture models and their timing accuracy. Therefore, several levels of abstraction are used to first perform quick, but less accurate, simulation as typified by [REF] chapter 5 and later in the design process as typified by [REF] chapter 8, to perform slower but more accurate simulations.

This chapter presents a hardware/software codesign approach based on a virtual platform, named Space Codesign [BIB - Space] and applied to a joint photographic experts group (JPEG) decoder application. First, we define the concept of a virtual platform and describe, from the experience of the developers, what the requirements are for a virtual platform that will enable hardware/software codesign. We also propose a classification of virtual platforms that allows one to compare this platform with other ones. Then, we present the methodology based on four main steps: system specification, exploration, analysis and integration. All these features are illustrated through the JPEG decoding application by refining its specification from reference code to an implementation.

7.1 Introduction
7.2 Virtual Platforms
     7.2.1 Introduction
     7.2.2 Evolution of platform complexity
     7.2.3 Methodologies
     7.2.4 Commercial technologies for virtual platform development
     7.2.5 Models of computation
7.3 Platform and application description
     7.3.1 System specification and functional verification
     7.3.2 Architectural exploration
     7.3.3 Analysis
     7.3.4 Integration
7.4 Experiments
     7.4.1 Pipelined vs. non-pipelined models
     7.4.2 Architectural exploration of the JPEG decoder
7.5 Conclusion
7.6 References

Errata

Feedback

     Your name:
     Your company or affiliation:
     e-mail address:

     Would you like to be contacted by one of the authors

Your comments or suggestion


Buy the books here

This site is owned and maintained by Brian Bailey
All information is Copyright © 2007-2010