source: anr/task-3.tex @ 126

Last change on this file since 126 was 126, checked in by coach, 14 years ago

OM modification pendant la réunion du 10 février

File size: 4.6 KB
RevLine 
[26]1\begin{taskinfo}
2\let\LIP\leader
3\let\IRISA\enable
[126]4\let\UBS\enable
5\let\UPMC\enable
6\let\TIMA\enable
[26]7\end{taskinfo}
8%
9\begin{objectif}
[41]10The objective of this task is to convert the input specification of
11an hardware accelerator, which must be written in a familiar language
12(C/C++) with as few constraints as possible, into a form suitable for
[109]13the HLS tools (i.e. HAS back-end tools of the COACH project). If the
14target is an ASIP, the frontend has to extract
[41]15patterns from the source code and convert them into the definition
16of an extensible processor. If the target is a process network, the
17front end has to distribute the workload and the data sets as fairly
18as possible, identify communication channels, and output an \xcoach
19description.
[26]20\end{objectif}
21%
[52]22\begin{workpackage}
[123]23  \subtask This sub-task aims at providing compiler support for custom instructions
[85]24  within the HAS front-end. It will take as input the COACH intermediate
[86]25  representation, and will output an annotated COACH IR containing the custom
26  instructions definitions along with their occurrence in the application.
[26]27    \begin{livrable}
[114]28      \itemV{0}{18}{X}{\Sirisa}{ASIP compilation flow}
[85]29        In this first version of the software, the computations patterns corresponding to
[121]30        custom instructions are specified by the user, and then automatically extracted (when
[86]31        beneficial) from the application intermediate representation.
[85]32        %\mustbecompleted{FIXME .....}
[121]33      \itemL{18}{24}{X}{\Sirisa}{ASIP compilation flow}{6:9:0}
[86]34        In this second version, the software will also be able to automatically identify
[85]35        interesting pattern candidates in the application code, and use them as custom
36        instructions. 
[26]37    \end{livrable}
[85]38 
[123]39 \subtask In this sub-task, we provide micro-architectural template models for the two target
[121]40 processor architectures (NIOS-II and MIPS) supported within the COACH-ASIP design flow.
[85]41 For each processor, we provide a simulation model (System-C) and a synthesizable model (VHDL)
42 of the architecture, along with its architectural extensions
[26]43    \begin{livrable}
[114]44      \itemV{0}{12}{X}{\Sirisa}{SystemC for extensible MIPS }
[121]45      { A SystemC simulation model for a simple extensible MIPS architectural template }
46      \itemL{12}{20}{X}{\Sirisa}{SystemC for extensible MIPS}{2:3:0}
47      {A SystemC simulation model for an extensible MIPS with a tight architectural integration of
[93]48      its instruction set extensions}
[121]49      \itemL{0}{12}{X}{\Sirisa}{SystemC for NIOS processor}{2:0:0}
[95]50          { A SystemC simulation model for an extensible NIOS processor template, the VHDL model being
51          already available from Altera}
[114]52      \itemV{12}{18}{H}{\Sirisa}{VHDL for an extensible MIPS}
[121]53      {A synthesizable VHDL model for a simple extensible MIPS architectural template}
54      \itemL{18}{24}{H}{\Sirisa}{VHDL for an extensible MIPS}{9:12:0}
55      {A synthesizable VHDL model for an extensible MIPS with a tight architectural integration of
[93]56      its instruction set extensions}
[121]57      \itemL{24}{36}{D}{\Sirisa}{Evaluation report }{0:0:2}
58      {An evaluation report with quantitative analysis of the performance/area trade-off induced by
[93]59      the different approaches}
[26]60    \end{livrable}
[85]61
[123]62  \subtask Extraction of parallelism in polyhedral loops and conversion into a process network.
[85]63
[41]64   \begin{livrable}
[52]65    \itemV{0}{6}{d}{\Slip}{Method, Preliminary Definition}
[87]66      Description of the process network construction method for programs with
[110]67      polyhedral loops. User manual.
[112]68      \mustbecompleted{ FIXME :: User manual ou Specification. Si user manual alors le mettre en dissemination}
[87]69    \itemL{30}{36}{d}{\Slip}{Process generation method}{0:0:0}
[42]70      Final assessment of the method and improved version of the user manual.
[112]71      \mustbecompleted {FIXME :: User manual ou Specification. Si user manual alors le mettre en dissemination}
[110]72    \itemV{6}{12}{x}{\Slip}{Process construction}
[83]73      Preliminary implementation in the Syntol framework.
[86]74      At this step the software will just implement a single constructor.
[83]75    \itemV{12}{18}{x}{\Slip} {Arrays and FIFO}
76      Implementation of the array contraction and FIFO construction algorithm.
77      Conversion of the input and output to the \xcoach format.
[87]78    \itemV{18}{30}{d+x}{\Slip}{Non-polyhedral extension}
[84]79      Extension of automatic parallelization and array contraction
[87]80      to non-polyhedral loops. Implementation in the Bee framework.
[114]81    \itemL{30}{36}{x}{\Slip} {Process and FIFO construction}{0:0:0}
[83]82      Final release taking into account the feedbacks from the
83      demonstrator \STs.
[41]84   \end{livrable}
[83]85
[41]86\end{workpackage}
87   
Note: See TracBrowser for help on using the repository browser.