DE202010018100U1 - Vorrichtung für ID-basierte Ströme über PCI-Express - Google Patents

Vorrichtung für ID-basierte Ströme über PCI-Express Download PDF

Info

Publication number
DE202010018100U1
DE202010018100U1 DE202010018100.3U DE202010018100U DE202010018100U1 DE 202010018100 U1 DE202010018100 U1 DE 202010018100U1 DE 202010018100 U DE202010018100 U DE 202010018100U DE 202010018100 U1 DE202010018100 U1 DE 202010018100U1
Authority
DE
Germany
Prior art keywords
transaction
attribute
requestor
ido
request
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
DE202010018100.3U
Other languages
English (en)
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Intel Corp
Original Assignee
Intel Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Intel Corp filed Critical Intel Corp
Publication of DE202010018100U1 publication Critical patent/DE202010018100U1/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/382Information transfer, e.g. on bus using universal interface adapter
    • G06F13/385Information transfer, e.g. on bus using universal interface adapter for adaptation of a particular data processing system to different peripheral devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus

Abstract

Vorrichtung, umfassend: Steuerlogik zum Identifizieren einer bestimmten Transaktion, die im Anschluss an eine erste Transaktion ausgegeben wurde, wobei die bestimmte Transaktion ein IDO(identifierbased ordering)-Attribut enthalten soll und die erste Transaktion eine versandte Anforderung enthalten soll; Bestimmen, dass das IDO-Attribut der bestimmten Transaktion gesetzt ist; und basierend zumindest zum Teil auf dem gesetzten IDO-Attribut Gestatten, dass die bestimmte Transaktion die erste Transaktion passiert.

