Mit den steigenden Energiekosten und dem Bewusstsein für Umwelterwägungen wird das Energiesparen immer wichtiger. Energieeinsparung war für mobile Geräte schon immer von entscheidender Bedeutung, aber jetzt werden Rechenzentrumsgeräte wie Server, Speicher- und Netzwerkgeräte benötigt, um Energieverwaltungsimplementierungen zu unterstützen.

In PCI Express® wurde Active State Power Management (ASPM) als Methode integriert, um den Stromverbrauch aller Systemkomponenten besser zu verwalten. ASPM ermöglicht es einzelnen seriellen Links in einem PCI-Express-Fabric, den Stromverbrauch schrittweise zu reduzieren, wenn ein Link weniger aktiv wird. ASPM ist in der PCI Express Base Specification definiert.

Energieverwaltung im aktiven Zustand

Die PCI-Express-Basisspezifikation definiert zwei ASPM-Stufen, die Optionen zum Abwägen einer erhöhten Energieeinsparung mit einer schnellen Wiederherstellung des L0-Zustands bieten sollen.

L0-Standby (L0s): Dieser Zustand wird von allen PCI-Express-Geräten benötigt und gilt für eine einzige Richtung auf der Verbindung. Die Latenz, um von L0s zu L0 zurückzukehren, ist als sehr kurz spezifiziert.

Beim Eintritt in L0s sendet das Gerät, das in diesen Energiesparzustand übergeht, ein Electrical Idle Ordered Set (EIOS) an das empfangende Gerät und schaltet dann die Stromversorgung zu seinem Sender aus. Bei der Rückkehr von L0s zu L0 muss das Gerät zunächst eine bestimmte Anzahl kleiner geordneter Sätze erzeugen, die als Fast Training Sequences (FTS) bezeichnet werden. Die spezifische zu wiederholende Nummer wird vom empfangenden Gerät definiert und während der Trainingssequenzen zur Verbindungszeit gesendet.

Je mehr FTS übertragen werden, desto einfacher ist es, eine Empfängerverriegelung auf das übertragene Signal zu erhalten. Das Ziel von L0s besteht jedoch darin, die Empfängerverriegelung wiederzuerlangen und den Verkehr so ​​schnell wie möglich empfangen zu können, sodass das empfangende Gerät die kleinstmögliche Anzahl von FTS auswählen wird, die basierend auf seinem spezifischen Design eine Taktwiederherstellung gewährleisten.

L1 ASPM: Dieser Zustand ist optional und kann eingegeben werden, um einen höheren Grad an Energieeinsparung zu erreichen. In diesem Zustand werden beide Richtungen der Verbindung in den L1-Zustand versetzt. Für die Rückkehr zu L0 müssen beide Geräte den Verbindungswiederherstellungsprozess durchlaufen. Dies führt zu einer größeren Latenz für die Rückkehr zu L0, sodass dieser Energiezustand typischerweise verwendet wird, wenn für einen signifikanten Zeitraum keine Aktivität auf der Verbindung erwartet wird.

Um in den L1-Zustand einzutreten, muss das Downstream-Gerät zuerst die Erlaubnis von dem Upstream-Gerät anfordern, in den tieferen Stromsparzustand einzutreten. Nach der Bestätigung schalten beide Geräte ihre Sender aus und gehen in den elektrischen Leerlauf. Die Rückkehr von L1 erfordert, dass beide Geräte jetzt den Link-Wiederherstellungsprozess durchlaufen müssen. Der Link-Wiederherstellungsprozess verwendet standardmäßige geordnete TS1- und TS2-Sätze im Gegensatz zu den kleineren schnellen Trainingssequenzen, die von L0s verwendet werden.

Verwenden von Protokollanalysatoren mit ASPM

Wenn ein Protokollanalysator verwendet wird, um einen PCI-Express-Bus zu überwachen, kann der Protokollanalysator nicht aktiv an der Verbindung teilnehmen. Da der Root-Komplex und der Endpunkt die Verbindung aushandeln und ihre individuellen Empfängersperranforderungen (einschließlich der Anzahl von FTS) senden, muss der Analysator passiv bleiben und diesen Verkehr einfach aufzeichnen. Wenn Geräte in den Energiesparmodus wechseln und ihre Sender ausschalten, führt dieser Eintritt in den elektrischen Leerlauf dazu, dass der Analysator die Empfängerverbindung mit den Geräten verliert. Da der Analysator seine eigene Anforderung für FTS nicht aussenden kann, muss der Analysator in der Lage sein, die Verriegelung schneller wiederzuerlangen als die empfangenden Geräte, oder es können Daten verloren gehen.

Je mehr FTS auf dem Bus übertragen werden, desto größer ist natürlich die Fähigkeit eines beliebigen Geräts, eine Empfängerverriegelung zu erreichen. Dies gilt sowohl für das Empfangsgerät als auch für den Protokollanalysator. Um jedoch das Ziel zu erreichen, die PCIe®-Verbindung so schnell wie möglich wieder auf L0 zu bringen, verwendet das empfangende Gerät basierend auf seinem eigenen Design die kleinstmögliche Anzahl von FTS. Je kleiner die Anzahl der tatsächlich auf dem Bus auftretenden FTS ist, desto größer ist die Wahrscheinlichkeit, dass der Protokollanalysator Verkehr verliert, bevor er seine eigene Signalsperre wiedererlangt.

