| 1 | \begin{taskinfo} |
|---|
| 2 | \let\UBS\leader |
|---|
| 3 | \let\UPMC\enable |
|---|
| 4 | \let\TIMA\enable |
|---|
| 5 | \let\XILINX\enable |
|---|
| 6 | \end{taskinfo} |
|---|
| 7 | % |
|---|
| 8 | \begin{objectif} |
|---|
| 9 | The objectives of this task are to provide the two HAS back-ends of the COACH project and |
|---|
| 10 | a tool that adapt the coprocessor frequency to the FPGA-SoC frequency as required \mustbecompleted {FIXME :: or defined} |
|---|
| 11 | by the processors and the system BUS. |
|---|
| 12 | %pourquoi en majuscule? |
|---|
| 13 | \\ |
|---|
| 14 | The HAS back-ends as shown in figure~\ref{archi-hls} reads an \xcoach description and provides an |
|---|
| 15 | \xcoachplus description, i.e. an \xcoach description annotated with hardware information such as |
|---|
| 16 | variables binding to registers, operations bindings to cells/fonctional units, operation scheduling... |
|---|
| 17 | The \xcoach format being generated by the \novers{\specXcoachToCA} deliverable and the \xcoachplus being treated by |
|---|
| 18 | the \novers{\specXcoachToSystemC} and the \novers{\specXcoachToVhdl} deliverables, |
|---|
| 19 | this task strongly depends on task~1. |
|---|
| 20 | \par |
|---|
| 21 | For the two HAS front-end, this task is based on the already existing HLS tools GAUT and |
|---|
| 22 | UGH. These tools are complementary and not in competition because they cover respectively |
|---|
| 23 | data and control dominated designs. |
|---|
| 24 | The organization of the task is firstly to integrate quickly the existing HLS to the COACH |
|---|
| 25 | framework. Secondly these tools will be improved to allows to treat data dominated application |
|---|
| 26 | with a few control for GAUT and control dominated application with a few data processing |
|---|
| 27 | for UGH. This will enlarge the domain the HLS can cover which is a strong limitation of the |
|---|
| 28 | tools currently avilable. \mustbecompleted {FIXME :: ajouter ref LIVRE, Design and Test, CATRENE Roadmap} |
|---|
| 29 | \end{objectif} |
|---|
| 30 | % |
|---|
| 31 | %FIXMA == {il faudrait fusionner les taches ST5-1 et ST5-2, non ???} |
|---|
| 32 | \begin{workpackage} |
|---|
| 33 | \item The goal of this \ST is to integrate the UGH HLS tool to the COACH framework. It |
|---|
| 34 | consists of suppressing the C compiler and the SystemC and VHDL drivers and replacing |
|---|
| 35 | them by \xcoach and \xcoachplus drivers i.e. C2X, X2SC and X2VHDL. |
|---|
| 36 | \begin{livrable} |
|---|
| 37 | \itemL{6}{12}{x}{\Stima}{UGH integration}{12:0:0} |
|---|
| 38 | Release of the UGH software that reads \xcoach format. |
|---|
| 39 | \itemV{12}{18}{x}{\Supmc}{UGH integration} |
|---|
| 40 | Release of the UGH software that writes \xcoachplus format. |
|---|
| 41 | \itemL{18}{33}{x}{\Supmc}{UGH integration}{0:2:4.0} |
|---|
| 42 | Maintenance work of the UGH software. |
|---|
| 43 | \end{livrable} |
|---|
| 44 | \item The goal of this \ST is to integrate the GAUT HLS tool to the COACH framework. It |
|---|
| 45 | consists of suppressing the C compiler and the SystemC and VHDL drivers and replacing |
|---|
| 46 | them by \xcoach and \xcoachplus drivers. |
|---|
| 47 | \begin{livrable} |
|---|
| 48 | \itemV{6}{12}{x}{\Subs}{GAUT integration} |
|---|
| 49 | Release of the GAUT software that is able to read \xcoach format. |
|---|
| 50 | \itemV{12}{18}{x}{\Subs}{GAUT integration} |
|---|
| 51 | Release of the GAUT software that is able to read \xcoach format and to write \xcoachplus format. |
|---|
| 52 | \itemL{18}{33}{x}{\Subs}{GAUT integration}{0:0:0} |
|---|
| 53 | Maintenance work of the GAUT software. |
|---|
| 54 | \end{livrable} |
|---|
| 55 | \item The goal of this \ST is to improve the UGH and GAUT HLS tools. |
|---|
| 56 | UGH and GAUT experimentations have shown respectively usefull enhancements. |
|---|
| 57 | \begin{livrable} |
|---|
| 58 | \itemL{18}{24}{x}{\Stima}{UGH enhancement 1}{0:9:0} |
|---|
| 59 | Release of the UGH software with support for treating automatically data dominated sections |
|---|
| 60 | included into a control dominated application. |
|---|
| 61 | \itemL{21}{27}{x}{\Stima}{UGH enhancement 2}{0:3:6} |
|---|
| 62 | Release of the UGH software able to generate a micro-architecture without the |
|---|
| 63 | variable binding currently done by the designer. |
|---|
| 64 | \itemL{6}{18}{x}{\Subs}{GAUT enhancement 1}{0:0:0} |
|---|
| 65 | Release of the GAUT software that supports the control and data flow formal model. |
|---|
| 66 | \mustbecompleted{FIXME:USB ca ne va pas avec l'intro de la tache, UGH n'a |
|---|
| 67 | plus aucune utilite si ceci reste} |
|---|
| 68 | \itemL{18}{30}{x}{\Subs}{GAUT enhancement 2}{0:0:0} |
|---|
| 69 | Release of the GAUT software that supports the control and data flow formal model |
|---|
| 70 | and also supports new constraints and objectives defined in |
|---|
| 71 | \mustbecompleted{FIXME:USB utilise une macro svp: \ST1-1} |
|---|
| 72 | \mustbecompleted{FIXME:UBS: quel delivrable ??}. |
|---|
| 73 | \itemV{6}{18}{d}{\Subs}{Design Space Exploration}{0:0:0} |
|---|
| 74 | \mustbecompleted{FIXME:UBS GAUT enhancement 3 serait peut-etre meilleur} |
|---|
| 75 | Specification of a Design Space Exploration framework for the HAS Back-end: |
|---|
| 76 | The high level specification tools, such as GAUT, have to be able to use synthesis feed-back |
|---|
| 77 | informations in order to explore the design space and to generate optimized architectures. |
|---|
| 78 | \itemL{18}{30}{x}{\Subs}{Design Space Exploration}{0:0:0} |
|---|
| 79 | Release of the GAUT software that supports the features defined in \ST ????. |
|---|
| 80 | \end{livrable} |
|---|
| 81 | \item In FPGA-SoC, the frequency is given by the processor(s) and the system BUS. The coprocessors |
|---|
| 82 | generated by HLS synthesis must respect this frequency. However, the HLS tools can not |
|---|
| 83 | guarantee that the micro-architectures they generate accurately respect this |
|---|
| 84 | frequency. This is especially the case when the target is a FPGA device, because the |
|---|
| 85 | delays are really known only after the RTL synthesis and that estimated delays used |
|---|
| 86 | by the HLS are very inaccurate. The goal of this \ST is to provide a tool that adapts |
|---|
| 87 | the coprocessors frequency to the FPGA-SoC frequency after the coprocessor RTL |
|---|
| 88 | synthesis. |
|---|
| 89 | \begin{livrable} |
|---|
| 90 | \itemV{0}{12}{d}{\Supmc}{frequency calibration} |
|---|
| 91 | A document describing the set up of the coprocessor frequency calibration. |
|---|
| 92 | \itemV{12}{24}{x}{\Supmc}{frequency calibration} |
|---|
| 93 | \setMacroInAuxFile{freqCalibrationVhdl} |
|---|
| 94 | A VHDL description of hardware added to the coprocessor to enable the calibration. |
|---|
| 95 | \itemL{24}{33}{x}{\Supmc}{frequency calibration}{2:.5:3.5} |
|---|
| 96 | The frequency calibration software consists of a driver in the FPGA-SoC operating |
|---|
| 97 | system and of a control software on a PC. \mustbecompleted {FIXME :: Pas clair pour le HPC. Comprends pas} |
|---|
| 98 | \itemL{24}{27}{d}{\Sxilinx}{optimisation for \ganttlf \xilinx RTL tools (5)}{0:0:1} |
|---|
| 99 | This deliverable consists in optimizing the VHDL description provided in |
|---|
| 100 | \novers{\freqCalibrationVhdl}. |
|---|
| 101 | \upmc will provide the VHDL description, \xilinx will provide back a documentation |
|---|
| 102 | listing that proposes VHDL generation enhancements. |
|---|
| 103 | \end{livrable} |
|---|
| 104 | \end{workpackage} |
|---|