Changeset 36


Ignore:
Timestamp:
Jan 18, 2010, 9:31:49 AM (14 years ago)
Author:
coach
Message:
 
Location:
anr
Files:
11 edited

Legend:

Unmodified
Added
Removed
  • anr/Makefile

    r21 r36  
    44                        section-2.tex section-2.1.tex section-2.2.tex \
    55                        flow.pdf section-3.1.tex section-3.2.tex \
    6                         section-4.1.tex \
     6                        task-0.tex task-1.tex task-2.tex task-3.tex \
     7                        task-4.tex task-5.tex task-6.tex \
     8                        section-4.1.tex section-4.4.tex \
    79                        architecture-csg.pdf architecture-hls.pdf architecture-hpc.pdf \
    810                        dependence-task-h.pdf \
     
    1618        @$(FIG2DEV) -L pdf -p aaa $< $@
    1719
    18 anr.pdf: $(SOURCES)
     20anr.pdf: $(SOURCES) gantt.tex gantt
    1921        @echo "Generating pdf file"
    2022        @pdflatex anr.tex
    2123        @bibtex anr
     24        @./gantt < anr.gantt > gantt.tex
    2225        @pdflatex anr.tex
    2326        @grep ndefine anr.log
     
    2629        bibtex anr || true
    2730
    28 anr.aux:
    29         touch anr.aux
     31anr.aux gantt.tex:
     32        touch $@
     33
     34gantt: gantt.l
     35        @flex gantt.l && gcc -g lex.yy.c -o gantt
     36        @rm lex.yy.c
  • anr/anr.sty

    r35 r36  
    44
    55%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     6%{\catcode`\<=1\catcode`\>=2
     7%       <\catcode`\{=12\gdef\OBraceTw<{>>
     8%       <\catcode`\}=12\gdef\CBraceTw<}>>
     9%>
     10%\@ifundefined{specHasManual}{\let\specHasManual\relax}{}
     11\let\specHasManual\relax
     12\let\specCsgManual\relax
     13
     14\def\setMacroInAuxFile#1{%
     15    \global\expandafter\edef\csname#1\endcsname{\name}
     16    \expandafter\immediate\expandafter\write\@auxout\expandafter{\expandafter\string\expandafter\gdef\expandafter\string\csname #1\endcsname{\name}}
     17}
     18\def\eoa{end-of-args}
     19\def\@novers#1-#2\eoa{#1}
     20\def\novers#1{\expandafter\@novers#1\eoa}
     21
     22%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     23\let\ganttlf\relax
    624\newwrite\ganttdata
    725\immediate\openout\ganttdata=anr.gantt
     
    98116    {
    99117      \let\xcoach\relax
     118      \let\xcoachplus\relax
    100119      \let\xilinx\relax
    101120      \let\altera\relax
    102121      \immediate\write\ganttdata{%
    103122        T=\the\taskcnt\space S=\the\subtaskcnt\space%
    104         DV=\the\livrablecnt\space BM=##2 EM=##3 TITLE=##6%
     123        D=\the\livrablecnt\space V=##1 BM=##2 EM=##3 TITLE=##6%
    105124      }
    106125    }
  • anr/anr.tex

    r27 r36  
    232232aléas qui risquent de remettre en cause l'aboutissement du projet ainsi que
    233233les réunions de projet prévues.\end{itemize}}
     234\input{section-4.4.tex}
    234235
    235236%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  • anr/gantt.l

    r34 r36  
    11%{
     2#define COLOR_Milestone  "gtcMilestone"
     3#define COLOR_BOX_HEAVY "gtcBoxHeavy"
     4#define COLOR_BOX_LIGHT "gtcBoxLight"
    25
    36#define PICT_TOPSEP   3
     
    1215
    1316#define TASK_VSEP  2
    14 #define TASK_BGC0 "red"
    15 #define TASK_BGC1 "yellow"
     17#define TASK_BGC0       "gtcTaskBG0"
     18#define TASK_BGC1       "gtcTaskBG1"
    1619
    1720#define DELIVRABLE_VSEP   1
    1821#define DELIVRABLE_HEIGHT 3
    19 #define DELIVRABLE_LABELWIDTH  15
     22#define DELIVRABLE_LABELWIDTH  10
    2023#define DELIVRABLE_LABELHEIGHT DELIVRABLE_HEIGHT
    21 #define DELIVRABLE_TITLEWIDTH  25
     24#define DELIVRABLE_TITLEWIDTH  35
    2225#define DELIVRABLE_TITLEHEIGHT DELIVRABLE_HEIGHT
    23 #define DELIVRABLE_BOXHEIGHT   (DELIVRABLE_HEIGHT-2)
     26#define DELIVRABLE_BOXHEIGHT   (DELIVRABLE_HEIGHT)
    2427
    2528typedef struct _Tlivrable {
    26     int tn,stn,dn;  // task, sub-task, number
    27     char v;         // 0, 1, 2, ..., F
     29    int tn,stn,dn,vn;  // task, sub-task, number
     30    char v;            // 0, 1, 2, ..., F
    2831    char* title;
    2932    int   bm,em;   // mois de bebut et de fin
    30     // this fields are filled by the program for data[tn][0][0][0]
    31     int    task_line;
     33    // these fields are filled by the program for data[tn][0][0][0]
    3234    double task_y;           // top of task
    3335    double task_dy;          // bot of task is task_y+task_dy
    34     // this fields are filled by the program for data[tn][stn][dn][0]
    35     int   del_bm,del_em;    // mois de bebut et de fin cummule
     36    // these fields are filled by the program for data[tn][stn][dn][0]
     37    struct _Tlivrable
     38            **vers; // null termiated (vers[i] = &data[tn][stn][dn][i])
     39    int    nbvers;     // nombre de vers
     40    double height;     // height of livrable
     41    // int del_bm,del_em;    // mois de bebut et de fin cummule
     42    // these fields are filled by the program for all elements
     43    int   nbTitleLines;
     44    char* titleLines[5]; // null termiated
    3645} Tlivrable;
    3746
     
    4150#define V_MAX 10
    4251Tlivrable* data[T_MAX][S_MAX][D_MAX][V_MAX];
     52
     53int milestones[100];
     54
     55char* gen_label_base(char* buf,Tlivrable*p)
     56    { sprintf(buf,"D%d%d%d",p->tn,p->stn,p->dn); return buf; }
     57char* gen_label_vers(char* buf,Tlivrable*p)
     58    { if (p->nbvers<=1) sprintf(buf,""); else sprintf(buf,"V%c",p->v); return buf; }
     59char* gen_label_full(char* buf,Tlivrable*p)
     60    { char b[100],v[100]; gen_label_base(b,p); gen_label_vers(v,p);
     61      sprintf(buf,"%s%s%s",b,*v?"-":"",v); return buf; }
     62
     63void print_put(double x,double y, const char* object)
     64    { printf("\\put(%.2f,%.2f){%s}\n",x,y,object); }
     65void print_hline(double x,double y, double len, const char* color)
     66{
     67    char object[1024];
     68    if (color!=0) { printf("\\bgroup\\color{%s}\n",color); }
     69    sprintf(object,"\\line(1,0){%.2f}",len);
     70    print_put(x,y,object);
     71    if (color!=0) { printf("\\egroup\n"); }
     72}
     73void print_vline(double x,double y, double len, const char* color)
     74{
     75    char object[1024];
     76    if (color!=0) { printf("\\bgroup\\color{%s}\n",color); }
     77    sprintf(object,"\\line(0,1){%.2f}",len);
     78    print_put(x,y,object);
     79    if (color!=0) { printf("\\egroup\n"); }
     80}
     81void print_box(
     82    int filled, char* vers, // vers may be 0,
     83    double x,double y, double dx, double dy,
     84    const char* boxcolor,  // may be 0 (default COLOR_BOX_HEAVY)
     85    const char* bgcolor,   // may be 0 (not set)
     86    const char* textcolor //  may be 0 (black)
     87){
     88    double tn=.4;
     89    char object[1024];
     90    if ( boxcolor==0 ) boxcolor = COLOR_BOX_HEAVY;
     91    if ( filled==1 ) {
     92        sprintf(object,
     93            "\\fcolorbox{black}{%s}{\\makebox(%.2f,%.2f){}}",
     94                boxcolor,dx-2-tn,dy-2-tn);
     95        print_put(x,y+1,object);
     96    } else {
     97        double tn2=tn/2;
     98        double e=.1;
     99        printf("\\bgroup\\color{%s}\n",boxcolor);
     100        printf("\\linethickness{%.2fmm}\n",tn);
     101        print_hline(x+tn2-e ,y,    dx     ,0);
     102        print_hline(x+tn2-e ,y+dy, dx     ,0);
     103        print_vline(x+tn-e  ,y+e,  dy-2*e ,0);
     104        print_vline(x+dx-2*e,y+e,  dy-2*e ,0);
     105        printf("\\egroup\n");
     106    }
     107    if (vers) {
     108        sprintf(object,"\\begin{tiny}\\textbf{%s}\\end{tiny}",vers);
     109        print_put(x+1,y+.5,object);
     110    }
     111}
     112
     113void gen_titleLines(Tlivrable*p)
     114{
     115    const char* macro="\\ganttlf";
     116    char* pc = p->title;
     117    char* pc2;
     118
     119    if (pc==0) return;
     120   
     121    while ( (pc2=strstr(pc,macro))!=0 ) {
     122        char c = *pc2;
     123        *pc2 = 0;
     124        p->titleLines[p->nbTitleLines]=strdup(pc);
     125        p->nbTitleLines+=1;
     126        *pc2=c;
     127        pc=pc2+strlen(macro);
     128    }
     129    p->titleLines[p->nbTitleLines]=strdup(pc);
     130    p->nbTitleLines+=1;
     131}
    43132%}
    44133
     
    53142D=[0-9]+ { dn=atoi(yytext+2); }
    54143V=V.     { v=yytext[3]; }
    55 DV=-VF   { dn=0; v='F'; }
    56 DV=      { dn=0; v='F'; }
    57 DV=-[0-9]-VF     { dn=yytext[4]-'0'; v=yytext[yyleng-1]; }
    58 DV=-[0-9]-V[0-9] { dn=yytext[4]-'0'; v=yytext[yyleng-1]; }
     144V=       { v='F'; }
     145ML=[0-9]+ {
     146        int i;
     147        for (i=0 ; milestones[i]!=0 ; i++);
     148        milestones[i] = atoi(yytext+3);
     149    }
    59150
    60151BM=[0-9]+ { bm=atoi(yytext+3); }
     
    62153TITLE=.*\n {
    63154        char* pc=yytext+6;
     155        yytext[yyleng-1]=0;
    64156        while ( *pc==' ' || *pc=='\t' ) pc+=1;
    65157        title=strdup(pc);
     
    72164        p->bm = bm;
    73165        p->em = em;
     166        gen_titleLines(p);
    74167
    75168        for (v=0; data[tn][stn][dn][v]!=0 ; v++);
    76169        data[tn][stn][dn][v] = p;
    77170fprintf(stderr,"ADDED: %d %d %d %d\n",tn,stn,dn,v);
    78 {int i,tn=0; fprintf(stderr,"CURR:t=%d:: ",tn); for (i=0; i<S_MAX ; i++) fprintf(stderr,"%d:%p ",i,data[tn][i][0][0]); fprintf(stderr,"\n"); }
     171//{int i,tn=0; fprintf(stderr,"CURR:t=%d:: ",tn); for (i=0; i<S_MAX ; i++) fprintf(stderr,"%d:%p ",i,data[tn][i][0][0]); fprintf(stderr,"\n"); }
    79172    }
    80173.|\n ;
     
    87180    for (tn=0 ; tn<T_MAX ; tn++)
    88181    for (stn=0; stn<S_MAX; stn++) {
    89 fprintf(stderr,"AVANT:t=%d:%d:: ",tn,stn); for (i=0; i<D_MAX ; i++)
    90 fprintf(stderr,"%d:%p ",i,data[tn][stn][i][0]); fprintf(stderr,"\n");
     182//fprintf(stderr,"AVANT:t=%d:%d:: ",tn,stn); for (i=0; i<D_MAX ; i++)
     183//fprintf(stderr,"%d:%p ",i,data[tn][stn][i][0]); fprintf(stderr,"\n");
    91184        while (1) {
    92185            for (i0=0 ; i0<D_MAX ; i0++)
     
    102195                }
    103196        }
    104 fprintf(stderr,"AVANT:t=%d:%d:: ",tn,stn); for (i=0; i<D_MAX ; i++)
    105 fprintf(stderr,"%d:%p ",i,data[tn][stn][i][0]); fprintf(stderr,"\n");
     197//fprintf(stderr,"AVANT:t=%d:%d:: ",tn,stn); for (i=0; i<D_MAX ; i++)
     198//fprintf(stderr,"%d:%p ",i,data[tn][stn][i][0]); fprintf(stderr,"\n");
    106199    }
    107200}
     
    111204int i0,i1,i;
    112205    for (tn=0 ; tn<T_MAX ; tn++) {
    113 fprintf(stderr,"AVANT:t=%d:: ",tn,i0,i1); for (i=0; i<S_MAX ; i++) fprintf(stderr,"%d:%p ",i,data[tn][i][0][0]); fprintf(stderr,"\n");
     206//fprintf(stderr,"AVANT:t=%d:: ",tn,i0,i1); for (i=0; i<S_MAX ; i++) fprintf(stderr,"%d:%p ",i,data[tn][i][0][0]); fprintf(stderr,"\n");
    114207        while (1) {
    115208            for (i0=0 ; i0<S_MAX ; i0++)
     
    117210            for (i1=i0+1 ; i1<S_MAX ; i1++)
    118211                if (data[tn][i1][0][0] != 0) break;
    119 fprintf(stderr,"%d %d %d\n",tn,i0,i1);
     212//fprintf(stderr,"%d %d %d\n",tn,i0,i1);
    120213            if (i1>=S_MAX) break;
    121214            // shift
     
    127220                    }
    128221        }
    129 fprintf(stderr,"APRES:t=%d:: ",tn,i0,i1); for (i=0; i<S_MAX ; i++) fprintf(stderr,"%d:%p ",i,data[tn][i][0][0]); fprintf(stderr,"\n");
    130     }
    131 }
    132 
    133 int task_line(int tn)
    134 {
    135 int stn,dn,v;
    136 int nblignes=0;
     222//fprintf(stderr,"APRES:t=%d:: ",tn,i0,i1); for (i=0; i<S_MAX ; i++) fprintf(stderr,"%d:%p ",i,data[tn][i][0][0]); fprintf(stderr,"\n");
     223    }
     224}
     225void prepare2()
     226{
     227int tn,stn,dn,vn;
     228    for (tn=0 ; tn<T_MAX ; tn++)
     229    for (stn=0; stn<S_MAX; stn++)
     230    for (dn=0; dn<D_MAX; dn++) {
     231        Tlivrable* p = data[tn][stn][dn][0];
     232        if (p==0) continue;
     233        p->nbvers=0 ;
     234        for (vn=0 ; vn<V_MAX ; vn+=1)
     235            if (data[tn][stn][dn][vn]!=0) p->nbvers+=1;
     236        p->vers=(Tlivrable**)malloc(sizeof(*p->vers)*(p->nbvers+1));
     237        for (vn=0 ; vn<p->nbvers ; vn+=1) {
     238            p->vers[vn] = data[tn][stn][dn][vn];
     239            data[tn][stn][dn][vn]->nbvers = p->nbvers;
     240        }
     241        p->vers[vn] = 0;
     242        p->height = 1.0*DELIVRABLE_HEIGHT;
     243        if (p->nbTitleLines>=1) {
     244            double h=0;
     245            h += p->vers[p->nbvers-1]->nbTitleLines*DELIVRABLE_TITLEHEIGHT;
     246            h += (p->vers[p->nbvers-1]->nbTitleLines-1)*(DELIVRABLE_TITLEHEIGHT/5.);
     247            if ( h>p->height) p->height=h;
     248        }
     249    }
     250}
     251
     252double task_livrable_height(int tn)
     253{
     254int    stn,dn,nblivrables=0;
     255double height=0;
    137256    for (stn=0 ; data[tn][stn][0][0]!=0 ; stn++)
    138         for (dn=0 ; data[tn][stn][dn][0]!=0 ; dn++)
    139             for (v=0 ; data[tn][stn][dn][v]!=0 ; v++)
    140             nblignes+=1;
    141     return nblignes;
     257        for (dn=0 ; data[tn][stn][dn][0]!=0 ; dn++) {
     258            nblivrables += 1;
     259            height+=data[tn][stn][dn][0]->height;
     260        }
     261        height += DELIVRABLE_VSEP/2;
     262        height += (nblivrables-1)*DELIVRABLE_VSEP;
     263        height += DELIVRABLE_VSEP/2;
     264    return height;
    142265}
    143266
     
    148271        const char* color= (tn%2)!=0 ? TASK_BGC1 : TASK_BGC0 ;
    149272        printf(
    150             "\\put(%.1f,%.1f){\\fcolorbox{black}{%s}{\\makebox(%5.1f,%5.1f){}}}\n",
     273            "\\put(%.2f,%.2f){\\fcolorbox{black}{%s}{\\makebox(%5.2f,%5.2f){}}}\n",
    151274            0.0,data[tn][0][0][0]->task_y,
    152275            color,
     
    170293}
    171294
     295void  print_milestones(double x, double y, double dx, double dy)
     296{
     297    int i;
     298    double tn=.3;
     299    //x=x-tn/2;
     300    printf("\\bgroup\n");
     301    printf("\\color{red}\n");
     302    printf("\\linethickness{%.2fmm}\n",tn);
     303    for (i=0 ;  milestones[i]!=0 ; i+=1) {
     304        double xx= x + milestones[i]*PICT_MONTHWIDTH;
     305        print_vline(xx,y,dy-PICT_MONTHWIDTH-PICT_VSEP,0);
     306    }
     307    printf("\\egroup\n");
     308}
     309
    172310double delivrable(
    173311    double label_x, double box_x, double title_x,
     
    175313    int tn, int stn, int dn)
    176314{
     315    Tlivrable* top=data[tn][stn][dn][0];
     316    Tlivrable* last=data[tn][stn][dn][top->nbvers-1];
     317    char tmp[1000],label[1000],title[1000];
    177318    double y0;
    178319    int v;
     
    183324    double title_dx = DELIVRABLE_LABELWIDTH ;
    184325    double title_dy = DELIVRABLE_TITLEHEIGHT ;
    185     for (v=0 ; data[tn][stn][dn][v]!=0 ; v++) {
    186         Tlivrable* l=data[tn][stn][dn][v] ;
    187         y -= DELIVRABLE_HEIGHT;
    188         char label[100]; sprintf(label,"D%d-%d-%d-V%c",tn,stn,dn,l->v);
    189         printf("% Delivrable %d %d %d\n",tn,stn,dn);
    190         y0 = (DELIVRABLE_HEIGHT-DELIVRABLE_LABELHEIGHT)/2;
    191         printf("\\put(%.1f,%.1f)",label_x,y+y0);
    192         printf("{\\makebox(%.1f,%.1f)[l]{\\ganttlabelstyle{%s}}}\n",
    193             label_dx,label_dy,label);
    194         y0 = (DELIVRABLE_HEIGHT-DELIVRABLE_BOXHEIGHT)/2;
     326   
     327//print_hline(0,y,180,0);
     328    gen_label_base(label,top);
     329    // y -= DELIVRABLE_HEIGHT;
     330    y -= top->height ;
     331//print_hline(0,y,180,0);
     332    printf("% Delivrable %s (tn=%d stn=%d dn=%d\n",label,tn,stn,dn);
     333
     334    // print label
     335    //y0 = (DELIVRABLE_HEIGHT-DELIVRABLE_LABELHEIGHT)/2;
     336    y0 = (top->height-DELIVRABLE_LABELHEIGHT)/2;
     337    sprintf(tmp,"\\ganttlabelstyle{%s}",label);
     338    print_put(label_x,y+y0,tmp);
     339    // print title
     340    if (last->nbTitleLines==1) {
     341        y0  = (DELIVRABLE_HEIGHT-DELIVRABLE_TITLEHEIGHT)/2;
     342        y0 += DELIVRABLE_TITLEHEIGHT/5. ;
     343        sprintf(tmp,"\\gantttitlestyle{%s}",last->title);
     344        print_put(title_x,y+y0,tmp);
     345    } else if (last->nbTitleLines>1) {
     346        int i;
     347        // y0 = (DELIVRABLE_HEIGHT-DELIVRABLE_TITLEHEIGHT)/2;
     348        y0=DELIVRABLE_TITLEHEIGHT/5.;
     349        sprintf(tmp,"\\gantttitlestyle{\\shortstack[l]{%s",last->titleLines[0]);
     350        for (i=1 ; i<last->nbTitleLines ; i+=1) {
     351            strcat(tmp,"\\\\");
     352            strcat(tmp,last->titleLines[i]);
     353        }
     354        strcat(tmp,"}}");
     355        print_put(title_x,y+y0,tmp);
     356    }
     357       
     358    // print box
     359    //y0 = (DELIVRABLE_HEIGHT-DELIVRABLE_BOXHEIGHT)/2;
     360    y0 = (top->height-DELIVRABLE_BOXHEIGHT)/2;
     361    if ( last==top ) {
     362        Tlivrable* l=top;
    195363        boxx = box_x + l->bm*PICT_MONTHWIDTH ;
    196364        box_dx  = (l->em - l->bm) * PICT_MONTHWIDTH;
    197         printf("\\put(%.1f,%.1f)",boxx,y+y0);
    198         printf("{\\fcolorbox{black}{blue}{\\makebox(%.1f,%.1f){}}}\n",
    199             box_dx-2,box_dy);
    200         y0 = (DELIVRABLE_HEIGHT-DELIVRABLE_TITLEHEIGHT)/2;
    201         printf("\\put(%.1f,%.1f)",title_x,y+y0);
    202         printf("{\\makebox(%.1f,%.1f)[l]{\\gantttitlestyle{%s}}}\n",
    203             title_dx,title_dy,l->title);
    204         y -= DELIVRABLE_VSEP;
    205     }
     365        print_box(1,0,boxx,y+y0,box_dx,box_dy,COLOR_BOX_LIGHT,0,0);
     366        print_box(0,0,boxx,y+y0,box_dx,box_dy,0,0,0);
     367    } else for (v=0 ; v<top->nbvers ; v+=1) {
     368        Tlivrable* l=data[tn][stn][dn][v] ;
     369        gen_label_vers(tmp,l);
     370        boxx = box_x + l->bm*PICT_MONTHWIDTH ;
     371        box_dx  = (l->em - l->bm) * PICT_MONTHWIDTH;
     372        print_box(1,0,boxx,y+y0,box_dx,box_dy,COLOR_BOX_LIGHT,0,0);
     373        print_box(0,tmp,boxx,y+y0,box_dx,box_dy,0,0,0);
     374    }
     375    y -= DELIVRABLE_VSEP;
    206376    return y;
    207377}
     
    211381int stn,dn;
    212382double y = data[tn][0][0][0]->task_y+data[tn][0][0][0]->task_dy;
     383    //y += DELIVRABLE_VSEP/2. ;
    213384    for (stn=0 ; data[tn][stn][0][0]!=0 ; stn++)
    214385        for (dn=0 ; data[tn][stn][dn][0]!=0 ; dn++) {
    215386            y=delivrable(label_x,box_x,title_x,y,tn,stn,dn);
    216     }
     387        }
    217388}
    218389
     
    229400    prepare0();
    230401    prepare1();
     402    prepare2();
    231403
    232404    pictheight=0 ;
     
    234406    for ( tn=0 ; data[tn][0][0][0]!=0 ; tn++ );
    235407    for ( tn=tn-1 ; tn>=0 ; tn-- ) {
    236         int nblines= task_line(tn);
    237408        data[tn][0][0][0]->task_y = pictheight;
    238         data[tn][0][0][0]->task_line = nblines;
    239         data[tn][0][0][0]->task_dy = 0;
    240         data[tn][0][0][0]->task_dy += nblines*DELIVRABLE_HEIGHT;
    241         data[tn][0][0][0]->task_dy += (nblines-1)*DELIVRABLE_VSEP;
     409        data[tn][0][0][0]->task_dy = task_livrable_height(tn);
    242410        pictheight += data[tn][0][0][0]->task_dy;
    243411        pictheight += TASK_VSEP;
     
    268436        task_delivrable(label_x,gantt_x,title_x,tn);
    269437      }
     438
     439    print_milestones(gantt_x,0,gantt_dx,gantt_dy+gantt_y);
    270440    printf("\\end{picture}\n");
    271441
  • anr/section-4.4.tex

    r34 r36  
     1\begin{figure}\leavevmode\center
     2\definecolor{gtcBoxHeavy}{rgb}{0.10,0.10,0.90}
     3\definecolor{gtcBoxLight}{rgb}{0.9,0.90,0.99}
     4\definecolor{gtcTaskBG0} {rgb}{0.99,0.90,0.7}
     5\definecolor{gtcTaskBG1} {rgb}{0.90,0.99,0.7}
     6\definecolor{gtcMilestone}{rgb}{0.9,0.4,0.4}
     7\immediate\write\ganttdata{ML=6 ML=12 ML=18 ML=24}
    18\def\ganttlabelstyle#1{\begin{small}#1\end{small}}
    29\def\gantttitlestyle#1{\begin{scriptsize}\textit{#1}\end{scriptsize}}
     10\hspace*{-.6cm}
    311\input{gantt.tex}
     12\caption{\label{gantt}Gantt diagram of delivrables}
     13\end{figure}
    414
     15The figure~\ref{gantt} presents the Gantt diagram of the project.
     16Before the final release (T0+36), there are 4 milestones (red lines on the figure) at
     17$T0+6$, $T0+12$, $T0+18$ and $T0+24$  that are rendez-vous points of the precedent
     18delivrables.
     19\begin{description}
     20\item[Milestone 1 ($T0+6$)] Specification of COACH inputs, of the \xcoach format and of
     21    demonstatrors as a referennce software.
     22\item[Milestone 2 ($T0+12$)] The first COACH release. At this step the demonstrators are
     23    written in COACH. The COACH release allows to prototype and to generate the FPGA-SoC.
     24    The main restrictions are:
     25    1) only the COACH architectural template is supported,
     26    2) HAS is not available (but prototyping with virtual coprocessor is available),
     27    3) Enhanced communication schems are not available.
     28\item[Milestone 3 ($T0+18$)]  The second COACH release. At this step most of the COACH
     29    features are availables.
     30    The main restriction is that COACH can not yet generate FPGA-SoC for ALTERA and XILINX
     31    architectural template.
     32    The others restriction is that the HAS tools are not yet fully operational.
     33\item[Milestone 4 ($T0+24$)] The pre-rlease of the COACH project. The full design flow is
     34    supported.
     35    The main restriction are:
     36    1) The HAS tools are not yet optimum,
     37    2) dynamic reconfiguration is not supported,
     38    3) \mustbecompleted{FIXME:ALL .....}
     39\item[Final Release ($T0+36$)]
     40\end{description}
     41This organisation allows to advance globally the project step by step mixing development
     42and demonstrator delivrables.
     43So demonstrator feed-back will arrive early and so the risk to point out incompatibility
     44at the integration phasis is suppressed.
     45\par
     46The project has several critical issues:
     47\begin{description}
     48\item[\xcoachplus format (\novers{\specXcoachDoc}, \novers{\specXcoachToC})]
     49    Because it bonds tightly all the HAS tools, it is a
     50    crucial task. There are no work-arround but as mentionned in
     51    section~\ref{xcoach-problem} (page~\pageref{xcoach-problem}) we worked ont it since a
     52    year and are confident.
     53\item[\xcoachplus format (\novers{\specXcoachDoc},
     54      \novers{\specXcoachToSystemC}, \novers{\specXcoachToVhdl})]
     55    It aims with the generation of the coprocessors (hardware \& prototyping model),
     56    By centralizing the coprocessor generations, it guarantees their operating
     57    independently of the used HAS tools.
     58\item[prototyping of ALTERA \& XILINX architectural templates ({\csgAlteraSystemC},
     59     {\csgXilinxSystemC}]
     60     The SocLib component library contains most of the SystemC models used for the
     61     prototyping description of the ALTERA and XILINX architectural templates.
     62     Nevertheless, at this time we do'nt know how many are missing and if the existing
     63     are really useables.
     64     If the work of theses tasks is to important, they will be given up.
     65     In this case the work-arround to prototype the XILINX and ALTERA architectural
     66     templates is to use the COACH one. These architectures being very similar, the
     67     simulation results must be proportional. Theses tasks will be changed by measuring
     68     the deviance.
     69\item[VCI/AVALON \& VCI/PLB bridges (\novers{\hpcAvalonBridge}, \novers{\hpcPlbBridge})]
     70     If one of these tasks is impossible or too important or leads to inefficiency,
     71     will be given up.
     72     In this case, the COACH architectural template will not be available for HPC and
     73     a SystemC VCI model corresponding to the PCI/X IP will be developped to allow
     74     prototyping.
     75\end{description}
     76
  • anr/task-0.tex

    r35 r36  
    1414project.
    1515\item To organize the project meetings (every 3 months).
    16 \item To set up the project web site and update it according to the project progress and
    17 dissemination plans.
     16\item To set up a shared development and dissemination infrastructure as a version control
     17    system version and web site.
     18\item To ensure the dissemination by providing the COACH releases (milestones and final
     19    release) and their associated installation howto.
    1820\end{itemize}
    1921\end{objectif}
     
    2325    patners to sign it.
    2426    \begin{livrable}
    25     \item{}{0}{6}{d}{\Supmc}{Consortium agreement establishment} A document signed by
    26         all the partners.
     27    \item{}{0}{6}{d}{\Supmc}{Consortium agreement} A document discribing the
     28        consortium agreement and signed by all the partners.
    2729    \end{livrable}
    28 \item This \ST consists of the managment of deliverables.
     30\item This \ST consists of the managment of deliverables and of the organisation of
     31    project review.
    2932    \begin{livrable}
    3033    \item{}{0}{12}{d}{\Supmc}{First progress report}
     
    3235    \item{}{24}{36}{d}{\Supmc}{Final report}
    3336    \end{livrable}
    34 \item This \ST consists of the set up of the web site and iof its managment.
     37\item This \ST consists firstly of the set up of the development and dissemination
     38    infrastructure. Then it consists in providing the COACH distribution releases and
     39    in maintaining the dissemination infrastructure.
    3540    \begin{livrable}
    36     \item{}{0}{6}{}{\Supmc}{Web site setting}
     41    \item{}{0}{6}{}{\Supmc}{infrastructure setup} This task consists of the setup of the
     42        dissemination infrastructure (web site, wiki, faq) and of the setup of the
     43        development infrastructure (version control system configuration).
     44    \item{}{6}{36}{}{\Supmc}{dissemination} This task consists providing the COACH
     45    distribution releases and in maintaining the dissemination infrastructure.
    3746    \end{livrable}
    3847\end{workpackage}
  • anr/task-1.tex

    r35 r36  
    1313\begin{workpackage}{D1}
    1414\item This \ST specifies COACH for the system designer. At this
    15     level COACH is a black box. The deliverable is a document allowing the system
     15    level COACH is a black box. The deliverables aredocuments allowing the system
    1616    designers to use COACH: feeding it (inputs), how to use it (design flow),
    1717    what COACH can generate (definition of the generic architecture of the
    1818    MPSoC and its 3 targets hardware mapping).
    1919    \begin{livrable}
    20     \item{V1}{0}{6}{d}{\Supmc}{user manual}
    21         The first milestone of the document for allowing demonstration
    22         \ST to start.
    23     \item{V2}{6}{18}{d}{\Supmc}{user manual}
    24         The second milestone takes into account the missing features
    25         the demonstrators rise.
    26     \item{VF}{18}{30}{d}{\Supmc}{user manual}
    27         Final release.
     20    \item{V1}{0}{6}{d}{\Supmc}{COACH user manual} \setMacroInAuxFile{specGenManualI}
     21        It is the first milestone of the COACH user manual that will allow demonstrator
     22        \STs to start.
     23        It contains the general description of the framework, the design flow and the
     24        description of the architectural templates.
     25        It refers to the HAS user manual (delivrable {\specHasManual}) and
     26        to the CSG manual (delivrable \specCsgManual) for the COACH input
     27        descriptions.
     28    \item{VF}{6}{12}{d}{\Supmc}{COACH user manual} \setMacroInAuxFile{specGenManual}
     29        The COACH user manual of the \specGenManualI delivrable updated with the feed-backs
     30        of the demonstrator \STs.
     31    \item{V1}{0}{6}{d}{\Stima}{CSG user manual} \setMacroInAuxFile{specCsgManualI}
     32        It is the first milestone of the CSG user manual that will allow demonstrator
     33        \STs to start.
     34        It describes how the task graph is described, the communication schems and its
     35        associated API (Application  Programming Interface).
     36        The base is the SRL library and MWMR communication component defined by the SocLib
     37        ANR project.
     38        Nevertheless, these basic schems will be enhanced to allow more efficent
     39        synthesis.
     40    \item{VF}{6}{12}{d}{\Stima}{CSG user manual} \setMacroInAuxFile{specCsgManual}
     41        The CSG user manual of the \specGenManualI delivrable updated with the feed-backs
     42        of the demonstrator \STs.
     43    \item{V1}{0}{6}{d}{\Subs}{HAS user manual} \setMacroInAuxFile{specHasManualI}
     44        It is the first milestone of the HAS user manual that will allow demonstrator
     45        \STs to start.
     46        It describes how tasks of task graph must be written (C/C++ subset) and how
     47        communication schems defined in the {\specCsgManual} delivrable must be described for
     48        coprocessor synthesis.
     49    \item{VF}{6}{12}{d}{\Subs}{HAS user manual} \setMacroInAuxFile{specHasManual}
     50        The HAS user manual of the \specGenManualI delivrable updated with the feed-backs of
     51        the demonstrator \STs.
    2852    \end{livrable}
    2953\item This \ST specifies the software COACH structure. The deliverable is a
    3054    document listing all the COACH software components and how they cooperate.
    3155    \begin{livrable}
    32     \item{}{0}{6}{d}{\Supmc}{decription of software architecture}
     56    \item{}{0}{6}{d}{\Supmc}{decription of \ganttlf software architecture}
    3357        It contains the software list and the data flow among them.
    3458    \end{livrable}
    3559\item This \ST specifies the \xcoach format.
    3660    \begin{livrable}
    37     \item{V1}{0}{6}{d x}{\Slip}{specification of \xcoach format}
    38         First release of the XML specification of the \xcoach format
     61    \item{V1}{0}{6}{d+x}{\Slip}{specification of \xcoach format}
     62        \setMacroInAuxFile{specXcoachDocI}
     63        First release of the XML specification of the \xcoach format (DTD)
    3964        and its associated documentation allowing to start HLS tools development.
    40     \item{V2}{6}{12}{d x}{\Slip}{specification of \xcoach format}
     65    \item{V2}{6}{12}{d+x}{\Slip}{specification of \xcoach format}
     66        \setMacroInAuxFile{specXcoachDocII}
    4167        Second release of XML specification of the \xcoach format
    4268        taking into account the corrections and modifications that the
    43         developers of HLS tools rise.
    44     \item{VF}{12}{18}{d x}{\Slip}{C++ to \xcoach format}
    45         Release of XML specification of the \xcoach format enhanced with
     69        developers of HAS tools rised.
     70    \item{VF}{12}{18}{d+x}{\Slip}{specification of \xcoach format}
     71        \setMacroInAuxFile{specXcoachDoc}
     72        Last release of XML specification of the \xcoach format enhanced with
    4673        the expression of loop potential.
    47     \item{V1}{0}{12}{x x}{\Subs}{C++ to/from \xcoach format}
    48         The first executable generates a \xcoach description
    49         version \taskname-3-V1 from a C++ description of a task defined in \ST
    50         \taskname-1.
    51         The second program regenerates a C description from a \xcoach
     74    \item{V1}{6}{12}{x}{\Subs}{C++ to/from \xcoach format}
     75        \setMacroInAuxFile{specXcoachToCI}
     76        This delivrable is composed of 2 softwares.
     77        The first software is a GCC plugin that generates a \xcoach description
     78        (defined in \specXcoachDocI deliverable) from a C++ task description
     79        (defined in \specHasManual deliverable).
     80        The second software regenerates a C description from a \xcoach
    5281        description.
    53     \item{VF}{12}{18}{x x}{\Subs}{C++ to/from \xcoach format}
    54         \global\edef\STcTOxcoach{\name}
    55         The same programs as the former but for \xcoach format version \name-3-V2.
    56     \item{V1}{0}{18}{x}{\Supmc}{\xcoach format to SystemC}
    57         The first release of a program that translates \xcoach description to CABA
    58         and TLM-DT SystemC.
    59     \item{VF}{18}{24}{x}{\Supmc}{\xcoach format to SystemC}
    60         \global\edef\STxcoachTOsystemc{\name}
    61         The \name-3-V1 deliverable without bugs reported by the demonstrators.
    62     \item{V1}{0}{18}{x}{\Subs}{\xcoach format to VHDL}
    63         The first release of a program that translates \xcoach description to
     82    \item{VF}{12}{18}{x}{\Subs}{C++ to/from \xcoach format}
     83        \setMacroInAuxFile{specXcoachToC}
     84        The same softwares as the former (\specXcoachToCI) but for \xcoach format defined
     85        in the {\specXcoachDoc} deliverable and HAS input defined in the {\specHasManual}
     86        deliverable.
     87    \item{V1}{12}{18}{x}{\Supmc}{\xcoachplus format to SystemC}
     88        \setMacroInAuxFile{specXcoachToSystemCI}
     89        The first release of a program that translates \xcoachplus description to CABA
     90        and TLM-DT SystemC module.
     91    \item{VF}{18}{24}{x}{\Supmc}{\xcoachplus format to SystemC}
     92        \setMacroInAuxFile{specXcoachToSystemC}
     93        Maintenance work of the former software (\specXcoachToSystemCI).
     94    \item{V1}{12}{18}{x}{\Subs}{\xcoachplus format to VHDL}
     95        \setMacroInAuxFile{specXcoachToVhdlI}
     96        The first release of a program that translates \xcoachplus description to
    6497        synthesizable VHDL description.
    65     \item{VF}{18}{24}{x}{\Subs}{\xcoach format to VHDL}
    66         \global\edef\STxcoachTOvhdl{\name}
    67         The \name-4-V1 deliverable without bugs reported by the demonstrators.
     98    \item{VF}{18}{24}{x}{\Subs}{\xcoachplus format to VHDL}
     99        \setMacroInAuxFile{specXcoachToVhdl}
     100        Maintenance work of the former software (\specXcoachToVhdlI).
    68101    \end{livrable}
    69102\item Backend HLS tools use a characterized macro-cell library to build the
     
    75108    \item{}{0}{6}{d}{\Subs}{macro-cell definition}
    76109        The document define the macro cell and the file format describing them.
    77     \item{}{0}{12}{x}{\Subs}{macro-cell library generator}
     110    \item{}{6}{12}{x}{\Subs}{macro-cell library generator}
    78111        A progam that generates automatically the characterized macro-cell library
    79112        for a FPGA device.
  • anr/task-2.tex

    r35 r36  
    77\begin{objectif}
    88This task relies to the prototyping and the generation of FPGA-SoC digital systems.
    9 Its is described on figure~\ref{archi-csg} and it consists of
    10 Its objective is to allows the system designer to explore the system space design by quickly prototyping and then to generate automatically the FPGA-SoC system.
     9Its is described on figure~\ref{archi-csg}.
     10Its objective is to allow the system designer to explore the system space design by
     11quickly prototyping and then to generate automatically the FPGA-SoC system.
    1112This task consists of
    1213\begin{itemize}
     
    1415\item the configuration and the development of drivers of the operating systems,
    1516\item the CSG software that generates the simulators for prototiping and the FPGA-SoC system,
    16 \item the specification of enhanced communication schem and their sofware and hardware implementation.
     17\item the specification of enhanced communication schems and their sofware and hardware implementation.
    1718\end{itemize}
    1819This task being based on the SocLib platform, a first release will be delivrable at $T0+12$
     
    2324%
    2425\begin{workpackage}{D2}
    25 \item This \ST corresponds to the Coach System Generator (DSG) software.
     26\item This \ST corresponds to the Coach System Generator (CSG) software.
    2627    \begin{livrable}
    27     \item{V1}{0}{12}{x}{\Supmc}{DSG} The first milestone that will allow demonstrators to
    28         start working using the COACH hardware architecture template.
    29     \item{V2}{0}{24}{x}{\Supmc}{DSG} This milestone adds to DSG the support to the Xilinx
    30         and Altera architectural templates and to the enhanced communication system.
    31     \item{VF}{0}{36}{x}{\Supmc}{DSG} The final release.
     28    \item{V1}{0}{12}{x}{\Supmc}{CSG} \setMacroInAuxFile{csgCoachArch}
     29        The first milestone that will allow demonstrators to start working using the COACH
     30        hardware architecture template.
     31    \item{V2}{12}{18}{x}{\Supmc}{CSG} \setMacroInAuxFile{csgPrototypingOnly}
     32        This milestone adds to CSG the support to the XILINX and ALTERA architectural
     33        templates and to the enhanced communication system.
     34        In this milestone only the SystemC prototyping will be supported for the XILINX
     35        and ALTERA architectural template.
     36        HAS is available.
     37    \item{V3}{18}{24}{x}{\Supmc}{CSG} \setMacroInAuxFile{csgAllArch}
     38        This milestone extends CSG (\csgPrototypingOnly) to
     39        FPGA-SoC generation for the XILINX and ALTERA architectural template.
     40    \item{VF}{24}{36}{x}{\Supmc}{CSG} Maintenance work of CSG.
    3241    \end{livrable}
    33 \item This \ST relies to the components of the Coach architectural template.
     42\item This \ST relies to the components of the architectural template.
     43    \\
     44    For the COACH architectural template, it consists of the devlopment of the VHDL
     45    synthesizable description of the missing components. Notice that the SystemC models
     46    comes from the SocLib ANR project, the processor with its cache comes from the TSAR
     47    ANR project.
     48    \\
     49    For the XILINX and ALTERA architectural template, we use the XILINX and ALTERA IPs.
     50    The component that miss is the MWMR used for commucation between the task of the
     51    application.
    3452    \begin{livrable}
    35     \item{}{0}{12}{x}{\Supmc}{COACH architecture} The VHDL synthesizable description
    36         of the SocLib MWMR, TokenRing.
     53    \item{}{0}{12}{h}{\Supmc}{COACH architecture} The VHDL synthesizable descriptions
     54        of the SocLib MWMR, TokenRing components.
     55    \item{V1}{6}{18}{x}{\Stima}{XILINX architecture}
     56        \setMacroInAuxFile{csgXilinxSystemC}
     57        The SystemC simulation module of the MWMR component with a PLB bus interface plus
     58        the SystemC modules of the components of the XILINX architectural template
     59        not available in the SocLib component library.
     60    \item{VF}{18}{24}{h}{\Stima}{XILINX architecture}
     61        The synthesizable VHDL description of the MWMR component corresponding to the
     62        SystemC module of the former delivrable (\csgXilinxSystemC).
     63    \item{V1}{6}{18}{x}{\Sirisa}{ALTERA architecture}
     64        \setMacroInAuxFile{csgAlteraSystemC}
     65        The SystemC simulation module of the MWMR component with a AVALON bus interface plus
     66        the SystemC modules of the components of the ALTERA architectural template
     67        not available in the SocLib component library.
     68    \item{VF}{18}{24}{h}{\Sirisa}{ALTERA architecture}
     69        The synthesizable VHDL description of the MWMR component corresponding to the
     70        SystemC module of the former delivrable (\csgAlteraSystemC);
    3771    \end{livrable}
    38 \item This \ST consists of the configuration of the SocLib Mutek operating system and the
    39     development of drivers for the hardware architectural template and enhanced
    40     communication schems.
     72\item This \ST consists of the configuration of the SocLib MUTEK and DNA operating
     73    system and the development of drivers for the hardware architectural templates
     74    and enhanced communication schems defined in \novers{\specCsgManual} delivrable.
     75    For the ALTERA and XILINX architectural template, the OSs must also be ported on
     76    the NIOS2 and MICROBLAZE processors.
    4177    \begin{livrable}
    42     \item{V1}{0}{12}{x}{\Supmc}{Mutek OS} The first milestone required by \ST T2-1-V1.
    43     \item{V2}{0}{24}{x}{\Supmc}{Mutek 0S} This milestone required by \ST T2-1-V2.
    44     \item{VF}{0}{36}{x}{\Supmc}{Mutek OS} The final release.
     78    \item{V1}{6}{8}{x}{\Supmc}{MUTEK OS} The drivers required for the first CSG
     79    milestone (delivrable \csgCoachArch).
     80    \item{V2}{8}{18}{x}{\Supmc}{MUTEK 0S} The drivers required for the
     81    second CSG milestone ({\csgPrototypingOnly}).
     82    \item{VF}{18}{33}{x}{\Supmc}{MUTEK OS} Maintenance work.
     83    \item{}{6}{18}{x}{\upmc}{Port of MUTEK OS}
     84        Port of MUTEK OS on the NIOS2 and MICROBLAZE processors.
     85    \item{V1}{6}{8}{x}{\tima}{DNA OS} The drivers required for the first CSG
     86    milestone (delivrable \csgCoachArch).
     87    \item{V2}{8}{18}{x}{\Stima}{DNA 0S} The drivers required for the
     88    second CSG milestone ({\csgPrototypingOnly}).
     89    \item{VF}{18}{33}{x}{\Stima}{DNA OS} Maintenance work.
     90    \item{}{6}{18}{x}{\tima}{Port of DNA OS}
     91        Port of MUTEK OS on the NIOS2 and MICROBLAZE processors.
    4592    \end{livrable}
    46 \item This \ST consists of the configuration of the SocLib DNA operating system and the
    47     development of drivers for the hardware architectural template and enhanced
    48     communication schems.
    49     \begin{livrable}
    50     \item{V1}{0}{12}{x}{\Stima}{DNA OS} The first milestone required by \ST T2-1-V1.
    51     \item{V2}{0}{24}{x}{\Stima}{DNA 0S} This milestone required by \ST T2-1-V2.
    52     \item{VF}{0}{36}{x}{\Stima}{DNA OS} The final release.
    53     \end{livrable}
    54 \item This \ST relies to definition and implementation of the enhanced communication
    55     schems usable in the definition of communicante task graph.
    56     \begin{livrable}
    57     \item{}{0}{6}{d}{\Stima}{CSG user manual} A document that describes the CSG task
    58         graph inputs (task graph, task description, communication schems).
    59     \end{livrable}
    60 \item This \ST relies to implementation of the MWMR component for the Xilinx and Altera
    61     architectural template.
    62     \begin{livrable}
    63     \item{}{0}{18}{x}{\Stima}{MWMR Altera} The VHDL synthesizable description and
    64         SystemC model of the MWMR with a PLB bus interface.
    65     \item{}{0}{18}{x}{\Sirisa}{MWMR Altera} The VHDL synthesizable description and
    66         SystemC model of the MWMR with an AVALON bus interface.
    67     \end{livrable}
     93% moved in task 1
     94%\item This \ST relies to definition and implementation of the enhanced communication
     95%    schems usable in the definition of communicante task graph.
     96%    \begin{livrable}
     97%    \item{}{0}{6}{d}{\Stima}{CSG user manual} A document that describes the CSG task
     98%        graph inputs (task graph, task description, communication schems).
     99%    \end{livrable}
     100%\item This \ST relies to implementation of the MWMR component for the Xilinx and Altera
     101%    architectural template.
     102%    \begin{livrable}
     103%    \item{}{0}{18}{x}{\Stima}{MWMR Altera} The VHDL synthesizable description and
     104%        SystemC model of the MWMR with a PLB bus interface.
     105%    \item{}{0}{18}{x}{\Sirisa}{MWMR Altera} The VHDL synthesizable description and
     106%        SystemC model of the MWMR with an AVALON bus interface.
     107%    \end{livrable}
    68108% FIXME:CITI
    69109\end{workpackage}
  • anr/task-4.tex

    r35 r36  
    1313\xcoachplus data that is \xcoach format annotated with hardware information such as
    1414variable binded on register, operation binded on cell and sheduled. The \xcoach format
    15 being generated by {\STcTOxcoach} \ST and \xcoachplus being treated by {\STxcoachTOsystemc}
    16 and {\STxcoachTOvhdl} \STs, this task is very dependent of task-1 task.
     15being generated by {\specXcoachToC} deliverable and \xcoachplus being treated by
     16\novers{\specXcoachToSystemC} and \novers{\specXcoachToVhdl} deliverables,
     17this task is very dependent of the task~1.
    1718\par
    1819For the two HAS front-end, this task is based on the already existing HLS tools GAUT and
     
    3031    them by \xcoach and \xcoachplus drivers.
    3132    \begin{livrable}
    32     \item{V1}{6}{12}{x}{\Stima}{UGH integration} An executable that is able to read
     33    \item{V1}{6}{12}{x}{\Stima}{UGH integration} The UGH software that is able to read
    3334        \xcoach format.
    34     \item{VF}{12}{18}{x}{\Stima}{UGH integration} An executable that is able to read
     35    \item{V2}{12}{18}{x}{\Supmc}{UGH integration} The UGH software that is able to read
    3536        \xcoach format and to write \xcoachplus format.
     37    \item{VF}{18}{33}{x}{\Supmc}{UGH integration} Maintenance work of the UGH software.
    3638    \end{livrable}
    3739\item The goal of this \ST is to integrate the GAUT HLS tool to the COACH framework. It
     
    3941    them by \xcoach and \xcoachplus drivers.
    4042    \begin{livrable}
    41     \item{V1}{6}{12}{x}{\Stima}{GAUT integration} An executable that is able to read
     43    \item{V1}{6}{12}{x}{\Stima}{GAUT integration} The GAUT software that is able to read
    4244        \xcoach format.
    43     \item{VF}{12}{18}{x}{\Stima}{GAUT integration} An executable that is able to read
     45    \item{VF}{12}{18}{x}{\Stima}{GAUT integration} The GAUT software that is able to read
    4446        \xcoach format and to write \xcoachplus format.
    4547    \end{livrable}
     
    4850    usefull enhancements
    4951    \begin{livrable}
    50     \item{}{18}{24}{x}{\Stima}{UGH enhancement 1} A UGH excutable that is able to treat
     52    \item{}{18}{24}{x}{\Stima}{UGH enhancement 1} The UGH software whith support for treating
    5153        automatically data dominated sections included into a control dominated application.
    52     \item{}{21}{27}{x}{\Stima}{UGH enhancement 2} A UGH executable that is able to
    53         generate an micro-architecture without the varaiable binding currently done by the
     54    \item{}{21}{27}{x}{\Stima}{UGH enhancement 2} The UGH software that is able to
     55        generate an micro-architecture without the variable binding currently done by the
    5456        designer.
    55     \item{}{18}{24}{x}{\Supmc}{GAUT enhancement 1} A GAUT excutable that is able to
     57    \item{}{18}{24}{x}{\Subs}{GAUT enhancement 1} A GAUT excutable that is able to
    5658        \mustbecompleted{FIXME:UBS: ........}.
    57     \item{}{21}{27}{x}{\Supmc}{GAUT enhancement 2} A GAUT excutable that is able to
     59    \item{}{21}{27}{x}{\Subs}{GAUT enhancement 2} A GAUT excutable that is able to
    5860        \mustbecompleted{FIXME:UBS: ........}.
    59     \item{}{21}{27}{x}{\Supmc}{GAUT enhancement 2} A GAUT excutable that is able to
     61    \item{}{21}{27}{x}{\Subs}{GAUT enhancement 2} A GAUT excutable that is able to
    6062        \mustbecompleted{FIXME:UBS: ........}.
    6163    \end{livrable}
     
    7375    \item{V2}{6}{12}{x}{\Supmc}{frequency calibration} A VHDL description of hardware
    7476        added to the coprocessor to enable the calibration.
    75     \item{VF}{12}{20}{x}{\Supmc}{frequency calibration} The frequency calibration software
     77    \item{VF}{12}{24}{x}{\Supmc}{frequency calibration} The frequency calibration software
    7678        consists of a driver in the FPGA-SoC operating system and of a control software on
    7779        a PC.
  • anr/task-5.tex

    r35 r36  
    2929    the application part running on the FPGA-SoC.
    3030    \begin{livrable}
    31     \item{-VF}{0}{6}{d}{\Supmc}{HPC communication API} User refernce manual describing the API.
     31    \item{}{0}{6}{d}{\Supmc}{HPC communication API} User refernce manual describing the API.
     32        \global\edef\hpcCommApi{\name}
    3233    \end{livrable}
    33 \item This \ST aims with the application partitioning help. It is a library implementing
    34     the communication API with features to profile the application partionning.
     34\item This \ST aims consists in helping the application partitioning help.
     35    It is a library implementing the communication API with features to profile
     36    the application partionning.
    3537    \begin{livrable}
    36     \item{-VF}{0}{12}{x}{\Supmc}{HPC partionning help} A library.
     38    \item{}{6}{12}{x}{\Supmc}{HPC partionning helper} A library implementing the communication
     39        API defined in the {\hpcCommApi} delivrable.
    3740    \end{livrable}
    3841\item This \ST aims with the implementation of the communication API on the both sides (PC
    3942    part and FPGA-SoC).
    4043    \begin{livrable}
    41     \item{}{0}{21}{x}{\Supmc}{HPC API for Linux PC}
    42     \item{}{0}{21}{x}{\Stima}{HPC API for DNA OS}
    43     \item{}{0}{21}{x}{\Supmc}{HPC API for Mutek OS}
     44    \item{}{12}{21}{x}{\Supmc}{HPC API for Linux PC} The PC part of the HPC communication API
     45        that comminicate with the FPGA-SOC, a library and probably a LINUX module.
     46    \item{}{12}{21}{x}{\Supmc}{HPC API for MUTEK OS} The FPGA-SoC part of the communication API, a
     47        driver.\global\edef\hpcMutekDriver{\name}
     48    \item{}{21}{24}{x}{\Stima}{HPC API for DNA OS} Port of the {\hpcMutekDriver} driver on the DNA OS.
    4449    \end{livrable}
    4550\item This \ST aims with the implementation of hardware required by the COACH
    4651    architectural template for using the PCI/X IP of \altera and \xilinx.
    4752    \begin{livrable}
    48     \item{}{0}{21}{h}{\Stima}{HPC hardware \xilinx} A synthesizable VHDL description
    49         of a PLB/VCI bridge.
    50     \item{}{0}{21}{h}{\Saltera}{HPC hardware \altera} A synthesizable VHDL description
    51         of a AVALON/VCI bridge.
     53    \item{}{9}{18}{h}{\Stima}{HPC hardware \xilinx}
     54        \setMacroInAuxFile{hpcPlbBridge}
     55        The synthesizable VHDL description of a PLB/VCI bridge and its corresponding SystemC model.
     56    \item{}{9}{18}{h}{\Saltera}{HPC hardware \altera}
     57        \setMacroInAuxFile{hpcAvalonBridge}
     58        The synthesizable VHDL description of a AVALON/VCI bridge and its corresponding SystemC model.
    5259    \end{livrable}
    5360\item This \ST aims with the dynamic reconfiguration of FPGA.
    5461    \begin{livrable}
    55     \item{}{0}{30}{x}{\Stima}{dynamic reconfiguration DNA drivers}
    56     \item{}{0}{30}{x}{\Supmc}{dynamic reconfiguration mutek drivers}
    57     \item{}{0}{30}{x}{\Supmc}{CSG support for dynamic reconfiguration}
    58     \item{}{0}{30}{x}{\Stima}{PC support for dynamic reconfiguration}
     62    \item{}{18}{30}{x}{\Stima}{dynamic reconfiguration \ganttlf DNA drivers}
     63        \global\edef\hpcDynconfDriver{\name}
     64        \mustbecompleted{FIXME:TIMA ....}
     65    \item{}{30}{36}{x}{\Supmc}{dynamic reconfiguration \ganttlf MUTEK drivers}
     66        Port of the {\hpcDynconfDriver} \mustbecompleted{FIXME:TIMA driver} on the MUTEK OS.
     67    \item{}{24}{36}{x}{\Supmc}{CSG support for \ganttlf dynamic reconfiguration}
     68        \mustbecompleted{FIXME:TIMA ....}
     69    \item{}{18}{36}{x}{\Stima}{PC support for \ganttlf dynamic reconfiguration}
     70        \mustbecompleted{FIXME:TIMA ....}
    5971    \end{livrable}
    6072\item This \ST is the delivery of 2 PCI/X \mustbecompleted{FIXME: Stratix4} FPGA board
     
    6274    They are based on \mustbecompleted{FIXME:stratix4} FPGA device of 400,000 LUT.
    6375    \begin{livrable}
    64     \item{}{0}{6}{x}{\Saltera}{HPC development boards}
     76    \item{}{0}{6}{m}{\Saltera}{HPC development boards} Two PCI/X FPGA boards.
    6577    \end{livrable}
    6678\end{workpackage}
  • anr/task-6.tex

    r35 r36  
    1818    or a database management system.
    1919    \begin{livrable}
    20     \item{V1}{0}{6}{x}{\Supmc}{reference demonstrator} Choice of the demonstrator and its
     20    \item{V1}{0}{6}{x}{\Supmc}{reference demonstrator specification} Choice of the demonstrator and its
    2121    implementation as a PC C/C++ program.
    22     \item{VF}{0}{12}{x}{\Supmc}{partitionned reference demonstrator} The demonstrator
     22    \item{VF}{6}{12}{x}{\Supmc}{reference demonstrator} The demonstrator
    2323    splited into 2 parts, a description as communicante task graph of the FPGA-SoC part.
    2424    \end{livrable}
Note: See TracChangeset for help on using the changeset viewer.