快速由PCI迁移到PCIe
1. 首先要搞清楚两者的一些对应关系
PCI的并行总线 --> PCIe的串行总线
HOST还是那个HOST
HOST桥 --> RC
PCI Agent --> EP
PCI桥 --> Switch
其它诸如配置空间、可预取/不可预取、配置空间的ID寻址、内存及IO空间的地址寻址,Type 0、Type 1、总线号、设备号、功能号等等概念和数据结构基本上都直接由PCI搬到了PCIe。
这里尤其理解switch的下面这个等效逻辑图:虚拟PCI总线,每个端口相当于一个PCI桥等
2. PCIe串行总线是如何实现PCI并线总线的操作转换
(1) 搞清楚TLP是如何将并行总线的操作转换为基于数据包的串行总线操作的。
理解TLP最基本的字段:Fmt、Type、Length等。
(2) TLP的路由
对比下面的两个图,理解PCIe的路由与PCI原先的寻址是多么相似。
* 弄清楚PCI总线的地址路由在PCIe中如何进行的,看看PCIe中有没有正向译码和负向译码的概念。
* 弄清楚PCI总线的ID路由在PCIe中如何进行的,这里要理解PCIe中switch里下游端口虚拟pci桥的设备号,EP的设备号等。