Die Fähigkeit, die Signalsperre sehr schnell wiederzuerlangen, ist daher entscheidend für das Design von PCI-Express-Protokollanalysatoren. Diese Fähigkeit variiert je nach Design verschiedener Hersteller und ist daher eine wichtige Überlegung für jeden Ingenieur, der den Kauf eines PCI-Express-Analysators in Betracht zieht.

Die folgenden Informationen beschreiben Studien, die von LeCroy durchgeführt wurden, um die Anzahl der FTS zu identifizieren und zu beschreiben, die erforderlich sind, um eine 100-prozentige Empfängerverriegelung sowohl mit dem LeCroy Summit™ T2-16-Protokollanalysator als auch mit dem Agilent E2960B-Protokollanalysator mit dem optionalen N5322A-ASPM-Modul zu erreichen.

Testmethodik

Ziel

Das Ziel dieses Tests bestand darin, die Sperrzeit der PCI-Express-Analysatoren sowohl bei PCI-Express-1.0- (2.5 GT/s) als auch bei PCI-Express-2.0-Datenraten (5.0 GT/s) zu messen. Diese Sperrzeit bestimmt die Mindestanzahl von FTS-geordneten Sätzen, die die getesteten Geräte (DUTs) übertragen müssen, um eine saubere Erfassung des PCI-Express-Protokollverkehrs bereitzustellen. Da die minimale FTS-Anforderung von Gerät zu Gerät unterschiedlich sein kann, liefert das Maß der Fähigkeit des Analysators, die Sperre mit einer sehr kleinen Anzahl von FTS wiederzuerlangen, einen Hinweis auf die Fähigkeit des Analysators, Verkehr in typischen Systemen sauber zu erfassen.

Überblick

Um die Sperrzeit zu bestimmen, wurde eine Testumgebung entworfen, die einen kontrollierten Datenverkehr erzeugte, den ein System erzeugen würde, während sein L0s-Aktivzustands-Energieverwaltungsmodus (ASPM) aktiviert ist.

Um die Sperrzeit richtig zu messen, musste dieser Datenverkehr wiederholbar, einzigartig und periodisch sein, um die Möglichkeit zu bieten, am besten nach Fehlern zu suchen. Während die einfache Aufzeichnung eines Systems mit aktiviertem ASPM einige Mittel zur Messung der Leistung bieten würde, ist es nicht so robust wie eine Testumgebung, in der die genauen Details des Datenverkehrs vor der Wiederherstellung der Daten bekannt sind

Datenverkehr

Um den PCI Express L0s-Datenverkehr bestmöglich abzuschätzen, wurde der folgende Datenstrom in einer Endlosschleife durch den Analysator gesendet:

  • 2 μs elektrische Leerlaufzeit
  • „N“ Anzahl schneller Trainingssequenzen (FTS bestellte Sätze)
  • 1 bestelltes SKIP-Set
  • 1 Anbieter-DLLP mit einem inkrementierten Wert im Anbieterdatenfeld bei jeder Wiederholung
  • 2 μs logischer Leerlaufverkehr (D0.0)
  • 1 oder 2 bestellte elektrische Leerlaufsätze (1 für PCIe 1.0, 2 für PCIe 2.0, je nach PCIe-Spezifikation)

Dieses eindeutige Paket (siehe Abbildung 1 unten) ist eine Anbieter-DLLP mit einem inkrementierenden Zählerwert, der in das Anbieterdatenfeld eingefügt wird. Die Eindeutigkeit dieses Datenpakets ist erforderlich, um zu bestimmen, ob ALLE elektrischen Leerlauf-Ausgangsbedingungen richtig wiederhergestellt wurden. Ohne diese eindeutigen Daten ist es möglich, dass der Analysator ein vollständiges elektrisches Leerlaufausstiegsereignis verpasst und nicht erfasst wird.

Abbildung 1:

L0s-Verkehr, wie er für diesen Test verwendet wird

Hardware Setup

Um den oben genannten Datenverkehr zu erzeugen, wurde ein spezieller Build der Summit Z2-16 Exerciser BusEngine™ kompiliert. Diese BusEngine bot Programmierbarkeit in Bezug auf die elektrische Leerlaufzeit, die Anzahl der bestellten FTS-Sätze und die Verbindungsgeschwindigkeit. Der Summit Z2-16-Datenverkehr wurde an die Host-Emulationsplattform gesendet. Sowohl der LeCroy Summit T2-16 Analyzer als auch der Agilent E2960B Analyzer nutzten ihre aktiven Steckplatz-Interposer, um diesen Datenverkehr wiederherzustellen, indem sie in den PCIe-Steckplatz auf der Oberseite des Host-Emulators eingesetzt wurden.

Der Downstream-Verkehr wurde nach dem aktiven Slot-Interposer zurückgeführt, aber dieser Upstream-Verkehr wurde für diese Tests nicht aufgezeichnet.

