In PCI-X, before the Address Phase, there’s an extra time slot called the Attribute Phase.

Here, the requester provides:

These attributes let the system make smarter decisions about how to handle the transaction.


No Snoop (NS) Bit

Normally, when memory is accessed:

  1. The CPU must check ("snoop") its internal caches to see if that memory address is already cached.
  2. If cached:
    • Cache may need to write back (if dirty).
    • Or invalidate the cached copy (to avoid stale data).
  3. This snooping adds latency.

👉 But if the requester knows the target memory region is uncacheable (like DMA buffers for I/O devices), snooping is a waste.

✅ Benefit: Lower latency, faster DMA.


Relaxed Ordering (RO) Bit

By default, PCI/PCI-X follows Strong Ordering:

But not all transactions depend on each other. For example:

👉 Setting RO = 1 tells bridges/buffers:

“This transaction doesn’t depend on the earlier ones — it can be reordered.”

✅ Benefit: Improves throughput, especially under heavy I/O loads, because the bus/bridges can reorder independent transactions for efficiency.