Changeset 38
- Timestamp:
- Jan 19, 2010, 11:01:35 AM (15 years ago)
- Location:
- anr
- Files:
-
- 9 edited
Legend:
- Unmodified
- Added
- Removed
-
anr/anr.tex
r36 r38 32 32 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 33 33 \def\Sformat#1{\begin{small}\textsc{#1}\end{small}} 34 \def\irisa{ irisa\xspace} \def\Sirisa{\Sformat{IRI}\xspace}34 \def\irisa{IRISA\xspace} \def\Sirisa{\Sformat{IRI}\xspace} 35 35 \def\citi{CITI\xspace} \def\Sciti{\Sformat{CITI}\xspace} 36 36 \def\lip{LIP\xspace} \def\Slip{\Sformat{LIP}\xspace} -
anr/section-2.1.tex
r32 r38 1 Microelectronic allows the integration of complicated functions into products, to increase their 2 commercial attractivity and to improve their competitivity. Multimedia and communication 3 sectors have taken advantage from microelectronics facilities thanks to the developpment of 4 design methodologies and tools for real time embedded systems. Many other sectors could 5 benefit from microelectronics if these methologies and tools were adapted to their features. 6 The Non Recurring Engineering (NRE) costs involded in designing and manufacturing an ASIC is 7 very high. An IC foundry costs several billions of euros and the fabrication 8 of a specific circuit costs several millions. For example a conservative estimate for a 65nm ASIC project is 10 million USD. 1 Microelectronic allows the integration of complicated functions into products, increases 2 commercial attractivity of these products and improves their competitivity. 3 Multimedia and communication sectors have taken advantage from microelectronics facilities 4 thanks to the developpment of design methodologies and tools for real time embedded 5 systems. 6 Many other sectors could benefit from microelectronics if these methologies and tools were 7 adapted to their features. The Non Recurring Engineering (NRE) costs involded in designing 8 and manufacturing an ASIC is very high. 9 An IC foundry costs several billions of euros and the fabrication of a specific circuit 10 costs several millions. For example a conservative estimate for a 65nm ASIC project is 10 11 million USD. 9 12 Consequently, it is generally unfeasible to design and fabricate ASICs in 10 13 low volumes and ICs are designed to cover a broad applications spectrum at the cost of 11 performance degradation.14 some performance degradation. 12 15 \\ 13 16 Today, FPGAs become important actors in the computational domain that was originally dominated -
anr/section-2.tex
r32 r38 6 6 complexity of design problems. Such methods, addressing these challenges starting from high levels of 7 7 abstraction, will have to perform large solution space explorations both for software and (possibly 8 reconfigurable) h rdware, involving almost marginaldesign effort and offering a high predictability of results9 with respect to cost - and performance-objectives.8 reconfigurable) hardware, reducing the design effort and offering a high predictability of results 9 with respect to cost and performance objectives. 10 10 Current design methodologies provide quite low-level abstraction capabilities. However in a few years 11 11 from now tens of programmable processors will be embedded in an IC with more than 100M 12 transistors adding to the complexity of the problem of designing such systems. Taking into account 13 that the complexity of the software part is increasing at an even faster rate, current solutions for 14 design space exploration, mainly manually based, by no means do supply an adequate performance. 12 transistors, therefore adding to the complexity of the problem of designing such systems. 13 Taking into account that the complexity of the software part is increasing at an even 14 faster rate, current solutions for design space exploration, mainly manually based, by no 15 means do supply an adequate efficiency. 15 16 Consequently, there is an urgent need to leverage system level 16 17 exploration through the use of a high level specification of the application and an early design … … 22 23 \\ 23 24 Thus, new system-level design flows need to be developed, enabling the exploration of an application 24 independently of the implementation, almost at the beginning of the design process. A25 fundamental element of this evolution is the definition of abstraction layers that should allow the26 systematic re-use of software and hardware components at the system level driven by performance estimation 27 and analysis. In this context, COACH will combine modeling and estimation methods and 28 compilers and design space exploration techniques. This approach will cause a real breakthrough in 29 the embedded system design methodology, i.e. one of the radical innovations.25 independently of the implementation, almost at the beginning of the design process. 26 A fundamental element of this evolution is the definition of abstraction layers that should allow the 27 performance driven re-use of software and hardware components at the system level. 28 In this context, COACH will combine modeling and estimation methods and compilers and 29 design space exploration techniques. This approach will be a radical innovation in 30 embedded system design methodology. 30 31 \\ 31 The reason is that COACH precedes the use ofhigh-level design tools in the embedded32 systems design flow s. In that way, it will make possible a real and efficiently combined33 exploitation of high-level synthesis tools, paralleli sing approaches and compilers, already32 The reason is that the COACH framework is applied before high-level design tools in the embedded 33 systems design flow. In that way, it will make possible a real and efficiently combined 34 exploitation of high-level synthesis tools, parallelizing approaches and compilers, already 34 35 available on the market. These tools and approaches are not yet massively adopted, precisely 35 because this decisivedesign step is missing. COACH will indeed permit (i) to predict and36 because this preliminary design step is missing. COACH will indeed permit (i) to predict and 36 37 control implementation optimizations, (ii) to target multiple implementation technologies 37 38 (and thus the associated tools) from a unique specification and (iii) to efficiently integrate high … … 43 44 a lower global cost. 44 45 \par 45 To get an efficient embedded system, designer has to take into account46 application characteristics when it chooses one of the formertechnologies.47 This choice is not easy and in most cases designer has to try different46 To get an efficient embedded system, the system designer has to take into account 47 application characteristics when it chooses one of the available technologies. 48 This choice is not easy and in most cases the designer has to try different 48 49 technologies to retain the most adapted one. 49 50 \\ 50 51 The first objective of COACH is to provide an open-source framework to 51 design embedded system on FPGA device .52 COACH framework allowsdesigner to explore various software/hardware52 design embedded system on FPGA devices. 53 The COACH framework allows the designer to explore various software/hardware 53 54 partitions of the target application, to run timing and functional 54 55 simulations and to generate automatically both the software and the … … 65 66 Micro-architectural exploration: When hardware components are required, the 66 67 HLS tools of the framework generate them automatically. At this stage the 67 framework provides various HLS tools allowingthe micro-architectural space68 framework provides various HLS tools that allow the micro-architectural space 68 69 design exploration. The exploration criteria also are throughput, latency 69 70 and power consumption. … … 74 75 75 76 \item 76 Performance measurement: For each point of design space exploration,77 metrics of criteriaare available such as throughput, latency, power77 Performance measurement: For each point in the design space, 78 figures of merit are available such as throughput, latency, power 78 79 consumption, area, memory allocation and data locality. They are evaluated 79 using virtual prototyping, estimation or analy sing methodologies.80 using virtual prototyping, estimation or analyzing methodologies. 80 81 \item 81 Targeted hardware technology: The COACH description of system is82 independent of the FPGA family. Every point of the design exploration82 Targeted hardware technology: The COACH description of a system is 83 independent of the FPGA family. Every point of the design 83 84 space can be implemented on any FPGA having the required resources. 84 85 Basically, COACH handles both Altera and Xilinx FPGA families. … … 86 87 As an extension of embedded system design, COACH deals also with High 87 88 Performance Computing (HPC). 88 In HPC, the kind of targeted application is an existing one running on PC.89 COACHhelps designer to accelerate it by migrating critical parts into a90 SoC implemented on a FPGA plugged to the PC bus.89 In HPC, the kind of targeted application is an existing one running on a PC. 90 The COACH framework helps designer to accelerate it by migrating critical parts into a 91 SoC implemented on an FPGA plugged to the PC bus. 91 92 \par 92 COACH is the result of the will of several laborator y to unify their know93 howand skills in the following domains: Operating system and hardware94 communication ( TIMA, SITI), SoC and MPSoC (LIP6 and TIMA), ASIP (IRISA) and95 HLS ( LIP6, Lab-STIC and LIP).93 COACH is the result of the will of several laboratories to unify their knowhow 94 and skills in the following domains: Operating system and hardware 95 communication (\tima, \citi), SoC and MPSoC (\upmc and \tima), ASIP (\irisa) and 96 HLS (\upmc, \ubs) and compilation (\irisa, \lip). 96 97 The project objective is to integrate these various domains into a unique 97 98 free framework (licence ...) masking as much as possible these domains and -
anr/section-4.1.tex
r37 r38 48 48 The input is a single task of the process network. The HAS tools do not work 49 49 directly on the C++ task description but on an internal format called 50 \xcoach generated by a the GNU C compiler (GCC) 51 %Paul: ``tainted'' ça ve dire ``souillé''. Qu'est-ce que tu veux dire 52 %exactement: piloté, modifié ....? 53 tainted by a COACH 54 driver. This allows on the one hand to insure that all the tools will 50 \xcoach generated by a plugin into the GNU C compiler (GCC). 51 This allows on the one hand to insure that all the tools will 55 52 accept the same C++ description and on the other hand to make possible 56 53 their chaining. The front-end tools read a \xcoach description and generate -
anr/section-4.2.tex
r25 r38 5 5 management, of the co-operation and the reporting of the progress. Each month the Task 6 6 Leaders have to send to the project leader short update report with the 7 main high-lights, major opportunities and treats according to the work-plan.7 main high-lights, major opportunities and problems according to the work-plan. 8 8 Therefore, each Partner has the responsibility to monthly inform the task Leaders of the 9 current development of the \ST ithas in charge.10 COACH will be organized in 8tasks whose interactions are presented in9 current development of the \ST he has in charge. 10 COACH will be organized in \mustbecompleted{FIXME: 8} tasks whose interactions are presented in 11 11 Figure~\ref{dependence-task}. 12 12 13 13 \item[Scientific and Technical Reports] 14 For every yearly and half period report, milestone or deliverable, a written progress 15 report has to be provided by the task leader to coordinator for integration in the 16 contractual reports. 14 For every yearly review, a written progress report for each deliverable has to be 15 provided by the task leader to the coordinator for integration in the contractual reports. 17 16 18 17 \item[Management of knowledge, Intellectual Property Right (IPR) and Results Exploitation] 19 The partners will have to respect to work under theNDA constraints.18 The partners will have to work under the eventual NDA constraints. 20 19 Prior Intellectual Property remains property of the concerned partners. 21 20 The exploitation of the results obtained in the project and by each partner involved in the consortium will … … 36 35 \end{itemize} 37 36 Following the requests and the information received by the partner's representatives and 38 their financial and legal department, a Consortium Agreement will be realizedand will37 their financial and legal department, a Consortium Agreement will be written and will 39 38 deal mainly with all aspects of the relationships between partners, including legal 40 39 aspects, property rights and further exploitation of the results. 41 40 Moreover, the management rules of the project will also be defined clearly in this major 42 41 document (decision level, reporting systems, red flag cases). A first draft of this 43 document will be introduced to each partner during the kick-off meeting.42 document will be submitted to each partner during the kick-off meeting. 44 43 45 44 \item[Project follow-ups] -
anr/section-4.4.tex
r36 r38 19 19 \begin{description} 20 20 \item[Milestone 1 ($T0+6$)] Specification of COACH inputs, of the \xcoach format and of 21 demonstatrors as a referen nce software.21 demonstatrors as a reference software. 22 22 \item[Milestone 2 ($T0+12$)] The first COACH release. At this step the demonstrators are 23 written in COACH. TheCOACH release allows to prototype and to generate the FPGA-SoC.23 written in the COACH input format. This COACH release allows to prototype and to generate the FPGA-SoC. 24 24 The main restrictions are: 25 25 1) only the COACH architectural template is supported, 26 2) HAS is not available (but prototyping with virtual coprocessor is available),27 3) Enhanced communication schem s are not available.26 2) HAS is not available (but prototyping with virtual coprocessors is available), 27 3) Enhanced communication schemes are not available. 28 28 \item[Milestone 3 ($T0+18$)] The second COACH release. At this step most of the COACH 29 29 features are availables. 30 30 The main restriction is that COACH can not yet generate FPGA-SoC for ALTERA and XILINX 31 architectural template .31 architectural templates. 32 32 The others restriction is that the HAS tools are not yet fully operational. 33 \item[Milestone 4 ($T0+24$)] The pre-r lease of the COACH project. The full design flow is33 \item[Milestone 4 ($T0+24$)] The pre-release of the COACH project. The full design flow is 34 34 supported. 35 35 The main restriction are: … … 41 41 This organisation allows to advance globally the project step by step mixing development 42 42 and demonstrator delivrables. 43 Sodemonstrator feed-back will arrive early and so the risk to point out incompatibility44 at the integration phas is is suppressed.43 Hence, demonstrator feed-back will arrive early and so the risk to point out incompatibility 44 at the integration phase is significantly reduced. 45 45 \par 46 46 The project has several critical issues: 47 47 \begin{description} 48 48 \item[\xcoachplus format (\novers{\specXcoachDoc}, \novers{\specXcoachToC})] 49 Because it bonds tightly all the HAS tools, it is a49 Because all the HAS tools rely on it, it is a 50 50 crucial task. There are no work-arround but as mentionned in 51 section~\ref{xcoach-problem} (page~\pageref{xcoach-problem}) we worked ont it since a52 51 section~\ref{xcoach-problem} (page~\pageref{xcoach-problem}) we have worked on it 52 for a year and are confident. 53 53 \item[\xcoachplus format (\novers{\specXcoachDoc}, 54 54 \novers{\specXcoachToSystemC}, \novers{\specXcoachToVhdl})] 55 It aims withthe generation of the coprocessors (hardware \& prototyping model),56 By centralizing the coprocessor generation s, it guarantees their operating55 Its aim is the generation of the coprocessors (hardware \& prototyping model), 56 By centralizing the coprocessor generation, it guarantees their operating 57 57 independently of the used HAS tools. 58 Our experience with UGH and GAUT give us confidence in the succes of this 59 task. 58 60 \item[prototyping of ALTERA \& XILINX architectural templates ({\csgAlteraSystemC}, 59 61 {\csgXilinxSystemC}] -
anr/task-1.tex
r36 r38 5 5 % 6 6 \begin{objectif} 7 This task reliesto the main features for embedded system.8 Its objective consists of the specification of designer input, of the7 This task deals with to the main features for embedded system. 8 Its objective consists of the specification of the designer input, of the 9 9 definition of the hardware architectural templates and of all the features 10 10 that the HAS tools share. … … 13 13 \begin{workpackage}{D1} 14 14 \item This \ST specifies COACH for the system designer. At this 15 level COACH is a black box. The deliverables are documents allowing the system15 level COACH is a black box. The deliverables are documents allowing the system 16 16 designers to use COACH: feeding it (inputs), how to use it (design flow), 17 17 what COACH can generate (definition of the generic architecture of the … … 19 19 \begin{livrable} 20 20 \item{V1}{0}{6}{d}{\Supmc}{COACH user manual} \setMacroInAuxFile{specGenManualI} 21 It is the first milestone of the COACH user manual that will allow demonstrator21 It is the first milestone of the COACH user manual that will allow the demonstrator 22 22 \STs to start. 23 23 It contains the general description of the framework, the design flow and the … … 30 30 of the demonstrator \STs. 31 31 \item{V1}{0}{6}{d}{\Stima}{CSG user manual} \setMacroInAuxFile{specCsgManualI} 32 It is the first milestone of the CSG user manual that will allow demonstrator33 34 It describes how the task graph is described, the communication schems and its32 It is the first milestone of the CSG (COACH System Generator) user manual that 33 will allow the demonstrator \STs to start. 34 It specifies how the task graph is described, the communication schemes and its 35 35 associated API (Application Programming Interface). 36 The base is the SRL library and MWMR communication component defined by the SocLib36 The base is the SRL library and the MWMR communication component defined by the SocLib 37 37 ANR project. 38 Nevertheless, these basic schem s will be enhanced to allow more efficent38 Nevertheless, these basic schemes will be enhanced to allow more efficent 39 39 synthesis. 40 40 \item{VF}{6}{12}{d}{\Stima}{CSG user manual} \setMacroInAuxFile{specCsgManual} … … 42 42 of the demonstrator \STs. 43 43 \item{V1}{0}{6}{d}{\Subs}{HAS user manual} \setMacroInAuxFile{specHasManualI} 44 It is the first milestone of the HAS user manual that will allow demonstrator45 46 It describes how tasks of task graphmust be written (C/C++ subset) and how47 communication schem s defined in the {\specCsgManual} delivrable must be described for44 It is the first milestone of the HAS (Hardware Accelerator Synthesis) user manual that 45 will allow the demonstrator \STs to start. 46 It specifies how tasks must be written (C/C++ subset) and how 47 communication schemes defined in the {\specCsgManual} delivrable must be described for 48 48 coprocessor synthesis. 49 49 \item{VF}{6}{12}{d}{\Subs}{HAS user manual} \setMacroInAuxFile{specHasManual} … … 67 67 Second release of XML specification of the \xcoach format 68 68 taking into account the corrections and modifications that the 69 developers of HAS tools rised.69 developers of HAS tools suggested. 70 70 \item{VF}{12}{18}{d+x}{\Slip}{specification of \xcoach format} 71 71 \setMacroInAuxFile{specXcoachDoc} 72 72 Last release of XML specification of the \xcoach format enhanced with 73 the expression of loop potential .73 the expression of loop potential parallelism. 74 74 \item{V1}{6}{12}{x}{\Subs}{C++ to/from \xcoach format} 75 75 \setMacroInAuxFile{specXcoachToCI} … … 82 82 \item{VF}{12}{18}{x}{\Subs}{C++ to/from \xcoach format} 83 83 \setMacroInAuxFile{specXcoachToC} 84 The same softwares as the former (\specXcoachToCI) but for \xcoach formatdefined85 in the {\specXcoachDoc} deliverable and HAS input defined in the {\specHasManual}84 The same softwares as the former (\specXcoachToCI) but for the \xcoach format as defined 85 in the {\specXcoachDoc} deliverable and HAS input as defined in the {\specHasManual} 86 86 deliverable. 87 87 \item{V1}{12}{18}{x}{\Supmc}{\xcoachplus format to SystemC} … … 101 101 \end{livrable} 102 102 \item Backend HLS tools use a characterized macro-cell library to build the 103 micro-architecture of a coprocessor. The characterisation of a cell d épends103 micro-architecture of a coprocessor. The characterisation of a cell depends 104 104 on the target device. The role of this \ST is to define the macro-cells and 105 105 to provite a tool that characterizes them automatically by synthesizing them -
anr/task-2.tex
r36 r38 15 15 \item the configuration and the development of drivers of the operating systems, 16 16 \item the CSG software that generates the simulators for prototiping and the FPGA-SoC system, 17 \item the specification of enhanced communication schem s and their sofware and hardware implementation.17 \item the specification of enhanced communication schemes and their sofware and hardware implementation. 18 18 \end{itemize} 19 19 This task being based on the SocLib platform, a first release will be delivrable at $T0+12$ 20 20 to allow the demonstrators to start working. 21 This release will include the standard communication schem s (base on SocLib MWMR component)21 This release will include the standard communication schemes (base on SocLib MWMR component) 22 22 and support the COACH architectural template for prototyping and hardware generation. 23 23 \end{objectif} … … 72 72 \item This \ST consists of the configuration of the SocLib MUTEK and DNA operating 73 73 system and the development of drivers for the hardware architectural templates 74 and enhanced communication schem s defined in \novers{\specCsgManual} delivrable.74 and enhanced communication schemes defined in \novers{\specCsgManual} delivrable. 75 75 For the ALTERA and XILINX architectural template, the OSs must also be ported on 76 76 the NIOS2 and MICROBLAZE processors. … … 93 93 % moved in task 1 94 94 %\item This \ST relies to definition and implementation of the enhanced communication 95 % schem s usable in the definition of communicante task graph.95 % schemes usable in the definition of communicante task graph. 96 96 % \begin{livrable} 97 97 % \item{}{0}{6}{d}{\Stima}{CSG user manual} A document that describes the CSG task 98 % graph inputs (task graph, task description, communication schem s).98 % graph inputs (task graph, task description, communication schemes). 99 99 % \end{livrable} 100 100 %\item This \ST relies to implementation of the MWMR component for the Xilinx and Altera -
anr/task-5.tex
r36 r38 11 11 \item Helping the HPC designer to find a good partition of the initial application 12 12 (figure~\ref{archi-hpc}. 13 \item Providing communication schem s between the software part runing on the PC and the13 \item Providing communication schemes between the software part runing on the PC and the 14 14 FPGA-SoC. 15 \item Implementing the communication schem at all levels: partition help, software15 \item Implementing the communication scheme at all levels: partition help, software 16 16 implementation both on the PC and in the operating system of the FPGA-SoC, hardware. 17 17 \item FPGA reconfiguration. \mustbecompleted{FIXME:TIMA} … … 20 20 transfers. The reasons of this choices are that both ALTERA and Xilinx provide PCI/X IP for 21 21 their FPGA and that GPU HPC softwares use also it. 22 This will allow us at least to be inspired by GPU communication schem s and may be to reuse22 This will allow us at least to be inspired by GPU communication schemes and may be to reuse 23 23 parts of the GPU softwares. 24 24 \end{objectif} 25 25 % 26 26 \begin{workpackage}{D5} 27 \item This \ST is the definition of the communication schem s as a software API27 \item This \ST is the definition of the communication schemes as a software API 28 28 (Application Programing Interface) between the application part running on the PC and 29 29 the application part running on the FPGA-SoC.
Note: See TracChangeset
for help on using the changeset viewer.