PCIe简单介绍

参考书籍《Xilinx FPGA高速串行传输技术与应用》

编著 黄万伟

出版社 电子工业出版社
仅供学习交流所用

PCIe优势

  • 采用点对点的互联技术。为每一个设备单独分配共享的通道带宽,保证了多设备的带宽资源,大幅度提高了数据的传输速率。
  • 采用双通道技术。在传输模式上,PCI-Express采用与全双工通信技术类似的双通道传输模式,在速度方面,PCI-Express v1.0a 为每个通道提供了2.5Gb/s的传输速率。
  • 扩展灵活。PCI-Express总线可以延伸到系统之外,采用专用线缆将各种外设直接与系统内部的PCI-Express连接到一起。
  • 支持热插拔和热交换。
  • 另外还具有如软件层与PCI兼容、先进错误报告、链路级数据完整性等技术优势。

PCIe各版本传输速度

版本数据原始传输速率数据传输速率编码方式
PCIe 1.02.5GT/s8GB/s8b/10b
PCIe 2.05GT/s16GB/s8b/10b
PCIe 3.08GT/s32GB/s128b/130b
PCIe 4.016GT/s64GB/s128b/130b

PCIe协议分层模型

PCIe协议是多层协议,由事物层、数据链路层、物理层组成。

物理层分为逻辑子层核电气子层。
逻辑子层又分为物理代码子层(PCS)和介质接入控制子层(MAC)。

  • 事物层

    主要负责事物层包(TLP)的封装和解封装。TLP包用于事物的交互,如读、写和特定类型的事件。事物层也负责管理TLP包基于信用的流控和软硬件能耗管理。

  • 数据链路层

    数据链路层作为事物层和物理层的中间层,主要负责链路管理和保证数据的完整性,包括错误检测和数据恢复。
    发送端的数据链路层接收事物层发来的TLP包,计算数据保护吗和TLP序列号并加到TLP上,然后提交给物理层进行传输。接收端的数据链路层检查接收到的TLP的数据完整性,然后提交给事物层进行进一步处理。当检测到TLP错误时,数据链路层发出重传请求。
    数据链路层也产生和消费包用于链路管理。为了与事物层的TLP相区分,使用数据链路层包(DLLP)术语指代数据链路层产生和消费的包。

  • 物理层

    物理层包括所有的接口操作电路,如驱动和缓冲区、并/串转换和串/并转换、PLL和阻抗匹配电路,也包括与接口初始化和维护相关的逻辑功能。
    物理层主要负责将从数据链路层收到的信息转换成合适的串行格式,并以特定的频率和宽度通过PCIe链路传输。

数据包格式示意图:帧信息 | 序列号 | 事物层头 | 数据 | ECRC | LCRC | 帧信息

PCIe的三个协议层(事物层、数据链路层和物理层)在数据传输中的作用,数据流从一个设备的事物层发起,经过数据链路层到物理层的总线接口设备,然后通过相应的PCIe数据电缆传输到另一个设备的物理层设备,经过另一个设备的数据链路层再传输到事物层进行处理,每一层都代表一个协议栈。

PCIe物理接口

PCIe物理接口包括数据线,控制线,电源线和复位线。

  • 数据线

    与PCI总线使用的单端信号不同,PCIe链路使用差分信号进行数据传递,链路的最大宽度是x32,但在实际使用中,一般处理器系统最多提供x16的PCIe插槽,并使用PETp0~PETp15、PETn0~PETn15和PERp0~PERp15、PERn0~PERn15共64根数据信号线组成32对差分信号进行数据传输,其中16对PETxx信号用于发送数据,另外16对PERxx信号用于接收数据。

  • 控制线

    当PCIe设备进入休眠状态,主电源Vcc已经停止供电时,PCIe设备可以通过WAKE#信号向处理器系统提交设备唤醒请求,使处理器系统重新为PCIe设备提供主电源Vcc。
    由此可见,产生该信号的硬件逻辑必须由辅助电源Vaux供电。在PCIe总线中,WAKE#信号是可选的,因此使用WAKE#信号唤醒PCIe设备的机制也是可选的。当某个设备需要被唤醒时,该设备首先将WAKE#信号置位,然后经过一段时延后,处理器系统开始位该设备提供主电源Vcc,并使用PERST#信号对该设备进行复位操作。此时WAKE#信号时钟保持为低,当Vcc上电完成后,PERST#信号也将置位为无效并结束复位,WAKE#信号也将随之置为无效,结束整个唤醒过程。

  • 电源线

    PCIe设备使用两种电源信号供电,分别是Vcc和Vaux,额定电压均是3.3V。其中Vcc为主电源,PCIe设备的主要逻辑模块均使用Vcc供电,Vaux是辅助电源,另外一些与电源管理相关的逻辑及一些特殊的的寄存器使用Vaux供电,这样即使Vcc被移除,与电源管理相关的逻辑状态及特殊的寄存器内容也不会发生改变,从而保证Vcc恢复后,设备可以很快地恢复到正常工作状态。

  • 复位线

    PERST#信号为全局复位信号,处理器系统需要为PCIe插槽和PCIe设备提供该复位信号。PCIe设备使用该信号复位内部逻辑。当该信号有效时,PCIe设备将进行复位操作。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值