[21] | 1 | \begin{taskinfo} |
---|
| 2 | \let\UPMC\leader |
---|
| 3 | \let\ALL\enable |
---|
| 4 | \end{taskinfo} |
---|
| 5 | % |
---|
| 6 | \begin{objectif} |
---|
[107] | 7 | This task deals with the main features of digital systems. |
---|
[39] | 8 | Its objectives are the specification of the designer input, the |
---|
[107] | 9 | definition of the hardware architectural templates and of all the features |
---|
| 10 | that the HAS tools will share. |
---|
[21] | 11 | \end{objectif} |
---|
| 12 | % |
---|
[52] | 13 | \begin{workpackage} |
---|
[123] | 14 | \subtask This \ST specifies the COACH environment for the system designer. At this |
---|
[107] | 15 | level the COACH framework is a black box. The deliverables are documents |
---|
| 16 | specifying: how to feed COACH (the inputs), how to use COACH (the design flow), |
---|
| 17 | what is generated (the outputs). |
---|
| 18 | %(definition of the generic architecture of the |
---|
| 19 | %MPSoC and its 3 targets hardware mapping). |
---|
[21] | 20 | \begin{livrable} |
---|
[107] | 21 | \itemV{0}{6}{d}{\Supmc}{COACH specification} \setMacroInAuxFile{specGenManualI} |
---|
| 22 | The first version of the COACH specification. |
---|
| 23 | This document contains the general description of the framework, the design flow and the |
---|
[36] | 24 | description of the architectural templates. |
---|
[107] | 25 | It refers to the HAS specification (delivrable {\specHasManual}) and |
---|
| 26 | to the CSG specifcation (delivrable \specCsgManual) for the COACH input |
---|
[36] | 27 | descriptions. |
---|
[107] | 28 | \itemL{6}{12}{d}{\Supmc}{COACH specification}{1:0:0} \setMacroInAuxFile{specGenManual} |
---|
[112] | 29 | The final version of the {\specGenManualI} delivrable updated with the \mustbecompleted{FIXME:: first ?} |
---|
[113] | 30 | feed-backs of the demonstrator \STs. |
---|
[107] | 31 | \itemV{0}{6}{d}{\Stima}{CSG specification} \setMacroInAuxFile{specCsgManualI} |
---|
| 32 | The first version of the CSG (COACH System Generator) specification. |
---|
[38] | 33 | It specifies how the task graph is described, the communication schemes and its |
---|
[36] | 34 | associated API (Application Programming Interface). |
---|
[38] | 35 | The base is the SRL library and the MWMR communication component defined by the SocLib |
---|
[36] | 36 | ANR project. |
---|
[56] | 37 | Nevertheless, these basic schemes will be enhanced to allow more efficient |
---|
[36] | 38 | synthesis. |
---|
[107] | 39 | \itemL{6}{12}{d}{\Stima}{CSG specification}{1:0:0} \setMacroInAuxFile{specCsgManual} |
---|
[112] | 40 | The final version of the {\specGenManualI} delivrable updated with the \mustbecompleted{FIXME:: first ?} |
---|
[113] | 41 | feed-backs of the demonstrator \STs. |
---|
[107] | 42 | \itemV{0}{6}{d}{\Subs}{HAS specification} \setMacroInAuxFile{specHasManualI} |
---|
| 43 | The first version of the HAS (Hardware Accelerator Synthesis) specification. |
---|
[38] | 44 | It specifies how tasks must be written (C/C++ subset) and how |
---|
| 45 | communication schemes defined in the {\specCsgManual} delivrable must be described for |
---|
[36] | 46 | coprocessor synthesis. |
---|
[107] | 47 | \itemL{6}{12}{d}{\Subs}{HAS specification}{1:0:0} \setMacroInAuxFile{specHasManual} |
---|
[112] | 48 | The final version of the {\specGenManualI} delivrable updated with the \mustbecompleted{FIXME:: first ?} |
---|
[113] | 49 | feed-backs of the demonstrator \STs. |
---|
[21] | 50 | \end{livrable} |
---|
[123] | 51 | \subtask This \ST specifies the software COACH structure. The deliverable is a |
---|
[21] | 52 | document listing all the COACH software components and how they cooperate. |
---|
| 53 | \begin{livrable} |
---|
[126] | 54 | \CoutHorsD{0}{12}{\Sthales}{user specification}{1:0:0} |
---|
[52] | 55 | \itemL{0}{6}{d}{\Supmc}{decription of \ganttlf software architecture}{1:0:0} |
---|
[21] | 56 | It contains the software list and the data flow among them. |
---|
| 57 | \end{livrable} |
---|
[123] | 58 | \subtask This \ST specifies the \xcoach format. |
---|
[21] | 59 | \begin{livrable} |
---|
[115] | 60 | \itemV{0}{6}{d+x}{\Slip}{\xcoach format specification} |
---|
[36] | 61 | \setMacroInAuxFile{specXcoachDocI} |
---|
| 62 | First release of the XML specification of the \xcoach format (DTD) |
---|
[21] | 63 | and its associated documentation allowing to start HLS tools development. |
---|
[115] | 64 | \itemV{6}{12}{d+x}{\Slip}{\xcoach format specification} |
---|
[36] | 65 | \setMacroInAuxFile{specXcoachDocII} |
---|
[21] | 66 | Second release of XML specification of the \xcoach format |
---|
| 67 | taking into account the corrections and modifications that the |
---|
[38] | 68 | developers of HAS tools suggested. |
---|
[152] | 69 | \itemL{12}{18}{d+x}{\Slip}{\xcoach format specification}{9.0:4.5:0} |
---|
[36] | 70 | \setMacroInAuxFile{specXcoachDoc} |
---|
| 71 | Last release of XML specification of the \xcoach format enhanced with |
---|
[38] | 72 | the expression of loop potential parallelism. |
---|
[115] | 73 | \itemV{6}{12}{x}{\Subs}{C/C++ $\leftrightarrow$ \xcoach format (1)} |
---|
[47] | 74 | \setMacroInAuxFile{specXcoachToCAI} |
---|
[107] | 75 | A GCC plugin C2X that generates a \xcoach description |
---|
| 76 | (defined in {\specXcoachDocI} deliverable) from a C/C++ task description |
---|
[47] | 77 | (defined in {\specHasManual} deliverable). |
---|
[115] | 78 | \itemL{12}{18}{x}{\Subs}{C++ $\leftrightarrow$ \xcoach format (1)}{0:0:0} |
---|
[73] | 79 | \setMacroInAuxFile{specXcoachToCA} |
---|
[47] | 80 | The same software as the former (\specXcoachToCAI) but for \xcoach format defined |
---|
| 81 | in the {\specXcoachDoc} deliverable and HAS input defined in the {\specHasManual} |
---|
| 82 | deliverable. |
---|
[113] | 83 | \itemV{7}{12}{x}{\Subs}{C/C++ $\leftrightarrow$ \xcoach format (2)} |
---|
[47] | 84 | \setMacroInAuxFile{specXcoachToCBI} |
---|
[107] | 85 | This second tool X2C regenerates a C description from a \xcoach |
---|
[21] | 86 | description. |
---|
[113] | 87 | \itemL{12}{18}{x}{\Subs}{C++ $\leftrightarrow$ \xcoach format (2)}{0:0:0} |
---|
[47] | 88 | \setMacroInAuxFile{specXcoachToCB} |
---|
| 89 | The same software as the former (\specXcoachToCBI) but for the \xcoach format as defined |
---|
[38] | 90 | in the {\specXcoachDoc} deliverable and HAS input as defined in the {\specHasManual} |
---|
[36] | 91 | deliverable. |
---|
[52] | 92 | \itemV{12}{18}{x}{\Supmc}{\xcoachplus format to SystemC} |
---|
[36] | 93 | \setMacroInAuxFile{specXcoachToSystemCI} |
---|
[107] | 94 | The first release of the software tool X2SC that translates \xcoachplus description to CABA |
---|
[36] | 95 | and TLM-DT SystemC module. |
---|
[52] | 96 | \itemL{18}{24}{x}{\Supmc}{\xcoachplus format to SystemC}{0:2:0} |
---|
[36] | 97 | \setMacroInAuxFile{specXcoachToSystemC} |
---|
| 98 | Maintenance work of the former software (\specXcoachToSystemCI). |
---|
[52] | 99 | \itemV{12}{18}{x}{\Subs}{\xcoachplus format to VHDL} |
---|
[36] | 100 | \setMacroInAuxFile{specXcoachToVhdlI} |
---|
[107] | 101 | The first release of the softwaretool X2VHDL that translates \xcoachplus description to |
---|
[21] | 102 | synthesizable VHDL description. |
---|
[52] | 103 | \itemL{18}{24}{x}{\Subs}{\xcoachplus format to VHDL}{0:0:0} |
---|
[36] | 104 | \setMacroInAuxFile{specXcoachToVhdl} |
---|
[113] | 105 | Maintenance work of the former software (\specXcoachToVhdlI) and integration |
---|
| 106 | of enhancements proposed in \novers{\specXilinxOptimization} deliverable. |
---|
| 107 | \itemL{18}{21}{d}{\Sxilinx}{\xilinx RTL optimisation (1)}{0:3:0} |
---|
| 108 | \setMacroInAuxFile{specXilinxOptimization} |
---|
| 109 | This deliverable consists in optimizing the VHDL generated from \xcoachplus format |
---|
| 110 | (deliverable \novers{\specXcoachToVhdl}) to the \xilinx RTL synthesis tools. |
---|
| 111 | \ubs will provide several examples of VHDL source files generated from \xcoachplus, |
---|
| 112 | with explanations about generation process of main data structures used in VHDL sources, |
---|
| 113 | \xilinx will provide back a documentation listing that proposes VHDL generation enhancements. |
---|
[21] | 114 | \end{livrable} |
---|
[73] | 115 | |
---|
[123] | 116 | \subtask This \ST aims to define a tool in order to pilot the GCC/xcoach compiler. |
---|
[73] | 117 | \mustbecompleted{FIXME: UBS :: Cette section et ses livrables doivent etre retouches} |
---|
| 118 | \begin{livrable} |
---|
| 119 | \itemL{0}{3}{d}{\Subs}{GCC/xcoach driver definition}{0:0:0} |
---|
| 120 | This document specifies the way the GCC driver tool drives GCC. |
---|
| 121 | \itemL{3}{9}{x}{\Subs}{GCC/xcoach driver generator}{0:0:0} |
---|
| 122 | Release of the GCC driver tool. |
---|
| 123 | \end{livrable} |
---|
| 124 | |
---|
[123] | 125 | \subtask Backend HLS tools use a characterized macro-cell library to build the |
---|
[38] | 126 | micro-architecture of a coprocessor. The characterisation of a cell depends |
---|
[21] | 127 | on the target device. The role of this \ST is to define the macro-cells and |
---|
| 128 | to provite a tool that characterizes them automatically by synthesizing them |
---|
| 129 | and by extracting their delays. This is done by using RTL synthesis. |
---|
| 130 | \begin{livrable} |
---|
[52] | 131 | \itemL{0}{6}{d}{\Subs}{macro-cell definition}{0:0:0} |
---|
[123] | 132 | \setMacroInAuxFile{specMacroCell} |
---|
[107] | 133 | The document defines the macro cell and the file format describing them. |
---|
[52] | 134 | \itemL{6}{12}{x}{\Subs}{macro-cell library generator}{0:0:0} |
---|
[107] | 135 | A software tool that generates automatically the characterized macro-cell library |
---|
[21] | 136 | for a FPGA device. |
---|
| 137 | \end{livrable} |
---|
| 138 | \end{workpackage} |
---|