Um über PCIe-gebuchte Transaktionen Bescheid zu wissen, müssen Sie verstehen, was ein "veröffentlichtes Schreiben" für Legacy-PCI ist und was ein Legacy-PCI-Lesevorgang ist.
Bei einem älteren PCI-Lesevorgang und tatsächlich bei den meisten Bussen sendet die CPU einen Lesebefehl und die Leseadresse wartet darauf, dass das Gerät mit den Daten und einem "Fertig" -Signal antwortet. Grundsätzlich handelt es sich um eine Sache vom Typ Befehl und Antwort.
Normale Schreibvorgänge auf einem älteren PCI-Bus und vielen anderen Bussen sind ähnlich, außer dass der Befehl das Schreibsignal + Adresse + Daten ist und die Antwort nur "erledigt" ist. Das Problem dabei ist, dass für viele Systeme das "erledigt" nicht benötigt wird und nur Zeit braucht. Wenn das Peripheriegerät, auf das Sie schreiben, Schreibvorgänge mit voller Geschwindigkeit akzeptieren kann, ist das erledigt überhaupt nicht erforderlich.
Ein "geschriebenes Schreiben" ist ein Schreiben, das nicht auf ein "erledigt" wartet. Die CPU geht davon aus, dass der Schreibzyklus mit null Wartezuständen abgeschlossen wird, und wartet daher nicht auf den Vorgang. Dies beschleunigt das Schreiben erheblich. Für den Anfang muss es nicht auf die Antwort warten, sondern ermöglicht auch ein besseres Pipelining des Datenpfads ohne große Leistungseinbußen.
Im PCIe-Land werden alle Schreibvorgänge gebucht. PCIe nennt sie jedoch "gebuchte Transaktionen", da es viele Arten von Schreibvorgängen gibt (Speicherschreibvorgänge, E / A-Schreibvorgänge, Konfigurationsschreibvorgänge usw.). Es gibt auch einige andere Transaktionen, die keine Antwort haben.
Der Grund, warum alle Schreibvorgänge veröffentlicht werden, liegt darin, dass die serielle und paketbasierte Natur von PCIe die "Antwort" sehr langsam macht. Es ist üblich, dass das Lesen eines einzelnen Wortes mehrere Mikrosekunden dauert. Obwohl der Bus mit 2,5 Gigabit / Sekunde fährt, könnten Sie nur etwa 4 Megabyte / Sekunde erhalten, wenn Sie einzelne Wörter lesen. Wenn Sie dies in geschriebene Einzelwortschreibvorgänge ändern, steigt die Bandbreite auf etwa 60 Megabyte / Sekunde. Wechseln Sie zu Schreibvorgängen mit mehreren Wörtern, und Sie haben eine Geschwindigkeit von bis zu 250 Megabyte / Sekunde.
Es gibt in keinem Bus einen geposteten Lesevorgang, da für alle Lesevorgänge eine Antwort erforderlich ist (auch bekannt als die Daten, die Sie lesen).