PCI Express als Grafikschnittstelle - Weblearn

Transcription

PCI Express als Grafikschnittstelle - Weblearn
Rechnerstrukturen Labor
(RST-L WS 2004/05)
PCI Express als Grafikschnittstelle
bei Herrn Prof. Dr. Risse
an der Hochschule Bremen
Brünje Appelmann
26. Januar 2005
Rechnerstrukturen Labor
PCI Express als Grafikschnittstelle
RST-L WS 04/05
Inhaltsverzeichnis
Tabellenverzeichnis
2
Abbildungsverzeichnis
3
1 Einleitung
4
2 Bus-Systeme
2.1 ISA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.2 PCI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.3 AGP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5
5
6
7
3 PCI-Express Spezifikationen
3.1 neue Technik . . . . . . . . . .
3.2 Grafikschnittstelle . . . . . . .
3.3 Spannungsversorgung . . . . .
3.4 Routing . . . . . . . . . . . . .
3.5 Vergleichstabelle Bus-Systeme
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
8
9
11
13
14
15
4 Dual-Grafikkarten-Systeme
4.1 SLI . . . . . . . . . . . . . . . . . . . . . . . .
4.1.1 SLI von 3dfx . . . . . . . . . . . . . .
4.1.2 SLI von NVIDIA . . . . . . . . . . . . .
4.1.3 Video Array, Alternative von Alienware
4.2 Hardware Voraussetzungen . . . . . . . . . .
4.2.1 Hardware für SLI . . . . . . . . . . . .
4.2.2 Hardware für Video Array . . . . . . .
4.3 Vergleichstabelle Dual-Grafikkarten-Systeme
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
16
16
16
17
19
20
20
22
23
5 Fazit
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
24
6 Anhang
25
6.1 Links . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
Literaturverzeichnis
26. Januar 2005
26
Seite 1
Rechnerstrukturen Labor
PCI Express als Grafikschnittstelle
RST-L WS 04/05
Tabellenverzeichnis
8
3.1 Vergleichstabelle der Bandbreiten . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.2 Vergleichstabelle der Bus-Systeme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
4.1 Vergleichstabelle der Dual-Grafikkarten-Systeme . . . . . . . . . . . . . . . . . . . . . 23
26. Januar 2005
Seite 2
Rechnerstrukturen Labor
PCI Express als Grafikschnittstelle
RST-L WS 04/05
Abbildungsverzeichnis
2.1
2.2
2.3
2.4
2.5
16 bit ISA Steckplatz . . . . . . . . . . . . . . . . . . . . . . . .
Grafikkarte an PCI-BUS . . . . . . . . . . . . . . . . . . . . . .
PCI Steckplatz mit 33 MHz und 32 bit . . . . . . . . . . . . . .
Grafikkarte an AGP-BUS mit DIME (Direct Memory Execution)
AGP 8x Steckplatz . . . . . . . . . . . . . . . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
5
6
6
7
7
3.1
3.2
3.3
3.4
3.5
3.6
3.7
3.8
3.9
3.10
3.11
Paralleles Bus-System . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
PCI-Express Bus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Aufteilung des Byte Streams auf die Lanes . . . . . . . . . . . . . . . . .
Grafikkarte an PCI-Express x16 . . . . . . . . . . . . . . . . . . . . . . . .
PCI-Express Steckplatz x16 (oben) und x1 (unten) . . . . . . . . . . . . .
Belegung der Schnittstelle . . . . . . . . . . . . . . . . . . . . . . . . . . .
neue optionale Stromversorgung für Grafikkarten . . . . . . . . . . . . . .
Kurven/Krümmungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
optimales Routing (links), alternativs Routing (rechts) der Leitungsenden
symmetrischer Verlauf der Leitungen . . . . . . . . . . . . . . . . . . . . .
nicht erlaubtes Routing, keine Symmetrie der Leiterbahn ! . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
8
9
10
11
11
12
13
14
14
14
14
4.1
4.2
4.3
4.4
4.5
4.6
4.7
4.8
4.9
SLI von 3dfx . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Split Frame Rendering von NVIDIA . . . . . . . . . . . . . . . . . . . . . . . . .
Alternate Frame Rendering von NVIDIA . . . . . . . . . . . . . . . . . . . . . .
Video Array . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Schnittstelle zur anderen Grafikkarte . . . . . . . . . . . . . . . . . . . . . . . .
Brückenplatiene . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
ermöglicht die Konfiguration der Systemplatine . . . . . . . . . . . . . . . . . .
zwei PCI-E Grafikkarten (oben) und der VMH (unten) in der X2 Systemplatine .
Pass-Through-Kabelverbindung von den Grafikkarten zum Video Merger Hub .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
17
18
18
19
20
20
21
22
22
26. Januar 2005
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Seite 3
Rechnerstrukturen Labor
PCI Express als Grafikschnittstelle
RST-L WS 04/05
Kapitel 1
Einleitung
Die steigenden Anforderungen an die Bus-Systeme, die besonders bei den Grafikkarten sehr hoch
sind, haben zur Folge, dass sich die Bus-Schnittstellen ständig weiter entwickeln.
Die neuste Entwicklung für Grafikkarten, PCI-Express, soll dort Abhilfe schaffen und wird in diesem
Dokument kurz vorgestellt.
Es bietet einen kleine Rückblick auf die herkömlichen Schnittstellen für Grafikkarten. Im Weiteren
wird die PCI-Express Spezifikation kurz vorgestellt und mit den herkömlichen Techniken verglichen.
Ausserdem wird ein Blick auf Dual-Grafkkarten-Systeme geworfen, indem die verschiedenen
Verfahren dieser Systeme vorgestellt werden und die benötigte Hardware beschrieben wird.
26. Januar 2005
Seite 4
Rechnerstrukturen Labor
PCI Express als Grafikschnittstelle
RST-L WS 04/05
Kapitel 2
Bus-Systeme
In diesem Kapitel wird ein kleiner Rückblick auf verschiede Bus-System geworfen: die schon
"veralteten", die noch im Einsatz befindlichen und die der neue Generation.
Ich beschränke mich auf die gängigsten Systeme für Grafikkarten: sie werden kurz vorgestellt und
miteinander verglichen.
2.1
ISA
Anfang der 80er Jahre wurde der XT-Bus, von IBM entwickelt, als erstes Bus-System in Rechner
verbaut, er hatte nur 8 Bit für Daten und war auf 4,77 MHz beschränkt.
Aus dem XT-Bus wurde Mitte der 80er Jahre der ISA (Industry Standard Architecture) Bus entwickelt.
Der ISA-Bus wurde mit 8 Daten und 4 Adressleitungen erweitert; somit wurde der Bus auf 16 bit
Daten und 24 bit Adressleitung ausgebaut und erreicht einen Takt von 8,33 MHz.
Abbildung 2.1 zeigt einen 16 bit ISA Steckplatz. Die maximal adressierbaren Speicher von 16 MB
im Arbeitsspeicher reichten für Grafikkarten oft nicht aus und mussten mit aufwendigen Methoden
dazu gebracht werden, in Rechnern mit mehr als 16 MB zu funktionieren.
Eine Weiterentwicklung des ISA-Busses war Anfang der 90er Jahre der VLB (Vesa Local Bus); er
erweitert den ISA auf 32 bit und wurde mit dem Systemtakt, maximal 40 MHz, betrieben. Aber auf
Grund von Kompatibilitätsproblemen und durch Nichteinhaltung der VLB1 Spezifikation 1.0 einiger
Hersteller konnte sich die zweite Spezifikation nach dem Markterfolg des PCI-Busses nicht mehr
durchsetzen.
[1]
Abbildung 2.1: 16 bit ISA Steckplatz
1 Vesa
Local Bus
26. Januar 2005
Seite 5
Rechnerstrukturen Labor
PCI Express als Grafikschnittstelle
2.2
RST-L WS 04/05
PCI
Der PCI (Peripheral Component Interconnection) Bus sollte, wie auch der Vesa Local Bus, die
Schwächen des ISA Busses in Hinblick auf Leistungs- und Ausbaufähigkeit nicht nur wie der VLB
erweitern, sondern ersetzen.
Nicht nur die neuen Prozessor-Generationen sondern auch die immer schnelleren Grafikkarten und
steigenden Auflösungen verlangten nach einem besseren Bussystem. 1992 wurde der PCI-Bus
unter Federführung von Intel entwickelt. Daraus entstand ein unabhängiges Konsortium, die PCISpecial Interest Group2 , die für weitere Entwicklungen zuständig war und ist.
In der ersten PCI Spezifikation wurde die Datenbreite auf 32 Bit festgelegt mit einer Taktgeschwindigkeit von 33 MHz, was eine theoretische Übertragungsrate von 132 MByte/sec ermöglichte.
Auf Abbildung 2.2 ist das Prinzip des PCI-Busses zu sehen, Abblidung 2.3 zeigt einen PCI Steckplatz. Mit steigender Leistung der Rechnersysteme musste auch die Spezifikation des PCI Busses
angepasst werden. So wurde bereits im April 1993 die Version 2.0 vorgestellt und 1995 die Version
2.1. 1996 setzte man sich unter Federführung von Intel zusammen und arbeitete an einem neuen
Bussystem.
Die in 2005 aktuelle PCI Spezifikation ist 3.0 und wurde am 19. April 2004 veröffentlicht.
[2]
Abbildung 2.2: Grafikkarte an PCI-BUS
Abbildung 2.3: PCI Steckplatz mit 33 MHz und 32 bit
2 PCI-SIG,
siehe 6.1 Links
26. Januar 2005
Seite 6
Rechnerstrukturen Labor
PCI Express als Grafikschnittstelle
2.3
RST-L WS 04/05
AGP
Der ”Accelerated Graphics Port3 ” kam 1997 in der Spezifikation 1.0 auf den Markt und ist ausschließlich für die Nutzung von Grafikkarten.
Der AGP-Bus4 besitzt eine höhere Bandbreite und ist zur Entlastung bzw. als Ergänzung des PCI
Busses gedacht, indem er die Daten für die Grafikkarte abnimmt, so dass der PCI-Bus sich anderen
Aufgaben widmen kann. Beim AGP-Bus besteht eine Punk-zu-Punkt-Verbindung zwischen Grafikkarte und Chipsatz, so dass die Grafikkarte direkt auf den Arbeitsspeicher zugreifen kann.
In Abbildung 2.4 ist DIME5 , der direkte Speicherzugriff, zu sehen. Zum Vergleich siehe Abbildung 2.2, die Grafikkarte muss sich den PCI-Bus mit anderen Geräten teilen.
Abbildung 2.4: Grafikkarte an AGP-BUS mit DIME (Direct Memory Execution)
In der ersten Spezifikation wurden die Taktrate von AGP 1x auf 66 MHz festgelegt, das erlaubt mit
32 bit breitem Datenbus eine theoretische Transferrate von 264 MB/s.
Bei AGP 2x wurden die Daten mit steigender und fallender Taktrate übertragen, was einer Verdopplung des Takts auf 133 MHz und der Datenrate auf 532 MB/s entspricht. Spezifikation 2 wurde für
AGP 4x festgelegt, in der die Taktrate nochmal auf 266 MHz verdoppelt wurde, was einen Datendurchsatz von 1064 MB/s erlaubt.
Mit AGP 8x ist die dritte Spezifikation im September 2002 erschienen, mit einer erneuten Verdopplung der Taktrate auf 533 MHz mit einem Datentransfer von 2,1 GB/s. Abbildung 2.5 zeigt einen
AGP 8x Steckplatz. Es ist die letzte Spezifikation für den Bus, bevor PCI-Express erschien.
[3], [4]
Abbildung 2.5: AGP 8x Steckplatz
3 auch
AGP, AGP-Bus
Graphics Port
5 Direct Memory Execution
4 Accelerated
26. Januar 2005
Seite 7
Rechnerstrukturen Labor
PCI Express als Grafikschnittstelle
RST-L WS 04/05
Kapitel 3
PCI-Express Spezifikationen
Der Bedarf an Bandbreite ist bei AGP nicht mehr ausreichend und liegt mit der Übertragungsrate
weit hinter den der neuen Techniken, die in Rechnersystemen verarbeitet werden.
Die Bandbreiten zwischen Prozessor und Arbeitsspeicher der neuen Prozessor-Generationen sind
in der folgenden Tabelle aufgelistet.
Prozessorhersteller :
Typ :
Sockel-Typ :
Typ :
Systembusbandbreite :
Speicherbandbreite :
Intel
Pentium 4 HT
775
Pentium 4
8,5 GB/sa
8,5 GB/s (DDR2)c
AMD
Athlon 64
939
Athlon 64
8.0 GB/sb
6,4 GB/s (DDR)d
Tabelle 3.1: Vergleichstabelle der Bandbreiten
a abhängig
vom Chipsatz; hier mit Front-Side-Bus von 1066MHz
Technologie, Vollduplex
c mit Front-Side-Bus von 1066 MHz, abhängig vom Chipsatz
d der Athlon 64 hat einen Integrierten Speicher-Controller
b HyperTransport
Die bisherigen Bus-Systeme, hierzu gehören auch ISA, PCI und AGP, setzten auf eine parallele Datenübertragung. Es werden viele Leiterbahnen für Daten-, Steuer- und Taktsignale benötigt, siehe
Abbildung 3.1.
Bei einem parallelen Bus werden die Daten unidirektional übertragen, daß heist es kann entweder
gesendet oder empfangen werden. Die Daten müssen synchron, also gleichzeitig, an allen Leitungen vorhanden sein um beim Taktsignal übernommen zu werden.
Abbildung 3.1: Paralleles Bus-System
26. Januar 2005
Seite 8
Rechnerstrukturen Labor
PCI Express als Grafikschnittstelle
3.1
RST-L WS 04/05
neue Technik
PCI-Express1 wurde im August 2004 in erster Spezifikation von der PCI-SIG2 veröffentlicht.
Bei PCI-Express werden die Daten seriell übertragen. Die Verbindungen bestehen aus zwei Leitungspaaren. Die so genannten Lanes3 , in Abbildung 3.2 zu sehen, ein Paar zum Senden und eins
zum Empfangen.
PCI-Express ist bidirektional, das heißt, es können gleichzeitig Daten gesendet und empfangen werden. Das ermöglicht schnelleren Datenaustausch zwischen CPU, Arbeitsspeicher und Grafikkarte.
Abbildung 3.2: PCI-Express Bus
1 auch
PCI-E und PCIe genannt
siehe 6.1 Links
3 eine Lane hat zwei Leitungen in eine Richtung
2 PCI-SIG,
26. Januar 2005
Seite 9
Rechnerstrukturen Labor
PCI Express als Grafikschnittstelle
RST-L WS 04/05
Die Pakete, die auf den Lanes gesendet werden, haben eine Größe von 10 bit und werden nach dem
8b/10b-Verfahren kodiert. Das ist eine serielle Kodierungstechnik; sie wandelt die 8 bit Nutzdaten in
einen 10 bit langen Datenblock um.
In den zwei zusätzlichen Bits sind durch aufeinander folgende Bitwechsel die Taktinformationen
enthalten, mit denen sich Sender und Empfänger synchronisieren.
Der Bus hat eine Taktfrequenz von 2,5 GHz, das macht eine Transferrate von 2,5 Gbit/s pro Bit
je Richtung und Leitungspaar. Durch die 8b/10b-Kodierung ensteht ein Overhead von 20%, das
entspricht einer Nutzdatenrate von 2,0 Gbit/s oder auch 250 MB/s pro Lane.
Die Leitungspaare sind linear skalierbar, hierzu werden mehrere Lanes4 parallel gebündelt, das
ermöglicht eine Flexibilität bei der Bandbreite.
Auf der physikalischen Schicht unterstützt die PCI-Express-Architektur verschiedene Breiten von
Lanes. PCI-Express x1 hat 2 Lanes, eine in jede Richtung, das ergibt eine Datentransferrate von
500 MB/s. Die Anzahl der Lanes verdoppelt sich bis zu Version x16 mit 32 Lanes und erreicht damit
eine Transferrate von 8 GB/s bidirektional.
Abbildung 3.3 zeigt zum Beispiel, dass der Byte Stream von der physikalischen Schicht auf eine
Lane, bzw. auf 4 Lanes aufgeteilt wird. Die Bytes werden kodiert, serialisiert und übertragen.
[4], [5], [6], [7], [8], [9]
Abbildung 3.3: Aufteilung des Byte Streams auf die Lanes
4 eine
Lane hat zwei Leitungen in eine Richtung
26. Januar 2005
Seite 10
Rechnerstrukturen Labor
PCI Express als Grafikschnittstelle
3.2
RST-L WS 04/05
Grafikschnittstelle
Als Grafikschnittstelle ist eine PCI-Express x16 Steckplatz vorgesehen, siehe Abbildung 3.4.
Die Bezeichnung x16 steht für je 16 Leitungsleitungspaare in beide Richtungen, das sind 32 Lanes5 ,
insgesamt 64 Leitungen.
Abbildung 3.4: Grafikkarte an PCI-Express x16
Auf Abbildung 3.5 ist ein PCI-Express x16 Steckplatz mit 164 Pins zu sehen, zum Vergleich ein
PCI-E6 x1 mit 36 Pins und AGP 8x mit 108 Pins, siehe Abbildung 2.5.
Die lineare Skalierbarkeit der Lanes macht es möglich, dass die Schnittstellen abwärts kompatibel
sind, es ist möglich, eine PCI-E x1 Karte in einen PCI-E x16 Steckplatz zu stecken.
Abbildung 3.5: PCI-Express Steckplatz x16 (oben) und x1 (unten)
5 eine
Lane hat zwei Leitungen in eine Richtung
6 PCI-Express
26. Januar 2005
Seite 11
Rechnerstrukturen Labor
PCI Express als Grafikschnittstelle
RST-L WS 04/05
Abbildung 3.6 zeigt die Belegung der Schnittstelle, es sind die verschiedenen Steckplatzversionen
von PCI-Express eingezeichnet.
[8], [10]
Abbildung 3.6: Belegung der Schnittstelle
26. Januar 2005
Seite 12
Rechnerstrukturen Labor
PCI Express als Grafikschnittstelle
3.3
RST-L WS 04/05
Spannungsversorgung
Die PCI-Express Grafikkarten verfügen über ein neues Konzept der Spannungsversorgung.
Die Grafikkarte erhält ausschließlich über eine 3,3 V und eine 12 V Leitung Energie, im Gegensatz
zu AGP-Bus fällt die 1,5 V und die 5 V Spannungsschiene weg.
Um einen digitalen Bildschirm zu betreiben, wird aber eine 5 V Spannung benötigt, die auf der
Grafikkarte aus der 12 V Spannung generiert wird. Hochleistungs-Grafikkarten mit AGP 8x7
kommen auf einen Verbrauch von bis zu 80 Watt, diese Werte werden mit einer zusätzlichen
Spannungsversorgung erreicht. Damit wird der in der Spezifikation festgelegte Maximalwert von 25
Watt für einen Standard-Steckplatz umgangen.
Die PCI-Express Schnittstelle kann bis zu 75 Watt bereitstellen; mit einer zusätzlichen Spannungsversorgung kann eine Grafikkarte bis zu 150 Watt verbrauchen. Das setzt eine neue Obergrenze für
die Leistungsaufnahme von Grafikkarten. Für die optionale Spannungsversorgung der Grafikkarten
ist ein neuer sechspoliger Stecker vorgesehen, siehe Abbildung 3.7, nicht wie bisher eine Lösung
mit Stromsteckern für Festplatten bzw. Diskettenlaufwerke.
Für den hohen Energiebedarf werden Netzteile mit einer hohen Ausgangsleistung benötigt. Es
kommen Netzteile zum Einsatz, die auch schon in Server-Systemen verwendet werden bei denen
der Systemplatinen-Stromstecker vier zusätzliche Pins mit je einer 3,3 V, 5 V und 12 V Spannungsleitung sowie einer Masseleitung hat.
[4], [7], [8], [11]
Abbildung 3.7: neue optionale Stromversorgung für Grafikkarten
7 aus
Spezifikation 3.0
26. Januar 2005
Seite 13
Rechnerstrukturen Labor
PCI Express als Grafikschnittstelle
3.4
RST-L WS 04/05
Routing
Die am parallelen Bus, wie auch bei AGP, angeschlossenen Baugruppen werden mit einem externen Takt über einen zentralen Frequenzgeber synchronisiert. Um unterschiedliche Signallaufzeiten
zu vermeiden, müssen alle Datenleitungen gleichlang sein.
Bei PCI-Express muss nur die Länge eines Leitungspaares, einer Lane8 , gleich sein. Der Steuertakt
wird unabhängig von einem zentralen Frequenzgeber und aus dem Datenstrom des Leitungspaares
generiert9 , das ermöglicht einen asynchronen Datenverkehr.
In der PCI-Express Spezifikation ist eine maximale Leitungslänge von 50,8 cm vorgeschrieben. Die
Leitungen einer Lane untereinander dürfen einen Abstand von 0,2 mm und eine maximale Längenabweichung von 0,13 mm nicht unterschreiten. Der Abstand zwischen den Lanes muss mindestens
0,51 mm betragen, um Übersprechverhalten10 zu vermeiden.
Die Leitungspaare müssen symmetrisch zueinander verlaufen, der Leiterbahnverlauf soll mit maximal 45 Grad geführt werden, siehe Abbildung 3.8. Bei AGP werden die Leitungen in verschlungenen
Bahnen11 verlegt, mit Abwinklungen bis zu 90 Grad, um unterschiedliche Signallaufzeiten zu kompensieren.
Abbildung 3.8: Kurven/Krümmungen
Abbildung 3.9 zeigt zwei Möglichkeiten die Leitungsenden zu verlegen.
Abbildung 3.9: optimales Routing (links), alternativs Routing (rechts) der Leitungsenden
Auf der Abbildung 3.10 ist ein symmetrischer Verlauf der Leitungen zu sehen, Abbildung 3.11 zeigt
hingegen einen unsymmetrischen Leitungsverlauf.
[7], [8], [9], [11]
Abbildung 3.10: symmetrischer Verlauf der Leitungen
Abbildung 3.11: nicht erlaubtes Routing, keine Symmetrie der Leiterbahn !
8 zwei
Leitungen entweder zum Senden oder zum Empfangen
clock
10 crosstalk
11 Serpentinen-Routing
9 embedded
26. Januar 2005
Seite 14
Rechnerstrukturen Labor
PCI Express als Grafikschnittstelle
3.5
RST-L WS 04/05
Vergleichstabelle Bus-Systeme
Hier sind alle Eckdaten in einer Tabelle zusammengefasst.
Bus-System :
ISA
PCI
AGP
PCI-Express
(PCI-E)
Name :
(I)ndustry
(P)eripheral
(A)ccelerated
(P)eripheral
(S)tandard
(C)omponent
(G)raphics
(C)omponent
(A)rchitecture (I)nterconnect
(P)ort
(I)nterconnect
(E)xpress
Jahr :
1984
1992
1997
2004/05
Spezifikationen :
16 bit
1.0; 2.0; 2.1;
1.0 (1x, 2x);
1.0a
2.2; 2.3; 3.0
2.0 (4x); 3.0 (8x) (x1; x2; x4; x8; x16)
Busart :
parallel
parallel
parallel
seriell
Übertragungsart : unidirektional unidirektional
unidirektional
bidirektional
synchron
synchron
synchron
asynchron
die folgenden Daten berufen sich auf die gängigsten Grafikkarten Spezifikationen :
ISA 16 bit
PCI 2.0
AGP 8x
PCI-E x16
Bustakt :
8,33 MHz
33 MHz
533 MHz
2,5 GHz
Datenbusbreite :
16 bit
32 bit
32 bit
16 Lanepaare
(32 Lanes)a
max. mögliche
16 MB/s
132 MB/s
2,1 GB/s
je Richtung 4 GB/s
Bandbreite :
Gesamt 8 GB/sb c
Tabelle 3.2: Vergleichstabelle der Bus-Systeme
a eine
Lane hat zwei Leitungen pro Richtung, 64 Leitungen gesamt
b Nutzdaten
c eine
Lane kann bis zu 2,5 Gbit/s Rohdaten übertragen
26. Januar 2005
Seite 15
Rechnerstrukturen Labor
PCI Express als Grafikschnittstelle
RST-L WS 04/05
Kapitel 4
Dual-Grafikkarten-Systeme
Das Konzept 3D-Grafikprozessoren parallel arbeiten zu lassen, ist schon 1993 in Onyx-Workstations
von Silicon Graphics verwendet worden, mit Systempreisen bis zu 1 Million US-Dollar.
PCI-Express macht es nun möglich, diese Technik wieder einzusetzen.
[12]
4.1
SLI
Der Grafik- und digitale Medienprozessor Hersteller NVIDIA1 macht sich die Eigenschaften von PCIExpress zu Nutzen, um zwei Grafikprozessoren miteinander zu verbinden. Zuvor gelang das nur 3dfx
mit der Voodoo 2 über PCI.
NVIDIA nennt diese Technik SLI2 3 und hat das Kürzel von der 1998 erschienen Grafikkarte Voodoo 2, die von 3dfx auf den Markt gebracht wurde, übernommen. Ende 2000 wurde auf Grund von
Fehlentscheidungen und Verzögerungen 3dfx von NVIDIA aufgekauft, vielleicht auch daher die Verwandschaft des Kürzels SLI.
Im Folgenden werden die unterschiedlichen Versionen und Verfahren von SLI vorstellt.
[12]
4.1.1
SLI von 3dfx
SLI bedeutet bei 3dfx ”Scan Line Interleave” und kam bei der Voodoo 2 zum Einsatz, damals noch
für den PCI-BUS konzipiert. Voodoo 2 ist eine Zusatz-Grafikkarte, das bedeutet, es musste eine
normale 2D-Grafikkarte vorhanden sein.
Mittels eines Loop-Through-Kabels wurden die 2D-Karte und eine der Voodoo 2 Grafikkarten außerhalb des Rechners verbunden. Außerdem mussten die beiden Voodoo 2 Grafikkarten über ein
Flachbandkabel verbunden werden, womit eine Steigerung der Bildwiederholungsrate von bis zu
70 %, im Vergleich mit nur einer Voodoo 2, erreicht wurde.
Die erste der Voodoo 2 Grafikkarten lieferte die Texturen für die geraden Bildzeilen und die zweite
die Texturen für die ungeraden Bildzeilen, wie auf Abbildung 4.1 zu sehen ist.
Damit konnte das Referenz-Spiel Quake 2 in der damals hohen Auflösung von 1024 x 768 Pixel
flüssig gespielt werden.
[12], [13], [14]
1 NVIDIA,
siehe 6.1 Links
Link Interface, bei NVIDIA
3 Scan Line Interleave, bei 3dfx
2 Scalable
26. Januar 2005
Seite 16
Rechnerstrukturen Labor
PCI Express als Grafikschnittstelle
RST-L WS 04/05
Abbildung 4.1: SLI von 3dfx
4.1.2
SLI von NVIDIA
NVIDIA hat nur das Kürzel SLI übernommen, das in diesem Fall ”Scalable Link Interface” bedeutet
und ausschließlich für PCI-Express Grafikkarten konzipiert ist.
PCI-Express bietet Skalierbarkeit bei der Geometrieleistung und kann die Ausgabebilder komplett
digital und verlustfrei zusammensetzten.
Der AGP-Bus hat sich auf Grund von Unidirektionalität4 und der Auslegung für nur eine Grafikkarte
als ungeeignet erwiesen.
NVIDIA SLI kann sich optimal an das Leistungsverhalten und die Anforderungen der Anwendung
anpassen, dazu dienen verschiedene Skalieralgorithmen, SFR5 und AFR6 .
Die Koordination der Steuersignale zwischen beiden Karten läuft über eine zusätzliche physikalische
Verbindung, siehe hierzu Abschnitt 4.2 Hardware Voraussetzungen. Eine der beiden Karten fungiert
als Master, sie bestimmt die Arbeitsweise der zweiten Karte (Slave), übernimmt deren Ergebnisse
und leitet sie zusammen mit den eigenen Bildinhalten an den Bildschirm weiter.
Die Entscheidung, welches der beiden Verfahren genutzt wird, ist Sache des Treibers.
[12], [13], [15]
4 Daten
können nur entweder hin- oder zurückgesendet werden
Frame Rendering
6 Alternate Frame Rendering
5 Split
26. Januar 2005
Seite 17
Rechnerstrukturen Labor
PCI Express als Grafikschnittstelle
RST-L WS 04/05
SFR
Beim ”Split Frame Rendering” übernimmt die Master-Karte das Rendern der oberen und die SlaveKarte das der restlichen unteren Bildschirmhälfte.
Per Treiber kann die Lastenverteilung7 statisch bei je 50 % festgesetzt werden oder dynamisch erfolgen. Da im unteren Bereich oft mehr Objekte gerendert werden müssen, Boden und Schattenwürfe,
als in der oberen Hälfte, Decken oder Himmel, kann die Trennlinie im Interesse einer gleichmäßigeren Auslastung etwas nach unten setzen gesetzt werden, siehe Abbildung 4.2.
[12], [13]
Abbildung 4.2: Split Frame Rendering von NVIDIA
AFR
Beim ”Alternate Frame Rendering” werden ganze Bilder (Frames) abwechselnd von beiden Grafikkarten berechnet, die Master-Karte übernimmt die geraden Bilder und die Slave-Karte die ungeraden, siehe Abbildung 4.3.
AFR verdoppelt annähernd Geometire- und Renderleistung, aber es funktioniert nur bei Spielen, die
das Vorberechnen mehrerer Bilder zulassen. Es soll jedoch nicht zu Verzögerungszeiten bei Reaktionen auf Benutzereingaben kommen, obwohl zwei Bilder zwischengespeichert werden.
Aber gerade bei aufwändigen Spielen und hohen Qualitätseinstellungen lassen sich hohe Bildwiederholungsraten8 erzielen, das entspricht einer durchschnittliche Steigerung von über 70 %.
[12], [13]
Abbildung 4.3: Alternate Frame Rendering von NVIDIA
7 Load
Balancing
per second, Fps
8 Frames
26. Januar 2005
Seite 18
Rechnerstrukturen Labor
PCI Express als Grafikschnittstelle
4.1.3
RST-L WS 04/05
Video Array, Alternative von Alienware
Der Rechnersysteme Anbieter Alienware9 , bekannt für Hochleistungs-Spiele-Rechner, hat ein eigenes Dual-Grafikkarten-System entwickelt: den Video Array.
Diese Technik erlaubt es, verschiedene Grafikkarten desselben Herstellers zusammenzuschalten
und ist dabei nicht nur auf NVIDIA-Karten beschränkt. Ähnlich dem SFR10 von NVIDIA werden zwei
Bildteile über eine zusätzliche Erweiterungskarte, den sogegannten Video Merger Hub11 , koordiniert. Die Grafikkarten werden über ein Pass-Through-Kabel, ähnlich dem Verfahren von 3dfx, an
den VHM12 angeschlossen, an dem dann der Bildschrim angeschlossen wird.
Mit seiner Software, die das so genannte Predictive Load Balancing beherrscht, kann der Video Array zwei Grafikkarten so beeinflussen, dass eine Karte 75 % und die andere die restlichen 25 % der
Arbeit übernimmt. Auf der Abbildung 4.4 ist das Prinzip von Video Arrays zu sehen.
[12], [13], [16], [17]
Abbildung 4.4: Video Array
9 Alienware,
10 Split
siehe 6.1 Links
Frame Rendering
11 VMH
12 Video
Merger Hub
26. Januar 2005
Seite 19
Rechnerstrukturen Labor
PCI Express als Grafikschnittstelle
4.2
RST-L WS 04/05
Hardware Voraussetzungen
Die Systemplatine muss mit mindestens zwei PCI-E x16 Steckplätzen bestückt sein, um die Voraussetzungen für den Betrieb von zwei Grafikkarten zu gewährleisten.
[12]
4.2.1
Hardware für SLI
NVIDIA hat SLI nur für PCI-Express-Grafikprozessoren vorgesehen, das sind folgende Chips:
NVIDIA GeForce 6600 GT, 6800 GT und 6800 Ultra. Außerdem muss auf der Systemplatine ein SLI
fähiger Chipsatz vorhanden sein. Es sind Systemplatinen von verschienen Herstellern mit nForce4SLI Chipsatz von NVIDIA erhältlich. Von Intel gibt es zur Zeit nur eine Serverplatine mit Intel i7525
Chipsatz und zwei PCI-E x16 Steckplätzen.
An den Grafikkarten befindet sich eine zusätzliche Schnittstelle, siehe Abbildung 4.5, an der eine
Verbindungsbrücke angebracht wird, um die Daten zwischen den Grafikkarten auszutauschen, wie
auf Abbildung 4.6 zu sehen.
Abbildung 4.5: Schnittstelle zur anderen Grafikkarte
Abbildung 4.6: Brückenplatiene
26. Januar 2005
Seite 20
Rechnerstrukturen Labor
PCI Express als Grafikschnittstelle
RST-L WS 04/05
Bei einigen Systemplatinen wird mittels einer Steckkarte der Betrieb mit ein oder zwei Grafikkarten
konfiguriert, siehe Abbildung 4.7
[12], [18]
Abbildung 4.7: ermöglicht die Konfiguration der Systemplatine
26. Januar 2005
Seite 21
Rechnerstrukturen Labor
PCI Express als Grafikschnittstelle
4.2.2
RST-L WS 04/05
Hardware für Video Array
Für den Video Array von Alienware ist eine spezielle Systemplatine, von Alienware namens X2, mit
Intel i7525 Chipsatz vorgesehen.
Des Weiteren wird zusätzlich eine Steckkarte, der Video Merger Hub, siehe Abbildung 4.8, und eine
Kabelverbindung zwischen den Grafikkarten und dem VMH13 benötigt, auf Abbildung 4.9 zu sehen.
[12], [16], [17]
Abbildung 4.8: zwei PCI-E Grafikkarten (oben) und der VMH (unten) in der X2 Systemplatine
Abbildung 4.9: Pass-Through-Kabelverbindung von den Grafikkarten zum Video Merger Hub
13 Video
Merger Hub
26. Januar 2005
Seite 22
Rechnerstrukturen Labor
PCI Express als Grafikschnittstelle
4.3
RST-L WS 04/05
Vergleichstabelle Dual-Grafikkarten-Systeme
In dieser Übersicht sind die oben beschriebenen Dual-Grafikkarten-Systeme aufgelistet.
Hersteller :
Jahr :
Technik :
3dfx
1998
Scan Line Interleave
(SLI)
2 x 3dfx Voodoo 2
Verwendeter
Grafikchip :
Mainboard Interface :
Verbindung der
Grafikkarten :
PCI
Flachbandkabel,
Loop-Through-Kabel
Voraussetzungen :
zusätzliche 2D-Karte
nötig, belegt 3 PCISteckplätze
Nachteile :
Qualitätsverlust duch
2D-Signals wegen
Durchschleifens per
Loop-Trough-Kabel
bis 70 %
3D-Mehrleistung :a
NVIDIA
2004
Scalable Link Interface
(SLI)
2 x NVIDIA GeForce
6600 GT/ 6800 GT/
6800 Ultra
PCI-Express
Platine / Flachbandkabel
(je nach Mainboard)
Mainboard mit
2 x PCI-Express x16
Steckplätzen und
geeigneten Chipsätzen
von Intel oder NVIDIA
hoher Stromverbrauch,
hohes Betriebsgeräusch
bis 90 %
Alienware
2004
Video Array
2 x belibige Grafikkarten
(des gleichen Herstellers)
PCI-Express
zwei Verbindungskabel
zur ”Video-MergerHub”-Karte
Mainboard mit
2 x PCI-Express x 16
Steckplätze nur von
Alienware (X2)
hoher Stromverbrauch,
hohes Betriebsgeräusch
bis 70 %
Tabelle 4.1: Vergleichstabelle der Dual-Grafikkarten-Systeme
a gegenüber
Singel-Grafikkarten-System
[12]
26. Januar 2005
Seite 23
Rechnerstrukturen Labor
PCI Express als Grafikschnittstelle
RST-L WS 04/05
Kapitel 5
Fazit
PCI-Express ist noch sehr neu, wird aber den AGP-Bus als Grafik-Schnittstelle und wahrscheinlich
auch den PCI-Bus ablösen.
Die Vorreiter dieser Technik sind die Hersteller der Grafikkarten. Mit SLI hat NVIDIA die Führungsrolle im Kampf um die Spitze der Grakikprozessoren übernommen.
Der Video Array von Alienware ist noch nicht erhältlich und erscheint voraussichtlich nur auf dem
US-Markt.
Kurz vor Weihnachten überraschte Gigabyte1 den Markt mit der PCI-Express-Grafikkarte 3D1, die
mit zwei parallel arbeitenden NVIDIA GeForce 6600 GT Grafikprozessoren bestückt ist. Damit hat
Gigabyte zwei im SLI-Modus verknüpfte Prozessoren auf einer Karte zusammengefasst.
Die PCI-SIG2 sieht eine Verdoppelung der PCI-Express Leistung vor. In ihrer nächsten PCI-Express
Spezifikation, die Mitte 2005 veröffentlicht wird, soll der Datentransfer für eine Lane3 von 2,5 Gbit/s4
auf 5 Gbit/s angehoben werden.
Damit kommt die PCI-Express x16 Schnittstelle auf je 8 GByte/s pro Richtung und eine Gesamttransferrate von 16 GByte/s. Das bedeutet, dass PCI-Express auch in industriellen Bereichen die
Vorausetztung für Hochleistungs-Grafik-Systeme bietet.
[18], [19], [20]
Ist das schon das Ende ?
1 Gigabyte,
siehe 6.1 Links
siehe 6.1 Links
3 eine Lane sind zwei Leitungen in eine Richtung
4 Rohdaten, 2 Gbit/s oder 250MByte/s Nutzdaten
2 PCI-SIG,
26. Januar 2005
Seite 24
Rechnerstrukturen Labor
PCI Express als Grafikschnittstelle
RST-L WS 04/05
Kapitel 6
Anhang
6.1
Links
PCI-SIG PCI - Special Interest Groupe
Industrielle Organisation zur Entwicklung und Verwaltung von PCI-Standards.
http://www.pcisig.com/home
NVIDIA NVIDIA
Hersteller von Grafik und digitale Medienprozessor
hhttp://www.nvidia.de/page/home
Alienware Alienware
Anbieter von Rechnersystemen bekannt für Hochleistungs-Spiele-Rechner
http://www.alienware.com/main.aspx
GIGABYTE Gigabyte
unter anderem Hersteller von Systemplatinen und Grafikkarten
http://www.gigabyte.de
26. Januar 2005
Seite 25
Rechnerstrukturen Labor
PCI Express als Grafikschnittstelle
RST-L WS 04/05
Literaturverzeichnis
[1] Udo Wenzek: PC Bussysteme: Teil 1 - ISA und Co.;
userchannel Sonntagsseite, 17.11.2002,
http://www.userchannel.de/sonntagsseite/newsseite.php?datum=17.11.2002\&newsID=
53
[2] Udo Wenzek: PC Bussysteme: Teil 2 - PCI;
userchannel Sonntagsseite, 24.11.2002,
http://www.userchannel.de/sonntagsseite/newsseite.php?datum=24.11.2002\&newsID=
64
[3] Udo Wenzek: PC Bussysteme: Teil 3 - AGP;
userchannel Sonntagsseite, 01.12.2002,
http://www.userchannel.de/sonntagsseite/newsseite.php?datum=01.12.2002\&newsID=
73
[4] Thilo Bayer: Praxistest PCI Express;
PC Games Hardware, 09/2004, s.116
[5] Intel Corporation: Intel 925XE Express chipset;
Intel, 2005
http://www.intel.com/design/chipsets/925xe/index.htm
[6] Advanced Micro Devices, Inc.: AMD Athlon 64 FX Prozessor Wettbewerbsvergleich;
AMD, 2005
http://www.amd.com/de-de/Processors/ProductInformation/0,,30_118_9485_9488%
5E9494,00.html
[7] Bernhard Haluschak: PCI Express für Grafikkarten;
tecCHANNEL, 30.05.2003,
http://www.tecchannel.de/hardware/1182/index.html
[8] Bernhard Haluschak: PCI Express: Der Highspeed-Datenbus im Detail;
tecCHANNEL, 06.09.2002,
http://www.tecchannel.de/hardware/1003/index.html
[9] Hermann Strass: PCI Express: Mit Volldampf in ein neues Zeitalter;
elektroniknet, 2004,
http://www.elektroniknet.de/topics/kommunikation/fachthemen/2004/0004/index.htm
26. Januar 2005
Seite 26
Rechnerstrukturen Labor
PCI Express als Grafikschnittstelle
RST-L WS 04/05
[10] Patrick Schmid, Achim Roos: PCI Express durchleuchtet: Alle Modi im Test;
tom’s hardware guide, 5. November 2004,
http://www.de.tomshardware.com/graphic/20041105/index.html
[11] Manfred Bertuch: Pixel-Express Nvidia kündigt erste Grafikkarten mit PCI Express an;
c’t, 6/2004, S. 44
http://www.heise.de/ct/04/06/044/default.shtml
[12] Daniel Wolff: SLI: 3D mal zwei;
chip 01/2005, S. 54
[13] Raphael auf der Mauer, Thilo Bayer: Multichip-Technik SLI;
PC Games Hardware 09/2004, S. 20
[14] Pierre Kretschmer: Voodoo2;
Gargarmel, 2003 ?,
http://www.gargamel.de/html/voodoo2.htm
[15] NVIDIA Corporation: NVIDIA SLI;
NVIDIA, 2004/05,
http://www.nvidia.de/page/sli.html
[16] Alienware Corporation: Alienware ALX/ Video Array;
Alienware, 2004/05,
http://www.alienware.com/ALX_pages/main_content.aspx
[17] ?? : Alienware ??? PCI-E ??????; (chinesische Seite)
pcicp.com, 18.05.2004,
http://itinfo.pcicp.com/news/hardware/2004/05/18/1084844257d4561.html
[18] Lars Weinand: NVIDIAs SLI-Performance: Doppelte Potenz für Halbstarke;
tom’s hardware guide, 23.11.2004,
http://www.de.tomshardware.com/graphic/20041123/index.html
[19] Lars Weinand: Gigabyte 3D1 mit 2 Chips: SLI mit einer Karte!;
tom’s hardware guide, 18. Januar 2005,
http://www.tomshardware.de/graphic/20050118/index.html
[20] (hal): PCI-SIG verdoppelt PCI Express Performance;
tecCHANNEL, 17.12.2004,
http://www.tecchannel.de/news/hardware/18658/
26. Januar 2005
Seite 27