Project : dart
Section: Overall Objectives
The 2001 International Technology Roadmap for Semiconductors [49] stresses a new problem in the design of electronic systems. Indeed, we face for the first time a design productivity gap, meaning that electronic system design teams are no longer able to take advantage of all the available transistors on a chip for logic. Because of the superexponential increase of the difficulty of system design, we may well be in a situation in a few years where one could be forced to use more than 90% of a chip area for memory because of design costs.
In the same time, the processing power requirements of intensive signal processing applications such as video processing, voice recognition, telecommunications, radar or sonar are steadily increasing (several hundreds of Gops for low power embedded systems in a few years). If the design productivity does not increase dramatically, the limiting factor of the growth of the semiconductor industry will not be the physical limitations due to the thinness of the fabrication process but the economy! Indeed we ask to the system design teams to build more complex systems faster, cheaper, bug free and decreasing the power consumption...
We propose in the DaRT project to contribute to the improvement of the productivity of the electronic embedded system design teams. We structure our approach around a few key ideas:
Focus on a limited application domain, intensive signal processing applications. This restriction will allows us to push our developpments further without having to deal with the wide variety of applications.
Promote the use of parallelism to help reduce the power consumption while improving the performance.
Propose an environment starting at the highest level of abstraction, namely the system modeling level.
Separate the concerns in different models to allow reuse of these models and to keep them human readable.
Automate code production by the use of (semi)-automatic model transformations to build correct by construction code.
Promote strong semantics in the application model to allow verification, non ambiguous design and automatic code generation.
Develop simulation techniques at precise abstraction levels (functional, transactional or register transfer levels) to check the soonest the design.
All these ideas will be implemented into a prototype design environment based on simulation, Gaspard. This open source platform will be our test bench and will be freely available.
The main technologies we promote are UML 2.0 [25], MDA [22], MOF [23] for the modeling and the automatic model transformations; Array-OL [37][38][32], synchronous languages (such as Esterel [29] or Lustre [48]), Kahn process networks [50] as computation models with strong semantics for verification; SystemC [60] for the simulations; VHDL for the synthesis; and Java [28] to code our prototypes.