Go to main content

School of Computer Science Intranet

APT research areas

Discover our main research areas

MarkJosephs.txt PLATFORM-BASED DESIGN

"The basic tenets of platform-based design are the identification of design as a meeting-in-the-middle process, where successive refinements of specifications meet with abstractions of potential implementations, and the identification of precisely defined layers where the refinement and abstraction processes take place. Each layer supports a design stage providing an opaque abstraction of lower layers that allows accurate performance estimations. This information is incorporated in appropriate parameters that annotate design choices at the present layer of abstraction. These layers of abstraction are called platforms.

A platform is a library of components together with their composition rules. A design at each level of abstraction is a platform instance, i.e., a legal composition of a set of library elements. The library not only contains computational blocks that carry out the appropriate computation but also communication components that are used to interconnect the functional components. Each element of the library has a characterization in terms of performance parameters together with the functionality it can support. For every platform level, there is a set of methods used to map the upper layers of abstraction into the platform and a set of methods used to estimate performances of lower level abstractions. The meeting-in-the-middle process is the combination of two efforts: . top-down: map an instance of the top platform with constraints into an instance of the lower platform with appropriate constraints resulting from an appropriate propagation involving budgeting wherever needed; . bottom-up: build a platform by defining its components and their performance abstraction (e.g., number of literals for technology independent optimization, and area and propagation delay for a cell in a standard cell library).

Establishing the number, location, abstraction and components of intermediate platforms is the essence of platform-based design. The trade-offs involved in the selection of the number and characteristics of platforms relate to the size of the design space to be explored and the accuracy of the estimation of the characteristics of the solution adopted. Naturally, the larger the step across platforms, the more difficult is predicting performance, optimizing at the higher levels of abstraction, and providing a tight lower bound. In fact, the design space for this approach may actually be smaller than the one obtained with smaller steps because it becomes harder to explore meaningful design alternatives and the restriction on search impedes complete design space exploration. Ultimately, predictions/abstractions may be so inaccurate that design optimizations are misguided and the lower bounds are incorrect."

[Alberto L. Sangiovanni-Vincentelli, Luca Carloni, Fernando De Bernadinis, Marco Sgroi, "Benefits and Challenges of Platform Based Design," Proceedings of the 41st DAC, San Diego, June 2004]

Page 1