Description

  • GEBIET
  • Diese Erfindung bezieht sich auf das Gebiet von Zwischenverbindungen und insbesondere auf das Ermöglichen ID-basierter Ströme über PCI Express.
  • HINTERGRUND
  • Computersysteme weisen eine Anzahl von Komponenten und Elementen auf. Oftmals sind die Komponenten über einen Bus oder eine Zwischenverbindung gekoppelt. Zuvor waren Eingabe-/Ausgabe(Input/Output(I/O))-Einrichtungen durch eine konventionelle parallele multi-drop-Busarchitektur miteinander verbunden, die als Peripheral Component Interconnect (PCI) bezeichnet wird. Neuerdings wird eine neue Generation eines I/O-Busses verwendet, die als PCI Express (PCIe) bezeichnet wird, um schnellere Zwischenverbindungen zwischen Einrichtungen unter Verwendung eines seriellen Kommunikationsprotokolls auf der physikalischen Ebene zu ermöglichen.
  • Eine PCIE-Architektur weist ein geschichtetes Protokoll zum Kommunizieren zwischen Einichtungen auf. Beispielsweise bilden eine physikalische Schicht, eine Verbindungsschicht und eine Übertragungsschicht einen PCIE-Protokollstapel. Die PCIe-Verbindung wird um dafür vorgesehene unidirektionale Paare serieller Punkt-zu-Punkt-Verbindungen aufgebaut, die als eine Spur (lane) bezeichnet werden. Eine Verbindung zwischen Einrichtungen weist eine bestimmte Anzahl von Spuren auf, wie etwa eine, zwei, sechzehn, zweiunddreißig, und so weiter. Die gegenwärtige PCIE-Spezifikation, base spec 2.0, ist unter http://www.pcisig.com/specifications/pciexpress/ erhältlich.
  • Herkömmliche PCIe-Ordnungsregeln wurden geschaffen, um ein Hersteller-Verbraucher-Programmiermodell zu ermöglichen. Unter diesem Modell müssen Lesevorgänge einer bestimmten Einichtung die Schreibvorgänge, die zuvor erzeugt wurden, anschieben (push). Ein solches Programmiermodell gewährleistet, dass der Lesevorgang eines Speicherortes X immer die neuesten Daten erhält, die an den Speicherort geschrieben wurden.
  • Jedoch führt dieses Ordnungserfordernis dazu, dass Anforderungen von einem Anforderungsstrom (einer Sequenz von Lese- oder Schreibtransaktionen, die den gleichen Anforderer und die gleiche Destination haben) einen anderen unabhängigen Anforderungsstrom beeinträchtigen. Diese Beeinträchtigung bzw. Störung kann einen bedeutenden Leistungsengpass verursachen. Das Problem ist besonders ausgeprägt, wenn unversandte Anforderungen hinter versandten Anforderungen blockiert werden, da Leseanforderungen latenzsensitiv sind.
  • KURZE BESCHREIBUNG DER ZEICHNUNGEN
  • Die vorliegende Erfindung wird durch Beispiele illustriert und soll durch die Figuren der beigefügten Zeichnungen nicht eingeschränkt werden.
  • 1 illustriert eine Ausführungsform eines Systems, das eine serielle Punkt-zu-Punkt-Zwischenverbindung enthält, um VO-Einrichtungen in einem Computersystem zu verbinden.
  • 2 illustriert eine Ausführungsform eines geschichteten Protokollstapels.
  • 3 illustriert eine Ausführungsform einer Speicherordnungslogik.
  • 4 illustriert eine Ausführungsform eines Pakets, das ein ID-basiertes Ordnungsflag aufweist.
  • 5 illustriert eine Ausführungsform einer Ordnungstabelle.
  • 6 illustriert eine Ausführungsform eines Flussdiagramms zum Ermöglichen von Einrichtungs-ID-basierten-Strömen.
  • AUSFÜHRLICHE BESCHREIBUNG
  • In der folgenden Beschreibung werden zahlreiche spezifische Details dargelegt, wie etwa Beispiele spezifischer Zwischenverbindungen, spezifischer Pakete/Nachrichten, spezifischer Felder und Orte innerhalb von Paketen/Nachrichten, spezifischer Orte einer Logik/eines Caches, etc., um ein tiefgreifendes Verständnis der vorliegenden Erfindung zu liefern. Einem Fachmann ist jedoch ersichtlich, dass diese spezifischen Details nicht eingesetzt werden müssen, um die vorliegende Erfindung umzusetzen. In anderen Beispielen wurden wohlbekannte Komponenten oder Verfahren, wie etwa Cachelogik/Implementation, Peripheral Component Interconnect Express(PCIe)-Nachrichtenprotokolle, PCIe-Felder/Pakete in Transaktionen und andere PCIe-basierte Implementationen nicht detailliert beschrieben, um ein unnötiges Verschleiern der vorliegenden Erfindung zu vermeiden.
  • Das Verfahren und die Vorrichtung, die hierin beschrieben sind, dienen dem Ermöglichen ID-basierter Ströme über PCIe. Insbesondere wird ein Umgehen eingereihter Anforderungen in einem Switch unter Bezugnahme auf eine versandte Anforderung diskutiert, die verzögert ist (aufgrund Kredit oder anderer Ereignisse, wie Seitenfehler). Jedoch sind die Verfahren und Vorrichtungen für ID-basierte Ströme nicht in dieser Hinsicht eingeschränkt, da sie auf oder in Verbindung mit jeder integrierten Schaltkreiseinrichtung implementiert werden können, wie etwa jeder Eingabe-/Ausgabeeinrichtung oder anderen Computerkomponenten, ebenso wie in Verbindung mit jedem Typ einer seriellen Punkt-zu-Punkt-Zwischenverbindung.
  • Verbindung/Zwischenverbindung eines seriellen geschichteten Punkt-zu-Punkt-Protokolls.
  • Unter Bezugnahme auf 1 ist eine Ausführungsform eines Systems einschließlich Einrichtungen, die über eine serielle Verbindung mit einem Controller-Hub gekoppelt sind, illustriert. System 100 weist Prozessor 105 und Systemspeicher 110, die mit Controller-Hub 115 gekoppelt sind, auf. Prozessor 105 weist irgendein Verarbeitungselement, wie etwa einen Mikroprozessor, einen Host-Prozessor, einen eingebetteten Prozessor, einen Co-Prozessor oder anderen Prozessor auf. Prozessor 105 ist mit Controller-Hub 115 durch Front-Side-Bus (FSB) 106 gekoppelt. In einer Ausführungsform ist FSB 106 eine serielle Punkt-zu-Punkt-Zwischenverbindung, wie unten beschrieben ist.
  • Systemspeicher 110 weist irgendeine Speichereinrichtung auf, wie etwa Random-Access-Speicher (random access memory (RAM)), nicht-flüchtigen (non-volatile (NV)) Speicher oder anderen Speicher, der Einrichtungen in System 100 zugänglich ist. Systemspeicher 110 ist durch Speicherschnittstelle 116 mit Controller-Hub 115 gekoppelt. Beispiele einer Speicherschnittstelle schließen eine Speicherschnittstelle mit doppelter Datenrate (DDR), eine DDR-Speicherschnittstelle mit dualem Kanal und eine dynamische RAM(DRAM)-Speicherschnittstelle ein.
  • In einer Ausführungsform ist Controller-Hub 115 ein Root-Hub oder Root-Controller in einer Peripheral Component Interconnect Express(PCIe oder PCIE)-Zwischenverbindungshierarchie. Beispiele für Controller-Hub 115 schließen einen Chipsatz, einen Speichercontroller-Hub (memory controller hub (MCH)), eine Northbridge, einen Zwischenverbindungs-Controller-Hub (interconnect controller hub (ICH)), eine Southbridge und einen Root-Controller/Hub ein. Oftmals bezieht sich der Begriff Chipsatz auf zwei physikalisch verschiedene Controller-Hubs, d. h. einen Speichercontroller-Hub (MCH), der mit einem Zwischenverbindungs-Controller-Hub (interconnect controller hub (ICH)) gekoppelt ist.
  • Hierbei ist Controller-Hub 115 mit dem Switch/der Bridge 120 durch die serielle Verbindung 119 gekoppelt. Eingabe-/Ausgabemodule 117 und 121, die ebenfalls als Schnittstellen/Ports 117 und 121 bezeichnet werden können, weisen einen geschichteten Protokollstapel auf oder implementieren diesen, um Kommunikation zwischen Controller-Hub 115 und Switch 120 zu ermöglichen. Ein Modul, wie etwa Module 117, 118, 121, 122, 124, 126, 129 und 131, können in Hardware, Software, Firmware oder jeder Kombination derselben implementiert sein. Darüber hinaus variieren Modulgrenzen gewöhnlich, und Funktionen werden gemeinsam, ebenso wie getrennt in unterschiedlichen Umgebungen, implementiert. In einer Ausführungsform sind mehrere Einrichtungen in der Lage, mit dem Switch 120 gekoppelt zu werden.
  • Switch 120 lenkt Pakete/Nachrichten von Einrichtungen 125 und 128 stromaufwärts, d. h. in einer Hierarchie aufwärts hin zu einem Root-Controller, zu Controller-Hub 115, und stromabwärts, d. h. in einer Hierarchie abwärts weg von einem Root-Controller, von Prozessor 105 oder Systemspeicher 110 zu Einrichtungen 125 und 128. Einrichtungen 125 und 128 schließen irgendeine interne oder externe Einrichtung oder Komponente ein, die mit einem elektronischen System gekoppelt werden soll, wie etwa eine I/O-Einrichtung, einen Netzwerk-Schnittstellencontroller (Network Interface Controller (NIC)), eine Zusatzkarte, einen Audioprozessor, einen Netzwerkprozessor, eine Festplatte, eine Speichereinrichtung, eine CD-/DVD-ROM, einen Monitor, einen Drucker, eine Maus, eine Tastatur, einen Router, eine tragbare Speichereinrichtung, eine Firewire-Einrichtung, eine Universal-Serial-Bus(USB)-Einrichtung, einen Scanner und andere Eingabe-/Ausgabeeinrichtungen. Switch 120 schließt Speicherordnungslogik 140 ein, wie im Folgenden ausführlicher beschrieben ist, um Einrichtungs-ID-basierte Ströme zu ermöglichen.
  • Grafikbeschleuniger 130 wird ebenfalls mit Controller-Hub 115 durch serielle Verbindung 132 gekoppelt. In einer Ausführungsform ist Grafikbeschleuniger 130 mit einem MCH gekoppelt, der mit einem ICH gekoppelt ist. Switch 120, und damit I/O-Einrichtungen 125 und 128, wird sodann mit dem ICH gekoppelt. I/O-Module 131 und 118 sollen außerdem einen geschichteten Protokollstapel implementieren, um zwischen Grafikbeschleuniger 130 und Controller-Hub 115 zu kommunizieren.
  • Im Hinblick auf 2 ist eine Ausführungsform eines geschichteten Protokollstapels illustriert. Der geschichtete Protokollstapel 200 weist irgendeinen geschichteten Kommunikationsstapel auf, wie etwa einen Quick-Path-Zwischenverbindungs(quick path interconnect(QPI))-Stapel, PCIe-Stapel oder anderen Protokollstapel. In einer Ausführungsform ist Protokollstapel 200 ein PCIe-Protokollstapel, der eine Transaktionsschicht 205, Verbindungsschicht 210 und physikalische Schicht 220 aufweist. Eine Schnittstelle, wie etwa Schnittstellen 117, 118, 121, 122, 124, 126, 129 und 131 in 1, kann/können als Kommunikationsprotokollstapel 200 dargestellt werden. Eine Darstellung als ein Kommunikationsprotokollstapel wird auch als ein Modul oder eine Schnittstelle bezeichnet, das/die einen Protokollstapel implementiert oder aufweist.
  • Transaktionsschicht
  • In einer Ausführungsform soll Transaktionsschicht 205 eine Schnittstelle zwischen dem Verarbeitungskern einer Einrichtung und der Zwischenverbindungsarchitektur, wie etwa Datenverbindungssschicht 210 und physikalischer Schicht 220, bereitstellen. In dieser Hinsicht liegt eine wichtige Zuständigkeit der Transaktionsschicht 205 im Zusammensetzen und Auseinandernehmen von Paketen (d. h., Transaktionsschichtpakete oder TLPs). PCIe implementiert geteilte Transaktionen, d. h. Transaktionen, bei denen Anforderung und Antwort zeitlich getrennt ist, was einer Verbindung erlaubt, anderen Verkehr zu übertragen, während die Zieleinrichtung Daten für die Antwort aufnimmt.
  • Zusätzlich verwendet PCIe kreditbasierte Flusssteuerung. Bei diesem Schema verkündet eine Einrichtung einen Anfangskreditbetrag für jeden der Empfangspuffer in Transaktionsschicht 205. Eine externe Einrichtung an dem gegenüberliegenden Ende der Verbindung, wie etwa Controller-Hub 115 in 1, zählt die Anzahl von Kreditpunkten, die durch jede TLP verbraucht werden. Eine Transaktion kann gesendet werden, wenn die Transaktion einen Kreditrahmen nicht übersteigt. Nach dem Empfangen einer Antwort wird ein Kreditbetrag wiederhergestellt. Ein Vorteil eines Kreditschemas ist, dass die Latenz einer Kreditrückgabe nicht die Leistung beeinträchtigt, vorausgesetzt, dass der Kreditrahmen nicht erreicht wird.
  • In einer Ausführungsform weisen vier Transaktionsadressräume einen Konfigurationsadressraum, einen Speicheradressraum, einen Eingabe-/Ausgabeadressraum und einen Nachrichtenadressraum auf. Speicherraumtransaktionen weisen einen oder mehrere Leseanforderungen und Schreibanforderungen auf, um Daten zu/von einem im Speicher abgebildeten Ort zu übertragen. In einer Ausführungsform sind Speicherraumtransaktionen in der Lage, zwei verschiedene Adressformate, z. B. ein kurzes Adressformat, wie etwa eine 32-Bit Adresse, oder ein langes Adressformat, wie etwa eine 64-Bit Adresse, zu verwenden. Konfigurationsraumtransaktionen werden verwendet, um auf Konfigurationsraum der PCIe-Einrichtungen zuzugreifen. Transaktionen auf den Konfigurationsraum schließen Leseanforderungen und Schreibanforderungen ein. Nachrichtenraumtransaktionen (oder einfach Nachrichten) sind definiert, In-Band-Kommunikation zwischen PCIe-Agenten zu unterstützen.
  • Daher setzt Transaktionsschicht 205 in einer Ausführungsform Paketkopf/-Nutzlast 206 zusammen. Formate für Paketköpfe/-Nutzlasten können in der PCIe-Spezifikation, z. B. der PCIe base spec 2.0, nachgeschlagen werden, die unter http://www.pcisig.com/specifications/pciexpress/ erhältlich ist.
  • Verbindungsschicht
  • Verbindungsschicht 210, auch als Datenverbindungsschicht 210 bezeichnet, agiert als eine Zwischenstufe zwischen Transaktionsschicht 205 und der physikalischen Schicht 220. In einer Ausführungsform liegt eine Zuständigkeit der Datenverbindungsschicht 210 darin, einen verlässlichen Mechanismus zum Austauschen von Transaktionsschichtpaketen (Transaction Lager Packets (TLPs)) zwischen zwei Komponenten [über] eine Verbindung bereitzustellen. Eine Seite der Datenverbindungsschicht 210 akzeptiert TLPs, die von der Transaktionsschicht 205 zusammengesetzt wurden, wendet Paketsequenzbezeichner 211, d. h. eine Identifizierungsnummer oder Paketnummer, an, berechnet und wendet einen Fehlererkennungscode, d. h. CRC 212, an und schickt die modifizierten TLPs an die physikalische Schicht 220 zur Versendung über eine Physikalische an eine externe Einrichtung.
  • Physikalische Schicht
  • In einer Ausführungsform weist die physikalische Schicht 220 den logischen Unterblock 221 und elektrischen Unterblock 222 auf, um ein Paket an eine externe Einrichtung physikalisch zu senden. Hierbei ist der logische Unterblock 221 für die „digitalen” Funktionen der physikalischen Schicht 221 zuständig. In dieser Hinsicht weist der logische Unterblock einen Sendebereich zum Vorbereiten ausgehender Information zur Versendung durch den physikalischen Unterblock 222 und einen Empfangsbereich zum Identifizieren und Vorbereiten empfangener Information auf, bevor diese an die Verbindungsschicht 210 übermittelt wird.
  • Der physikalische Block 222 weist einen Sender und einen Empfänger auf. Der Sender wird von dem logischen Unterblock 221 mit Symbolen versorgt, die der Sender serialisiert und an eine externe Einrichtung sendet. Der Empfänger wird von einer externen Einrichtung mit serialisierten Symbolen versorgt und wandelt die empfangenen Signale in einen Bitstrom um. Der Bitstrom wird deserialisiert und an den logischen Unterblock 221 geliefert. In einer Ausführungsform wird ein 8b/10b-Sendecode eingesetzt, bei dem Zehn-Bit-Symbole gesendet/empfangen werden. Hierbei werden spezielle Symbole verwendet, um ein Paket mit den Rahmen 223 einzurahmen. Zusätzlich liefert der Empfänger in einem Beispiel auch einen Symboltakt, der aus dem eintreffenden seriellen Strom ermittelt wird.
  • Wie oben angegeben, ist ein geschichteter Protokollstapel, obwohl Transaktionsschicht 205, Verbindungsschicht 210 und physikalische Schicht 220 unter Bezugnahme auf eine spezifische Ausführungsform eines PCIe-Protokollstapels diskutiert wurden, nicht in dieser Hinsicht beschränkt. Tatsächlich kann irgendein geschichtetes Protokoll enthalten/implementiert sein. Beispielsweise enthält ein Port/eine Schnittstelle, die als ein geschichtetes Protokoll dargestellt ist: (1) eine erste Schicht zum Zusammensetzen von Paketen, d. h. eine Transaktionsschicht, eine zweite Schicht zum Sequenzieren von Paketen, d. h. eine Verbindungsschicht; und eine dritte Schicht zum Senden der Pakete, d. h. eine physikalische Schicht.
  • Als nächstes wird unter Bezugnahme auf 3 eine Ausführungsform einer Speicherordnungslogik illustriert. Wie gezeigt, enthält der intelligente Switch 300 Speicherordnungslogik 305, Schlange 308 versandter Anforderungen (die versandte Anforderungen 310A–N enthält) und Zeiger 322, Schlange 314 unversandter Anforderungen (die unversandte Anforderungen 316A–N enthält) und Zeiger 324, Beendigungsschlange 318 (die Beendungen 320A–N enthält) und Zeiger 326 und Port 350 (der ein Stromaufwärts- oder Stromabwärtsport sein kann).
  • Speicherordnungslogik 305 implementiert ein Verfahren zum Ermöglichen Einrichtungs-ID-basierter Ströme, beispielsweise wie unter Bezugnahme auf 6 beschrieben, und kann ID-basierten Ordnungsaktivierer 332, Schlangenauswähler 334, Zeigerbehandler 336, Anforderer-/Beender-ID-Vergleicher 338 und IDO-Flag-Prüfung 340 einschließen.
  • Unter Bezugnahme auf 4 ist eine Ausführungsform eines Pakets einschließlich eines ID-basierten Ordnungsflags illustriert. Ein Paket bezeichnet jede Anforderung, Nachricht, Zugriff oder anderes Gruppieren von Information, die auf einem Bus/einer Zwischenverbindung gesendet werden soll. In der gezeigten Ausführungsform weist Paket 400 andere Informationensfelder 405 auf. Beispiele anderer Information 405 schließen reservierte Felder, Formatfelder, Typenfelder, Attributfelder, Längenfelder, PCIe-spezifische Felder und jede anderen Protokoll-spezifischen Felder ein. Zusätzlich weist Paket 400 Anforderer-ID 415 (Bytes 4 und 5), die einen anfordernden Agenten/eine anfordernde Einrichtung referenzieren und Teil eines globalen ID-/Transaktionsdescriptors sein können oder eine globale ID/Transaktions-ID aufweisen können und Adressfeld 420, um einen Adressort zu referenzieren, auf.
  • Attributbits 402 und 404 können Ordnungsmodelle 450, 455, 460 und 465 wie gezeigt einsetzen. Attributbit 402, das das gegenwärtig reservierte Bit 2 von Byte 1 verwenden kann, stellt ein ID-basiertes Ordnungsflag dar, das durch einen Anforderer oder Beender gesetzt werden kann, um anzuzeigen, dass eine Anforderung oder Beendigung ordnungsunabhängig ist und versandte Anforderungen umgehen kann.
  • Als nächstes wird unter Bezugnahme auf 5 eine Ausführungsform einer Ordnungstabelle illustriert. Tabelle 500 ähnelt Tabelle 2-24 der PCIe-Spezifikation, ist jedoch modifiziert, um Umgehen früher eingereihter, jedoch verzögerter, versandter Speicherschreib- oder Nachrichtenanforderungen (Spalte 2) eines unabhängigen Anforderungsstromes in bestimmten Beispielen zu ermöglichen.
  • Gemäß Zelle 505 darf eine Speicherschreib- oder Nachrichtenanforderung: mit nicht gesetztem Attributbit 404 gelockerter Ordnung und nicht gesetztem ID-Ordnungsbit 402 nicht passieren (a); mit gesetztem Attributbit 404 gelockerter Ordnung und nicht gesetztem ID-Ordnungsbit 402 passieren (b); und mit nicht gesetztem Attributbit 404 gelockerter Ordnung und gesetztem ID-Ordnungsbit 402 jede andere Speicherschreib- oder Nachrichtenanforderung passieren, wenn die IDs ihrer Anforderer 415 sich unterscheiden (c).
  • Gemäß Zelle 510 darf eine Leseanforderung: mit nicht gesetztem Attributbit 404 gelockerte Ordnung und nicht gesetztem ID-Ordnungsbit 402 nicht passieren (a); mit gesetztem Attributbit 404 gelockerter Ordnung und nicht gesetztem ID-Ordnungsbit 402 nicht passieren (b); und mit nicht gesetztem oder gesetztem Attributbit 404 gelockerter Ordnung und gesetztem ID-Ordnungsbit 402 jede andere Speicherschreib- oder Nachrichtenanforderung passieren, falls die IDs ihrer Anforderer 415 sich unterscheiden (c).
  • Gemäß Zelle 515 können I/O- oder Konfigurationsschreibanforderungen keine Speicherschreib- oder Nachrichtenanforderung passieren. Dies erhält eine starke Schreibordnung aufrecht, die benötigt wird, um einen Hersteller/Verbraucher im Benutzungsmodell zu unterstützen.
  • Gemäß Zelle 520 darf eine Lesebeendung: mit nicht gesetztem Attributbit 404 gelockerter Ordnung und nicht gesetztem ID-Ordnungsbit 402 nicht passieren (a); mit gesetztem Attributbit 404 gelockerter Ordnung und nicht gesetztem ID-Ordnungsbit 402 passieren (b); und mit nicht gesetztem Attributbit 404 gelockerter Ordnung und gesetztem ID-Ordnungsbit 402 jede andere Speicherschreib- oder Nachrichtenanforderung passien, falls ihre Beender-ID eine andere ist als die Anforderer-ID 415 des Speicherschreibvorgangs (c).
  • Schließlich dürfen gemäß Zelle 525 I/O- oder Konfigurationsschreibbeendigung durch Speicherschreib- und Nachrichtenanforderungen blockiert werden oder diese passieren. Solche Transaktionen bewegen sich eigentlich in entgegengesetzte Richtung und weisen daher keine Ordnungsbeziehung auf.
  • Als nächstes ist unter Bezugnahme auf 6 eine Ausführungsform eines Flussdiagramms zum Ermöglichen Einrichtungs-ID-basierter Ströme illustriert. In Fluss 605 bestimmt ein ID-basierter Ordnungsaktivierer 332, ob eine Gelegenheit besteht, eine versandte Anforderung zu umgehen. In einer Ausführungsform befördert Aktivierer 332 den Prozess zu Fluss 610, wenn er feststellt, dass eine versandte Anforderung verzögert ist.
  • Schlangenauswähler 334 wählt dann in Fluss 610 eine Schlange, um nach einem anderen Paket zum Senden zu suchen. In einer Ausführungsform wählt Auswähler 334 die Schlange 308 versandter Anforderungen, die Schlange 314 unversandter Anforderungen oder Beendigungsschlange 318 basierend darauf, welche Schlange die meisten Einträge hat. In einer anderen Ausführungsform wählt Auswähler 334 immer als erstes die Schlange 314 unversandter Anforderungen, um nach einem anderen Paket zu suchen. In Fluss 615 kann Zeigerbehandler 336 einen oder mehrere Zeiger 322, 324, 326 inkrementieren, falls beispielsweise ein früheres potentielles anderes Paket nicht passieren durfte (d. h. nicht von einem unabhängigen Strom oder ohne das ID-Ordnungsbit 402 gesetzt zu haben).
  • Als nächstes bestimmt in Fluß 620 Anforderer-/Beender-ID-Vergleicher 338, ob sich die Anforderer-/Seender-ID des potentiellen anderen Pakets von irgendeiner der früher empfangenen versandten Anforderungen in der Schlange 308 versandter Anforderungen unterscheidet. In einer Ausführungsform verwendet Vergleichselement 338 einen Zeiger versandter Anforderungen, der mit jeder unversandten Anforderung und Beendung gespeichert ist, um zu bestimmen, welche versandten Anforderungen in der Schlage 308 versandter Anforderungen vor dem potentiellen anderen Paket empfangen wurden. Falls festgestellt wurde, dass das potentielle andere Paket einem unabhängigen Strom früher empfangener versandter Anforderungen angehörte, fährt der Prozess mit Fluss 625 fort. Andernfalls kehrt der Prozess zu Fluss 605 zurück.
  • In Fluss 625 verifiziert IDO-Flag-Prüfung 340, dass ID-Ordnungsbit 402 in dem potentiellen anderen Paket gesetzt ist, und, falls dies der Fall ist, wird in Fluss 630 das andere Paket über Port 350 gesendet. Andernfalls kehrt der Prozess zu Fluss 605 zurück.
  • Die Ausführungsformen von Verfahren, Software, Firmware oder Code, die oben dargelegt sind, können über Anweisungen oder Code, die auf einem maschinenzugänglichen oder maschinenlesbaren Medium gespeichert sind, die durch ein Verarbeitungselement ausführbar sind, implementiert sein. Ein maschinenzugängliches/-lesbares Medium schließt irgendeinen Mechanismus ein, der Information in einer durch eine Maschine, wie etwa einen Computer oder elektronisches System, lesbaren Form bereitstellt (d. h. speichert und/oder sendet). Beispielsweise schließt ein maschinenzugängliches Medium Random-Access-Speicher (random access memory (RAM)), wie etwa statischen RAM (SRAM) oder dynamischen RAM (DRAM); ROM; magnetisches oder optisches Speichermedium; Flash-Speichervorrichtungen; elektrische, optische, akustische oder andere Formen propagierter Signale (beispielsweise Trägerwellen, Infrarotsignale, digitale Signale); etc. ein.
  • Bezugnahmen in dieser Beschreibung auf „eine (1) Ausführungsform” oder „eine Ausführungsform” bedeuten, dass ein bestimmtes Merkmal, eine Struktur oder ein Charakteristikum, das in Verbindung mit der Ausführungsform beschrieben ist, in wenigstens einer Ausführungsform der Erfindung enthalten ist. Daher beziehen sich die Auftritte der Phrasen „in einer (1) Ausführungsform” oder „in [irgend]einer Ausführungsform” an verschiedenen Stellen in dieser Spezifikation nicht notwendigerweise alle auf die gleiche Ausführungsform. Darüber hinaus können die bestimmten Merkmale, Strukturen oder Charakteristiken in irgendeiner geeigneten Weise in einer oder mehreren Ausführungsformen kombiniert werden.
  • In der vorangehenden Beschreibung wurde eine ausführliche Beschreibung unter Bezugnahme auf spezifische beispielhafte Ausführungsformen geliefert. Es ist jedoch offensichtlich, dass verschiedene Modifikationen und Änderungen daran vorgenommen werden können, ohne von dem breiteren Geist und Schutzbereich der Erfindung, wie sie in den beigefügten Ansprüchen ausgeführt ist, abzuweichen. Die Spezifikation und Zeichnungen sind daher in einem illustrativen Sinne und nicht in einem einschränkenden Sinn zu betrachten. Darüber hinaus bezieht sich die vorangehende Verwendung von Ausführungsform und anderer beispielhafter Sprache nicht notwendigerweise auf die gleiche Ausführungsform oder das gleiche Beispiel, sondern kann sich auf unterschiedliche und bestimmte Ausführungsformen, ebenso wie potentiell die gleiche Ausführungsform, beziehen.
  • ZITATE ENTHALTEN IN DER BESCHREIBUNG
  • Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
  • Zitierte Nicht-Patentliteratur
    • http://www.pcisig.com/specifications/pciexpress/ [0003]
    • http://www.pcisig.com/specifications/pciexpress/ [0025]

