admin 管理员组

文章数量: 1086019


2024年4月28日发(作者:localdate转换为localdatetime)

1. PCIE说明

PCIE协议定义了多种设备:根复合体(Root Complex),交换器(Switch),端点(Endpoingt),

断就(Port),PCIE到PCI/PCI-X的桥(Bridge)等。根复合体是将CPU和主存储器连接到PCIE

线路结构上的设备,能带包CPI启动PCIE事务和访问主存储器;交换器可以将任务由一个端

口路由到另一个端口,在系统中用于多设备的互联,具体的路由方法包括ID路由,地址路由,

隐含路由;Endpoint是指一个世纪的设备(请求者或完成者);port是设备与链路的接口;Bridge

则是用来实现PCIE设备与PCI/PCI-X设备之间的连接,实现两种不同协议之间的相互转换。

PCIE核在多种模式中使用包来互换信息。包是在事务和数据链层中形成来从发送端到接

收端的信息传递。必要的信息被添加到传输的包中。在接收结束,接收单元的每一层处理接收

到的包,提取相关的信息并发送包到下一层。接收到的包是从他们物理层发送到数据链层和事

务层的。

PCIe 规范对于设备的设计采用分层的结构,有事务层、数据链路层和物理层组成,各层

有都分为发送和接收两功能块。

PCIe的事务层是协议的最上层,其主要功能是根据应用层提供的信息生成相应的请求包

传递给数据链路层,并且处理由数据链路层发来的包,将其转换成应用层能识别的信息,协助

数据链路层完成信用管理,实现协议规定的配置事务,IO事务,存储事务和消息事务。

在设备的发送部分,首先根据来自设备核和应用程序的信息,在事务层形成事务层包

(TLP),储存在发送缓冲器里,等待推向下层;在数据链路层,在TLP 包上再串接一些附加

信息,这些信息是对方接收TLP 包时进行错误检查要用到的;在物理层,对TLP 包进行编码,

占用链路中的可用通道,从查封发送器发送出去。

设备核A

设备核A

HDRDataDig

事务层

事务层

HDRDataDig

SeqHDRDataDigLCRC

数据链路层

数据链路层

SeqHDRDataDigLCRC

STPSeqHDRDataDigLCRCEnd

物理层

RxTxRx

物理层

Tx

STPSeqHDRDataDigLCRCEnd

事务层包(TLP),数据链路层包(DLLP),物理层(PLP)产生于各自所在层,最后通过

电或光等介质和另一方通讯。这其中数据链路层包(DLLP),物理层(PLP)的包平常不需要

关心,在 IP核中封装好了。在 FPGA上做 PCIe的功能,变成完成事务层包(TLP)的处理。

待移动数据的PCI-Express协议的请求均由主CPU发出。

 当CPU向存储器映射输入/输出(MMIO)地址存储器发出命令时,数据向下游移动。

Root Complex通常会生成一个具有对应MMIO位置地址、字节使能和寄存器内容的

存储器写TLP。Endpoint接收存储器写TLP更新响应的本地寄存器后事务即终止。

 当CPU发出从MMIO地址加载寄存器的命令时,数据向上游移动。Root Complex通

常会生成一个具有响应MMIO位置地址和字节使能的存储器读TLP。Endpoint在收到

存储器读TLP后会生成带数据完成型TLP。完成包传送到Root Complex,有效载荷

加载至目标寄存器后事务即完成。

2. PICE核接口

2.1系统接口

表1 系统信号

信号名

Sys_rst_n

Sys_clk

方向

Input

Output

定义

异步信号。sys_rst_n在上电和热复位操作期间,必须

被断言至少1500ns

参考时钟:可选频率为100MHZ,125MHZ或者

500MHZ

2.2 PCIE接口

PCIE接口由不同的发送(对)和接收(对)所构成的多线程组成。一个PCIE线由一对发

送差分信号(pci_exp_txp, pci_exp_txn)和一对接收差分信号(pci_exp_rxp, pci_exp_rxn)组成。

单线的只支持0线,双线只支持01线,四线支持0-3线,八线支持0-7线。下表2定义了4

线核的发送和接收信号。(只给了一线的信号)

表2 PCIE接收和发送信号

线

0

0

0

0

1

1

信号名字

pci_exp_txp0

pci_exp_txn0

pci_exp_rxp0

pci_exp_rxn0

pci_exp_txp1

pci_exp_txn1

方向

Output

Output

Input

Input

Output

Output

定义

PCIE发送正:串行差分输出

PCIE发送负: 串行差分输出

PCIE接收正:串行差分输入

PCIE接收负:串行差分输入

PCIE发送正:串行差分输出

PCIE发送负: 串行差分输出


本文标签: 事务 设备 信息 接收 数据