本文将介绍下PCIe中的 ATS。
Address Translation Services(ATS)
Address Translation Cache (ATC)
Translation Agent(TA)
1. 背景
读者需要建立iommu的概念。其中,iotlb是iommu中的tlb映射项。
2. motivation
iotlb会被多个I/O设备同时访问,因此,这种集中式的iotlb会影响系统的性能。为此,ATS应运而生。
ATS defines a protocol between PCIe Device and Root Complex for faster DMA remapping.
ATS的思想是:每个PCI Express设备都拥有自己的ATC,这样就无需去查询iotlb,因而可以缓解iotlb的压力,提高访存性能。
3. detail
详细描述请参见Address Translation Services, Revision 1.1p11 to p12。
当PCIe Device的ATC无法完成地址映射时,此刻就需要PCIe Device发送ATS Request给TA。TA完成地址映射后,会将结果返还给PCIe Device,这样,PCIe Device中的ATC就有地址映射项了。
当TA中对内存地址更改之后,会发送ATS Invalidate Request给PCIe Device,Device会取消该映射项,并将结果返还给TA。
-
PCIe
+关注
关注
15文章
1200浏览量
82341 -
ATS
+关注
关注
0文章
33浏览量
26668
原文标题:Introduction to PCIe Address Translation Services
文章出处:【微信号:LinuxDev,微信公众号:Linux阅码场】欢迎添加关注!文章转载请注明出处。
发布评论请先 登录
相关推荐
评论