Implémentations de microprocesseurs cellulaires - Cell microprocessor implementations

Le premier microprocesseur Cell commercial , le Cell BE, a été conçu pour la Sony PlayStation 3. IBM a conçu le PowerXCell 8i pour une utilisation dans le supercalculateur Roadrunner .

la mise en oeuvre

Cellule de première édition sur CMOS 90 nm

IBM a publié des informations concernant deux versions différentes de Cell dans ce processus, un échantillon d'ingénierie précoce désigné DD1 et une version améliorée désignée DD2 destinée à la production.

Variantes de cellules connues dans un processus à 90 nm
La désignation Zone de Die Première divulgation Renforcement
DD1 221 mm 2 ISSCC 2005
DD2 235 mm 2 Cool Chips Avril 2005 Noyau d'EPI amélioré

L'amélioration principale de DD2 était un petit allongement de la matrice pour accueillir un noyau PPE plus grand, qui est signalé comme "contenant plus de ressources d'exécution SIMD / vecteur". Certaines informations préliminaires publiées par IBM font référence à la variante DD1. En conséquence, certains premiers comptes rendus journalistiques des capacités de la Cellule diffèrent désormais du matériel de production.

Plan d'étage de la cellule

Le matériel Powerpoint accompagnant une présentation STI donnée par le Dr Peter Hofstee], comprend une photographie de la matrice DD2 Cell avec des limites d'unité fonctionnelle qui sont également légendées par leur nom, qui révèle la répartition de la zone de silicium par unité fonctionnelle comme suit:


Unités de fonction de cellule et empreinte
Unité fonctionnelle de cellule Surface (%) La description
Interface XDR 5,7 Interface avec la mémoire système Rambus
contrôleur de mémoire 4.4 Gère la mémoire externe et le cache L2
Cache L2 de 512 Ko 10,3 Mémoire cache pour l'EPI
Noyau d'EPI 11,1 Processeur PowerPC
tester 2.0 "Logique de test et de décodage" non spécifiée
BEI 3.1 Processeurs de liaison de bus d'interconnexion d'élément
SPE (chacun) × 8 6.2 Élément de coprocessing synergique
Contrôleur E / S 6,6 Logique d'E / S externe
Rambus FlexIO 5,7 Signalisation externe pour les broches d'E / S

Plan d'étage SPE

Des détails supplémentaires concernant la mise en œuvre SPE interne ont été divulgués par les ingénieurs d'IBM, y compris Peter Hofstee , l'architecte en chef d'IBM de l'élément de traitement synergique, dans une publication scientifique IEEE.

Ce document comprend une photographie du SPE de 2,54 × 5,81 mm, tel qu'implémenté en SOI à 90 nm . Dans cette technologie, le SPE contient 21 millions de transistors dont 14 millions sont contenus dans des matrices (un terme désignant vraisemblablement les fichiers de registre et le magasin local) et 7 millions de transistors sont logiques. Cette photographie est surdimensionnée avec des limites d'unités fonctionnelles, qui sont également légendées par leur nom, ce qui révèle la répartition de la zone de silicium par unité fonctionnelle comme suit:

Unités fonctionnelles et encombrement SPU
Unité fonctionnelle SPU Surface (%) La description Tuyau
simple précision 10,0 unité d'exécution FP simple précision même
double precision 4.4 unité d'exécution FP double précision même
simple fixe 3,25 unité d'exécution en virgule fixe même
contrôle des problèmes 2,5 alimente les unités d'exécution
macro avant 3,75 alimente les unités d'exécution
GPR 6,25 fichier de registre à usage général
permuter 3,25 unité d'exécution permute impair
branche 2,5 unité d'exécution de branche impair
canal 6,75 interface de canal (trois blocs discrets) impair
LS0 à LS3 30,0 quatre blocs de 64 Kio de magasin local impair
MMU 4,75 unité de gestion de la mémoire
DMA 7,5 unité d'accès direct à la mémoire
BIU 9,0 unité d'interface de bus
RTB 2,5 bloc de test intégré au tableau (ABIST)
ATO 1,6 unité atomique pour les mises à jour du DMA atomique
HB 0,5 obscur

Il est important de comprendre les canaux de distribution pour écrire un code efficace. Dans l'architecture SPU, deux instructions peuvent être distribuées (démarrées) dans chaque cycle d'horloge à l'aide de canaux de distribution désignés pair et impair . Les deux tuyaux fournissent des unités d'exécution différentes, comme indiqué dans le tableau ci-dessus. Comme IBM a partitionné cela, la plupart des instructions arithmétiques s'exécutent sur le tube pair , tandis que la plupart des instructions de mémoire s'exécutent sur le tube impair . L'unité de permutation est étroitement associée aux instructions de mémoire car elle sert à emballer et décompresser les structures de données situées en mémoire dans le format d'opérande multiple SIMD sur lequel le SPU calcule le plus efficacement.

Contrairement à d'autres conceptions de processeur fournissant des canaux d'exécution distincts, chaque instruction SPU ne peut être distribuée que sur un canal désigné. Dans les conceptions concurrentes, plus d'un tuyau peut être conçu pour gérer des instructions extrêmement courantes telles que l' ajout , permettant l'exécution simultanée de plusieurs de ces instructions ou plus, ce qui peut servir à augmenter l'efficacité sur des flux de travail déséquilibrés. Conformément à la philosophie de conception extrêmement spartiate, pour le SPU, aucune unité d'exécution n'est multiprovisionnée.

