HyperTransport |
AMD |
|---|---|
| Architecture | |
Introduction
L'HyperTransport, souvent abrégé HT, est une technologie d'interconnexion série, point à point et bidirectionnelle à haute vitesse, développée initialement par AMD à la fin des années 1990. Connue pendant son développement sous le nom de Lightning Data Transport (LDT), elle devient officiellement HyperTransport en 2001 et est normalisée par le HyperTransport Technology Consortium. Son objectif est de fournir une liaison rapide et à faible latence entre différents composants d'un ordinateur, notamment les microprocesseurs, les chipsets, les contrôleurs d'entrées/sorties et, dans les systèmes multiprocesseurs, plusieurs processeurs entre eux.
HyperTransport se distingue des anciens bus parallèles comme PCI ou le Front-Side Bus (FSB) par l'utilisation de liaisons série différentielles organisées en plusieurs voies. Une connexion comporte deux ensembles de signaux unidirectionnels : l'un transmet dans un sens et l'autre dans le sens opposé. Les communications peuvent donc avoir lieu simultanément dans les deux directions, ce qui correspond à un fonctionnement Full Duplex.
La technologie devient particulièrement importante avec l'apparition des processeurs AMD Opteron et AMD Athlon 64 en 2003. Ces processeurs intègrent directement leur contrôleur mémoire, contrairement aux architectures PC classiques dans lesquelles celui-ci se trouve dans le Northbridge. HyperTransport est alors utilisé pour relier le processeur au chipset et, sur les systèmes Opteron multiprocesseurs, pour établir des communications rapides entre plusieurs processeurs.
Au fil de son évolution, HyperTransport connaît plusieurs versions, notamment 1.x, 2.0, 3.0 et 3.1. La fréquence et la bande passante augmentent considérablement, la version 3.1 permettant des débits de plusieurs dizaines de gigaoctets par seconde selon la largeur de la liaison. HyperTransport a ainsi joué un rôle essentiel dans les architectures AMD des années 2000 et du début des années 2010.
Spécifications
| Caractéristique | Description |
|---|---|
| Nom | HyperTransport |
| Abréviation | HT |
| Nom de développement | Lightning Data Transport (LDT) |
| Développeur initial | AMD |
| Standardisation | HyperTransport Technology Consortium |
| Introduction commerciale | 2001 |
| Type | Interconnexion série point à point |
| Transmission | Bidirectionnelle / Full Duplex |
| Signalisation | Différentielle basse tension |
| Largeurs de liaison | 2, 4, 8, 16 ou 32 bits par direction selon l'implémentation et la version |
| Utilisation | CPU ↔ chipset, CPU ↔ CPU, chipset ↔ périphériques spécialisés |
| Débit maximal d'HyperTransport 3.1 | Jusqu'à 25,6 Go/s par direction avec une liaison 32 bits à 3,2 GHz ; 51,2 Go/s en additionnant les deux directions |
| Utilisateurs connus | AMD, NVIDIA, VIA, SiS et différents fabricants de systèmes spécialisés |
Historique
À la fin des années 1990, les performances des processeurs augmentent beaucoup plus rapidement que celles des bus traditionnels utilisés pour communiquer avec les autres composants.
AMD entreprend alors le développement d'une nouvelle technologie appelée :
- Lightning Data Transport (LDT)
Son objectif est de proposer une interconnexion :
- rapide ;
- évolutive ;
- à faible latence ;
- relativement simple à implémenter ;
- adaptée aux processeurs comme aux périphériques.
La technologie devient ensuite HyperTransport et son développement est confié à une organisation industrielle, le HyperTransport Technology Consortium.
La spécification HyperTransport 1.03 est publiée en 2001.
Architecture
HyperTransport utilise une architecture point à point.
Une liaison peut, par exemple, relier :
- Processeur ↔ Chipset
mais HyperTransport peut également servir à établir :
- Processeur ↔ Processeur
ou :
- Chipset ↔ Chipset / contrôleur
Cette flexibilité constitue l'une des principales différences avec certains bus spécialisés exclusivement destinés aux périphériques.
Communication bidirectionnelle
Une liaison HyperTransport comporte deux chemins indépendants :
- A → B
et :
- B → A
Chaque chemin est unidirectionnel, mais les deux peuvent fonctionner simultanément.
La liaison complète est donc Full Duplex.
Un processeur peut ainsi transmettre des informations au chipset pendant que celui-ci envoie simultanément d'autres données vers le processeur.
Largeur de la liaison
HyperTransport permet différentes largeurs de liaison.
Selon les équipements, on peut notamment rencontrer :
| Largeur | Description |
|---|---|
| 2 bits | Très faible largeur destinée à certaines implémentations spécialisées |
| 4 bits | Liaison compacte |
| 8 bits | Liaison intermédiaire |
| 16 bits | Très courante sur les plateformes AMD |
| 32 bits | Largeur maximale définie par les principales spécifications |
La largeur peut également être différente dans chaque direction.
Par exemple, une implémentation peut théoriquement utiliser davantage de lignes dans un sens que dans l'autre.
HyperTransport 1.x
La première génération d'HyperTransport apparaît en 2001.
HyperTransport 1.x prend en charge différentes fréquences et largeurs de liaison.
À sa fréquence maximale de 800 MHz, une liaison 16 bits peut fournir environ :
- 3,2 Go/s par direction
soit :
- 6,4 Go/s en additionnant les deux directions simultanées.
Cette bande passante était particulièrement élevée au début des années 2000.
HyperTransport 2.0
La spécification HyperTransport 2.0, publiée en 2004, augmente la fréquence maximale.
Elle atteint jusqu'à environ :
- 1,4 GHz
Avec une liaison 16 bits, cela correspond à environ :
- 5,6 Go/s par direction
ou :
- 11,2 Go/s pour les deux directions combinées.
Cette génération accompagne notamment l'évolution des plateformes AMD Athlon 64 et Opteron.
HyperTransport 3.0
HyperTransport 3.0 apparaît en 2006.
La fréquence maximale est portée à :
- 2,6 GHz
La technologie ajoute également différentes améliorations concernant :
- la gestion de l'énergie ;
- les performances ;
- la fiabilité ;
- les mécanismes de communication ;
- les possibilités d'interconnexion.
Une liaison 16 bits peut atteindre environ :
- 10,4 Go/s par direction
soit :
- 20,8 Go/s en Full Duplex lorsque les deux directions sont additionnées.
HyperTransport 3.1
La version HyperTransport 3.1, publiée en 2008, porte la fréquence maximale à :
- 3,2 GHz
Une liaison de 16 bits peut ainsi atteindre :
- 12,8 Go/s par direction
soit :
- 25,6 Go/s bidirectionnels cumulés.
Avec la largeur maximale de 32 bits définie par le standard, les valeurs théoriques peuvent atteindre :
- 25,6 Go/s par direction
et donc :
- 51,2 Go/s en additionnant les deux directions.
Il est important de préciser que ces chiffres correspondent aux capacités théoriques du standard et non nécessairement aux configurations réellement utilisées par tous les processeurs AMD.
Évolution des performances
| Version | Année | Fréquence maximale | Liaison 16 bits, par direction | 16 bits, deux directions cumulées |
|---|---|---|---|---|
| HyperTransport 1.0 | 2001 | 800 MHz | 3,2 Go/s | 6,4 Go/s |
| HyperTransport 1.1 | 2002 | 800 MHz | 3,2 Go/s | 6,4 Go/s |
| HyperTransport 2.0 | 2004 | 1,4 GHz | 5,6 Go/s | 11,2 Go/s |
| HyperTransport 3.0 | 2006 | 2,6 GHz | 10,4 Go/s | 20,8 Go/s |
| HyperTransport 3.1 | 2008 | 3,2 GHz | 12,8 Go/s | 25,6 Go/s |
Les débits cumulés doivent être interprétés avec prudence : puisqu'HyperTransport est Full Duplex, additionner les deux directions donne la capacité agrégée de la liaison, mais un transfert effectué uniquement dans un sens ne bénéficie que de la bande passante correspondant à cette direction.
Paquets
Contrairement aux anciens bus parallèles où de nombreux signaux représentent directement les transactions, HyperTransport utilise un protocole basé sur des paquets.
Les informations sont organisées en plusieurs catégories, notamment :
- commandes ;
- adresses ;
- données ;
- informations de contrôle.
Cette organisation facilite le routage des transactions entre plusieurs composants.
Faible latence
L'un des objectifs fondamentaux d'HyperTransport est de maintenir une faible latence.
Cette caractéristique est particulièrement importante pour les communications :
- CPU ↔ CPU
dans les serveurs multiprocesseurs.
Une latence réduite permet à un processeur d'accéder plus efficacement aux ressources associées à un autre processeur.
HyperTransport et AMD64
HyperTransport prend une importance particulière avec l'architecture AMD64.
Avec les processeurs Athlon 64 et Opteron, AMD déplace le contrôleur mémoire traditionnellement installé dans le Northbridge directement dans le processeur.
L'organisation générale devient alors approximativement :
- Processeur → contrôleur mémoire intégré → mémoire vive
et :
- Processeur → HyperTransport → chipset / périphériques
Cette organisation contribue à réduire la latence des accès à la mémoire.
HyperTransport et les systèmes multiprocesseurs
Dans certains systèmes AMD Opteron, HyperTransport permet également de relier directement plusieurs processeurs.
Par exemple :
- CPU 1 ↔ CPU 2
Chaque processeur possède son propre contrôleur mémoire et peut disposer de sa propre mémoire locale.
Cette architecture constitue l'une des bases des systèmes NUMA (Non-Uniform Memory Access) utilisant les processeurs Opteron.
Un processeur peut accéder à sa mémoire locale directement ou accéder à la mémoire associée à un autre processeur par l'intermédiaire d'une liaison HyperTransport.
Cohérence de cache
Dans les systèmes multiprocesseurs AMD, HyperTransport peut transporter les transactions nécessaires au maintien de la cohérence des caches.
Cette utilisation est parfois appelée Coherent HyperTransport (cHT).
Elle permet aux différents processeurs de conserver une vision cohérente des données présentes dans leurs caches respectifs.
Non-Coherent HyperTransport
Il existe également le Non-Coherent HyperTransport (ncHT).
Cette forme est principalement destinée aux communications avec :
- chipsets ;
- contrôleurs d'entrées/sorties ;
- accélérateurs ;
- périphériques spécialisés.
Elle n'a pas besoin de participer au protocole de cohérence des caches entre processeurs.
Gestion des erreurs
HyperTransport possède différents mécanismes destinés à améliorer la fiabilité des communications.
Selon la version et l'implémentation, ceux-ci peuvent comprendre :
- détection d'erreurs ;
- contrôle CRC ;
- mécanismes de nouvelle tentative ;
- surveillance de l'état des liaisons.
Ces fonctions sont particulièrement importantes dans les serveurs et les systèmes professionnels.
Gestion de l'énergie
Les dernières versions d'HyperTransport améliorent également la gestion énergétique.
Une liaison inutilisée peut fonctionner dans différents états de faible consommation.
Cette caractéristique est particulièrement utile dans :
- les ordinateurs portables ;
- les serveurs ;
- les systèmes embarqués.
Utilisations
HyperTransport a été employé dans de nombreux équipements :
- processeurs AMD Athlon 64 ;
- processeurs AMD Athlon 64 X2 ;
- processeurs AMD Opteron ;
- processeurs AMD Phenom ;
- processeurs AMD Phenom II ;
- certains processeurs AMD Sempron ;
- certains chipsets NVIDIA nForce ;
- chipsets AMD ;
- différents équipements réseau et systèmes embarqués.
HyperTransport et PCI Express
HyperTransport et PCI Express sont parfois confondus car les deux technologies utilisent des communications série rapides.
Leurs fonctions historiques sont toutefois différentes.
| Caractéristique | HyperTransport | PCI Express |
|---|---|---|
| Introduction | 2001 | 2003 |
| Type | Interconnexion système | Bus d'extension / interconnexion |
| Topologie | Point à point, chaînage possible selon l'architecture | Point à point via Root Complex et commutateurs |
| CPU ↔ CPU | Oui, dans certaines architectures | Pas son usage PC traditionnel |
| CPU ↔ chipset | Oui | Oui sur certaines architectures modernes |
| Carte graphique | Rare / non standard sur PC | Oui |
| Périphériques standards PC | Rare | Oui |
| Full Duplex | Oui | Oui |
Les deux technologies sont donc complémentaires dans de nombreux systèmes plutôt que directement interchangeables.
HyperTransport et DMI
Le DMI (Direct Media Interface) d'Intel remplit, dans certaines architectures Intel, une fonction comparable à l'une des utilisations d'HyperTransport : relier le processeur au chipset.
Cependant, HyperTransport est historiquement plus polyvalent.
Il peut notamment être utilisé pour :
- CPU ↔ chipset ;
- CPU ↔ CPU ;
- chipset ↔ contrôleur spécialisé.
Le DMI est principalement destiné à la communication entre le processeur Intel et le chipset/PCH.
Avantages
Les principaux avantages d'HyperTransport sont :
- bande passante élevée ;
- faible latence ;
- fonctionnement Full Duplex ;
- architecture point à point ;
- largeur de liaison configurable ;
- possibilité de relier plusieurs processeurs ;
- prise en charge des architectures NUMA ;
- mécanismes de cohérence pour les systèmes multiprocesseurs ;
- faible nombre de broches par rapport aux anciens bus parallèles ;
- bonne évolutivité.
Inconvénients
HyperTransport possède également plusieurs limites :
- adoption relativement limitée en dehors de l'écosystème AMD et de certains équipements spécialisés ;
- complexité accrue dans les systèmes multiprocesseurs ;
- coexistence avec PCI Express nécessaire pour les cartes d'extension PC courantes ;
- diminution progressive de son importance avec l'apparition de nouvelles interconnexions.
Succession chez AMD
HyperTransport reste une technologie fondamentale pour plusieurs générations de processeurs AMD, depuis l'Athlon 64 jusqu'à différentes familles utilisant les architectures Bulldozer et dérivées.
Avec l'arrivée de l'architecture Zen en 2017, AMD adopte progressivement de nouvelles technologies d'interconnexion internes, en particulier Infinity Fabric.
Infinity Fabric remplit un rôle beaucoup plus large dans les processeurs AMD modernes et permet notamment de relier :
- coeurs de processeur ;
- contrôleurs mémoire ;
- contrôleurs d'entrées/sorties ;
- différents blocs internes ;
- plusieurs puces ou chiplets.
HyperTransport appartient donc principalement à la génération précédente des architectures AMD.
Héritage
L'HyperTransport représente une étape importante dans l'évolution des architectures informatiques du début du XXIe siècle. En remplaçant les anciens bus parallèles partagés par des connexions série point à point rapides et bidirectionnelles, cette technologie permet à AMD de construire des systèmes possédant une bande passante importante et une faible latence. Elle joue notamment un rôle déterminant dans le succès technique des processeurs Athlon 64 et Opteron, dont le contrôleur mémoire intégré transforme profondément l'organisation traditionnelle des ordinateurs compatibles PC.
HyperTransport démontre également l'intérêt des interconnexions évolutives capables de servir aussi bien aux communications entre processeur et chipset qu'aux échanges entre plusieurs processeurs. Plusieurs concepts employés par cette technologie - liaisons point à point, transmission différentielle, fonctionnement Full Duplex, protocole par paquets et forte évolutivité - se retrouvent aujourd'hui dans de nombreuses interconnexions modernes. Même si AMD utilise désormais des technologies plus récentes telles qu'Infinity Fabric, HyperTransport demeure une architecture importante dans l'histoire des processeurs AMD et des serveurs multiprocesseurs des années 2000.