飞飞学飞的个人空间 https://blog.eetop.cn/1585176 [收藏] [复制] [分享] [RSS]

空间首页 动态 记录 日志 相册 主题 分享 留言板 个人资料

日志

2025-07-17

已有 91 次阅读| 2025-7-17 08:16 |个人分类:PCIe每日一问|系统分类:芯片设计| PCIe, Linux, CPU

此文章摘抄自微信公众号"芯塾科技",如有侵权,请联系删除,谢谢!

1.png

1.PCIe每日一问简介

1.文章坚持实际工作中有所帮助---实际工作中遇到问题可查阅。

2.章节内容规划具有连贯性。lspci-setpci-PCIe Configuration Space--next。

3.文章以文字和视频形式发布,建议大家视频和文章结合查阅。

4.视频发布:公众号、B站、抖音,搜寻“芯塾科技”可观看。

5.文章发布: 公众号、CSDN、知乎、B站,搜寻“芯塾科技”可浏览。


2.PCIe拓扑结构

1.cpu连接RC,RC连接PCIe Endpoint或连接PCIe Switch。

2.png

3.PCIe Root Complex

1.Root Complex根复合体,字面意思就是一个复杂的结构, 位于处理器内部。

2.不同的处理器结构,RC实现由较大差异,PCIe协议未规定RC的实现细则。

3.Root Complex 不是一个单独的组件<component>,是一个逻辑结构,是组件的集合,包含内存、芯片组<Chipset>以及其它一些组件。

3.Root Complex具有多个PCIe Root Port(根端口),外部PCIe设备可以通Root Port访问系统内存,CPU也可通过Root Port与外部PCIe设备通信。

3.png

4.Root Complex是一组提供PCI Express总线与计算机的CPU和内存之间接口的组件<component>。 

5.总结: Root Complex是PCIe系统的关键组件,负责确保数据在PCIe总线和CPU直接有效的传输,还负责确保连接到PCIe总线的各种设备之间正确的路由数据(Peer-Peer)。


4.PCIe Switch

1.PCIe使用点到点的连接方式,单个PCIe link只能连接一个PCIe设备

4.png

2.单个PCIe link需要连接多个PCIe设备时,就需要通过PCIe Switch。

3.PCIe Switch具有上游端口和多个下游端口。

5.png

4.PCIe Switch 下游端口与EP或者其它Switch的上游端口连接。

5.Ingress port为本端口接受报文的端口,Egress Port为本端口发生报文的端口。

6.png

5.PCIe Endpoint

1.PCIe存在两种类型端点设备,PCIe endpoint、legacy endpoint。

2.PCIe Endpoint 是 PCIe 系统中的端点设备,负责提供各种服务和数据传输功能。

3.PCIe  Endpoint通过 PCIe 链路与 RC 或其它 PCIe Endpoint 进行通信。

4.常见设备GPU、AI加速卡、FPGA、SSD、网卡等。


6.Legacy endpoint

1.Legacy PCI compatible end point 为与PCI兼容的PCIe端口设备。

2.上一章节PCIe Endpoint即目前常见的PCIe设备可以称为native PCIe endpoint。

3.Legacy endpoint可以实现PCIe扩展能力寄存器,但软件可能会忽略这些功能。

4.Legacy endpoint可以使用 I/O 事务等,以保持与传统 PCI 应用程序的兼容性。

5.Native Endpoint只支持内存空间事务,禁止使用 I/O 事务。

6.Legacy endpoint 中断可以支持与PCI兼容INT#消息中断,并且必须支持MSI/MSI-X中断,如果支持MSI则MSI地址格式可以为32bit/64bit。

7.Native PCIe endpoint必须支持MSI/MSI-X中断,如果支持MSI则MSI地址格式必须为64bit。

8.Native PCIe endpoint 支持Prefetchable的BAR必须为64bit Bar。

9.PCIe拓扑硬件连接 legacy endpoint与native endpoint无区别。

7.png

7.RCiEP

1.Root Complex Integrated Endpoint(RCiEP) RC内部集成的EP设备。

2.RCiEP为逻辑上实现的PCIe Endpoint,并不存在PCIe协议层<TL/DL/PL>内容。

3.下节内容分析实现此的收益。

4.RCiEP必须实现PCIe Type0配置空间。

5.RCiEP中断必须支持MSI/MSI-X中断,如果支持MSI则MSI地址格式可以为32bit/64bit。

6.RCiEP必须不能实现PCIe扩展能力中Link Capabilities, Link Status, Link Control, Link Capabilities 2, Link Status 2, and Link Control 2等寄存器。


8.RCEC

1.Root Complex Event Collector (RCEC)根复合体事件收集器。

2.RCEC负责收集来自RCiEP的错误和电源管理事件。

3.RCEC不能处理任何内存或 I/O请求访问。

4.RCEC的实现是可选的(Root Complex Event Collectors are optional)。


9.PCI/PCI-X Bridge

1.PCIe to PCI/PCI-X桥使传统的PCI/PCI-X设备可以连接到PCIe系统。


10.Summary

1.梳理完PCIe设备类型,PCIe拓扑结构可具体化为。

8.png

---------------------------------------------------------

---------------------------------------------------------

文章坚持-工作中查阅可解决实际问题

您的点赞-收藏-转发-评论是我们坚持原创的动力

欢迎关注微信公众号"芯塾科技"

视频发布平台:B站/公众号/抖音,可搜索"芯塾科技"观看




点赞

评论 (0 个评论)

facelist

您需要登录后才可以评论 登录 | 注册

  • 关注TA
  • 加好友
  • 联系TA
  • 3

    周排名
  • 0

    月排名
  • 0

    总排名
  • 0

    关注
  • 2

    粉丝
  • 0

    好友
  • 0

    获赞
  • 0

    评论
  • 147

    访问数
关闭

站长推荐 上一条 /1 下一条


小黑屋| 手机版| 关于我们| 联系我们| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2025-7-18 13:10 , Processed in 0.015380 second(s), 9 queries , Gzip On, MemCached On.

eetop公众号 创芯大讲堂 创芯人才网
返回顶部