[25] | 1 | |
---|
| 2 | % Relevance of the proposal |
---|
| 3 | |
---|
[101] | 4 | |
---|
| 5 | |
---|
| 6 | |
---|
[97] | 7 | The COACH proposal addresses directly the \emph{Embedded Systems} item of |
---|
[67] | 8 | the ARPEGE program. It aims to propose solutions to the societal/economical challenges by |
---|
[97] | 9 | providing SMEs novel design capabilities enabling them to increase their |
---|
[25] | 10 | design productivity with design exploration and synthesis methods that are placed on top |
---|
[97] | 11 | of the state-of-the-art methods. |
---|
| 12 | This project proposes an open-source framework for mapping multi-tasks software applications |
---|
| 13 | on Field Programmable Gate Array circuits (FPGA). |
---|
[99] | 14 | %%% |
---|
| 15 | \parlf |
---|
[97] | 16 | COACH will contribute to build an open development and run-time |
---|
| 17 | environment, including communication middleware and tools to support |
---|
[25] | 18 | developers in the production of embedded software, through all phases of the software lifecycle, |
---|
[177] | 19 | from requirements analysis downto deployment and maintenance. |
---|
[25] | 20 | More specifically, COACH focuses on: |
---|
| 21 | \begin{itemize} |
---|
| 22 | \item High level methods and concepts (esp. requirements and architectural level) for system |
---|
| 23 | design, development and integration, addressing complexity aspects and modularity. |
---|
| 24 | \item Open and modular development environments, enabling flexibility and extensibility by |
---|
| 25 | means of new or sector-specific tools and ensuring consistency and traceability along the |
---|
| 26 | development lifecycle. |
---|
| 27 | \item Light/agile methodologies and adaptive workflow providing a dynamic and adaptive |
---|
| 28 | environment, suitable for co-operative and distributed development. |
---|
| 29 | \end{itemize} |
---|
[99] | 30 | %%% |
---|
| 31 | \parlf |
---|
[25] | 32 | COACH outcome will contribute to strengthen Europe's competitive position by developing |
---|
| 33 | technologies and methodologies for product development, focusing (in compliance with the |
---|
| 34 | scope of the above program) on technologies, engineering methodologies, novel tools, |
---|
| 35 | methods which facilitate resource use efficiency. The approaches and tools to be developed |
---|
| 36 | in COACH will enable new and emerging information technologies for the development, |
---|
| 37 | manufacturing and integration of devices and related software into end-products. |
---|
[99] | 38 | %%% |
---|
| 39 | \parlf |
---|
[177] | 40 | The COACH project will benefit from a number of previous recent projects: |
---|
[99] | 41 | \begin{description} |
---|
| 42 | \item[SOCLIB] |
---|
| 43 | The SoCLib ANR platform (2007-2009) is an open infrastructure developped by 10 academic laboratories |
---|
[177] | 44 | (TIMA, LIP6, Lab-STICC, IRISA, ENST, Gipsa-Lab, CEA-LIST, CEA-LETI, CITI, INRIA-Futurs, LIS) and 6 |
---|
| 45 | industrial companies (Thales Communications, Thomson R\&D, STMicroelectronics, Silicomp, MDS, TurboConcept). |
---|
[99] | 46 | It supports system level virtual prototyping of shared memory, multi-processors |
---|
| 47 | architectures, and provides tools to map multi-tasks software application on these |
---|
| 48 | architectures, for reliable performance evaluation. |
---|
| 49 | The core of this platform is a library of SystemC simulation models for |
---|
| 50 | general purpose IP cores such as processors, buses, networks, memories, IO controller. |
---|
| 51 | The platform provides also embedded operating systems and software/hardware |
---|
| 52 | communication middleware. |
---|
| 53 | The synthesisable VHDL models of IPs are not part of the SoCLib platform, and |
---|
| 54 | this project enhances SoCLib by providing the synthesisable VHDL models required |
---|
| 55 | for FPGA synthesis. |
---|
[120] | 56 | \item[ROMA] The ROMA ANR project (http://roma.irisa.fr, 2007-2010) |
---|
| 57 | involving IRISA (CAIRN team), LIRMM, CEA List THOMSON France R\&D, |
---|
| 58 | proposes to develop a reconfigurable processor, exhibiting high |
---|
| 59 | silicon density and power efficiency, able to adapt its computing |
---|
| 60 | structure to computation patterns that can be speed-up and/or |
---|
| 61 | power efficient. The ROMA project study a pipeline-based of |
---|
| 62 | evolved low-power coarse grain reconfigurable operators to avoid |
---|
| 63 | traditional overhead, in reconfigurable devices, related to the |
---|
| 64 | interconnection network. The project will borrow from the ROMA |
---|
| 65 | ANR project and the ongoing joint INRIA-STMicro |
---|
| 66 | Nano2012 project to adapt existing pattern extraction algorithms |
---|
| 67 | and datapath merging techniques to the synthesis of customized |
---|
[99] | 68 | ASIP processors. |
---|
| 69 | \item[TSAR] |
---|
| 70 | The TSAR MEDEA+ project (2008-2010) involving BULL, THALES and the \upmc targets the design of a |
---|
| 71 | scalable, coherent shared memory, multi-cores processor architecture, and uses the SoCLib |
---|
| 72 | plaform for virtual prototyping. The COACH project will benefit from the synthesizable VHDL |
---|
| 73 | models developped in the framework of TSAR (MIPS32 processor core, and RING interconnect). |
---|
| 74 | \item[BioWic] |
---|
| 75 | On the HPC application side, we also hope to benefit from the experience in |
---|
| 76 | hardware acceleration of bioinformatic algorithms/workfows gathered by the |
---|
| 77 | CAIRN group in the context of the ANR BioWic project (2009-2011), so as to |
---|
| 78 | be able to validate the framework on real-life HPC applications. |
---|
| 79 | \end{description} |
---|
| 80 | %%% |
---|
| 81 | \parlf |
---|
[97] | 82 | The laboratories involved in the COACH project have a well estabished expertise |
---|
| 83 | in the following domains: |
---|
| 84 | \begin{itemize} |
---|
[99] | 85 | \item |
---|
| 86 | In the field of High Level Synthesis (HLS), the project |
---|
| 87 | leverages on know-how acquired over the last 15 years with the GAUT~\cite{gaut08} project |
---|
| 88 | developped by the \ubs laboratory, and with the UGH~\cite{ugh08} project developped |
---|
| 89 | by the \upmc and \tima laboratories. |
---|
| 90 | \item |
---|
| 91 | Regarding system level architecture, the project is based on the know-how |
---|
| 92 | acquired by the \upmc and \tima laboratories in the framework of various projects |
---|
[135] | 93 | in the field of communication architectures for shared memory multi-processors systems |
---|
| 94 | (COSY~\cite{cosy}, DISYDENT~\cite{disydent05} or DSPIN~\cite{dspin08} of MEDEA-MESA). |
---|
| 95 | As an example, the DSPIN project is now used in the TSAR project. |
---|
[99] | 96 | \item |
---|
| 97 | Regarding Application Specific Instruction Processor (ASIP) design, the |
---|
[120] | 98 | CAIRN group at INRIA Rennes -- Bretagne Atlantique benefits from several years of |
---|
[99] | 99 | expertise in the domain of retargetable compiler |
---|
| 100 | (Armor/Calife~\cite{CODES99} since 1996, and the Gecos |
---|
| 101 | compilers~\cite{ASAP05} since 2002). |
---|
[97] | 102 | \item |
---|
[99] | 103 | In the field of compilers, the Compsys group was founded in 2002 |
---|
| 104 | by several senior researchers with experience in |
---|
| 105 | high performance computing and automatic parallelization. They have been |
---|
| 106 | among the initiators of the polyhedral model, a theory which serve to |
---|
| 107 | unify many parallelism detection and exploitation techniques for regular |
---|
| 108 | programs. It is expected that the techniques developped by Compsys for |
---|
| 109 | parallelism detection, scheduling, process construction and memory management |
---|
| 110 | will be very useful as a front-end for the a high-level synthesis tools. |
---|
[97] | 111 | \end{itemize} |
---|
[99] | 112 | %%% |
---|
[177] | 113 | |
---|
| 114 | |
---|
| 115 | The COACH project answers to several of the challenges found in different axis of the |
---|
| 116 | call for proposals. Keywords of the call are indicated below in italic writing. |
---|
| 117 | |
---|
| 118 | Axis 1 "Architectures des syst\`{e}mes embarqu\'{e}s" : |
---|
| 119 | |
---|
| 120 | COACH will address new embedded systems architectures by allowing the design of |
---|
| 121 | Multi-Core Systems-on-Chip (possibly heterogeneous) on FPGA according to the design |
---|
| 122 | constraints and objectives (real-time, low-power). It will permit to design complex SoC |
---|
| 123 | based on IP cores (memory, peripherals, network controllers, communication processors), |
---|
| 124 | running Embedded Software, as well as an Operating System with associated middleware and |
---|
| 125 | API and using hardware accelerator automatically generated. It will also permit to use |
---|
| 126 | efficiently different dynamic system management techniques and re-configuration mechanisms. |
---|
| 127 | |
---|
| 128 | Axis 2 "Infrastructures pour l'Internet, le calcul intensif ou les services" : |
---|
| 129 | |
---|
| 130 | COACH will address High-Performance Computing (HPC) by helping designer to accelerate an |
---|
| 131 | application running on a PC by migrating critical parts into a SoC implemented on an FPGA |
---|
| 132 | plugged to the PC bus (through a communication link like PCI/X). COACH will reduce the designer |
---|
| 133 | effort through the development of tools that translate high level language programs to FPGA |
---|
| 134 | configurations. Moreover, Dynamic Partial Reconfiguration will be used for improving HPC performance |
---|
| 135 | as well as reducing the required area. |
---|
| 136 | |
---|
| 137 | Axis 3 "Robotique et controle/commande" : |
---|
| 138 | |
---|
| 139 | COACH will permit to design complex digital systems based on high-performance multi-core systems. |
---|
| 140 | Like in the consumer electronics domain (telecommunication, multimedia), future control applications |
---|
| 141 | will employ more and more SoC not just for typical consumer functionality, but also for safety and |
---|
| 142 | security applications (by performing complex analyses on data gathered with intelligent sensors, |
---|
| 143 | by initiating appropriate responses to dangerous phenomena...). Application domains for such systems |
---|
| 144 | are for example the automotive domain, as well as the aerospace and avionics domains (i.e. sophisticated on-board |
---|
| 145 | radar systems, collision-detection, intelligent navigation...). |
---|
| 146 | Manufacturing technology will also increasingly need high-end vision analysis and high-speed |
---|
| 147 | robot control. In all cases, high performance and real time requirements are combined with |
---|
| 148 | requirements to low power, low temperature, high dependability, and low cost. |
---|
| 149 | |
---|
| 150 | Axis 5 "S\'{e}curit\'{e} et suret\'{e}" : |
---|
| 151 | |
---|
| 152 | The results of the COACH project will help users to build cryptographic secure systems implemented in |
---|
| 153 | hardware or both in software/ hardware in an effective way, substantially enhancing the |
---|
| 154 | process productivity of the cryptographic algorithms hardware synthesis, improving the |
---|
| 155 | quality and reducing the design time and the cost of synthesised cryptographic devices. |
---|
| 156 | |
---|
| 157 | COACH technologies can be used in both large and small business, as they will permit users to design |
---|
| 158 | embedded systems which meet a wide range of requirements: from low cost and low power consuming |
---|
| 159 | devices to very high speed devices, based on parallel computing. For enterprises that will use embedded |
---|
| 160 | systems designed via the approaches and tools targeted by COACH, there is the potential for greater |
---|
| 161 | efficiency, improved business processes and models. The net results: lower costs, faster response times, |
---|
| 162 | better service, and higher revenue. |
---|
| 163 | |
---|
| 164 | |
---|
[99] | 165 | \parlf |
---|
[177] | 166 | Finally, it is worth to note that this project covers priorities defined by the commission |
---|
[19] | 167 | experts in the field of Information Technolgies Society (IST) for Embedded |
---|
[97] | 168 | Systems: $<<$Concepts, methods and tools for designing systems dealing with systems complexity |
---|
[19] | 169 | and allowing to apply efficiently applications and various products on embedded platforms, |
---|
| 170 | considering resources constraints (delais, power, memory, etc.), security and quality |
---|
| 171 | services$>>$. |
---|