Claims (29)

  1. Vorrichtung, umfassend: Steuerlogik zum Identifizieren einer bestimmten Transaktion, die im Anschluss an eine erste Transaktion ausgegeben wurde, wobei die bestimmte Transaktion ein IDO(identifierbased ordering)-Attribut enthalten soll und die erste Transaktion eine versandte Anforderung enthalten soll; Bestimmen, dass das IDO-Attribut der bestimmten Transaktion gesetzt ist; und basierend zumindest zum Teil auf dem gesetzten IDO-Attribut Gestatten, dass die bestimmte Transaktion die erste Transaktion passiert.
  2. Vorrichtung nach Anspruch 1, wobei die Steuerlogik zumindest teilweise in Hardwareschaltung implementiert ist.
  3. Vorrichtung nach einem der Ansprüche 1–2, wobei die bestimmte Transaktion die erste Transaktion ferner basierend auf einer Bestimmung, dass sich eine Anforderer-ID der ersten Transaktion von einer Anforderer-ID der bestimmten Transaktion unterscheidet, passieren soll.
  4. Vorrichtung nach einem der Ansprüche 1–3, wobei die Steuerlogik ferner zum Bestimmen dient, dass sich die Anforderer-ID der ersten Transaktion von einer Anforderer-ID der bestimmten Transaktion unterscheidet.
  5. Vorrichtung nach einem der Ansprüche 1–4, wobei die Steuerlogik ferner zum Identifizieren der Anforderer-ID der ersten Transaktion anhand eines Kopfes der ersten Transaktion und Idenfizieren der Anforderer-ID der bestimmten Transaktion anhand eines Kopfes der bestimmten Transaktion dient.
  6. Vorrichtung nach einem der Ansprüche 1–5, wobei die versandte Anforderung eine Speicherschreibanforderung umfasst.
  7. Vorrichtung nach einem der Ansprüche 1–6, wobei die versandte Anforderung eine Nachrichtenanforderung umfasst.
  8. Vorrichtung nach einem der Ansprüche 1–7, wobei die bestimmte Transaktion eine versandte Anforderung umfasst.
  9. Vorrichtung nach einem der Ansprüche 1–8, wobei die bestimmte Transaktion eine nicht versandte Anforderung umfasst
  10. Vorrichtung nach einem der Ansprüche 1–9, wobei die nicht versandte Anforderung eine Leseanforderung oder eine nicht versandte Anforderung mit Daten umfasst.
  11. Vorrichtung nach einem der Ansprüche 1–10, wobei die erste Transaktion und die bestimmte Transaktion über eine serielle Punkt-zu-Punkt-Datenverbindung empfangen werden.
  12. Vorrichtung nach einem der Ansprüche 1–11, wobei die serielle Datenverbindung Peripheral Component Interconnect Express(PCIe)-konform ist.
  13. Vorrichtung nach einem der Ansprüche 1–12, wobei die bestimmte Transaktion einen Kopf umfasst, der eine Anforderer-ID, ein Relaxed Ordering-Attributfeld und ein IDO-Attributfeld enthält.
  14. Vorrichtung nach einem der Ansprüche 1–13, wobei das IDO-Attributfeld ein einzelnes Bit umfasst.
  15. Vorrichtung nach einem der Ansprüche 1–14, wobei der bestimmten Transaktion gestattet werden muss, die erste Transaktion zu passieren, wenn das Relaxed Ordering-Attribut gesetzt ist.
  16. Vorrichtung nach einem der Ansprüche 1–15, wobei die Steuerlogik ferner zum Bestimmen, ob das Relaxed Ordering-Attribut gesetzt ist, dient.
  17. Vorrichtung, umfassend: einen Schichtenprotokollstapel, der eine Transaktionsschichtlogik, eine Verbindungsschichtlogik und eine physikalische Schichtlogik umfasst, wobei die Transaktionsschichtlogik dazu dient, um: eine verzögerte erste Transaktion zu identifizieren, die Kopfdaten umfassen soll, wobei die Kopfdaten eine erste Anforderer-ID enthalten sollen und die erste Transaktion eine Versandtanforderung umfassen soll; eine zweite Transaktion zu identifizieren, die im Anschluss an die erste Transaktion ausgegeben wurde, wobei die zweite Transaktion Kopfdaten umfassen soll, die eine zweite Anforderer-ID, ein Relaxed Ordering-Attributfeld und ein IDO(identifierbased ordering)-Attributfeld enthalten sollen, und die zweite Transaktion eines von einer Gruppe enthalten soll, die eine weitere versandte Anforderung, eine nicht versandte Leseanforderung und eine nicht versandte Anforderung mit Daten umfasst; zu bestimmen, dass das IDO-Attribut der zweiten Transaktion gesetzt ist; zu bestimmen, ob das Relaxed Ordering-Attribut der zweiten Transaktion gesetzt ist, wobei der zweiten Transaktion gestattet werden soll, die erste Transaktion zu passieren, wenn das Relaxed Ordering-Attribut gesetzt ist und die zweite Transaktion eine versandte Anforderung oder eine nicht versandte Anforderung mit Daten ist; zu bestimmen, dass die erste Anforderer-ID und die zweite Anforderer-ID unterschiedlich sind; und basierend zumindest zum Teil auf dem gesetzten IDO-Attribut und der Bestimmung, dass sich die erste Anforderer-ID und die zweite Anforderer-ID unterscheiden, zu gestatten, dass die zweite Transaktion die erste Transaktion passiert.
  18. Mindestens ein maschinenzugängliches Speichermedium mit darauf gespeichertem Code, wobei der Code bei Ausführung auf einer Maschine bewirkt, dass die Maschine: eine zweite Transaktion identifiziert, die im Anschluss an eine erste Transaktion ausgegeben wurde, wobei die zweite Transaktion ein IDO-Attribut enthalten soll und die erste Transaktion eine versandte Anforderung enthalten soll; bestimmt, dass das IDO-Attribut der zweiten Transaktion gesetzt ist; und basierend zumindest zum Teil auf dem gesetzten IDO-Attribut gestattet, dass die zweite Transaktion die erste Transaktion passiert.
  19. Speichermedium nach Anspruch 18, wobei der Code bei Ausführung ferner bewirkt, dass die Maschine: eine zweite Transaktion identifiziert, die im Anschluss an eine erste Transaktion ausgegeben wurde, wobei die zweite Transaktion ein IDO-Attribut enthalten soll und die erste Transaktion eine versandte Anforderung enthalten soll; bestimmt, dass das IDO-Attribut der zweiten Transaktion gesetzt ist; und basierend zumindest zum Teil auf dem gesetzten IDO-Attribut gestattet, dass die zweite Transaktion die erste Transaktion passiert.
  20. Speichermedium nach einem der Ansprüche 18–19, wobei der Code bei Ausführung ferner bewirkt, dass die Maschine: bestimmt, dass sich eine Anforderer-ID der ersten Transaktion von einer Anforderer-ID der zweiten Transaktion unterscheidet, wobei das Gestatten, dass die zweite Transaktion die erste Transaktion passiert, ferner auf der Bestimmung basiert, dass sich die Anforderer-ID der ersten Transaktion von der Anforderer-ID der zweiten Transaktion unterscheidet.
  21. Speichermedium nach einem der Ansprüche 18–20, wobei das Bestimmen, dass sich die Anforderer-ID der ersten Transaktion von der Anforderer-ID der zweiten Transaktion unterscheidet, ein Identifizieren der Anforderer-ID der ersten Transaktion in Kopfdaten der ersten Transaktion und ein Identifizieren der Anforderer-ID der zweiten Transaktion in Kopfdaten der zweiten Transaktion enthält.
  22. Speichermedium nach einem der Ansprüche 18–21, wobei die zweite Transaktion ferner ein Relaxed Ordering-Attribut enthält und das Verfahren ferner ein Bestimmen, ob das Relaxed Ordering-Attribut der zweiten Transaktion gesetzt ist, umfasst, wobei der zweiten Transaktion gestattet werden soll, die erste Transaktion zu passieren, wenn das Relaxed Ordering-Attribut gesetzt ist.
  23. Speichermedium nach einem der Ansprüche 18–22, wobei der Code bei Ausführung ferner bewirkt, dass die Maschine: die erste Transaktionen empfängt; und die zweite Transaktion empfängt.
  24. System, umfassend: eine erste I/O-Einrichtung; eine zweite I/O-Einrichtung; und eine dritte I/O-Einrichtung, die mit den ersten und zweiten I/O-Einrichtungen kommunikativ gekoppelt ist, wobei die dritte I/O-Einrichtung dazu dient, um: eine erste Transaktion von der ersten I/O-Einrichtung zu empfangen; eine zweite Transaktion von der zweiten I/O-Einrichtung im Anschluss an die erste Transaktion zu empfangen; zu bestimmen, dass ein IDO-Attribut der zweiten Transaktion gesetzt ist; und basierend zumindest zum Teil auf dem gesetzten IDO-Attribut zu gestatten, dass die zweite Transaktion die erste Transaktion passiert.
  25. System nach Anspruch 24, wobei die dritte I/O-Einrichtung ferner dazu dient, um zu bestimmen, dass sich eine Anforderer-ID der ersten Transaktion von einer Anforderer-ID der zweiten Transaktion unterscheidet, wobei die zweite Transaktion die erste Transaktion ferner basierend auf einer Bestimmung, dass sich die Anforderer-ID der ersten Transaktion von der Anforderer-ID der zweiten Transaktion unterscheidet, passieren soll.
  26. System nach Anspruch 24, wobei die dritte I/O-Einrichtung einen Switch umfasst.
  27. System nach Anspruch 26, wobei die erste I/O-Einrichtung einen Mikroprozessor und/oder Grafikbeschleuniger und/oder Speichercontroller umfasst.
  28. System nach Anspruch 26, wobei die erste I/O-Einrichtung einen Mikroprozessor und/oder Grafikbeschleuniger und/oder Speichercontroller umfasst.
  29. System nach Anspruch 24, wobei die dritte I/O-Einrichtung mit den ersten und zweiten I/O-Einrichtungen durch eine PCIe-basierte serielle Punkt-zu-Punkt-Verbindung kommunikativ gekoppelt ist.
