Arria 10 Avalon-MM DMA接口PCIe解决方案用户指南

ID 683425
日期 10/31/2016
Public
文档目录

7.3. 物理层

物理层是PCI Express协议栈的最底层。也是最接近串行链路的分层。它编码并跨链路发送数据包,还接受和解码收到的数据包。物理层利用运行在2.5 Gbps的高速SERDES接口连接到链路用于Gen1实现,2.5或5.0 Gbps用于Gen2实现,以及2.5,5.0或8.0 Gbps用于Gen3实现。

物理层负责以下操作:

  • 训练链路
  • 加扰/去扰和8B/10B编码/解码用于2.5 Gbps (Gen1),5.0 Gbps(Gen2),或者8.0 Gbps (Gen3)每lane的128b/130b编码和解码
  • 串化和解串数据
  • 均衡(Gen3)
  • 操作PIPE 3.0接口
  • 实现自动速率协商(Gen2和Gen3)
  • 发送和解码训练序列
  • 提供硬件自主速率控制
  • 实现lane自动倒转

物理层被PIPE接口规范细分为两个分层(上图中水平加括):

  • PHYMAC—MAC层包括LTSSM和加扰/解扰字节重排序,和多通道去偏差功能。
  • PHY层—PHY层包含用于Gen1和Gen2的8B/10B编码和解码功能。还包含用于Gen3的128b/130b编码和解码功能。PHY也包含弹性缓冲和串化/解串(serialization/deserialization)功能。
物理层集成了数字和模拟两种元件。Intel设计的PIPE接口把MAC从PHY中分离出来。Arria 10Hard IP for PCI Express符合PIPE接口规范。
注: 内部PIPE接口用于仿真时为可见。但不可用于调试使用逻辑分析器,(如, SignalTap® II)的硬件。如果您尝试把 SignalTap® II 连接到该接口,将导致无法编译您的设计。
图 37. 物理层体系结构

PHYMAC块由4个主要子块组成:

  • MAC Lane—MAC Lane—RX和TX路径都使用此块。
    • – 在RX侧,此块解码物理层数据包,并向LTSSM报告所收到TS1/TS2有序集的类型和数量。
    • – 在TX侧,此块复用来自DLL的数据和有序集以及SKP子块(LTSTX)。它还添加lane的详细信息,包括初始化期间LTSSM禁用lane时的lane数和force PAD值。
  • LTSSM—此块实现LTSSM以及追踪TX和RX在各条lane上训练序列的逻辑。
  • 关于传输,它通过置位全局和每通道控制位与每个MAC lane子块和LTSTX子块互动从而生成指定物理层数据包。
    • – 在接收路径上,它接收由每个MAC lane子块报告的物理层数据包。它还使能多通道去偏差块。该块向更高分层报告物理层的状态。
    • – LTSTX(有序集和SKP生成)—该子集生成物理层数据包。它接收来自LTSSM块的控制信号并为每条lane生成物理层数据包。它为所有lane和用于TS1/TS2域中相应链路或lane数的PAD符生成相同的物理层数据包。该块还通过置位预定义PIPE信号及等待其结果来处理PCS子层的接收器检测操作。它也在每个预定义时间段生成SKP有序集并与TX对齐块互动以防止在数据包中间插入SKP有序集。
    • – Deskew(去偏差)—该子块执行多通道去偏差功能以及已初始化lane与数据路径间的RX对齐。多通道去偏差实现一个8-word FIFO缓冲器用于各lane储存符号。每个符号包括8个数据位,1个差异位,和一个控制位。FIFO丢弃FTS,COM,和SKP符,并以D0.0数据取代PAD和IDL。当全部8个FIFO都包含数据,就出现一次读取。 当多通道去偏差被首先使能时,在检测到第一个COM后每个FIFO就开始写。如果7个时钟周期后所有lane都没有检测到COM符,lane就被复位再同步程序重新启动,否则RX对齐功能再创建64-bit数据发送至DLL。