Arbitration, Fairness, QoS, and Forward Progress Guarantees
This section addresses how the design handles arbitration between multiple traffic classes or concurrent transaction types that share resources or interfaces. It outlines the arbitration policies, fairness properties, QoS features, and forward progress guarantees [1].
Arbitration and Fairness
Define the arbitration policy for shared resources or interfaces. Describe how multiple traffic classes or transaction types are prioritized and how fairness is ensured. If applicable, detail any configurability features that allow adjustments to the arbitration policy or QoS settings. Clearly state if any traffic classes are unfairly treated and discuss the implication [1].
- Arbitration Policy: Describe the policy used for arbitration (e.g., round-robin, priority-based).
- Fairness: Explain how fairness is maintained among traffic classes.
- Configurability: Detail any features that allow users to control arbitration or QoS.
Quality-of-Service (QoS)
Discuss the QoS mechanisms implemented in the design. Describe how the system ensures different levels of service based on traffic class or transaction type, and how these mechanisms impact system performance [1].
- QoS Features: List and describe the QoS features supported by the design.
- Impact on Performance: Explain how QoS affects the performance of the system.
Forward Progress Guarantees
Ensure that the design provides forward progress guarantees, meaning that it avoids deadlock and livelock conditions. State any assumptions about the external system required to guarantee forward progress. Provide a high-level outline of the proof for these guarantees, and indicate if it can be formally verified [1].
- Deadlock and Livelock Prevention: Describe how the design prevents deadlock and livelock.
- Assumptions: State any assumptions needed for forward progress.
- Proof Outline: Provide a brief outline of the proof or verification approach for forward progress guarantees.