Comprendre les limites de la conception restrictive à deux pipelines est l'un des concepts clés qu'un programmeur doit maîtriser pour écrire un code SPU efficace au plus bas niveau d'abstraction. Pour les programmeurs travaillant à des niveaux d'abstraction plus élevés, un bon compilateur équilibrera automatiquement la concurrence du pipeline lorsque cela est possible.

Puissance et performances SPE

Testé par IBM sous une lourde charge de travail de transformation et d'éclairage [IPC moyen de 1,4], le profil de performance de cette implémentation pour un seul processeur SPU est qualifié comme suit:

Relation vitesse / température
Tension (V) Fréquence (GHz) Puissance (W) Die temp. (° C)
0,9 2.0 1 25
0,9 3.0 2 27
1.0 3,8 3 31
1.1 4.0 4 38
1.2 4.4 7 47
1.3 5,0 11 63

L'entrée pour un fonctionnement à 2,0 GHz à 0,9 V représente une configuration de faible puissance. D'autres entrées indiquent la fréquence de fonctionnement stable de crête obtenue avec chaque incrément de tension. En règle générale dans les circuits CMOS, la dissipation de puissance augmente dans une relation approximative à V 2 F, le carré de la tension multiplié par la fréquence de fonctionnement.

Bien que les mesures de puissance fournies par les auteurs IBM manquent de précision, elles donnent une bonne idée de la tendance générale. Ces figures montrent que la pièce est capable de fonctionner au-dessus de 5 GHz dans des conditions de laboratoire de test, bien qu'à une température de matrice trop élevée pour les configurations commerciales standard. Les premiers processeurs Cell mis sur le marché ont été évalués par IBM pour fonctionner à 3,2 GHz, une vitesse de fonctionnement où ce graphique suggère une température de filière SPU dans un voisinage confortable de 30 degrés.

Notez qu'une seule SPU représente 6% de la surface de la puce du processeur Cell. Les valeurs de puissance indiquées dans le tableau ci-dessus ne représentent qu'une petite partie du budget de puissance global.

IBM a annoncé publiquement son intention de mettre en œuvre Cell sur une future technologie sous le nœud 90 nm pour améliorer la consommation d'énergie. Une consommation d'énergie réduite pourrait potentiellement permettre de porter la conception existante à 5 GHz ou plus sans dépasser les contraintes thermiques des produits existants.

Cellule à 65 nm

Le premier rétrécissement de Cell était au nœud de 65 nm. La réduction à 65 nm a réduit la matrice de 230 mm 2 existante basée sur le processus de 90 nm à la moitié de sa taille actuelle, environ 120 mm 2 , réduisant également considérablement le coût de fabrication d'IBM.

Le 12 mars 2007, IBM a annoncé qu'elle avait commencé à produire des cellules 65 nm dans son usine East Fishkill. Les puces produites là-bas ne sont apparemment que pour les serveurs lames Cells propres aux IBM , qui ont été les premiers à obtenir les cellules 65 nm. Sony a présenté la troisième génération de la PS3 en novembre 2007, le modèle de 40 Go sans compatibilité PS2 qui a été confirmé pour utiliser la cellule 65 nm. Grâce à la cellule rétrécie, la consommation d'énergie a été réduite de 200  W à 135  W.

Au début, on savait seulement que les 65 nm-Cells cadencent jusqu'à 6 GHz et fonctionnent sur  une tension centrale de 1,3 V, comme démontré sur l' ISSCC 2007. Cela aurait donné à la puce une performance de crête théorique de 384  GFLOPS en précision de quart FP8 ( 48  GFLOP en FP64 double précision), une amélioration significative du  pic  204,8 GFLOPS (25,6 GFLOP FP64 double précision) qu'une cellule 90 nm 3,2 GHz pourrait fournir avec 8 SPU actifs. IBM a en outre annoncé avoir mis en œuvre de nouvelles fonctionnalités d'économie d'énergie et une double alimentation pour la baie SRAM. Cette version n'était pas encore le "Cell +" dont la rumeur était longue avec des performances en virgule flottante Double Precision améliorées, qui a vu le jour à la mi-2008 dans le supercalculateur Roadrunner sous la forme de lames QS22 PowerXCell. Bien qu'IBM ait parlé et même montré des Cellules à cadence plus élevée auparavant, la vitesse d'horloge est restée constante à 3,2 GHz, même pour la double précision activée "Cell +" du Roadrunner. En maintenant la vitesse d'horloge constante, IBM a plutôt choisi de réduire sa consommation d'énergie. Les clusters PowerXCell sont même les meilleurs clusters Blue Gene d' IBM (371  MFLOPS / watt), qui sont déjà beaucoup plus écoénergétiques que les clusters composés de processeurs conventionnels (265  MFLOPS / watt et moins).

Éditions futures en CMOS

Prospects à 45 nm

À l'ISSCC 2008, IBM a annoncé Cell au nœud 45 nm. IBM a déclaré qu'il nécessiterait 40% de puissance en moins à la même vitesse d'horloge que son prédécesseur de 65 nm et que la zone de la matrice diminuerait de 34%. La cellule de 45 nm nécessite moins de refroidissement et permet une production moins chère, également grâce à l'utilisation d'un dissipateur thermique beaucoup plus petit. La production de masse a été initialement prévue pour commencer à la fin de 2008, mais a été déplacée au début de 2009 .

Perspectives au-delà de 45 nm

Sony, IBM et Toshiba ont annoncé de commencer à travailler sur une cellule aussi petite que 32 nm en janvier 2006, mais comme les processus de réduction dans les usines se produisent généralement à l'échelle mondiale et non à l'échelle de la puce individuelle, il s'agissait simplement d'un engagement public à amener Cell à 32 nm.

Les références