source: anr/task-frontend.tex @ 320

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

MAJ des donnees LIP6 (quasi la derniere)

  • Property svn:eol-style set to native
  • Property svn:keywords set to Revision HeadURL Id Date
File size: 4.2 KB
Line 
1\begin{taskinfo}
2\let\LIP\leader
3\let\IRISA\enable
4\let\UBS\enable
5\let\UPMC\enable
6\let\TIMA\enable
7\end{taskinfo}
8%
9\begin{objectif}
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
13the HLS tools (i.e. HAS back-end tools of the COACH project). If the
14target is an ASIP, the frontend has to extract
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.
20\end{objectif}
21%
22\begin{workpackage}
23  \subtask{ASIP compiler}
24  This sub-task aims at providing compiler support for custom instructions
25  within the HAS front-end. It will take as input the COACH intermediate
26  representation, and will output an annotated COACH IR containing the custom
27  instructions definitions along with their occurrence in the application.
28    \begin{livrable}
29      \itemV{0}{18}{x}{\Sirisa}{ASIP compilation flow}
30        In this first version of the software, the computations patterns corresponding to
31        custom instructions are specified by the user, and then automatically extracted (when
32        beneficial) from the application intermediate representation.
33      \itemL{18}{27}{x}{\Sirisa}{ASIP compilation flow}{0:6:3}
34        In this second version, the software will also be able to automatically identify
35        interesting pattern candidates in the application code, and use them as custom
36        instructions. 
37    \end{livrable}
38 
39 \subtask{Micro-architectural template models for ASIP}
40 In this sub-task, we provide micro-architectural template models for the two target
41 processor architectures (NIOS-II and MIPS) supported within the COACH-ASIP design flow.
42 For each processor, we provide a simulation model (System-C) and a synthesizable model (VHDL)
43 of the architecture, along with its architectural extensions
44    \begin{livrable}
45      \itemV{0}{12}{x}{\Sirisa}{SystemC for extensible MIPS }
46      { A SystemC simulation model for a simple extensible MIPS architectural template }
47      \itemL{12}{20}{x}{\Sirisa}{SystemC for extensible MIPS}{2:3:0}
48      {A SystemC simulation model for an extensible MIPS with a tight architectural integration of
49      its instruction set extensions}
50      \itemV{3}{18}{h}{\Sirisa}{VHDL for an extensible MIPS}
51      {A synthesizable VHDL model for a simple extensible MIPS architectural template}
52      \itemL{18}{27}{h}{\Sirisa}{VHDL for extensible MIPS}{9:9:3}
53      {A synthesizable VHDL model for an extensible MIPS with a tight architectural integration of
54      its instruction set extensions}
55      \itemL{27}{36}{d}{\Sirisa}{Evaluation report }{0:0:2}
56      {An evaluation report with quantitative analysis of the performance/area trade-off induced by
57      the different approaches}
58    \end{livrable}
59
60 \subtask{Parallelism optimization}
61  Extraction of parallelism in polyhedral loops and conversion into a process network.
62   \begin{livrable}
63    \itemV{0}{6}{d}{\Slip}{Method, Preliminary Definition}
64      Description and specification of a process construction method for programs with
65      polyhedral loops.
66    \itemL{30}{36}{d}{\Slip}{Process generation method}{10:0:9}
67      Final assessment of the method and improved version of the specification.
68    \itemV{6}{12}{x}{\Slip}{Process construction}
69      Preliminary implementation in the Syntol framework.
70      At this step the software will just implement a single constructor.
71    \itemV{12}{18}{x}{\Slip} {Arrays and FIFO}
72      Implementation of the array contraction and FIFO construction algorithm.
73      Conversion of the input and output to the \xcoach format.
74    \itemV{18}{30}{d+x}{\Slip}{Non-polyhedral extension}
75      Extension of automatic parallelization and array contraction
76      to non-polyhedral loops. Implementation in the Bee framework.
77    \itemL{30}{36}{x}{\Slip} {Process/FIFO construction}{10:20:12}
78      Final release taking into account the feedbacks from the
79      demonstrator \STs.
80   \end{livrable}
81
82\end{workpackage}
83   
Note: See TracBrowser for help on using the repository browser.