图解PCIE原理(从软件角度)

本文深入介绍了PCIE技术的基本概念,包括其拓扑架构、Switch内部结构及协议结构,并详细阐述了PCIE的枚举原理、资源分配方式以及事务交互过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1  PCIE基本概念


1.1   PCIE拓扑架构图





1.2 PCIE Switch内部结构图



1.3  PCIE协议结构图



2 PCIE枚举原理

2.1 Type0&Type1配置头空间



2.2 拓扑示例

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



2.3 枚举过程

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



2.4 资源分配

2.4.1 非桥设备资源分配

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

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



2.4.2 桥设备资源分配

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



3  PCIE事务交互


3.1 配置空间读写

Read Conf Space:  Device0 offset 4



3.2 内存空间读写

MMIO Read:  addr = 0x20000004



3.3 中断发起、取消





评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值