source: anr/section-2.tex @ 97

Last change on this file since 97 was 97, checked in by alain, 14 years ago

Alain : refonte de la section 2

File size: 6.4 KB
Line 
1The first objective of COACH is to provide SMEs (Small and Medium Enterprises) an open-source framework to
2design embedded system on FPGA devices.
3
4Due to the exploding fabrication costs, the ASIC technology (Application Specific Integrated Circuit)
5is not an option for most SMEs. Fortunately, the new FPGA (Field Programmable Gate Array) components,
6such as the Virtex5 family from Xilinx, or the Stratix4 family from Altera can implement a complete
7multi-processor architecture on a single chip.
8
9%But the design of a SoC (System on Chip) or MPSoC (Multi-Processor System on Chip) is a complex
10%task, requiring adequate design methods to efficiently model, explore, and analyze the
11%interactions between the software application and the hardware architectures. Moreover, most SMEs do not have
12%in-home expertise in the field of hardware design or VHDL/Verilog modeling.
13%In order to meet the increasing performance requirements, to decrease the development cost, and to
14%shorten the time-to-market, they need new design methodologies.
15
16%Current design methodologies provide quite low-level abstraction capabilities, and
17%there is an urgent need to leverage system level exploration through the use of a high-level
18%specification of the application and  design space exploration tools.
19
20%The first system oriented approaches are appearing, among which those
21%based on C/C++ and SystemC are the most popular, but few of them are specifically targetting FPGAs.
22
23The COACH project will leverage on the expertise gained in the field of virtual prototyping
24with the SoCLib platform, to propose a new design flow based on a small number of architectural templates.
25An architectural template is a generic, parametrized architecture, relying on a predefined library
26of IP cores.
27Besides using a specific collection of general purpose IP cores (such as processors cores,
28embedded memory controllers, system bus controllers, I/O and peripheral controllers), each architectural
29template can be enriched by dedicated hardware coprocessors, obtained by high level synthesis (HLS) tools.
30During this project, the COACH partners will develop three different architectural templates:
31
32\begin{enumerate}
33\item An \altera architectural template based on the \altera IP core library and the AVALON system bus.
34\item A \xilinx architectural template based on the Xlinx IP core library and the OPB system bus.
35\item A Neutral architectural template based on the SoCLib IP core library and the VCI/OCP communication infrastructure.
36\end{enumerate}
37
38The proposed design flow starts from a high level description of the application, specified as a set of
39parallel tasks written in C, without any assumption on the hardware or software implementation
40of these tasks. It let the system
41designer in charge of expessing the coarse grain parallelism of the application, gives the designer
42the possibility to explore various mapping of the application on the selected template architecture,
43and offers a high predictability of results with respect to cost and performance objectives.
44
45When this interactive, system level, design space exploration is completed (converging to
46a specific mapping on a specific version of the selected architectural template), the rest of the flow
47is fully automated: The synthesisable VHDL models for the various hardware components, as well as the binary
48code for the software running on the embedded processors, and the bit-stream to program the the target FPGA
49will be automatically generated by the COACH tools.
50
51\par
52The strength of the COACH approach is the strong integration of the high-level synthesis tools
53in a plat-form based design flow supporting virtual prototyping and design space exploration.
54Most building blocks already exist (resulting from previous projects): the GAUT
55or UGH synthesis tools, the MutekH or DNA embedded operating systems, the ASIP technology,
56the DSX exploration tool, the MWMR hardware/software communication middleware, the BEE parallelisation tool,
57as well as the SoCLib library of systemC simulation models. They must now be integrated in
58a consistent design flow.
59%The five academic laboratories worked very closely during more than one year (one monthly meeting
60%in Paris from january 2009 to february 2010, to analyse the issues of interfacing and integrating
61%those various technologies, and to define the detailed architecture of the proposed design flow.
62\par
63
64In summary, the COACH project is clearly oriented toward industry, even if most technology building blocks
65have been previously developed by academic laboratories.
66
67
68%Finally, the key points of the proposed design flow are :
69%\begin{itemize}
70%\item
71%\textbf{System level exploration}: The application coarse grain parallelism
72%is explicitely described as a Tasks and Communication Graph (TCG).
73%A template architecture is selected, and the performances are evaluated
74%on various variant of this architecture using the SoCLib virtual protyping
75%environment. This result in a specific hardware/software partitioning. 
76%This system level exploration is fully controlled by the system designer, and is driven
77%by cost, throughput, latency and power consumption criteria.
78%
79%\item
80%\textbf{High Level Synthesis}: When dedicated hardware coprocessors have been
81%identified as mandatory, they will be generated by the high level synthesis (HLS) tools.
82%The Coach framework will integrate various HLS tools, supporting the micro-architectural space
83%design exploration. Here again, the exploration criteria are cost, throughput, latency
84%and power consumption.
85%At this stage, preliminary source-level transformations and optimisations by front-end
86%tools will be required to improve the efficiency of the back-end HLS tools.
87%
88%\item
89%\textbf{Early performance evaluation}: For each point in the design space,
90%figures of merit must be available such as throughput, latency, power
91%consumption, area, memory allocation and data locality. They are evaluated
92%by reliable estimators obtained by running the actual multi-task software
93%application on the virtual prototype.
94%
95%\item
96%\textbf{Independance from the Target FPGA}: The COACH description of the system
97%(both hardware and software) should be independent of the FPGA family. 
98%Every point of the design space can be implemented on any FPGA component,
99%as long as it contains the hardware ressources required by the selected architectural template.
100%Basically, COACH will support both Altera and Xilinx FPGA families.
101%\end{itemize}
102%
103
104
105
Note: See TracBrowser for help on using the repository browser.