DE202010018100.3U 2009-05-29 2010-03-10 Vorrichtung für ID-basierte Ströme über PCI-Express Expired - Lifetime DE202010018100U1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US12/474,480 2009-05-29
US12/474,480 US8199759B2 (en) 2009-05-29 2009-05-29 Method and apparatus for enabling ID based streams over PCI express

Publications (1)

Publication Number Publication Date
DE202010018100U1 true DE202010018100U1 (de) 2014-04-09

Family

ID=43220157

Family Applications (2)

Application Number Title Priority Date Filing Date
DE202010018100.3U Expired - Lifetime DE202010018100U1 (de) 2009-05-29 2010-03-10 Vorrichtung für ID-basierte Ströme über PCI-Express
DE112010002178T Ceased DE112010002178T5 (de) 2009-05-29 2010-03-10 Verfahren und vorrichtung für id-basierte ströme über pci-express

Family Applications After (1)

Application Number Title Priority Date Filing Date
DE112010002178T Ceased DE112010002178T5 (de) 2009-05-29 2010-03-10 Verfahren und vorrichtung für id-basierte ströme über pci-express

Country Status (8)

Country Link
US (1) US8199759B2 (de)
JP (2) JP2012527036A (de)
KR (1) KR101298862B1 (de)
CN (2) CN101901205B (de)
DE (2) DE202010018100U1 (de)
RU (2) RU2509348C2 (de)
TW (2) TWI568220B (de)
WO (1) WO2010138230A2 (de)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8199759B2 (en) 2009-05-29 2012-06-12 Intel Corporation Method and apparatus for enabling ID based streams over PCI express
WO2011150346A2 (en) * 2010-05-28 2011-12-01 Laurich Lawrence A Accelerator system for use with secure data storage
US9411763B2 (en) 2012-01-13 2016-08-09 Intel Corporation Allocation of flow control credits for high performance devices
US9600431B2 (en) 2012-10-22 2017-03-21 Intel Corporation High performance interconnect physical layer
DE112013003723B4 (de) * 2012-10-22 2018-09-13 Intel Corporation Hochleistungsfähige physikalische Kopplungsstrukturschicht
US9558143B2 (en) * 2014-05-09 2017-01-31 Micron Technology, Inc. Interconnect systems and methods using hybrid memory cube links to send packetized data over different endpoints of a data handling device
US9602464B2 (en) * 2014-12-12 2017-03-21 Intel Corporation Apparatus, system and method for allocating identifiers to components of a control system
US10176126B1 (en) * 2015-06-29 2019-01-08 Cadence Design Systems, Inc. Methods, systems, and computer program product for a PCI implementation handling multiple packets
US11216396B2 (en) * 2016-09-29 2022-01-04 Intel Corporation Persistent memory write semantics on PCIe with existing TLP definition
US10353833B2 (en) * 2017-07-11 2019-07-16 International Business Machines Corporation Configurable ordering controller for coupling transactions
CN108471384B (zh) * 2018-07-02 2020-07-28 北京百度网讯科技有限公司 用于端到端通信的报文转发的方法和装置
US11477049B2 (en) * 2018-08-02 2022-10-18 Xilinx, Inc. Logical transport over a fixed PCIE physical transport network
CN110580202A (zh) * 2019-06-04 2019-12-17 阿里巴巴集团控股有限公司 服务器系统内消息的处理方法、装置及系统
US11748285B1 (en) * 2019-06-25 2023-09-05 Amazon Technologies, Inc. Transaction ordering management
KR102529761B1 (ko) 2021-03-18 2023-05-09 에스케이하이닉스 주식회사 PCIe 디바이스 및 그 동작 방법
KR102496994B1 (ko) * 2021-03-23 2023-02-09 에스케이하이닉스 주식회사 PCIe 인터페이스 장치 및 그 동작 방법

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3505728B2 (ja) * 1993-01-13 2004-03-15 株式会社日立製作所 記憶制御装置
US6138192A (en) * 1996-12-31 2000-10-24 Compaq Computer Corporation Delivering a request to write or read data before delivering an earlier write request
US6385708B1 (en) * 1998-11-16 2002-05-07 Infineon Technologies Ag Using a timing-look-up-table and page timers to determine the time between two consecutive memory accesses
KR100750036B1 (ko) 2001-08-24 2007-08-16 인텔 코오퍼레이션 플로우 제어를 구현하는 범용 입출력 아키텍쳐, 프로토콜및 관련 방법
US6691192B2 (en) * 2001-08-24 2004-02-10 Intel Corporation Enhanced general input/output architecture and related methods for establishing virtual channels therein
US6728790B2 (en) * 2001-10-15 2004-04-27 Advanced Micro Devices, Inc. Tagging and arbitration mechanism in an input/output node of a computer system
US6912612B2 (en) 2002-02-25 2005-06-28 Intel Corporation Shared bypass bus structure
US7149857B2 (en) * 2002-05-14 2006-12-12 Micron Technology, Inc. Out of order DRAM sequencer
DE10234934A1 (de) * 2002-07-31 2004-03-18 Advanced Micro Devices, Inc., Sunnyvale Antwortreihenwiederherstellungsmechanismus
US7443869B2 (en) * 2003-08-04 2008-10-28 Intel Corporation Deadlock avoidance queuing mechanism
US7444558B2 (en) * 2003-12-31 2008-10-28 Intel Corporation Programmable measurement mode for a serial point to point link
US7165131B2 (en) * 2004-04-27 2007-01-16 Intel Corporation Separating transactions into different virtual channels
US7957428B2 (en) * 2004-05-21 2011-06-07 Intel Corporation Methods and apparatuses to effect a variable-width link
US20050289306A1 (en) * 2004-06-28 2005-12-29 Sridhar Muthrasanallur Memory read requests passing memory writes
CN100456273C (zh) * 2005-03-24 2009-01-28 富士通株式会社 PCI-Express通信系统及其通信方法
US7461190B2 (en) * 2005-08-11 2008-12-02 P.A. Semi, Inc. Non-blocking address switch with shallow per agent queues
US7664904B2 (en) 2006-03-10 2010-02-16 Ricoh Company, Limited High speed serial switch fabric performing mapping of traffic classes onto virtual channels
US20080005484A1 (en) 2006-06-30 2008-01-03 Joshi Chandra P Cache coherency controller management
US7836220B2 (en) * 2006-08-17 2010-11-16 Apple Inc. Network direct memory access
US7949794B2 (en) * 2006-11-02 2011-05-24 Intel Corporation PCI express enhancements and extensions
US8050290B2 (en) * 2007-05-16 2011-11-01 Wilocity, Ltd. Wireless peripheral interconnect bus
US7904629B2 (en) * 2007-10-02 2011-03-08 NVON, Inc. Virtualized bus device
US8199759B2 (en) 2009-05-29 2012-06-12 Intel Corporation Method and apparatus for enabling ID based streams over PCI express

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
http://www.pcisig.com/specifications/pciexpress/

