• Aucun résultat trouvé

1.2 Le projet ARAVIS

Cette thèse s’intègre au sein du projet ARAVIS (Architecture avancée Reconfigurable et Asynchrone pour Vidéo et radio logicielle Integrée Sur puce). Ce projet s’inscrit dans le cadre du pôle de compétitivité Minalogic. Il regroupe différent partenaires industriels et académiques du bassin Grenoblois tel que STMicroelectronics, CEA-LETI, INRIA-NECS, INRIA-SARDES et TIMA. Démarré en 2007, il s’est terminé fin 2011.

Celui-ci se propose d’apporter des solutions architecturales aux problèmes de la conception des plateformes de calculs pour les applications multimédia embarquées dans les technologies en limite de la feuille de route (roadmap) silicium. ARAVIS se propose de satisfaire conjointement les différents critères d’exigences que sont la flexibilité, la performance et la faible consomma-tion d’énergie.

Les structures multiprocesseurs "Many-Cores", la technologie asynchrone matérielle et logi-cielle ainsi que la gestion dynamique de l’énergie et de l’activité, basées sur des techniques d’au-tomatique avancées, sont les trois technologies clés qui, combinées, permettront de concevoir et de fabriquer un système sur puce répondant aux défis submicroniques. L’utilisation des tech-niques asynchrones permet le déploiement de structures fortement inter connectées sur d’impor-tantes surfaces de silicium, tout en s’affranchissant des phénomènes de variabilité qui deviennent prépondérant dans les technologies en dessous de 32 nm. L’infrastructure logicielle, conçue et adaptée aux nouvelles technologies, prenant en compte les besoins de contrôle et de gestion de l’activité dans le circuit, afin de maîtriser la consommation et les dispersions de la technologie. Le système étant basé sur la mise en oeuvre de ressources matérielles dont les performances sont imprévisibles au moment de la fabrication, le recourt à une stratégie globale de gestion de la performance par adaptation du couple tension/fréquence se révèle nécessaire, afin de garantir les contraintes de temps réelles, tout en minimisant le budget énergétique.

Le SoC ARAVIS cible principalement (mais pas seulement) deux domaines d’application ayant un fort potentiel industriel et commercial : les applications dédiées à l’amélioration d’image et de vidéo ainsi que les applications de radio logicielles (SDR : Software Define Radio).

CHAPITRE 1. INTRODUCTION 1.2. Le projet ARAVIS

1.2.1 Présentation

L’architecture du SoC ARAVIS se présente sous la forme d’un système multiprocesseurs (many-core), organisé autour d’une topologie en maille 2D, dont les différents noeuds sont inter-connectés par un réseau sur puce (Network on Chip) utilisant la logique asynchrone.

Chaque noeud ou cluster est constitué de 4 à 16 processeurs communiquant au travers d’une interconnexion locale, dont ils partagent la bande passante. De plus, une mémoire partagée lo-calement au cluster servant, d’une part à la communication intra-cluster et d’autre part à la communication inter-clusters est présente.

Les coeurs de processeurs utilisés sont basés sur le XP70 de STMicroelectronics qui offrent de bonnes performances à un coût énergétique relativement faible. Le XP70 est un processeur de type RISC 32 bits à 7 étages de pipelines sur une architecture Harvard et offre de nom-breuses possibilités de configuration matérielle tel que : compteur de boucles, contrôleur d’évè-nements, multi contexte, ainsi que la possibilité d’adjoindre des extensions spécialisées comme par exemple, des unités vectorielles. Avec une fréquence de fonctionnement nominale de l’ordre de 440Mhz (C065LP-SVT @1.2V), une consommation dynamique d’environ 65µW/Mhz et de

0.76µW en statique (C065LP-HVT @1.2V), il est comparable aux processeurs ARM9 en terme

de performance et aux ARM7 en terme de surface silicium.

Le SoC ARAVIS est une architecture GALS (Globally Asynchronous Locally Synchronous) avec, à l’intérieur des clusters, un fonctionnement synchrone mais communiquant et réagissant vers l’extérieur de façon asynchrone.

Afin de permettre la gestion de la consommation, un mécanisme de contrôle/commande de la tension d’alimentation et de la fréquence de fonctionnement est mis en place au niveau matériel sur chacun des clusters. Ainsi, un seul couple tension - fréquence est alloué pour l’ensemble des processeurs d’un même cluster. Le mécanisme de contrôle tension - fréquence choisit est de type saut de tension (Vdd-Hopping) qui permet un rendement plus élevé par rapport aux approches classiques avec convertisseur DC-DC et permet aussi de réduire de façon importante le coût en surface.

Le principe du VDD-Hopping, est de changer périodiquement la fréquence de façon

1.2. Le projet ARAVIS CHAPITRE 1. INTRODUCTION

ou-rien, c’est-à-dire que seul deux couples tension - fréquence sont disponibles, correspondant à une limite maximale et minimale. Ainsi en faisant varier le rapport cyclique entre fréquence haute et fréquence basse, il est possible d’obtenir une fréquence moyenne proportionnelle au rapport cyclique.

Concernant la gestion de l’activité, le placement et l’ordonnancement des tâches se fait de concert avec la gestion de la consommation. Tout ou partie de ces dernières pourront êtres réa-lisées de façon statique et donc prédéterminées à l’avance ou bien de façon dynamique, c’est-à-dire durant le fonctionnement.

Trois boucles de régulation imbriquées sont mise en place afin de gérer le compromis per-formance/consommation et la robustesse face aux phénomènes de variation des procédés de fa-brication. La première, vise à réguler l’activité d’un noeud de calcul (cluster), la seconde à gérer l’activité au niveau circuit et enfin, la troisième, user intelligemment des ressources disponibles en exploitant les informations du système d’exploitation.

De plus, étant donné la complexité du circuit d’une part et des applications d’autres part, un nouveau canevas permettant une programmation plus aisée ainsi qu’une meilleure maîtrise des ressources processeurs, est utilisé. Celui-ci se base sur le modèle de composant Fractal, avec une implémentation en C, nommée Cécilia, développé au sein de l’INRIA-SARDES.

CHAPITRE 1. INTRODUCTION 1.3. Contributions et Organisation du manuscrit