Cette année devrait être marquée dans le monde de l'informatique par de nombreuses mutations technologiques... On pense naturellement à l'arrivée des Grantscale, Alderwood, Prescott et autres mémoires DDR-II mais il ne faut pas oublier le tout nouveau bus PCI-Express. Le PCI-Express représente une évolution majeure de l'architecture de nos systèmes. Le bus PCI tel que nous le connaissons avec son débit moyen de 133 Mo/s se fait vieux, trop vieux pour satisfaire les besoins d'applications et de systèmes toujours plus gourmands. Dans le même ordre idée, l'AGP 8x n'est guère plus flamboyant et sa bande passante de 2 Go/s constitue déjà un goulet d'étranglement pour la nouvelle génération de Cartes Graphiques que l'on devrait voir arriver ce printemps.
Le groupement d'intérêt formé autour du PCI, le PCI-SIG (auquel participent notamment , Intel, Microsoft, NVIDIA, etc.) développe depuis quelques années déjà le PCI-Express dont le but est de remplacer à la fois les bus PCI & AGP. Nous avons eu l'opportunité de nous entretenir avec Steve Sims, chef de produit graphique haut de gamme chez NVIDIA au sujet du PCI-Express. L'occasion pour nous de faire le point sur cette technologie qui devrait débouler d'ici le mois de mars.
Le point sur la technologie PCI Express
Le bus PCI-Express, anciennement connu sous les noms de Arapahoe ou 3GIO, a été ratifié comme un standard en avril 2002. Dès lors la plupart des fabricants de chipsets, Processeurs et autres puces graphiques fourbissent leurs armes pour être prêt le moment venu. C'est finalement deux ans plus tard, en 2004, qu'Intel devrait donner le coup d'envoi du PCI-Express avec le lancement du tout premier chipset (PC), que l'on connaît pour l'instant sous le nom de code Grantsdale (futur i920), supportant ledit bus. Avant d'entrer dans les détails techniques, précisons que le PCI-Express a été conçu pour être utilisé pendant les dix prochaines années, ce n'est donc pas une norme de transition et son architecture a été conçue pour être évolutive.D'un point de vue technique, le PCI-Express est un bus série de type bidirectionnel qui transporte les données sous forme de paquets d'un point à un autre, un peu à la manière d'une connexion Ethernet. Chacune des deux voies constituant une connexion PCI-Express peut transporter 2.5 Gbits/s de données dans les deux sens (flux montant et flux descendant). Un signal d'horloge peut être encodé dans les échanges afin d'ajuster le débit. L'architecture de ce bus de nouvelle génération est divisée en layers (ou couches en français dans le texte) qui ont chacun un rôle bien précis. On trouve notamment un layer qui va se charger de vérifier l'intégrité des données ainsi qu'un layer de transaction supportant un adressage mémoire sur 32-bit ou 64-bit auxquels s'ajoutent un layer physique qui permet d'augmenter la bande passante du PCI-Express en formant plusieurs voies par l'agrégation de liens.
Dans son implémentation x1, le PCI-Express offre un débit théorique de 250 Mo/s qui est sensiblement plus élevé que celui offert par la révision 2.2 du bus PCI (133 Mo/s). Mais les promoteurs du PCI-Express ont prévu des modes de fonctionnement plus rapides comme les modes x2, x4, x8, x12 et x16. Le PCI-Express x16 dédié aux Cartes Graphiques, se matérialisera sous la forme d'un connecteur 164 pins et offrira une bande passante de 4 Go/s (4 Go en sens montant et 4 Go en sens descendant) contre 170Mo/s en sens montant et 2,1Go/s en sens descendant pour l'actuel AGP 8x. Au cas où cela ne serait pas encore suffisant, un mode x32 est déjà en préparation... Autre point intéressant de cette technologie la bande passante disponible entre deux points n'est pas partagée, aussi que vous disposiez d'un seul périphérique PCI-Express ou de trois, la bande passante disponible pour chacun d'entre eux sera toujours identique. Au niveau des chipsets, le PCI-Express sera géré par un switch vraisemblablement inclus dans le southbridge (mais il est également possible de l'intégrer au northbridge). Ce switch gérera les connexions point à point afin de les interfacer avec le reste du système.
Implémentation du PCI-Express au niveau des chipsets
Outre une bande passante plus importante, le PCI-Express nécessite une électronique moins complexe sur la carte mère : seules quatre tracés de voies suffisent pour le PCI-Express x1 là ou l'actuel PCI en requiert 32. Cela permet donc d'envisager d'appréciables économies sur le prix de revient d'une carte mère. Autre point intéressant qui concerne le domaine graphique, le PCI-Express permet de faire fonctionner plusieurs cartes graphiques (à ce format) sur un seul et même système (pour peu que celui-ci dispose de deux slots PCI-Express x16). Question alimentation, le bus PCI-Express est capable de fournir jusqu'à 75 Watts en alimentation contre à peu près 40W pour l'AGP actuel. A première vue on pourrait penser que cette alimentation satisfasse les besoins en puissance des cartes graphiques. Si cela sera vraisemblablement le cas pour les premières générations de cartes en PCI-Express, notre interlocuteur chez NVIDIA n'exclue pas un retour des alimentations externes pour cartes graphiques dans un proche avenir.
Représentation graphique des divers connecteurs PCI-Express
D'après les spécifications du bus PCI-Express, celui-ci supportera les connexions à chaud (Hot-Plug) ainsi que le Hot-Swap. Ceci dépendra toutefois du chipset, et il y a fort à parier que ces fonctionnalités soient dans un premier temps réservées au monde serveur. Physiquement, le bus PCI-Express prend plusieurs formes en fonction de la longueur du bus. Les connecteurs PCI-Express x1 sont assez petits et ressemblent à un connecteur de type AMR ou CNR alors qu'un connecteur PCI-Express x16 est relativement long et ressemble à s'y méprendre à un connecteur PCI standard dont la forme aurait été inversée. Les premières Cartes mères au format ATX supportant le PCI Express devraient comporter deux connecteurs PCI-Express x1 (dont l'un d'entre eux sera vraisemblablement partagé avec un contrôleur Gigabit Ethernet propre au chipset Intel), un connecteur PCI x16 ainsi que deux ou trois connecteurs PCI.
Connecteurs PCI-Express 1x et 16x sur une carte-mère
Quid de la compatibilité ?
Un point important de la conception du PCI-Express tient à sa compatibilité. Ses développeurs l'ont en effet architecturé de tel sorte qu'il soit compatible avec l'ensemble des systèmes d'exploitation et logiciels gérant le bus PCI. Dès lors il ne sera pas nécessaire de mettre à jour votre système simplement pour profiter du bus PCI-Express. Autre point qu'il nous faut mentionner, le bus PCI-Express reste compatible avec les cartes PCI que nous connaissons : les premières cartes mères disposeront donc de slots PCI pour assurer une compatibilité descendante.Si le groupement PCI-SIG a plutôt bien travaillé au niveau de la compatibilité, les chipsets Intel n'offriront aucun support simultané de l'AGP et du PCI-Express à cause de contraintes techniques trop importantes. En adoptant le PCI-Express il faudra donc impérativement changer de carte graphique, ce qui fera le bonheur d'ATI & NVIDIA.
Les Cartes Graphiques et le PCI-Express
Depuis quelques semaines diverses rumeurs parcourent la toile quand aux aptitudes de tel ou tel constructeur à mettre au point des solutions graphiques en PCI-Express. Il est un fait que les deux ténors que sont ATI & NVIDIA ont opté pour deux solutions radicalement différentes. Le fabricant canadien compte bien entendu supporter le PCI-Express dès les prochaines semaines. ATI a pour ce faire annoncé avoir revu l'architecture de ses puces graphiques afin de les rendre nativement compatibles avec le bus PCI-Express et ce sans passer par un quelconque bridge. Or cela pose la question de savoir si le mot 'natif' signifie que le VPU intègre en réalité un bridge ou si le VPU en question a été entièrement retravaillé pour bénéficier des apports du PCI-Express en terme de bande passante. Si l'on retient la première hypothèse ATI pourrait se heurter à des limitations sensiblement similaires à celles que rencontre NVIDIA, la seconde solution étant bien entendu idéale.Carte graphique ATI en PCI-Express
Autre fabricant, autre solution, NVIDIA a retenu la solution du bridge. Le bridge est une puce au format flip-chip qui est chargée d'interfacer un processeur graphique AGP 8x (comme un GeForce FX 5200) avec un bus PCI-Express. Cette solution, qui peut d'ailleurs fonctionner dans l'autre sens, devrait permettre à NVIDIA de décliner toute sa gamme de puces graphiques en PCI-Express sans pour autant retravailler ses architectures en profondeur. Toutefois le bridge a quelques contraintes techniques, il impose notamment l'alimentation de toutes les lignes de transmission du bus PCI-Express et ne peut à priori pas rivaliser avec un support natif dans la mesure où il utilisera en théorie une bande passante jusqu'à vingt-trois fois inférieure aux capacités du PCI-Express, si l'on s'en réfère aux spécifications de l'AGP 8x que nous énumérions précédemment. A moins bien sûr que NVIDIA ait une botte secrète qui lui permette de contourner certaines de ces limitations... Lors du lancement de son prochain chip haut de gamme, le NV40 pour ne pas le nommer, il y a fort à parier que NVIDIA le décline dans un premier temps en AGP 8x, avant de le proposer en PCI-Express dont le mode de support reste aujourd'hui incertain (natif, bridge, etc.). NVIDIA veut clairement faire passer comme message que ses prochaines générations de chips graphiques seront disponibles aussi bien en AGP 8x qu'en PCI-Express afin de répondre aux attentes de ses clients.
La solution du bridge retenue par NVIDIA pour une partie de sa gamme
Question performance, notre contact chez NVIDIA a été fort peu disert puisque selon lui entre deux cartes identiques dont l'une fonctionne en AGP 8x et l'autre en PCI-Express, le gain de performance, si gain il y a, ne se ressentira qu'avec certaines applications bien spécifiques qui font un usage intensif de la mémoire. Dans le cas éventuel d'un gain de performances celui-ci pourrait tout de même atteindre les 100%. En pratique les choses semblent quelque peu différentes puisque selon un site chinois qui a pu tester une GeForce FX 5200 en PCI-Express, cette dernière perd en performance face au modèle AGP 8x... Toutefois ceci ne serait dû qu'à un problème de driver non encore optimisé. L'avenir nous dira donc laquelle des solutions retenues par ATI ou NVIDIA est la plus intéressante tant sur le plan des performances que sur celui du rapport qualité/prix, mais il se pourrait que la solution du canadien ATI délivre de meilleures performances ne serait-ce qu'à cause de latences que l'on imagine plus réduites.
Ajoutons que les autres acteurs du monde de la 3D que sont 3DLabs et XGI ont déjà annoncé travailler sur des solutions PCI-Express qui pourraient voir le jour d'ici la le deuxième semestre 2004.
Quand le PCI Express va plus loin...
Le standard PCI-Express va dans un premier temps apparaître sur nos PC de bureau dès les prochains mois. Si pour le moment le taux de transfert entre deux points est de 2.5 Gb/s, il devrait rapidement passer à 5 Gb/s avant d'atteindre les 10 Gb/s. Mais la technologie devrait également faire son entrée dans le monde du portable sous le nom d'ExpressCard. Développée en coopération avec le groupe PCMCIA, cette version du PCI-Express offrira aux Ordinateurs Portables de meilleures performances lorsqu'il s'agit de communiquer avec des cartes d'extension grâce à un débit de 200 Mo/s. Notez que le format ExpressCard n'est pas compatible avec les actuelles PC Card et qu'il s'agit là d'une première étape avant l'apparition de Cartes mères pour ordinateurs portables utilisant le bus PCI-Express pour communiquer avec le chipset graphique (par exemple).Autre piste d'évolution pour le PCI-Express, l'apparition de périphériques externes qui pourraient entrer en concurrence avec les périphériques USB 2.0 & FireWire. Ces derniers ont d'ailleurs peu de soucis à se faire puisqu'ils sont très répandus contrairement à d'hypothétiques périphériques externes PCI-Express qui pourraient apparaître d'ici un an ou deux. Mais imaginez un instant que des cartes graphiques externes apparaissent ? Cela est tout à fait envisageable et certains protagonistes travailleraient déjà sur la question ! Le bus PCI-Express pourrait également concurrencer le bus HyperTransport développé par AMD même si ses promoteurs s'en défendent ardemment en expliquant que le PCI-Express est complémentaire...
Conclusion
Vous l'aurez compris la technologie PCI-Express est en marche et 2004 sera son point de départ. Il faut dire que le PCI-Express a pour lui beaucoup d'arguments comme sa compatibilité descendante avec les systèmes d'exploitation mais aussi avec les cartes PCI qui équipent actuellement nos machines. Le fait que la bande passante ne soit plus partagée entre les différents périphériques PCI-Express est également une vraie révolution qui devrait ouvrir de nouvelles perspectives dans le domaine de l'acquisition vidéo ou du stockage (SCSI, RAID, etc.).
En ce qui concerne le graphique, il ne fait aucun doute que le PCI-Express va prendre la relève de l'actuel bus AGP dans les mois qui viennent. Mais comme nous l'indiquait NVIDIA il faudra pour en profiter que les applications soient conçues pour exploiter la puissance de ce nouveau bus, et que les Processeurs graphiques le gèrent nativement, ce qui n'est pas sans rappeler ce que nous avions pu constater à l'arrivée du bus AGP. Comme toute technologie naissante, le PCI-Express est déjà promis à diverses évolutions qui augmenteront sensiblement ses performances pour en faire un standard incontournable. Le PCI-Express va marquer un véritable tournant dans l'architecture des Cartes mères, qui vont se voir dotées d'un nouveau bus de connexions moderne mais également de nouveaux chipsets toujours plus complets et performants. En résumé le PCI-Express est une vraie révolution déjà en marche !