nVidias PCI Express Bridge
3. März 2004 / von aths & Leonidas / Seite 1 von 2
In den News der letzten Wochen erwähnten wir, dass nVidia mit einem "PCI Express Bridge-Chip" die Kompatibilität von AGP-Chips zu PCI-Express-Chips sowie den umgekehrten Weg, von PCI Express zu AGP, sicherstellen will. Jene Bridge wird von nVidia auf den kommenden GeForce PCX Grafikkarten eingesetzt, mit welcher die bisherigen nVidia-Chips NV18 (GeForce4 MX), NV34 (GeForceFX 5200/5500), NV36 (GeForceFX 5700 /Ultra) und NV38 (GeForceFX 5950 Ultra) PCI-Express-fähig gemacht werden. Den dafür verwendeten PCI Express Bridge-Chip wollen wir heute vorstellen, weil jener eben mehr kann als eine simple Wandlung von PCI-Express-Signale in AGP-Signale. Dazu steht uns offizielles Material seitens nVidia zur Verfügung.
Zunächst erst einmal zu einer sicherlich nicht unwichtigen Frage: Wozu PCI Express x16 bei Grafikkarten? Zeigte nicht schon AGPx8, dass dieser Port entgegen den üblichen Marketing-Aussagen kaum einen Vorteil gegenüber AGPx4 brachte? Selbst mit AGPx2 sind relevante Performance-Verluste nur selten nachweisbar. So macht es unserer Meinung nach keinen Sinn, wegen PCI Express das Mainboard und die Grafikkarte zu wechseln.
Allerdings muss sicherlich irgendwann einmal der Schritt zu einem neuen Interface gegangen werden, ganz besonders wo AGP mit AGPx8 sicherlich am Ende seiner technischen Möglichkeiten angelangt ist. Wenn PCI Express x16 erst einmal Standard für Grafikkarten ist, mag dieser Port wohlmöglich noch immer überdimensioniert sein, nachteilig ist das jedoch nicht - und teurer ist der Port nicht, sobald dieser erst einmal in der Massenproduktion ist.
Letztlich halten wir es sogar für begrüßenwert, wenn für Grafikkarten nun mit PCI Express keine Extra-Schnittstelle wie AGP mehr erforderlich ist. Das könnte neuen Schwung in Step-Sister-Technik à la Metabyte bringen (was da heißt, zwei oder mehr Grafikkarten parallel arbeiten zu lassen) – sofern denn die für Grafikkarten gedachten PCI Express x16 Ports auch mehrmals auf das Mainboard gebracht werden. Hier eine kurze Gegenüberstellung der technischen Möglichkeiten von AGPx8 und PCI Express x16:
AGPx8 | PCI Express x16 | |
maximale Bandbreite Downstream (Brutto) | 2 GB/sec | 4 GB/sec |
maximale Bandbreite Upstream (Brutto) | 266 MB/sec bei PCI-Writes 2 GB/sec bei AGP-Writes |
4 GB/sec |
Downstream/Upstream gleichzeitig | Ja, aber nur maximal 2 GB/sec zusammen | Ja, mit jeweils voller Bandbreite |
mehrere Ports möglich | 2 Ports bei AGPx8 möglich (diese Möglichkeit wurde allerdings bisher noch nie eingesetzt) | Ja, (nahezu) beliebig viele |
zukünftige Ausbaustufen | keine | PCI Express x32 mit verdoppelter Bandbreite |
Das Protokoll für PCI Express führt allerdings auch neuen Overhead ein. Das heißt, die physikalische Bandbreite kann nicht in Gänze genutzt werden, da zur Flusskontrolle und Fehlererkennung zusätzliche Bits notwendig sind (bei AGP können hingegen Techniken wie Side Band Adressing den Einfluss des Overheads auf die Nettobandbreite reduzieren - dank der hohen Rohbandbreite von PCI Express sind solche Schnörkel bei PCI Express nun nicht mehr notwendig). Je kleiner die zu übertragenen Datenpakete sind, desto geringer jedoch wird die PCI Express Nutzbandbreite.
nVidia weist diesbezüglich darauf hin, dass Zugriffsgrößen von nur 32 Byte ungünstig sind, wenn Daten für PCI Express umgesetzt werden sollen. Diese 256 Bit entsprechen einer Burstline für die meisten Grafikchips, also einer üblicherweise häufig genutzten Größe. Obwohl man mit einer Bridge letztlich jeden für AGP designten Chip fit für PCI Express machen kann, sinkt aufgrund dieser Einschränkung die nutzbare Bandbreite erheblich unter das Niveau, das PCI Express eigentlich liefern könnte.
Mit dem feststehenden Start von PCI Express am 28. März stand nVidia (wie auch die anderen Grafikchip-Entwickler) nun vor der Wahl, entweder jeden Grafikchip extra als AGP und als PCI Express Version zu bauen, oder einen entsprechenden Konverter zu entwickeln. nVidia entschied sich hier bekanntermaßen für die Lösung des Konverter-Chips, bekannt als "PCI Express Bridge" oder auch von nVidia "High-Speed Interconnect" (HSI) genannt.
Natürlich treibt ein solcher Extra-Chip, welcher auf jedes Grafikboard gebracht werden muß, auch den finalen Kartenpreis in die Höhe. Bei einem HighEnd-Chip mag das im Gesamtpreis keine Rolle mehr spielen, aber im OEM-Markt zählt bekanntlich jeder Cent. Allerdings macht so ein Umsetzer auch unabhängig: Man kann den Bedarf an AGP und PCI Express Versionen an die jeweilige Marktsitation angepasst befriedigen, ohne Gefahr zu laufen, bestimmte Versionen nicht loszuwerden und am Ende billig verramschen zu müssen.
nVidia trieb das so weit, dass sie lediglich eine Bridge entwickelten. Dieser Chip kann sowohl aus AGP-Signalen PCI-Express-kompatible erzeugen, als auch, quasi "um 180° gedreht" eingesetzt, PCI-Express-Signale in AGP-Signale übersetzen. Auf den ersten Blick mag dies Geldverschwendung sein, da man auf einer Karte immer nur eine Richtung benötigt. Auf den zweiten Blick allerdings ist dies eine logische Konsequenz: So bleibt man nicht auf einer bestimmten Chipart sitzen.
Unseren Informationen nach wird sich nVidia in absehbarer Zeit genauso aber auch auf native PCI-Express-Chips stützen. Um davon weiterhin AGP-Versionen anbieten zu können, werden diese Karten dann mit der PCI Express Bridge - nur in umgedrehter Richtung - ausgeliefert. Wenn wir nVidia richtig verstanden haben, wird man seitens der Kalifornier den Umschwung auf PCI Express nicht forcieren, indem man einfach keine AGP-Versionen mehr anbietet, sondern auch zukünftige Grafikchip-Generationen noch mit der PCI Express Bridge ausliefern, um den AGP-Markt noch langfristig zu bedienen.
Die Frage, was die Konvertierung von AGP in PCI Express überhaupt bringt, außer der Steckmöglichkeit auf entsprechende Mainboards, ist natürlich genauso berechtigt: Ein Grafikchip mit internem AGPx8 Interface kann nun einmal nicht schneller sein, als AGPx8 erlaubt - egal, ob die Grafikkarte in einem PCI Express Port steckt. Insofern erscheinen die kommenden GeForce PCX Grafikkarten zwar erst einmal als mit einem PCI Express Port ausgerüstet, jedoch keinen Nutzen aus PCI Express ziehend, da das AGPx8 Interface der verbauten Grafikchips limitiert.
Doch nVidia erdachte sich hier keine einfache Wandlung der PCI Express x16 in AGPx8 Signale, sondern kann mit seiner PCI Express Bridge die Vorteile der höheren Bandbreite von PCI Express x16 auch auszunutzen. Erreicht wird dies dadurch, daß die eingesetzten Grafikchips in einem virtuellen "AGPx16" Modus arbeiten. Dieser Modus ist natürlich nirgendwo spezifiziert und es wird auch keine entsprechenden Mainboards dafür geben, er wurde von nVidia nur für diesen Spezialfall geschaffen.
"AGPx16" sollte man deshalb auch nicht zu wörtlich nehmen. Die Signalwege auf den Mainboards wären für echtes AGPx16 viel zu lang. Die Kapazitäten, die durch parallel laufende Leitungen immer auftreten, würden das Signal völlig verschleifen. Um "AGPx16" überhaupt zu ermöglichen, sitzt die PCI Express Bridge auf dem Grafikboard so nah wie möglich am Grafikchip, womit der Signalweg nur wenige Millimeter beträgt. Der Grafikchip und die Leitungen zur PCI Express Bridge arbeiten dabei im AGPx8 Protokoll, aber mit echten 133 MHz Takt (Standard bei AGPx8 sind 66 MHz), so dass ein virtueller "AGPx16" Modus herauskommt.
nVidias PCI Express Bridge
Durch diesen "AGPx16" Modus, in welchem die GeForce PCX Grafikkarten betrieben werden, wird die theoretisch doppelte Bandbreite von AGPx8 ermöglicht, also 4 GB/sec, was exakt der Bandbreite von PCI Express x16 entspricht (Brutto-Bandbreiten). Damit ermöglicht nVidia bei seinem GeForce PCX Grafikkarten also nicht nur die Kompatibilität zu PCI Express, sondern auch die Ausnutzung der erhöhten Bandbreite von PCI Express mit AGP-Grafikchips!