PCIe 6.0 Address Translation Services: Verification Challenges and Strategies
Address Translation Services (ATS) is a mechanism in PCIe that allows devices to request address translations from the Input/Output Memory Management Unit (IOMMU). This is particularly important where devices need to access virtual memory. ATS enhances performance by enabling devices to cache translations, reducing the latency associated with memory access. This blog delves into the semantics of ATS request-completion protocol and Invalidation protocol. It also addresses key verification challenges that verification engineers might face while covering the error scenarios at various stages of verification.
Semantics of ATS Protocol
ATS uses a request-completion protocol between a device and a Root Complex (RC).
- The device function generates an ATS translation request that is sent upstream through the PCIe hierarchy to the RC which then forwards it to the Translation Agent (TA)
- ATS translation requests are processed for each traffic class that follows the ordering rules and issues the associated ATS translation completion
ATS uses invalidate request-completion protocol between a device and an RC and ensures that the cached address translations are not stale.
- TA (or RC) sends the invalidate request downstream to the device Address Translation Cache (ATC)
- Devices like endpoint (EP) issue one or more invalidate completion responses to TA, indicating that EP has cleared the ATC
Related Semiconductor IP
- PCIe 6.0 PHY, TSMC N6 x2 1.2V, North/South (vertical) poly orientation
- PCIe 6.0 PHY, TSMC N4P x4, North/South (vertical) poly orientation
- PCIe 6.0 PHY, TSMC N4P x4, North/South (vertical) poly orientation
- PCIe 6.0 PHY, SS SF5A x4, North/South (vertical) poly orientation
- PCIe 6.0 PHY, SS SF5A x1, North/South (vertical) poly orientation
Related Blogs
- PCIE 6.0 vs 5.0 - All you need to know
- Big Innovations Double the Data Rate to 64 GT/s with PCIe 6.0
- Verification of Light Weight Forward Error Correction (FEC) and Strong Cyclic Redundancy Checks (CRC) feature in PCIe 6.0
- Unraveling PCIe 6.0 FLIT Mode Challenges
Latest Blogs
- Why Choose Hard IP for Embedded FPGA in Aerospace and Defense Applications
- Migrating the CPU IP Development from MIPS to RISC-V Instruction Set Architecture
- Quintauris: Accelerating RISC-V Innovation for next-gen Hardware
- Say Goodbye to Limits and Hello to Freedom of Scalability in the MIPS P8700
- Why is Hard IP a Better Solution for Embedded FPGA (eFPGA) Technology?