[6] | 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é. |
---|
| 14 | 0+6 LIP Livrable 1: un document, une ddt |
---|
| 15 | 0+12 LAB-STIC Livrable 2: gcc2coach, coach2c |
---|
| 16 | 0+18 LIP6 Livrable 3: coach2systemc |
---|
| 17 | 0+18 TIMA Livrable 4: coach2vhdl |
---|
| 18 | |
---|
| 19 | TASK-4 LAB-STIC+ALL Définition et description des cellules de base et de leur caractéristques. |
---|
| 20 | 0+6 LAB-STIC Livrable 1: un document |
---|
| 21 | 0+12 LAB-STIC Livrable 2: ????? |
---|
| 22 | |
---|
| 23 | ************************************************************************************************************** |
---|
| 24 | Work package 2 : Outils de conception systemes: |
---|
| 25 | |
---|
| 26 | TASK-1 LIP6 Mutek Operating sytem |
---|
| 27 | 0+12 LIP6 Livrable 1: OS pour Embedded System |
---|
| 28 | 0+30 LIP6 Livrable 2: OS pour HPC (driver PCI/X) et reconfiguration dynamique |
---|
| 29 | TASK-2 TIMA DNA Operating sytem |
---|
| 30 | 0+12 TIMA Livrable 1: OS pour Embedded System |
---|
| 31 | 0+30 TIMA Livrable 2: OS pour HPC (driver PCI/X) et reconfiguration dynamique |
---|
| 32 | TASK-3 LIP6+ALL Definition de l'entrée de CSG (Coach System Generator): la syntaxe |
---|
| 33 | d'entrée TCG, architecture, les primitives de communication entre tache |
---|
| 34 | (variable globale, canaux, tampon ping-pong). |
---|
| 35 | 0+6 LIP6 Livrable 1: document |
---|
| 36 | 0+12 LIP6 Livrable 2: Executable sans reconfiguration: gestion des 3 architectures. |
---|
| 37 | 0+30 TIMA+LIP6 Livrable 3: CSG avec reconfiguration +++++ Ajouter CDP-2-3 |
---|
| 38 | |
---|
| 39 | TASK-4 LIP6 Composants matériels de l'architecture SOCLIB |
---|
| 40 | 0+18 LIP6 Livrable 1: VHDL synthetisable des composants MWMR, IRQ. |
---|
| 41 | |
---|
| 42 | TASK-5 TIMA Composants matériels de l'architecture Xilinx |
---|
| 43 | 0+18 TIMA Livrable 1: modele systemC des composants MWMR, IRQ. |
---|
| 44 | 0+20 TIMA Livrable 2: VHDL synthetisable des composants MWMR, IRQ. |
---|
| 45 | |
---|
| 46 | TASK-6 IRISA Composants matériels de l'architecture Altera |
---|
| 47 | 0+18 IRISA Livrable 1: modele systemC des composants MWMR, IRQ. |
---|
| 48 | 0+20 IRISA Livrable 2: VHDL synthetisable des composants MWMR, IRQ. |
---|
| 49 | |
---|
| 50 | ************************************************************************************************************** |
---|
| 51 | Work package 3 : Outils de synthese front-end (polyedrique et ASIP) |
---|
| 52 | |
---|
[7] | 53 | TASK-1 IRISA Un compilateur reciblable pour MIPS etendu (software) |
---|
| 54 | TASK-2 IRISA Definition d'un modele simplifie de micro-architecture MIPS extensible (sofware) |
---|
| 55 | TASK-3 IRISA Définition d'un modele complexe de micro-architecture MIPS extensible (rapport/software ?) |
---|
| 56 | TASK-4 IRISA Définition d'un modele complexe de micro-architecture MIPS extensible (exploratoire, rapport) |
---|
[6] | 57 | |
---|
| 58 | ************************************************************************************************************** |
---|
| 59 | Work package 4 : Outils de synthese back-end (UGH, GAUT) |
---|
| 60 | |
---|
| 61 | TASK-1 LIP6/TIMA Adaptation de UGH a COACH (lire du xcoach ecrire du xcoach annote) |
---|
| 62 | 0+18 TIMA Livrable 1: executable |
---|
| 63 | |
---|
| 64 | TASK-2 LIP6/TIMA Amélioration de UGH. |
---|
| 65 | 0+18 LIP6 Livrable 1: executable UGH qui tient compte des primitives d'IO definies |
---|
| 66 | dans le WP2-T3 |
---|
| 67 | 0+?? TIMA Livrable 2: executable UGH qui peut generer une architecture sans que les assignations |
---|
| 68 | des variables sur les registres soient explicites. |
---|
| 69 | |
---|
| 70 | TASK-3 LIP6 Calibrage de la fréquence des coprocesseurs |
---|
| 71 | 0+6 LIP6 Livrable 1: document |
---|
| 72 | 0+12 LIP6 Livrable 2: VHDL synthetisable de la FSM calibrable dynamiquement |
---|
| 73 | 0+20 LIP6 Livrable 3: logiciel de calibrage (cote OS et cote PC). |
---|
| 74 | |
---|
| 75 | |
---|
| 76 | ************************************************************************************************************** |
---|
| 77 | Work package 5 : Interlogiciel de communication PC/Accélérateur: |
---|
| 78 | |
---|
| 79 | TASK-1 LIP6+ALL Définition des protocoles de communication entre l'application qui |
---|
| 80 | tourne sur le PC et le TCG qui tourne sur l'accélérateur. |
---|
| 81 | 0+6 LIP6 Livrable 1: Document. |
---|
| 82 | |
---|
| 83 | TASK-2 LIP6 Outils d'aide au bi-partitionnement (mesure de l'efficacité) |
---|
| 84 | 0+12 LIP6 Livrable 1: Librairie C de communication contenant du code permettant |
---|
| 85 | d'estimer l'efficacite. |
---|
| 86 | |
---|
| 87 | TASK-3 ???? HW pour l'architecture SOCLIB |
---|
| 88 | 0+?? ???? Livrable: VHDL synthetisable d'un pont VCI/Avalon |
---|
| 89 | 0+?? TIMA Livrable: VHDL synthetisable d'un pont VCI/Bus-xilinx |
---|
| 90 | |
---|
| 91 | TASK-4 ???? Sofware pour HPC |
---|
| 92 | 0+?? ???? Livrable 1: driver PCI/X de IP Altera |
---|
| 93 | 0+?? TIMA Livrable 2: driver PCI/X de IP Xilinx |
---|
| 94 | 0+20 LIP6 Livrable 3: Implantation du protocole deifini en TASK-1 du cote PC/Linux |
---|
| 95 | et SOC. |
---|
| 96 | |
---|
| 97 | |
---|
| 98 | ************************************************************************************************************** |
---|
| 99 | |
---|
| 100 | --------------------------------------------------------------------------------- |
---|
| 101 | Annexe 1 |
---|
| 102 | Actions de base determinees lors d'une reunion LIP6/TIMA |
---|
| 103 | --------------------------------------------------------------------------------- |
---|
| 104 | |
---|
| 105 | HLS : |
---|
| 106 | UBS+TOUS *1) Définition des cellules et calibrage en fonction des cibles (WP1-T4) |
---|
| 107 | LIP6 *2) Calibrage de la fréquence des coprocesseurs |
---|
| 108 | TOUS *3) Définition de la représentation intermédiaire commune (WP1-T3) |
---|
| 109 | TOUS *4) Définition de la représentation intermédiaire annotée, en vue (WP1-T3) |
---|
| 110 | de génération de SystemC et VHDL |
---|
| 111 | UBS *5) gcc2xml-coach, xml-coach2c (WP1-3) |
---|
| 112 | - pilotage du front-end gcc |
---|
| 113 | LIP6 *6) xml-coach2SystemC (WP1-3) |
---|
| 114 | TIMA *7) xml-coach2VHDL (WP1-3) |
---|
| 115 | |
---|
| 116 | UGH: |
---|
| 117 | LIP6+TIMA *1) Extension des primitives de communication (WP2-T3) |
---|
| 118 | - variables globales, scalaires et tableaux |
---|
| 119 | - pipeline lecture/calcul/écriture en utilisant des |
---|
| 120 | primitives genre aio_read/aio_write/aio_return |
---|
| 121 | |
---|
| 122 | TIMA *2) génération automatique du DDP en fonction du comportement |
---|
| 123 | relacher un peu les contraintes syntaxiques (WP4-T2) |
---|
| 124 | |
---|
| 125 | 3) n'apparait pas dans les WP inclus implicite dans (WP4-T2 ou T1). |
---|
| 126 | TIMA+LIP6 *3) alléger la dépendance syntaxique entre le C et le DDP |
---|
| 127 | - associer un ensemble de variables à un RGF |
---|
| 128 | - ajout automatique des registres |
---|
| 129 | TIMA *4) Utilisation du xml à la place du front-end gcc actuel (WP4-T1) |
---|
| 130 | donc en pratique du xml-coach2vpn |
---|
| 131 | LIP6 *5) Génération du xml-coach annoté (WP4-T1) |
---|
| 132 | |
---|
| 133 | CONFIGURATION DYNAMIQUE PARTIELLE: |
---|
| 134 | LIP6+TIMA *1) Introduction de la notion de conteneur : définition, (WP2-T3) |
---|
| 135 | structuration, fusion, ... |
---|
| 136 | Bitstream correspondants |
---|
| 137 | TIMA *2) Gestion de la reconfiguration dynamique partielle pour |
---|
| 138 | optimiser l'utilisation des ressources FPGA |
---|
| 139 | TIMA *3) Définition de la gestion des bitstreams avec des copies |
---|
| 140 | locales et stockage dans les hiérarchies mémoires |
---|
| 141 | LIP6+TIMA *4) Implantation sur DSX : connaissance de la notion de conteneur (WP2-T3-L3) |
---|
| 142 | TIMA+LIP6 *5) Impact sur l'OS (chargement dynamique d'applications ou de |
---|
| 143 | tâches) (WP2-T1/T2-L2) |
---|
| 144 | |
---|
| 145 | TOOLING FOR EMBEDDED |
---|
| 146 | CSG (Coach System Generator) : |
---|
| 147 | TOUS *1) Définition d'un gabarit architectural (WP1-T1) |
---|
| 148 | TOUS *2) Définition de 3 mappings possibles : (WP1-T1) |
---|
| 149 | soclib vhdl, xilinx et altera (en DSX) |
---|
| 150 | LIP6 *3) Introduire la notion de variables partagées dans DSX (WP2-T3) |
---|
| 151 | - qui a le droit d'écrire une variable partagée ? |
---|
| 152 | LIP6+TIMA *4) Choix et fourniture des OS (WP2-T1/2-L1) et HW (WP2-T4/5/5) qui va avec |
---|
| 153 | +TOUS - Etude des RAMLOCKS vs LL/SC |
---|
| 154 | - Controleur d'interruption |
---|
| 155 | - ... |
---|
| 156 | |
---|
| 157 | TOOLING FOR HPC |
---|
| 158 | LIP6 *1) Définition des protocoles entre l'OS du PC et l'OS du SoC (W5-T1) |
---|
| 159 | LIP6 *2) Outil de mesure de l'efficacité d'un bi-partitionnement de (W5-T2) |
---|
| 160 | l'application |
---|
| 161 | LIP6+TIMA+ *3) Connexion hw entre PC et SoC : pci-express (WP5-T3) |
---|
| 162 | IRISA bridge os/pci-express/avalon-plb/vci |
---|
| 163 | (nécessite différentes implantations pour les |
---|
| 164 | différentes cartes + drivers correspondant) |
---|
| 165 | LIP6 *4) Implantation du protocole et du loader : (WP2-T1/2-L2), WP5-T4-L3 |
---|
| 166 | lib unix, driver linux, driver os-soc |
---|
| 167 | |
---|
| 168 | |
---|
| 169 | --------------------------------------------------------------------------------- |
---|
| 170 | Annexe 2 |
---|
| 171 | --------------------------------------------------------------------------------- |
---|
| 172 | ____________________________________________________________________________________________________ |
---|
| 173 | |ICU Avalon |ICU Xilinx |MWMR Avalon |MWMR Xilinx |NIOS |MICROBLAZE | |
---|
| 174 | ________|_______________|_______________|_______________|_______________|_______________|___________| |
---|
| 175 | SystemC |IRISA |TIMA |IRISA |TIMA |? |? | |
---|
| 176 | ________|_______________|_______________|_______________|_______________|_______________|___________| |
---|
| 177 | VHDL |IRISA |TIMA |IRISA |TIMA |Altera |Xilinx | |
---|
| 178 | ________|_______________|_______________|_______________|_______________|_______________|___________| |
---|
| 179 | |
---|
| 180 | |
---|
| 181 | François charot (IRISA) : développeur des composants soclib compatibles Avalon |
---|
| 182 | |
---|
| 183 | --------------------------------------------------------------------------------- |
---|