Changeset 269 for anr/section-3.2.tex
- Timestamp:
- Feb 20, 2010, 12:29:50 PM (15 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
anr/section-3.2.tex
r249 r269 1 1 % les objectifs scientifiques/techniques du projet. 2 The objectives of the COACH project are to develop a complete framework to HPC 3 (accelerating solutions for existing software applications) and embedded 4 applications (implementing an application on a low power standalone 5 device). The design steps are presented figure~\ref{coach-flow}. 2 The design steps are presented figure~\ref{coach-flow}. 6 3 \begin{figure}[hbtp]\leavevmode\center 7 4 \includegraphics[width=.8\linewidth]{flow} … … 10 7 \begin{description} 11 8 \item[HPC setup:] During this step, the user splits the application into 2 parts: the host application 12 which remains on a PC and the SoC application which is mapped on the FPGA. 13 COACH will allow to automatically translate high level language programs to FPGA configurations. 14 In addition, it will provide a SystemC simulation model of the whole system (PC+communication+FPGA-SoC) 15 which will allow performance evaluation of the partitioning. 9 which remains on the PC and the SoC application which is mapped on the FPGA. 10 COACH will provide a complete simulation model of the whole system (PC+communication+FPGA-SoC) 11 which will allow performance evaluation. 16 12 \item[SoC design:] In this phase, 17 COACH will allow the user to obtain simulators for the SoC at different abstraction levels by giving to the COACH framework a SoC description. 18 This description will consist of a process network corresponding to the application, 19 an OS, an instance of a generic hardware platform 20 and a mapping of processes on the platform components. COACH will offer different targets to map the processes: 21 software (the process runs on a SoC processor), 22 ASIP (the process runs on a SoC processor enhanced with dedicated instructions), 23 and hardware (the process runs into a coprocessor that is generated by HLS and plugged on the SoC bus). 24 \item[Application compilation:] Once the SoC description is validated through performances analysis, COACH will generate automatically 25 an FPGA bitstream containing the hardware platform with the SoC application software and 26 an executable containing the host application. The user will be able to launch the application by 13 COACH will allow the user to obtain virtual prototypes for the SoC at different abstraction levels. 14 The user input will consist of a process network describing the coarse grain parallelism 15 of the application, an instance of a generic hardware platform 16 and a mapping of processes on the platform components. 17 COACH will offer different targets to map the processes: 18 software (the process runs as a software task on a SoC processor), 19 ASIP (the process runs as a software task on a SoC processor enhanced with dedicated instructions), 20 and hardware (the process is implemented as a synthesized hardware coprocessor). 21 \item[Application compilation:] Once the SoC architecture is validated through performances 22 analysis, COACH will generate automatically an executable containing the host application and 23 the FPGA bitstream. This bitstream contains 24 both the hardware architecture and the SoC application software. 25 The user will be able to launch the application by 27 26 loading the bitstream on an FPGA and running the executable on PC. 28 27 \end{description} … … 41 40 42 41 % Detailler les verrous scientifiques et techniques a lever par la realisation du projet. 43 System design is a very complex task and in this project we will try to simplify it 44 as much as possible. For this purpose the following scientific and technological barriers 45 have to be addressed. 46 \\ 47 \\ 48 %\begin{description} 49 %\item[] 50 \textit{Design Space Exploration:}\\ 51 The COACH environment will allow to easily map an application described by using a process 42 Hardware/Software co-design is a very complex task. To simplify it, COACH will address the 43 following scientific and technological barriers: 44 \begin{description} 45 \item[\textit{Design Space Exploration by Virtual Prototyping}]: 46 The COACH environment will allow to easily map a parallel application described as a process 52 47 network Model of Computation (MoC) on a shared-memory, MPSoC architecture. COACH will 53 48 permit to explore the design space by allowing system designer to select and 54 49 parameterize the target architecture, and to define the best hardware/software 55 50 partitioning of the application. 56 \\ 57 \\ 58 %\item[High-Level Synthesis:] 59 \textit{High-Level Synthesis:}\\ 51 \item[\textit{High-Level Synthesis}]: 60 52 COACH will allow the automatic generation of hardware accelerators when required 61 by using High-Level Synthesis (HLS) tools. 62 HLS will thus befully integrated into a complete system-level design environment.63 Moreover, COACH will support both data and control dominated applications .64 Indeed,the HLS tools of COACH will support a common language and coding style53 by using High-Level Synthesis (HLS) tools. These HLS tools will be 54 fully integrated into a complete system-level design environment. 55 Moreover, COACH will support both data and control dominated applications, 56 and the HLS tools of COACH will support a common language and coding style 65 57 to avoid re-engineering by the designer. 66 58 COACH will provide a tool which will automatically explore the micro-architectural 67 59 design space of coprocessor. 68 \\ 69 \\ 70 %\item[High-level code transformation:] 71 \textit{High-level code transformation:}\\ 60 \item[\textit{High-level code transformation}]: 72 61 COACH will allow to optimize the memory usage, to enhance the parallelism through 73 62 loop transformations and parallelization. The challenge is to identify the coarse … … 82 71 Particularly, this includes parallelism exposure and efficient memory mapping. 83 72 COACH will support code transformation by providing a source to source C2C tool. 84 \\ 85 \\ 86 %\item[Platform based design:] 87 \textit{Platform based design: }\\ 88 COACH will define architectural templates that can be customized by adding 89 dedicated coprocessors and ASIPs and by fixing template parameters such as 90 the number of embedded processors, the number of sizes of embedded memory banks 91 or the embedded the operating system. 92 However, the specification of the application will be independant of both the 93 architectural template and the target FPGA device. 94 \\ 95 \\ 96 %\item[Hardware/Software communication middleware:] 97 \textit{Hardware/Software communication middleware: }\\ 73 \item[\textit{Hardware/Software communication middleware}]: 98 74 COACH will implement an homogeneous HW/SW communication infrastructure and 99 75 communication APIs (Application Programming Interface), that will be used for … … 102 78 mapping the tasks of the application (described as a process network) on a 103 79 shared-memory, MPSoC architecture. 104 \\ 105 \\ 106 %\item[Processor customization:] 107 \textit{Processor customization: }\\ 80 \item[\textit{Processor customization}]: 108 81 ASIP design will be addressed by the COACH project. COACH will allow system designers to explore 109 82 the various level of interactions between the original CPU micro-architecture and its 110 83 extension. It will also allow to retarget the compiler instruction-selection pass. Finally, 111 84 COACH will integrate ASIP design in a complete System-level design framework. 112 \\ 113 \\ 114 %\item [High-Performance Computing:] The main problem in HPC is the communication 115 \textit{High-Performance Computing: }\\ 116 The main problem in HPC is the communication 117 between the PC and the SoC. This problem has 2 aspects. The first one is the run-time 118 efficiency. The second is its engineering cost, especially if one want to refine an 119 implementation at several abstract levels. 120 COACH will help designer to accelerate applications by migrating critical parts into a 121 SoC embedded into an FPGA device plugged to the PC PCI/X bus. 122 \\ 123 %\item The COACH design flow has a top-down approach. In such a case, 124 %the required performance of a coprocessor (clock frequency, maximum cycles for 125 %a given computation, power consumption, etc) are imposed by the other system 126 %components. The challenge is to allow the user to control accurately the synthesis 127 %process. For instance, the clock frequency must not be a result of the RTL synthesis 128 %but a strict synthesis constraint. 129 130 %\end{description} 85 \end{description} 131 86 132 87 %Presenter les resultats escomptes en proposant si possible des criteres de reussite
Note: See TracChangeset
for help on using the changeset viewer.