欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 文旅 > 明星 > 【PCIe 总线及设备入门学习专栏 1.1 -- PCIe 基础知识 lane和link介绍】

【PCIe 总线及设备入门学习专栏 1.1 -- PCIe 基础知识 lane和link介绍】

2025/4/4 6:06:32 来源:https://blog.csdn.net/sinat_32960911/article/details/144653119  浏览:    关键词:【PCIe 总线及设备入门学习专栏 1.1 -- PCIe 基础知识 lane和link介绍】

文章目录

  • Overivew
    • Lane 和 Link
    • RC 和 RP
      • PCIe controller
        • PCIE Controller
        • PHY模块
    • Inbound 和 Outbound
    • PCIe transaction model
      • PIO
      • DMA
      • P2P

Overivew

PCIe,即PCI-Express总线(Peripheral Component Interconnect Express),是一种高速串行总线。

PCIe最早由英特尔在2001年提出,旨在替代旧的PCI/PCI-X和AGP总线标准。但是,PCIe在软件层面上是兼容PCI的。

PCIe使用双向连接的方式,可以在同一时间进行收发操作。这种模型称为双单工连接,因为每个接口都有一个单工发送和单工接收的路径,如下图所示。因为数据流可以同时双向传输,因此两个设备间的通信是全双工的。

在这里插入图片描述

Lane 和 Link

PCIe 的一条 lane由 两对差分线(TX和RX)组成,一个 link由多条 lane组成。PCIe的 link 宽度支持x1, x2, x4, x8, x12, x16, x32。

在这里插入图片描述

RC 和 RP

PCIe RC(Root Complex)是PCIe树的根节点,一个RC 可以包括多个 RP(Root Port),例如一个16 条 lane的PCIe RC 可以包括4个RP(4个x4的),或者8个RP(8个x2的)等等。
在这里插入图片描述

PCIe controller

首先,PCIe分为 控制器(controller)PHY两部分,控制器是数字电路,PHY 包含 PCSPMA 两部分,PMA 是模拟电路。

  • 控制器主要负责 pcie 协议包处理;
  • phy 主要负责数据编码串行化高速传输

国内应该有公司做出相应的phy芯片(例如芯动科技、牛芯半导体),毕竟常见的pcie 3.0才8 Gbps的速率,最新的6.0才64Gbps。整体设计较为复杂,一般可向IP厂商定制设计。’

在这里插入图片描述

PCIE Controller

控制器逻辑包含了 IP 的 host 设计,以及 PCIe 协议中所规定的事务层、数据链路层、物理层实现逻辑,通常包含如下模块:

  • reset 逻辑:通常会设置复位逻辑,通过总复位控制子复位;
  • debug 逻辑:监测IP状态,供设计人员debug用;
  • msg 处理逻辑:IP的某些信号由message处理,有CPU内核来处理;
  • 子系统配置处理逻辑;
  • 错误处理逻辑:查找寄存器,并记录,产生中断;
  • MSI 逻辑:对地址,数据通道进行监测;
  • 中断逻辑:IP中某些中断可以合并;
PHY模块

PHY 模块用于连接协议层和链路,包含了驱动锁相环串转并、并转串等所有与接口操作相关的所有电路。

  • PHY控制逻辑:直通PHY模块的寄存器配置和控制;
  • DFT:IP中会提供专门用于DFT的引脚。

从PCIe协议来讲,物理层分为逻辑子模块物理子模块。其中:
逻辑子模块又分为媒介访问层(MAC)和物理编码子层(PCS);PMA层包含串行器/解串器(SerDes)和其他模拟电路;

  • PCIE Serdes
    SerDes(Serializer-Deserializer)是串行器和解串器的简称,串行器(Serializer)也称为SerDes发送端(Tx),(Deserializer)也称为接收端Rx。SerDes 的主要构成可以分为三部分,PLL模块,发送模块Tx,接收模块Rx。

Inbound 和 Outbound

PCIe的inbound和outbound是对CPU而言的,outbound指从CPU到设备方向,inbound指从设备到CPU方向。

PCIe transaction model

PCIe有三种transaction model,分别是PIO、DMA和P2P。

PIO

PIO即Programmed I/O,可编程输入输出。在该模式下,数据传送由CPU执行I/O端口指令来按照字节或更大的数据单位来处理,占用大量的CPU资源,数据传输速度也大大低于DMA模式。

在这里插入图片描述

DMA

DMA即Direct Memory Access,直接内存访问。在该模式下,数据传送不是由CPU负责处理,而是由一个特殊的处理器DMA控制器来完成,因此占用极少的CPU资源。

在这里插入图片描述

P2P

P2P即Peer-to-Peer,是指一个endpoint发送packet给另一个endpoint。P2P路由在Switch中是必需的,但对于RC来说是可选的。

在这里插入图片描述

推荐阅读
https://mp.weixin.qq.com/s/1bGESIN3q8ZcqqGRiRVgvg
https://www.zhihu.com/question/525350571/answer/2598101335
https://blog.csdn.net/qq_39815222/article/details/128728334

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词