Introduction

As with other protocols, PCI Express imposes ordering rules on transactions moving through the fabric at the same time. The reasons for the ordering rules include:

  • Ensuring that the completion of transactions is deterministic and in the sequence intended by the programmer.

  • Avoiding deadlocks conditions.

  • Maintaining compatibility with ordering already used on legacy buses (e.g., PCI, PCI-X, and AGP).

  • Maximize performance and throughput by minimizing read latencies and managing read/write ordering.

PCI Express ordering is based on the same Producer/Consumer model as PCI. The split transaction protocol and related ordering rules are fairly straight forward when restricting the discussion to transactions involving only native PCI Express ...

Get PCI Express System Architecture now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.