1 | |
---|
2 | ************************************************************************************************************** |
---|
3 | Work package 1 : Specification de l'architecture logicielle de COACH et outils communs: |
---|
4 | |
---|
5 | TASK-1 LIP6+ALL Specification de COACH au niveau du concepteur de systeme: |
---|
6 | COACH est une boite noire, les entrées, les sorties, le flot |
---|
7 | de conception préconisé, Définition de l'architecture du MP-SoC et ses 3 mappings |
---|
8 | 0+6 LIP6 Livrable-1: un document |
---|
9 | |
---|
10 | TASK-2 LIP6+ALL Structure interne de COACH. |
---|
11 | 0+6 LIP6 Livrable: un document |
---|
12 | |
---|
13 | TASK-3 LAB-STIC+ALL Définition du language commun annoté (xfg: xlm flow graph) |
---|
14 | 0+6 LIP Livrable 1: V0 un document, une dtd |
---|
15 | 0+12 LIP Livrable 1: V1 un document, une dtd |
---|
16 | 0+18 Livrable 1: V2 expression du potentiel des boucles |
---|
17 | |
---|
18 | 0+12 LAB-STIC Livrable 2: VO gcc2coach, coach2c |
---|
19 | 0+18 LAB-STIC FI gcc2coach, coach2c |
---|
20 | 0+18 LIP6 Livrable 3: VO coach2systemc |
---|
21 | 0+24 LIP6 FI coach2systemc |
---|
22 | LAB-STIC : Livrable 4: V0 0+18 coach2vhdl |
---|
23 | V1 : 0+24 |
---|
24 | FI : 0+32 |
---|
25 | |
---|
26 | TASK-4 LAB-STIC+ALL Définition et description des cellules de base et de leur caractéristques. |
---|
27 | 0+6 LAB-STIC Livrable 1: un document |
---|
28 | 0+12 LAB-STIC Livrable 2: outil de caractéristion automatique |
---|
29 | |
---|
30 | ************************************************************************************************************** |
---|
31 | Work package 2 : Outils de conception systemes: |
---|
32 | |
---|
33 | TASK-1 LIP6 Mutek Operating sytem |
---|
34 | 0+12 LIP6 Livrable 1: OS pour Embedded System |
---|
35 | 0+30 LIP6 Livrable 2: OS pour HPC (driver PCI/X) et reconfiguration dynamique |
---|
36 | |
---|
37 | TASK-2 TIMA DNA Operating sytem |
---|
38 | 0+12 TIMA Livrable 1: OS pour Embedded System |
---|
39 | 0+30 TIMA Livrable 2: OS pour HPC (driver PCI/X) et reconfiguration dynamique |
---|
40 | |
---|
41 | TASK-3 LIP6+ALL Definition de l'entrée de CSG (Coach System Generator): |
---|
42 | la syntaxe d'entrée TCG, architecture, |
---|
43 | les primitives de communication entre taches |
---|
44 | (variable globale, canaux, tampon ping-pong). |
---|
45 | 0+6 LIP6 Livrable 1: document |
---|
46 | 0+12 LIP6 Livrable 2: Executable sans reconfiguration: gestion des 3 architectures. |
---|
47 | 0+30 TIMA+LIP6 Livrable 3: CSG avec reconfiguration +++++ Ajouter CDP-2-3 |
---|
48 | |
---|
49 | TASK-4 LIP6 Composants matériels de l'architecture SOCLIB + composants génériques |
---|
50 | 0+18 LIP6 Livrable 1: VHDL synthetisable des composants VCI : MWMR, IRQ. |
---|
51 | wrapper |
---|
52 | 0+18 IRISA? Livrable 2: wrapper SystemC VCI/AVALON |
---|
53 | 0+18 IRISA? Livrable 3: wrapper VHDL synthé VCI/AVALON |
---|
54 | 0+18 TIMA? Livrable 4: wrapper SystemC VCI/PLB |
---|
55 | 0+18 TIMA? Livrable 5: wrapper VHDL synthé VCI/PLB |
---|
56 | |
---|
57 | 0+18 CITI Livrable 6: VHDL synthetisable d'un composant VCI MWMR++ (DMA intelligent) |
---|
58 | 0+18 CITI Livrable 7: modèle SystemC d'un composant MWMR++ VCI(DMA intelligent) |
---|
59 | 0+18 LAB-STICC Livrable 8: VHDL synthetisable d'un composant spatio-temporel |
---|
60 | |
---|
61 | |
---|
62 | sans wrapper |
---|
63 | 0+18 TIMA Livrable 2: VHDL synthetisable des composants PLB :MWMR, IRQ. |
---|
64 | 0+18 TIMA Livrable 3: modèle SystemC des composants PLB :MWMR, IRQ. |
---|
65 | 0+18 IRISA? Livrable 4: VHDL synthetisable des composants AVALON : MWMR, IRQ. |
---|
66 | 0+18 IRISA? Livrable 5: modèle SystemC des composants AVALON :MWMR, IRQ. |
---|
67 | |
---|
68 | 0+18 CITI Livrable 6: VHDL synthetisable d'un composant VCI MWMR++ (DMA intelligent) |
---|
69 | 0+18 CITI Livrable 6: VHDL synthetisable d'un composant PLB MWMR++ (DMA intelligent) |
---|
70 | 0+18 CITI Livrable 6: VHDL synthetisable d'un composant AVALON MWMR++ (DMA intelligent) |
---|
71 | 0+18 CITI Livrable 6: modèle SystemC d'un composant MWMR++ VCI(DMA intelligent) |
---|
72 | 0+18 CITI Livrable 6: modèle SystemC d'un composant MWMR++ PLB (DMA intelligent) |
---|
73 | 0+18 CITI Livrable 6: modèle SystemC d'un composant MWMR++ AVALON(DMA intelligent) |
---|
74 | |
---|
75 | 0+18 LAB-STICC Livrable 7: VHDL synthetisable d'un composant spatio-temporel |
---|
76 | |
---|
77 | TASK-5 TIMA Composants matériels de l'architecture Xilinx |
---|
78 | 0+18 TIMA Livrable 1: modele systemC des composants MWMR, IRQ. |
---|
79 | 0+20 TIMA Livrable 2: VHDL synthetisable des composants MWMR, IRQ. |
---|
80 | |
---|
81 | TASK-6 IRISA Composants matériels de l'architecture Altera |
---|
82 | 0+18 IRISA Livrable 1: modele systemC des composants MWMR, IRQ. |
---|
83 | 0+20 IRISA Livrable 2: VHDL synthetisable des composants MWMR, IRQ. |
---|
84 | |
---|
85 | ************************************************************************************************************** |
---|
86 | Work package 3 : Outils de synthese front-end (polyedrique et ASIP) |
---|
87 | |
---|
88 | TASK-1 IRISA Extraction de motifs et regénération au format COACH annoté |
---|
89 | 0+18 Livrable 1: V0 Intégration manuelle des motifs |
---|
90 | 0+24 FI Intégration automatique des motifs (architecture-dépendant) |
---|
91 | |
---|
92 | TASK-2 IRISA Définition d'un modele simplifie de micro-architecture capable d'éxecuter des motifs issues de la tâche 1 |
---|
93 | 0+12 Livrable 1: Modèle SystemC du MIPS extensible |
---|
94 | 0+18 Livrable 1: Modèle VHDL du MIPS extensible |
---|
95 | |
---|
96 | 0+12 Livrable 2: Modèle SystemC du NIOS extensible |
---|
97 | 0+18 Livrable 2: Modèle VHDL NIOS extensible |
---|
98 | |
---|
99 | 0+12 Livrable 3: Modèle SystemC du µblaze extensible ?? |
---|
100 | 0+18 Livrable 3: Modèle µBlaze extensible ??? |
---|
101 | |
---|
102 | |
---|
103 | TASK-3 IRISA Définition d'un modele complexe de micro-architecture |
---|
104 | 0+24 Livrable 1: Modèle SystemC du MIPS extensible |
---|
105 | 0+24 Livrable 1: Modèle VHDL du MIPS extensible |
---|
106 | 0+36 Livrable 2: Rapport d'evaluation |
---|
107 | |
---|
108 | |
---|
109 | TASK-4 LIP-ALL Exploitation des boucles Polyedriques |
---|
110 | 0+12 Outil d'ordonnancement |
---|
111 | 0+18 Outil d'exploration des transformations |
---|
112 | 0+24 generation du code xfg etendu V1 |
---|
113 | 0+30 gestion de la memoire et contraction des tableaux |
---|
114 | 0+34 generation du code xfg etendu V2 |
---|
115 | |
---|
116 | ************************************************************************************************************** |
---|
117 | Work package 4 : Outils de synthese back-end (UGH, GAUT) |
---|
118 | |
---|
119 | TASK-1 LIP6/TIMA Adaptation de UGH a COACH |
---|
120 | 0+18 TIMA Livrable 1: executable(lire du xcoach) |
---|
121 | 0+18 TIMA Livrable 2: executable(ecrire du xcoach annote) |
---|
122 | |
---|
123 | TASK-2 LIP6/TIMA évolution de UGH. |
---|
124 | 0+18 LIP6 Livrable 1: executable UGH qui tient compte des primitives d'IO definies |
---|
125 | dans le WP2-T3 |
---|
126 | 0+?? TIMA Livrable 2: executable UGH qui peut generer une architecture sans que les assignations |
---|
127 | des variables sur les registres soient explicites. |
---|
128 | |
---|
129 | TASK-3 LAB-STICC Adaptation de GAUT a COACH |
---|
130 | 0+18 Livrable 1: executable(lire du xcoach) |
---|
131 | 0+18 Livrable 2: executable(ecrire du xcoach annote) |
---|
132 | |
---|
133 | TASK-4 LAB-STICC évolution de GAUT |
---|
134 | 0+18 Livrable 1: prise en compte du modèle CDFG |
---|
135 | 0+?? Livrable 2: génération d'architecture multi-clock. |
---|
136 | 0+?? Livrable 3: synthése hierachique |
---|
137 | |
---|
138 | TTASK-5 LIP6 Calibrage de la fréquence des coprocesseurs |
---|
139 | 0+6 LIP6 Livrable 1: document |
---|
140 | 0+12 LIP6 Livrable 2: VHDL synthetisable de la FSM calibrable dynamiquement |
---|
141 | 0+20 LIP6 Livrable 3: logiciel de calibrage (cote OS et cote PC). |
---|
142 | |
---|
143 | |
---|
144 | ************************************************************************************************************** |
---|
145 | Work package 5 : Interlogiciel de communication PC/Accélérateur: |
---|
146 | |
---|
147 | TASK-1 LIP6+ALL Définition des protocoles de communication entre l'application qui |
---|
148 | tourne sur le PC et le TCG qui tourne sur l'accélérateur. |
---|
149 | 0+6 LIP6 Livrable 1: Document. |
---|
150 | |
---|
151 | TASK-2 LIP6 Outils d'aide au bi-partitionnement (mesure de l'efficacité) |
---|
152 | 0+12 LIP6 Livrable 1: Librairie C de communication contenant du code permettant |
---|
153 | d'estimer l'efficacite. |
---|
154 | |
---|
155 | (TASK inutile si bridge) |
---|
156 | TASK-3 ???? HW pour l'architecture SOCLIB |
---|
157 | 0+?? ???? Livrable: VHDL synthetisable d'un pont VCI/Avalon |
---|
158 | 0+?? TIMA Livrable: VHDL synthetisable d'un pont VCI/Bus-xilinx |
---|
159 | |
---|
160 | TASK-4 ???? Sofware pour HPC |
---|
161 | 0+?? ???? Livrable 1: driver PCI/X de IP Altera |
---|
162 | 0+?? TIMA Livrable 2: driver PCI/X de IP Xilinx |
---|
163 | 0+20 LIP6 Livrable 3: Implantation du protocole deifini en TASK-1 du cote PC/Linux |
---|
164 | et SOC. |
---|
165 | |
---|
166 | |
---|
167 | ************************************************************************************************************** |
---|
168 | |
---|
169 | --------------------------------------------------------------------------------- |
---|
170 | Annexe 1 |
---|
171 | Actions de base determinees lors d'une reunion LIP6/TIMA |
---|
172 | --------------------------------------------------------------------------------- |
---|
173 | |
---|
174 | HLS : |
---|
175 | UBS+TOUS *1) Définition des cellules et calibrage en fonction des cibles (WP1-T4) |
---|
176 | LIP6 *2) Calibrage de la fréquence des coprocesseurs |
---|
177 | TOUS *3) Définition de la représentation intermédiaire commune (WP1-T3) |
---|
178 | TOUS *4) Définition de la représentation intermédiaire annotée, en vue (WP1-T3) |
---|
179 | de génération de SystemC et VHDL |
---|
180 | UBS *5) gcc2xml-coach, xml-coach2c (WP1-3) |
---|
181 | - pilotage du front-end gcc |
---|
182 | LIP6 *6) xml-coach2SystemC (WP1-3) |
---|
183 | TIMA *7) xml-coach2VHDL (WP1-3) |
---|
184 | |
---|
185 | UGH: |
---|
186 | LIP6+TIMA *1) Extension des primitives de communication (WP2-T3) |
---|
187 | - variables globales, scalaires et tableaux |
---|
188 | - pipeline lecture/calcul/écriture en utilisant des |
---|
189 | primitives genre aio_read/aio_write/aio_return |
---|
190 | |
---|
191 | TIMA *2) génération automatique du DDP en fonction du comportement |
---|
192 | relacher un peu les contraintes syntaxiques (WP4-T2) |
---|
193 | |
---|
194 | 3) n'apparait pas dans les WP inclus implicite dans (WP4-T2 ou T1). |
---|
195 | TIMA+LIP6 *3) alléger la dépendance syntaxique entre le C et le DDP |
---|
196 | - associer un ensemble de variables à un RGF |
---|
197 | - ajout automatique des registres |
---|
198 | TIMA *4) Utilisation du xml à la place du front-end gcc actuel (WP4-T1) |
---|
199 | donc en pratique du xml-coach2vpn |
---|
200 | LIP6 *5) Génération du xml-coach annoté (WP4-T1) |
---|
201 | |
---|
202 | RECONFIGURATION DYNAMIQUE PARTIELLE: |
---|
203 | LIP6+TIMA *1) Introduction de la notion de conteneur : définition, (WP2-T3) |
---|
204 | structuration, fusion, ... |
---|
205 | Bitstream correspondants |
---|
206 | TIMA *2) Gestion de la reconfiguration dynamique partielle pour |
---|
207 | optimiser l'utilisation des ressources FPGA |
---|
208 | TIMA *3) Définition de la gestion des bitstreams avec des copies |
---|
209 | locales et stockage dans les hiérarchies mémoires |
---|
210 | LIP6+TIMA *4) Implantation sur DSX : connaissance de la notion de conteneur (WP2-T3-L3) |
---|
211 | TIMA+LIP6 *5) Impact sur l'OS (chargement dynamique d'applications ou de |
---|
212 | tâches) (WP2-T1/T2-L2) |
---|
213 | |
---|
214 | TOOLING FOR EMBEDDED |
---|
215 | CSG (Coach System Generator) : |
---|
216 | TOUS *1) Définition d'un gabarit architectural (WP1-T1) |
---|
217 | TOUS *2) Définition de 3 mappings possibles : (WP1-T1) |
---|
218 | soclib vhdl, xilinx et altera (en DSX) |
---|
219 | LIP6 *3) Introduire la notion de variables partagées dans DSX (WP2-T3) |
---|
220 | - qui a le droit d'écrire une variable partagée ? |
---|
221 | LIP6+TIMA *4) Choix et fourniture des OS (WP2-T1/2-L1) et HW (WP2-T4/5/5) qui va avec |
---|
222 | +TOUS - Etude des RAMLOCKS vs LL/SC |
---|
223 | - Controleur d'interruption |
---|
224 | - ... |
---|
225 | |
---|
226 | TOOLING FOR HPC |
---|
227 | LIP6 *1) Définition des protocoles entre l'OS du PC et l'OS du SoC (W5-T1) |
---|
228 | LIP6 *2) Outil de mesure de l'efficacité d'un bi-partitionnement de (W5-T2) |
---|
229 | l'application |
---|
230 | LIP6+TIMA+ *3) Connexion hw entre PC et SoC : pci-express (WP5-T3) |
---|
231 | IRISA bridge os/pci-express/avalon-plb/vci |
---|
232 | (nécessite différentes implantations pour les |
---|
233 | différentes cartes + drivers correspondant) |
---|
234 | LIP6 *4) Implantation du protocole et du loader : (WP2-T1/2-L2), WP5-T4-L3 |
---|
235 | lib unix, driver linux, driver os-soc |
---|
236 | |
---|
237 | |
---|
238 | --------------------------------------------------------------------------------- |
---|
239 | Annexe 2 |
---|
240 | --------------------------------------------------------------------------------- |
---|
241 | ____________________________________________________________________________________________________ |
---|
242 | |ICU Avalon |ICU Xilinx |MWMR Avalon |MWMR Xilinx |NIOS |MICROBLAZE | |
---|
243 | ________|_______________|_______________|_______________|_______________|_______________|___________| |
---|
244 | SystemC |IRISA |TIMA |IRISA |TIMA |? |? | |
---|
245 | ________|_______________|_______________|_______________|_______________|_______________|___________| |
---|
246 | VHDL |IRISA |TIMA |IRISA |TIMA |Altera |Xilinx | |
---|
247 | ________|_______________|_______________|_______________|_______________|_______________|___________| |
---|
248 | |
---|
249 | |
---|
250 | François charot (IRISA) : développeur des composants soclib compatibles Avalon |
---|
251 | |
---|
252 | --------------------------------------------------------------------------------- |
---|