Das Agilent E2960B-System verwendete das Agilent N5322A ASPM-Modul. Dieses Modul ist eine Zusatzoption, die für ASPM-Tests erforderlich ist. Auf dem Agilent E2960B-Analysegerät wurde die Softwareversion 6.13 ausgeführt.

Der LeCroy Summit Z2-16 Analysator umfasst die Fähigkeit, ASPM als Standardfunktion zu verwalten, sodass die Standardhardware verwendet wurde und die Softwareversion 5.62 ausgeführt wurde.

Abbildung 2:

Hardware-Setup für LeCroy Summit T2-16 Analysator

Abbildung 3:

Hardware-Setup für Agilent E2960B mit Option N5322A

An beiden Produkten wurden identische Tests mit den folgenden eingestellten Parametern durchgeführt:

  • Linkbreite: x8
  • Verschlüsselung: Aktiviert
  • Automatische Geschwindigkeitserkennung: Deaktiviert (Verbindungsgeschwindigkeit wurde auf beiden Analysatoren erzwungen)
  • Der Analysator wurde vor dem Test auf PCIe 2.0 x8 mit L0-Verkehr kalibriert.
  • Elektrische Leerlaufzeit: 2 μs
  • Logische Ruhezeit: 2 μs

Folgende Einstellungen wurden während des Tests variiert:

  • Verbindungsgeschwindigkeit: PCIe 1.0 und PCIe 2.0
  • Anzahl der FTS: Variiert von 4 bis 64
  • RefClk-Einstellung: Extern und Intern
  • SSC-Modulation: Aktiviert oder deaktiviert

Datenaufzeichnung und -analyse

Für jeden Test zeichnete der Analysator eine Momentaufnahme des L0s-Verkehrs mit der entsprechenden Analysatoreinstellung auf, um dem Verbindungsstatus zu entsprechen. Der Aufzeichnungspuffer wurde erhöht, um sicherzustellen, dass mindestens 1000 L0s elektrische Leerlaufübergänge in der Aufzeichnung erfasst wurden. Sowohl im Fall von Agilent als auch im Fall von LeCroy wurde der Datenverkehr mithilfe von Software nachbearbeitet, um die Fehlerrate für jeden Test zu bestimmen. Ein Fehler wird festgestellt, indem die Anbieter-DLLP nicht ordnungsgemäß mit den entsprechenden Anbieterdaten aufgezeichnet wird. Dieser Test verifiziert nicht die Korrektheit der geordneten FTS-Sätze oder des logischen Leerlaufverkehrs. Stattdessen wird davon ausgegangen, dass der Link ordnungsgemäß gesperrt war, wenn der Analysator in der Lage war, die Symbolausrichtung, die Spur-zu-Spur-Entzerrung und die ordnungsgemäße Wiederherstellung des Anbieter-DLLP ordnungsgemäß durchzuführen.

Agilent E2960B Analysator

Jede Aufzeichnung wurde in eine .csv-Datei exportiert, die mit einem Perl-Skript geparst wurde.

Vor dem Speichern der .csv-Datei wurden einige Anzeigeoptionen auf die Ablaufverfolgung angewendet, um Folgendes auszuführen: Den Upstream-Datenverkehr ausblenden, nur die Anbieter-DLLPs anzeigen und nicht benötigte Felder in der Ablaufverfolgungsanzeige ausblenden. Dies wurde einfach durchgeführt, um die Größe der .csv-Dateien sowie die Komplexität des Perl-Skripts zu reduzieren.

Das Perl-Skript zählte die Gesamtzahl der wiederhergestellten DLLPs. Basierend auf dem Zeitstempel zwischen den DLLPs und dem Anbieterwert bestimmt es, ob ein oder mehrere Anbieter-DLLPs nicht ordnungsgemäß aufgezeichnet wurden. Die Fehlerrate wurde berechnet, indem die Gesamtzahl fehlender oder beschädigter Pakete durch die Gesamtzahl wiederhergestellter Pakete dividiert wurde.

LeCroy Summit Z2-16 Analysator

Jede Aufzeichnung wurde mit der LeCroy Verification Script Engine verarbeitet. Ein spezielles Überprüfungsskript wurde erstellt, um festzustellen, wie viele Hersteller-DLLPs aufgezeichnet wurden und wie viele ausgelassen oder falsch aufgezeichnet wurden. Die im Verifizierungsskript verwendeten Algorithmen waren im Wesentlichen identisch mit den Algorithmen im Agilent .csv-Verarbeitungs-Perl-Skript.

Die Tests wurden durch die Verwendung der PCI-Express-Compliance-Testanwendung automatisiert, um die Wahrscheinlichkeit von Benutzerfehlern zu verringern. Die Tests wurden viermal durchgeführt, um zu bestimmen, wie wiederholbar die Ergebnisse waren, und die Ergebnisse wurden für das Endergebnis gemittelt.

Ergebnisse und Schlussfolgerungen

Vergleichen Sie <1% AusfallrateVergleichen Sie 0 % Ausfallrate