Unraveling the PCIe ECN Unordered IO (UIO) Feature
Introduction
Unordered IO (UIO) ECN is included in the PCIe 6.1 specification and defines a new wire semantic and related capabilities for addressing the limitations of the PCI/PCIe fabric-enforced ordering rules. The key motivations for UIO ECN are to enable multiple-path fabric support and to have performance improvements.
Previous Ordering Methods vs UIO
In the PCIe protocol, there are some transaction ordering rules to avoid deadlocks and producer-consumer problems. For example,
- A posted request must not pass another posted request
- A posted request must be able to pass non-posted requests to avoid deadlocks
- Non-posted requests with data must not pass a posted request
These rules are defined for all types of transactions on PCI Express, including memory, I/O, configuration, and messages. The ordering rules are applicable for transactions with the same Traffic Class (TC).
The PCIe specification provided a way to change the ordering rules by using Relaxed Ordering (RO) and ID-Based Ordering (IDO) attributes present in the TLP. Header attributes bits [2:1].
To read the full article, click here
Related Semiconductor IP
Related Blogs
- Flow Control Credit Updates in PCIe 6.1 ECN
- PCIe 7.0: Addressing legacy ordering limitations with UIO
- Scalable I/O Virtualization: A Deep Dive into PCIe’s Next Gen Virtualization
- Intel’s Atom-based Tunnel Creek SOC with integrated PCIe interface opens new era for embedded developers
Latest Blogs
- Inside the SiFive Performance™ P570 Gen 3: High Performance Efficiency for Next-Generation Consumer and Commercial Applications
- What the steam engine can teach us about modern chip design
- Automotive silicon in the era of AI, functional safety, and cybersecurity
- JPEG XS Officially Joins GenICam, The Machine Vision Standard Managed By EMVA
- Beyond PCIe Compliance: Why Stress Testing Is Crucial for Edge AI Deployments