• PCI Express

    PCI Express (kurz PCIe, PCI E oder PCI – E genannt) ist die Technik, welche in nächster Zeit den nun fast acht Jahre alten Accelerated Graphics Port (AGP) ablösen wird. Auch ist über einen längeren Zeitraum hinweg geplant, dass PCI Express die gesamte bisherige PCI Familie, also PCI, PCI-X sowie CompactPCI, usw. ersetzt. Allerdings haben diese (parallelen) Techniken bis auf ihr Einsatzgebiet nicht viel gemeinsam, weshalb für die Ankopplung der "alten" PCI Express Base (ExB) - Technik auch so genannte Bridges benötigt werden.




    Die PCI Express Schnittstelle basiert auf eine serielle "Punkt-zu-Punkt"-Verbindung (kurz: Link), welche durch so genannte "Lanes" (Fahrbahnen) zustande kommt. Diese Lanes bestehen aus jeweils zwei unidirektionalen Leitungspaaren, bei denen das eine Paar für das Senden und das Andere zum Empfangen von Daten zuständig ist. Um magnetische Störungen zu verhindern, basiert das System auf eine relativ geringe Spannung. Zudem werden die Daten als Differenz - Signal mit 100Ohm Impedanz übertragen (LVDS), was sie sehr unempfindlich gegenüber Störungen macht. Diese Technik kommt unter anderem bei SCSI zum Einsatz, und ist gleichstromfrei.

    Geplant ist die PCI Express Schnittstelle in mehreren Versionen bzw. Leistungsklassen, dessen Hierarchie an AGP erinnert. Den Anfang macht die PCI Express x1 (1 Lane) gefolgt von PCI Express x2 (2 Lanes) über PCI Express x4 (4 Lanes) bis hinauf zur neuen Grafikschnittstelle PCI Express x16 (16 Lanes), welche auch als "PCI Express for Graphics" kurz PEG bezeichnet wird. Generell sind bei PCI Express derzeit maximal 32 Lanes möglich. Die verschiedenen Versionen der PCI Express Schnittstelle sind jedoch untereinander kompatibel, somit lässt sich eine PCI Express x2 Karte problemlos in einem PCI Express x8 Slot betreiben.

    Die neue Schnittstelle ist im Gegensatz zum Vorgänger busfähig, d.h. es können sofern der Mainboardhersteller dies vorsieht, mehrere Schnittstellen verbaut und genutzt werden, was ähnlich wie bei Ethernet auch, über einen Switch realisiert wird. Diese so genannte Stern-Topologie hat gegenüber der Bus-Topologie den Vorteil, dass die langsamen PCI Express x1 Geräte nicht die schnelleren Geräte ausbremsen, denn so hat jedes Device (Gerät) eine eigene Verbindung zum Switch (genannt ExAS, was für PCI Express Advanced Switching steht), welche immer exakt der Geschwindigkeit der eingesteckten PCI Expresskarte entspricht. Die ExAS-Bridges emulieren eine Hierarchie von PCI-zu-PCI-Bridges im altbekannten PCI-System.

    Die Grundfrequenz des PCI Express Busses liegt bei 2500 MHz. Da es sich um eine serielle Verbindung handelt, ergibt sich so eine maximale Datentransferrate von 2,5 GBit/s (312,5 MByte/s) pro Richtung. Leider hat die Sache jedoch einen Haken! Damit sich Sender und Empfänger synchronisieren können, muss das 8B/10B-Kodierverfahren angewendet werden. Dieses Verfahren erweitert den normalerweise 8Bit langen Datensatz auf 10Bit, weshalb ein Overhead von 25% zustande kommt. Dieser bremst die theoretisch nutzbare Datenrate auf ca. 2 GBit/s (250 MByte/s) pro Richtung. PCI Express x16 kommt somit auf eine maximale Datentransferrate von ca. 32 GBit/s oder 4 GByte/s pro Richtung. Die AGP 8x-Schnittstelle kann nur 2,1Gbyte/s übertragen. Für kontinuierliche Datenströme, beispielsweise von Mediendaten, ist ein isochroner Übertragungsmodus vorgesehen.

    Erstmals wird PCI Express auch Hot Plugging in die Home-Computer bringen, auch wenn diese Option für Home-User vollkommen uninteressant ist. Dazu kommt eine weitere Neuerung, über dessen Sinn man sich auch streiten kann. Sie heißt "Power-Budget" und ermöglicht es jedem PCI Express Slot eine bestimmte elektrische Leistung zuzuweisen. Wenn diese Leitung für den Betrieb eines neuen Gerätes nicht ausreicht, so wird das Gerät vom Bus-Controller deaktiviert und umgehend der Administrator in Kenntnis gesetzt.


    Ein weiteres Merkmal von PCI Express ist die Möglichkeit, mehrere PCI Express x16 Slots zu verbauen und somit mehrere Grafikkarten gleichzeitig einzusetzen. Dies wäre zum einen für den Betrieb mehrerer Monitore interessant, zum anderen aber auch in Kombination mit der von nVidia wiederbelebten SLI (Scan Line Interleaving) Technik. Die Technik erlaubt in Verbindung mit zwei Grafikkarten und dem "Scalable Link Interface", so genanntes "Dynamic Load Balancing", was eine Leistungssteigerung um das mind. 1,87-fache ermöglichen soll.

    Damit ist aber noch lange nicht Schluss bei den Neuerungen, denn optional bietet der PCI Express Bus auch die Möglichkeit einen SM-Bus zu integrieren, welcher Powermanagement und Systemprozesse unabhängig voneinander steuern kann. Auch ist der SM-Bus in der Lage, Hardwareinformationen wie Chiptemperatur oder "suspend"-Zustände weiterzugeben. Vielleicht ist dies eine Möglichkeit in Zukunft auch die Temperaturen der Sound- und Netzwerk-Karten zu überwachen. ;-)

    Gerade in der heutigen Zeit, in der sich die Hersteller bemühen möglichst viel elektrische Leistung zu verschleudern, darf die maximale Leistungsübertragung der Stromversorgung nicht vergessen werden. Diese wurde von 25 Watt bei AGP 8x um das dreifache auf 75 Watt erhöht. Die Anzahl der Kontakte stieg von 132 bei AGP auf 164 bei PCI Express x16. Die Spannungen der PCI Express Schnittstelle beschränken sich auf 3,3V und 12V, während AGP noch zusätzlich eine 3,3V bzw. 1,5V, sowie eine 5V Versorgung benötigt hat.

    Für die Mainboardhersteller stellt PCI Express sicherlich einen Vorteil dar; Die Architektur der AGP Technologie besteht aus getrennten Daten und Strobe-Leitungen, welche miteinander korrelieren. Dies erfordert allerdings identische Signallaufzeiten, weshalb der Mainboardhersteller sich auch exakt an die vorher definierte Leiterbahnführung halten muss. Eine minimale Abweichung führt hier schon zu massiven Problemen!

    Bei PCI Express ist das so genannte Serpentinen-Routing vollkommen unkompliziert, denn nur das einzelne Leitungspaar der einzelnen Lane muss exakt "gelayoutet" sein. Dieses Leitungspaar darf jedoch bis zu 50,8 cm lang sein. Da durch die serielle Technik die Anzahl der Leitungen auf dem Motherboard deutlich gesenkt werden kann, benötigen PCI Express Mainboards zudem weniger Layer (dt.: Lagen), was die Produktionskosten erheblich senken kann.

    Leider kann PCI Express nicht oder zumindest nur mit Performanceeinbussen, als Ablösung der bisherigen Southbridge-Anbindungen wie Hypertransport, MultiTIOL und V-Link eingesetzt werden, denn aufgrund des 8B/10B Kodierverfahrens hat die PCI Express Schnittstelle deutlich höhere Latenzzeiten. Um diese zu senken nutzt PCI Express so genannte "Split Transactions". In dem Transaction Layer sind vier Adress-Bereiche festgelegt, von denen drei Bereiche identisch mit denen der alten PCI-Systeme sind. Diese Adress-Bereiche sind der Speicher-, der I/O- und der Konfigurations-Bereich. Der vierte Adress-Bereich, der so genannte "Message Space" emuliert im "Message Passing"-Verfahren alle Interruptleitungen und Steuersignale eines PCI-Busses als virtuelle Signalleitungen.

    Für das Betriebssystem sieht PCI Express aus wie ein herkömmliches PCI-Bus-System. Somit lässt es sich problemlos auf jeder Plattform betreiben, ohne dass Software bzw. Treiberupdates erforderlich sind. Laut Spezifikation soll das bisherige "Plug & Pray" durch Plug & Play ersetzt werden. ;-)