-
-
-
-
-
-
-
HomeSite map
SoC/Offres d'emplois/Stages/2011-2012/ALSOC/TSAR : Communication inter-carte pour une réalisation du processeur sur multi-FPGA Print page

Proposition de stage LIP6
Année 2012
TSAR : Communication inter-carte pour une réalisation du processeur sur multi-FPGA

OBJECTIF

Ce stage s’inscrit dans le cadre du projet Européen SHARP piloté par BULL, dont les partenaires Français sont THALES, le LIP6 et le CEA/LETI. Ce projet vise la définition et l’implémentation d’une architecture de processeur many-cores utilisable dans des ordinateurs de type serveurs, c'est-à-dire une architecture matérielle supportant la mémoire virtuelle, et fournissant un mécanisme de cohérence des caches garantie par le matériel.

L’architecture TSAR a été définie dans le cadre d’un premier projet européen. Cette architecture NUMA (Non Uniform memory Access) supporte des systèmes d’exploitation généralistes de type UNIX (ou LINUX). Son originalité est d’utiliser un grand nombre de «petits» cœurs de processeurs RISC 32 bits, plutôt que quelques gros processeurs, pour minimiser la consommation énergétique. L’architecture doit donc être réellement scalable (pour atteindre plusieurs milliers de coeurs sur une seule puce), tout en fournissant une mémoire partagée cohérente.


Une première version de l’architecture TSAR, comportant 512 cœurs a été modélisée en langage SystemC, en utilisant la plate-forme de prototypage virtuel SOCLIB et un style de modélisation « au cyle près ». Différentes applications logicielles ont pu être déployées et exécutées (en simulation) sur ce prototype virtuel, démontrant la scalabilité duprotocole de cohérence DHCCP.

Un des objectifs du projet SHARP est la réalisation d’un prototype matériel, sous la forme d’un prototype FPGA comportant 128 cœurs. Un premier prototype PPGA comportant 8 coeurs et 4 clusters (version V1, sans mémoire virtuelle) a permis la mise au point de certains composants critiques, tels que le coeur de processeur MIPS32, ou le micro-réseau intégré VDSPIN. Cette première réalisation matérielle a montré qu’il était nécessaire d’améliorer sensiblement les moyens d’observation et de contrôle du comportement interne du matériel en cas de dysfonctionnement.

TRAVAIL PROPOSE

L’architecture de TSAR est construite autour d’un mesh 2D de clusters, permettant de réaliser un processeur à plusieurs centaines ce core. Sur un FPGA, on peut espérer mettre au mieux 4 clusters. Pour obtenir un mesh plus grand, il faut utiliser plusieurs FPGAs. L’équipe dispose de 4 cartes DE3 de Terasic contenant chacune un FPGA ALTERA. Ces cartes sont faites pour être connectées entre elles, soit par empilement, soit par câble. Les signaux entre les cartes sont constitués de 80 signaux différentiels à 800MHz. L’enjeu principal du stage est de fournir les moyens permettant de faire communiquer les cartes entres elles, de manière transparente pour le programmeur d’application. Avec 2 cartes, on peut espérer un mesh 2D de 4 x 2 clusters, avec 4 cartes on peut espérer un mesh de 4x4 clusters. Sur le schéma ci-dessous les carrés gris représentent les FPGAs.

Un précédent stage a déjà permis de connecter deux cartes contenant chacune un cluster de TSAR, mais les cartes était de types différents et les contraintes temporelles moins fortes. In fine, les solutions mises en œuvres dans ce stage devront pouvoir permettre la spécification d’une carte multi-FPGA à 8 FPGA.

Ce stage se déroulera en plusieurs étapes :

  1. Étude de l’architecture TSAR

  2. Analyse des solutions apportées par le stage précédent.

  3. Analyse des moyens liens rapides proposés par le FPGA et la carte DE3.

  4. Spécification du dispositif sérialiseur / désérialiseur (ser/des).

  5. Spécification d’une architecture de test avec des générateurs/analyseurs synthétiques de

    trafic connectés sur un mesh.

  6. Conception du ser/des et de l’architecture de test en VHDL.

  7. Caractérisation temporelle de l’architecture de test sur FPGA entre 2 cartes (ceci nécessitera peut-être l’usage d’un analyseur logique).

  8. Remplacement des générateurs/analyseurs de trafic par des clusters de TSAR.

ENCADREMENT :

Ce stage sera encadré par Franck Wajsbürt : Franck.Wajsburt@lip6.fr

LIP6 LIP6-SoC LIP6 CNRS UPMC