Section: Scientific Foundations
The development of complex applications is traditionally divided into three steps: theoretical study of the algorithms, study of the target architecture and implementation. When facing new emerging applications such as high-performance, low-power, low-cost mobile communication systems or smart sensor-based systems, it is mandatory to strengthen the design flow by a simultaneous study of both algorithmic and architectural issues(Often referenced as algorithm-architecture mapping or interaction.).
Figure 1 shows the global design flow that we propose to develop. It is organized in levels which refer to our three research themes: application optimization (algorithmic, fixed-point and advanced representations of numbers), platform instance optimization (hardware and middleware), and stepwise refinement and compilation of software tasks (transformations, configuration generation).
In the rest of this part, we briefly describe the challenges concerning new reconfigurable platforms in Section 3.2 , the issues on compiler and synthesis tools related to these platforms in Section 3.3 , and the remaining challenges in algorithm architecture interaction in Section 3.4 .