| 1 | \begin{taskinfo} |
|---|
| 2 | \let\UBS\leader |
|---|
| 3 | \let\UPMC\enable |
|---|
| 4 | \let\TIMA\enable |
|---|
| 5 | \end{taskinfo} |
|---|
| 6 | % |
|---|
| 7 | \begin{objectif} |
|---|
| 8 | The objectives of this task are to provide the two HAS back-ends of the COACH project and |
|---|
| 9 | a tool that adapt the coprocessor frequency to the FPGA-SoC frequency as given |
|---|
| 10 | by the processors and the BUS. |
|---|
| 11 | %pourquoi en majuscule? |
|---|
| 12 | \\ |
|---|
| 13 | The HAS back-ends as shown in figure~\ref{archi-hls} reads \xcoach data and provides |
|---|
| 14 | \xcoachplus data, i.e. \xcoach data annotated with hardware information such as |
|---|
| 15 | variables bindings to registers, operations bindings to cells and a schedule. The \xcoach format |
|---|
| 16 | being generated by \novers{\specXcoachToCA} deliverable and \xcoachplus being treated by |
|---|
| 17 | \novers{\specXcoachToSystemC} and \novers{\specXcoachToVhdl} deliverables, |
|---|
| 18 | this task is very dependent on task~1. |
|---|
| 19 | \par |
|---|
| 20 | For the two HAS front-end, this task is based on the already existing HLS tools GAUT and |
|---|
| 21 | UGH. These tools are complementary and not in competition because they cover respectively |
|---|
| 22 | data and control dominated designs. |
|---|
| 23 | The organization of the task is firstly to integrate quickly the existing HLS to the COACH |
|---|
| 24 | framework. Secondly these tools will be improved to allows to treat data dominated application |
|---|
| 25 | with a few control for GAUT and control dominated application with a few data processing |
|---|
| 26 | for UGH. This will enlarge the domain the HLS can cover. |
|---|
| 27 | \end{objectif} |
|---|
| 28 | % |
|---|
| 29 | \begin{workpackage} |
|---|
| 30 | \item The goal of this \ST is to integrate the UGH HLS tool to the COACH framework. It |
|---|
| 31 | consists of suppressing the C compiler and the SystemC and VHDL drivers and replacing |
|---|
| 32 | them by \xcoach and \xcoachplus drivers. |
|---|
| 33 | \begin{livrable} |
|---|
| 34 | \itemL{6}{12}{x}{\Stima}{UGH integration}{12:0:0} |
|---|
| 35 | The UGH software that is able to read \xcoach format. |
|---|
| 36 | \itemV{12}{18}{x}{\Supmc}{UGH integration} |
|---|
| 37 | The UGH software that is able to read \xcoach format and to write \xcoachplus format. |
|---|
| 38 | \itemL{18}{33}{x}{\Supmc}{UGH integration}{0:2:4.0} |
|---|
| 39 | Maintenance work of the UGH software. |
|---|
| 40 | \end{livrable} |
|---|
| 41 | \item The goal of this \ST is to integrate the GAUT HLS tool to the COACH framework. It |
|---|
| 42 | consists of suppressing the C commpiler and the SystemC and VHDL drivers and replacing |
|---|
| 43 | them by \xcoach and \xcoachplus drivers. |
|---|
| 44 | \begin{livrable} |
|---|
| 45 | \itemV{6}{12}{x}{\Subs}{GAUT integration} |
|---|
| 46 | The GAUT software that is able to read \xcoach format. |
|---|
| 47 | \itemV{12}{18}{x}{\Subs}{GAUT integration} |
|---|
| 48 | The GAUT software that is able to read \xcoach format and to write \xcoachplus format. |
|---|
| 49 | \itemL{18}{33}{x}{\Subs}{GAUT integration}{0:0:0} |
|---|
| 50 | Maintenance work of the GAUT software. |
|---|
| 51 | \end{livrable} |
|---|
| 52 | \item The goal of this \ST is to improve the UGH and GAUT HLS tools. |
|---|
| 53 | UGH and GAUT experimentations have shown respectively 2 and \mustbecompleted{FIXME:2} |
|---|
| 54 | usefull enhancements |
|---|
| 55 | \begin{livrable} |
|---|
| 56 | \itemL{18}{24}{x}{\Stima}{UGH enhancement 1}{0:9:0} |
|---|
| 57 | The UGH software whith support for treating automatically data dominated sections |
|---|
| 58 | included into a control dominated application. |
|---|
| 59 | \itemL{21}{27}{x}{\Stima}{UGH enhancement 2}{0:3:6} |
|---|
| 60 | The UGH software that is able to generate a micro-architecture without the |
|---|
| 61 | variable binding currently done by the designer. |
|---|
| 62 | \itemL{6}{18}{x}{\Subs}{GAUT enhancement 1}{0:0:0} |
|---|
| 63 | Release of the GAUT software that supports the control and data flow formal model. |
|---|
| 64 | \mustbecompleted{FIXME:USB ca ne va pas avec l'intro de la tache, UGH n'a |
|---|
| 65 | plus aucune utilite si ceci reste} |
|---|
| 66 | \itemL{18}{30}{x}{\Subs}{GAUT enhancement 2}{0:0:0} |
|---|
| 67 | Release of the GAUT software that supports the control and data flow formal model |
|---|
| 68 | and also supports new constraints and objectives defined in |
|---|
| 69 | \mustbecompleted{FIXME:USB utilise une macro svp: \ST1-1} |
|---|
| 70 | \mustbecompleted{FIXME:UBS: quel delivrable ??}. |
|---|
| 71 | % FIXME:USB redondant avec le delivrable "GAUT integration" ou alors |
|---|
| 72 | % c'est en enhancement et il faut le decrire. |
|---|
| 73 | % \item{VF}{30}{36}{x}{\Subs}{GAUT enhancement 3} Final release of the GAUT software |
|---|
| 74 | \end{livrable} |
|---|
| 75 | \item In FPGA-SoC, the frequency is given by the processors and the BUS. The coprocessors |
|---|
| 76 | generated by HLS synthesis must respect this frequency. However, the HLS tools can not |
|---|
| 77 | guarantee that the micro-architectures they generate accurately respect this |
|---|
| 78 | frequency. This is especially the case when the target is a FPGA device, because the |
|---|
| 79 | delays are really known only after the RTL synthesis and that estimated delays used |
|---|
| 80 | by the HLS are very imprecize. The goal of this \ST is to provide a tool to adapt |
|---|
| 81 | the coprocessors frequency to the FPGA-SoC frequency after the coprocessor RTL |
|---|
| 82 | synthesis. |
|---|
| 83 | \begin{livrable} |
|---|
| 84 | \itemV{0}{12}{d}{\Supmc}{frequency calibration} |
|---|
| 85 | A document describing the set up of the coprocessor frequency calibration. |
|---|
| 86 | \itemV{12}{24}{x}{\Supmc}{frequency calibration} |
|---|
| 87 | A VHDL description of hardware added to the coprocessor to enable the calibration. |
|---|
| 88 | \itemL{24}{33}{x}{\Supmc}{frequency calibration}{2:.5:3.5} |
|---|
| 89 | The frequency calibration software consists of a driver in the FPGA-SoC operating |
|---|
| 90 | system and of a control software on a PC. |
|---|
| 91 | \end{livrable} |
|---|
| 92 | \end{workpackage} |
|---|