Also Published As

Publication number Publication date
RU2013146508A (ru) 2015-04-27
KR101298862B1 (ko) 2013-08-21
TWI568220B (zh) 2017-01-21
CN104123262B (zh) 2018-03-30
WO2010138230A3 (en) 2011-01-20
RU2011153260A (ru) 2013-07-10
US20100303079A1 (en) 2010-12-02
DE112010002178T5 (de) 2012-09-20
TW201101044A (en) 2011-01-01
RU2559727C2 (ru) 2015-08-10
WO2010138230A2 (en) 2010-12-02
CN101901205A (zh) 2010-12-01
US8199759B2 (en) 2012-06-12
TWI633442B (zh) 2018-08-21
KR20120024669A (ko) 2012-03-14
RU2509348C2 (ru) 2014-03-10
JP2012527036A (ja) 2012-11-01
JP2014017006A (ja) 2014-01-30
TW201636865A (zh) 2016-10-16
JP5897524B2 (ja) 2016-03-30
CN101901205B (zh) 2014-07-30
CN104123262A (zh) 2014-10-29

Similar Documents

Publication Publication Date Title
DE202010018100U1 (de) Vorrichtung für ID-basierte Ströme über PCI-Express
DE60213616T2 (de) Eine allgemeine eingabe-/ausgabearchitektur, protokoll und entsprechende verfahren zur umsetzung der flusssteuerung
DE102009061279B3 (de) Bereitstellung eines Präfixes für einen Datenkopf
DE60219047T2 (de) Eine allgemeine eingabe-/ausgabearchitektur und entsprechende verfahren zum aufbau virtueller kanäle darin
DE60216299T2 (de) Allgemeine eingabe-/ausgabearchitektur und entsprechende verfahren zur bereitstellung virtueller kanäle
DE112013005044B4 (de) Verfahren, einrichtung, vorrichtung und system zum ausführen von eingehenden pcie-schreiboperationen in einen speicher und partnereinrichtungen per dualcast
DE112015006944B4 (de) Einrichtung, System und Verfahren zum Ermöglichen einer Kommunikation über eine Verbindung mit einer Vorrichtung außerhalb einer Baugruppe
DE102012209016B4 (de) System und Verfahren zur Weiterleitung von Fibre-Channel-Eingangs- und Ausgangsdaten
DE112017005002T5 (de) Verbindungsphysikalischer schichtschnittstellenadapter
DE112017006523T5 (de) Retimer mit kurzer latenzzeit
DE102019108798A1 (de) Hochbandige verbindungsschicht für kohärente nachrichten
DE112013005090T5 (de) Steuernachrichtenübermittlung in einem mehrfach-Slot-Verbindungsschicht-Flit
DE112015006961T5 (de) Verbindungsfehlerdetektion in mehrfachchipgehäusen
DE112013007726T5 (de) Verbesserungen eines Zwischenverbindungs-Retimers
DE112004002043B4 (de) Verfahren, System und Programm zum Aufbau eines Pakets
DE102012209009B4 (de) System und Verfahren zur Weiterleitung von Fibre-Channel-Eingangs- und Ausgangsdaten
DE112010004006T5 (de) Zuverlässige kommunikationen in chipintegrierten netzwerken
DE102009032072A1 (de) Einstellbare Senderleistung für Hochgeschwindigkeitsverbindungen mit konstanter Bitfehlerrate
DE112018001088T5 (de) Anwendung von framing-regeln für eine hochgeschwindigkeitsdatenverbindung
DE112017004963T5 (de) Spannunsgmodulierte steuer-lane
DE102015112634A1 (de) Unterstützen von RMA-API über aktive Message
DE102022129250A1 (de) Übertragungsrate basierend auf detektierter verfügbarer Bandbreite
DE112013007700T5 (de) Eingabe-Ausgabe-Datenausrichtung
DE112017001706T5 (de) Zeitversatzvalidierung von komponenten mit unabhängigen siliziumuhren
DE102016206109A1 (de) Speicherdirektzugriffssteuereinrichtung für mindestens eine einen Arbeitsspeicher aufweisende Recheneinheit

Legal Events

Date Code Title Description
R207 Utility model specification

Effective date: 20140515

R150 Utility model maintained after payment of first maintenance fee after three years

Effective date: 20140604

R151 Utility model maintained after payment of second maintenance fee after six years
R152 Utility model maintained after payment of third maintenance fee after eight years
R071 Expiry of right