mini|hochkant=1|Logo mini|hochkant=1|PCI-Express-×1-Steckplatz (Slot)
PCI Express („Peripheral Component Interconnect Express“, abgekürzt PCIe oder PCI-E) ist ein Standard zur Verbindung von Peripheriegeräten mit dem Chipsatz eines Hauptprozessors. 2003 eingeführt ist PCIe der Nachfolger von PCI, PCI-X und AGP und bietet im Vergleich zu seinen Vorgängern eine höhere Datenübertragungsrate pro Pin. Zwischen 2010 und ca. 2014 wurden auf neu eingeführten Hauptplatinen sukzessive immer weniger andere Steckplätze verbaut und die Vorgänger PCI(-X) und AGP schließlich vollständig abgelöst.
Über die Anwendung für Erweiterungs-Steckplätze hinaus bilden die PCIe-Protokolle inzwischen die Basis für zahlreiche andere Schnittstellen wie SATA Express, M.2, U.2, SAS Express und Thunderbolt sowie für CFexpress und SD Express Memory Cards.
Während ihrer Entwicklung wurde die Schnittstelle „3GIO“ genannt, was für „3rd Generation Input/Output“ steht.
Technik Version 1.0 / 1.1 2.0 / 2.1 3.0 / 3.1 4.0 5.0 6.0 7.0 Release 2003 2007 2010 2017 2019 2022 2025heise.de Transfers/sec 2,5 GT/s 5 GT/s 8 GT/s 16 GT/s 32 GT/s 64 GT/s32 GBd 128 GT/s64 GBd Leitungscode 8b/10b 128b/130b 242B/256B(FLIT) mit PAM-4 Sicherungscode Disparityvon 8b/10b keine Datensicherung CRC+FECFür je 256 übertragene Bytes (ein FLIT): 8 Byte CRC für eine einfache Fehlererkennung + 6 Byte für eine Fehlerkorrektur im Fehlerfall. Als Fehlerkorrektur wird häufig in Tabellen FLIT angegeben, allerdings ist das der Name eines Paketes (Flow Control Unit) und nicht die Fehlerkorrektur selbst.(FLIT 242/256) Bits pro Symbol Lanes Übertragungsrate (Burstrate in GB/s ohne Protokoll-Overhead) ×1 0,25 0,5 ≈0,985 ≈1,969 ≈3,938 7,5625 15,125(×2) 0,5 1 ≈1,969 ≈3,938 ≈7,877 15,125 30,25 ×4 1 2 ≈3,938 ≈7,877 ≈15,754 30,25 60,5 ×8 2 4 ≈7,877 ≈15,754 ≈31,508 60,5 121 ×16 4 8 ≈15,754 ≈31,508 ≈63,015 121 242
hochkant=2|mini|PCI-Express-Grafikkarte, 2005
PCIe ist im Gegensatz zum parallelen PCI-Bus kein geteiltes (shared) Bus-System, sondern besteht aus dedizierten Punkt-zu-Punkt-Verbindungen zu jedem Gerät. Einzelne Komponenten werden über Switches verbunden. Diese ermöglichen es, direkte Verbindungen zwischen einzelnen PCIe-Geräten herzustellen, so dass die Kommunikation von Geräten untereinander die erreichbare Datenrate anderer Geräte nicht beeinflusst.
Die einzelnen Punkt-zu-Punkt-Verbindungen von PCI-Express werden durch eine oder mehrere Datenübertragungs-Kanäle sowie Leiterbahnen () einer selbstgetakteten seriellen Verbindung ausgeführt. Es gibt kein eigenes Taktsignal, lediglich ein viel geringerer Referenztakt von 100 MHz wird separat übertragen, der allerdings nicht für die Übertragung verwendet wird. Die Taktrückgewinnung erfolgt aus dem Empfangssignal. Dieses ist speziell dafür kodiert (bis PCIe 2.1 nach dem 8b/10b, PCIe 3.0 bis 5.0 eine „Scrambling“-Kodierung, welche 128 Netto-Datenbits jeweils 2 Synchronisations-Bits voranstellt).Benjamin Benz: Steiniger Weg – Wie serielle Interconnects der Physik ein Schnippchen schlagen, c’t 10/2010, S. 188–191. Ab PCIe 6.0 werden pro Symbol 2 Bit übertragen, neben einem Synchronisationsymbol kommen 32 Symbole für die Fehlererkennung und 24 Symbole zur Vorwärtsfehlerkorrektur dazu.
Für das Senden der Daten werden Parallel-zu-seriell-Wandler und für den Empfang Seriell-zu-parallel-Wandler in den Baugruppen eingesetzt. Trotz dieses sehr abweichenden physischen Aufbaus ist PCIe softwareseitig voll kompatibel zu PCI, so dass weder Betriebssysteme und Treiber noch Anwendungsprogramme angepasst werden müssen.
PCIe ist vollduplexfähig (dual-simplex) und arbeitet je nach Version mit 250, 500, 985, 1969, 3938, 7562 oder 15125 MB/s pro Lane und Richtung.
Sämtliche Datenübertragungen und sämtliche Signale (z. B. IRQs) auf der PCIe-Verbindung werden in Pakete aufgeteilt. Auf Grund des grundlegend anderen elektrischen Aufbaus und der anderen Übertragungsform sind keine Mischgeräte möglich, die sowohl in PCI- als auch PCIe-Slots betrieben werden könnten. Das ist auch durch andere Anschlüsse bedingt, so dass für PCIe-Karten entsprechend neuere Motherboards bzw. Controller verwendet werden müssen.
PCIe ist wie PCI prinzipiell Hot-Plug-fähig, was das Ein- und Ausbauen von (z. B. defekten) Erweiterungskarten im laufenden Betrieb ermöglicht, sofern die Hardware und auch das Betriebssystem das unterstützen.
Topologien PCI-Express kann über drei verschiedene elektrische Topologien angebunden sein: PCI-Express-Gerät auf der Systemplatine PCI-Express-Geräte verbunden über einen Steckverbinder auf der Systemplatine, in dem eine Add-On-Karte steckt PCI-Express-Geräte verbunden über zwei Steckverbinder: einen auf der Systemplatine, in dem eine Riser-Karte steckt, und eine oder mehrere Add-On-Karten in den Steckplätzen der Riser-Karte (wird ab PCI Express 4 passiv nicht mehr unterstützt). Letztere weisen neben den Standardbusbreiten auch ×16 (als zwei ×8), ×24 (als drei ×8), ×32 (als zwei ×16) oder ×48 (als drei ×16) auf.
Bei auf dem Markt erhältlichen ×24, ×32 und ×48-Steckplätzen handelt es sich um Riser-Steckplätze zur Aufnahme von Erweiterungskarten, die dann 1 bis 3 PCI ×8- oder ×16-Karten aufnehmen können.
Hauptplatinen haben meist einen speziellen PCIe-Steckplatz für Grafikkarten, und daher „PEG-Slot“, der meist 16 Lanes (×16) anbindet und mehr Strom bereitstellen kann (75 statt sonst nur 25 Watt, siehe Abschnitt Stromversorgung).
Übertragungsschichten Die Übertragung wird durch mehrere Schichten dargestellt, von denen jede nur mit den direkt benachbarten Schichten kommuniziert, sowie für die auf dieser Schicht übertragenen Daten eine Fehlererkennung oder -korrektur durchführt.
Die unterste Schicht, der sogenannte Physical Layer, stellt die elektrische Verbindung zwischen zwei direkt miteinander verbundenen Geräten dar. Das sind zum Beispiel ein Endgerät (z. B. eine Einsteckkarte) und der nächstgelegene Switch. Die logische Verbindung („Link“) zwischen diesen Geräten besteht aus 1 bis 16 Lanes. Jede Lane wiederum besteht aus zwei Leitungspaaren, je ein differentielles Paar für das Senden und Empfangen (dual-simplex). Jedes differentielle Leitungspaar wird von Treiberstufen angesteuert, die nach dem Standard HCSL () ausgeführt sind. Der Leitungswellenwiderstand und die dazu idente Leitungsterminierung besteht aus einem differentiellen Abschluss mit 100 Ω. Seit PCIe Gen2 besteht auch die Option, mit einem Leitungswellenwiderstand von 85 Ω zu arbeiten.
Sämtliche Daten, die zwischen PCIe-Geräten übertragen werden, werden gemischt über diese Leitungen seriell übertragen, im Gegensatz zu PCI gibt es also keine eigenen Leitungen mehr für die Signalisierung von Interrupts. Da das serielle Protokoll jedoch nicht angehalten werden kann, ergibt sich eine etwas höhere und auch schwankende Interruptlatenz als bei klassischem PCI mit dedizierten Interruptleitungen.
Der Data Link Layer überträgt die Datenpakete des Transaction Layers zwischen den beiden Verbindungspartnern. Dazu versieht er diese mit einer Sequenznummer, sowie einem 32-Bit-CRC-Wert, dem sogenannten Link CRC (LCRC). Empfangene Pakete werden dem direkten Verbindungspartner mittels Data Link Layer Packets mitgeteilt, ebenso wie der Zustand des Pakets. Beschädigte oder verlorene Pakete werden vom Verbindungspartner erneut gesendet. Dadurch werden die höheren Layer von elektrischen Übertragungsstörungen entkoppelt.
Der Transaction Layer transportiert letztlich die Nutzdaten zwischen dem logischen Sender und Empfänger, das heißt ohne Berücksichtigung der dazwischenliegenden Switches. Die Transaction Layer Packets (TLP) enthalten im Header eine Kennzeichnung, um was für eine Art von Übertragung es sich handelt. Typische Beispiele sind Schreibzugriffe (Writes) sowie Leseanforderungen (Reads) sowie Leseantworten (Completions). Schreibzugriffe sind sogenannte posted transactions, das heißt, sie werden gesendet und erzeugen auf dem Transaction Layer keinerlei Antwort.
Quality of Service PCIe bietet als neues Feature gegenüber PCI „Quality of Service“. Dazu werden virtuelle Kanäle „Virtual Channels“ (VC) benutzt, denen eine Priorität „Traffic Class“ (TC) zugeordnet wird. Standardmäßig läuft der Datenverkehr über VC0 mit TC0. Durch die Benutzung von anderen virtuellen Kanälen kann bestimmter Datenverkehr priorisiert werden.
Eine typische Anwendung wäre eine Soundkarte bei der Aufnahme: Kann sie ihre Daten nicht rechtzeitig über die Verbindung weiterschicken, weil die Verbindung anderweitig belegt ist, so läuft früher oder später der Zwischenspeicher der Soundkarte über und es gehen Daten verloren. Für diese Echtzeitanwendung würde man den Datenverkehr priorisieren.
Stromversorgung mini|hochkant=1.4|PCIe-Stromanschlussbuchselinks: 8-Pin, rechts: 6-Pin
Ein PCI-Express-Steckplatz kann das daran angeschlossene Gerät mit Strom versorgen. Laut Spezifikation beträgt die gelieferte Leistung für einen gewöhnlichen Steckplatz wie bei PCI maximal 25 Watt, für Low-Profile-Karten höchstens 10 Watt und bei einem PEG-(PCIe-×16)-Steckplatz maximal 75 Watt. Diese maximal 75 Watt sind aufgeteilt in 5,5 Ampere über 12 Volt (66 Watt) und 3 A über 3,3 V (9,9 W). Da das für manche Einsatzzwecke wie Grafikkarten oder USB 3.0-Karten jedoch häufig zu wenig ist, sieht die Spezifikation unterschiedliche Zusatzstecker zur Stromversorgung vor, sogenannte PCI Express (Graphics) Power Supply Connector (auch PEG-Connector oder PCIe-Kabel), die +12 Volt liefern.
2x3- und 2x4-Stecker Die erste Version der Zusatzstecker hat 6 Pins und kann bis zu 75 Watt liefern, wodurch die dem Gerät maximal bereitgestellte Leistung auf 150 Watt steigt, bei Nutzung zweier solcher Stecker auf 225 Watt. In der Spezifikation von PCI Express 2.0 wurde ein neuer Zusatzstecker mit 8 Pins definiert, der maximal 150 Watt führen kann. Für noch höhere Leistungen kann ein zusätzlicher Stecker mit 6 Pins genutzt werden, der weitere 75 Watt zuführt, wodurch die maximale Leistungsaufnahme einer PCI-Express-Karte auf 300 Watt begrenzt ist (75 Watt vom Steckplatz, 150 Watt erster Stecker, 75 Watt zweiter Stecker). Leistungsfähigere Grafikkarten, die seit Anfang 2011 auf dem Markt sind, sehen die Verwendung von zwei 8-Pin-Steckern vor. Dadurch erhöht sich die maximal zulässige Leistungsaufnahme auf 375 Watt. (75 Watt vom Steckplatz, 150 Watt erster Stecker, 150 Watt zweiter Stecker).
+ Power Connector 6-Pin (max. 75 W)PCI Express x16 Graphics 150W-ATX Specification Revision 1.0 8-Pin (max. 150 W)PCI Express 225 W/300 W High Power Card Electromechanical Specification Revision 1.0PCI Express Card Electromechanical Specification Revision 3.0 Pin 92px Beschreibung Pin 111px Beschreibung 1 +12 V 1 +12 V 2 nicht angeschlossen (meist +12 V) 2 +12 V 3 +12 V 3 +12 V 4 Sense1 (8-Pin angesteckt) 4 Masse 5 Masse 5 Sense (6-Pin angesteckt) 6 Sense0 (6- oder 8-Pin angesteckt) 6 Masse 7 Masse 8 Masse
Wenn ein 6-Pin-Stecker in eine 8-Pin-Buchse gesteckt wird, merkt die Karte am fehlenden Sense1, dass sie über die Kabelverbindung nur 75 W beziehen darf.
16-Pin (max. 600 W) 12VHPWR mini|16-Pin-12VHPWR-Stecker Ab PCI Express-5.0 sind für Leistungen bis 600 W neue 12 + 4-polige Stecker vorgesehen. Der Stecker nennt sich 12VHPWR High Power Connector (H+).
Pin 120px Beschreibung 1…6 +12 V 7…12 Masse 13 Card Power Stable, optional 14 Card Cable Present, optional 15 Sense0 16 Sense1
Welche maximale Dauerleistung das Netzteil der PCI Express-5.0 Grafikkarte liefern kann, wird über die Beschaltung der Pins 15 und 16 des Steckers signalisiert. Die Pins 13 und 14 sind in der Regel nicht beschaltet, d. h. offen.
Pin 15Sense0 Pin 16Sense1 MaximaleDauerleistung Masse Masse 600 Watt offen Masse 450 Watt Masse offen 300 Watt offen offen 150 Watt
12-Pin (max. 600 W) 12V-2×6