PCIe Protocol

时间:2024-03-15 17:03:32

1  PCIE基本概念

1.1   PCIE拓扑架构图

 

PCIe Protocol

 

1.2 PCIE Switch内部结构图

 

PCIe Protocol

 

1.3  PCIE协议结构图

PCIe Protocol
 

 

2 PCIE枚举原理

2.1 Type0&Type1配置头空间

PCIe Protocol

2.2 拓扑示例

连接Device0的端口设为Port0,连接Device1的端口设为Port1 (Port可以看作PCI Bridge)

PCIe Protocol

2.3 枚举过程

Port0、Port1的相关Bus Register变化过程如下图

PCIe Protocol

2.4 资源分配

2.4.1 非桥设备资源分配

以Device0的资源分配为例:需要64KB IO Memory  以及 256 Byte IOPort 

(IOPort Base = 0x10000000,  IOMem Base = 0x20000000)

PCIe Protocol

2.4.2 桥设备资源分配

Port0为支持Devic0  IO & Memory Routing相关的Register设定 

PCIe Protocol

3  PCIE事务交互

3.1 配置空间读写

Read Conf Space:  Device0 offset 4 

PCIe Protocol

3.2 内存空间读写

MMIO Read:  addr = 0x20000004

PCIe Protocol

3.3 中断发起、取消

 

PCIe Protocol