1.PCIE相关速率说明
PCIE对应的总线速率:
PCIE7.0:128Gbps(已正式发布其规范),
PCIE6.0:64Gbps,
PCIE5.0:32Gbps,
PCIE4.0:16Gbps,
PCIE4.0:16Gbps,
PCIE3.0:8Gbps,
PCIE2.0:5Gbps,
PCIE1.0:2.5Gbps。
由于应用领域不同其所需总线速率也不同,目前接触到的设计,pcie 3.0局多,主要是CPU与交换机之间通信,或CPU与FPGA之间的通信。
2.芯片所支持的pcie 协议及管脚确认
对于CPU或AI处理器手册中会明确描述所支持的pcie接口及管脚,如RK3588中对pcie接口的描述见下图所示,因此对于CPU或AI处理器的pcie硬件设计时只需看此数据手册即可,比较简单;


2.2xilinx 7系列FPGA PCIE硬核资源查看
对于FPGA来说pcie所用的是GT资源,若使用PCIe硬核需要使用其硬核对用的管脚才可以,否则就要专门使用软核进行开发,有硬核资源的情况下建议优先使用硬核资源,如何查看FPGA对应的pcie硬核管脚需要按照以下步骤进行。
1、对于7系列FPGA来说先查看手册PG023,
2、确定位置后再根据手册UG476查看对应的硬件引脚,即可确定PCIe的硬核管脚:
汇总:A7/K7/Z7仅支持1个PCIe2.0(5Gbps)硬核,V7最大支持3个PCIe 3.0(8Gbps)硬核。对应X4的在前一BANK。PCIE lane序号和GTX标号需要确认清楚。
注意:使用不同系列的FPGA请查看对应的手册,能选择用硬核建议使用硬核资源。
PCIE协议推荐的耦合电容范围如下:

对于pcie1.0和pcie2.0常用的交流耦合电容选用0.1uf,对于pcie3.0常用的交流耦合电容选用0.22uf,正常来说速率越高需要的耦合电容容值越小才对,但为什么这里会是反的,主要是考虑PCIE的执行编码方式8b/10b,此编码方式是为了DC平衡,综合考虑才选择的0.22uf。
另外,较小的封装尺寸可减小寄生效应和引入的阻抗不连续,对于PCIe 4.0和PCIe 5.0,0201尺寸的电容通常比0402尺寸更受推荐,如Intel的PCIe 4.0耦合电容通用设计规则中就提到虽0402尺寸是可以接受的,但0201尺寸电容更推荐使用。
4.PCIE协议
PCIe拓扑结构如下图所示:

4.1常用术语
Link:两设备间通过1对或多对差分线连接,形成的数据通道。

TLP:“事务包(TLP,Transaction Layer Packet)”;
4.2协议分层
三层:

TransactionLayer(事务层):定义包的内容;作用:“决定传什么?传给谁”
Data Link Layer(数据链路层):传输包;作用:“确保传对,传完整”;
Physical Layer(物理层):信号编码,电信号传递;作用“把数据变为电信号/光信号”;
包在各层次封装的图示:

4.3协议分层协作流程:
为更直观理解三层如何配合,以“CPU读取PCIe SSD中的文件”为例,看数据的完整传输路径:
1、事务层(SSD端):
SSD接收CPU的“读数据请求”,事务层将“要读取的文件数据”+“CPU的目标内存地址”+“读指令”打包成TLP,传给数据链路层。
2、数据链路层(SSD端):
给TLP添加“链路控制头”和“CRC校验码”,打包成DLLP,同时记录“已发送的DLLP”(用于重传),传给物理层。
3、物理层(SSD端):
将DLLP的二进制数据编码成“高低电平信号”,通过PCIe x4通道(假设SSD用x4)的铜线传输到主板。
4、物理层(主板/ CPU端):
接收电信号,解码成二进制的DLLP,传给数据链路层。
5、数据链路层(主板/ CPU端):
用CRC码校验DLLP是否完好,若完好则回复“ACK”给SSD,同时去掉“链路控制头和CRC码”,还原出TLP,传给事务层。
6、事务层(主板/ CPU端):
解析TLP中的“目标内存地址”和“数据”,将文件数据写入CPU指定的内存地址,完成一次数据传输。
5.PCIE的硬件测试
对于这些高速信号,需要使用高速差分示波器进行测试,常用的示波器厂家有kesight和泰克,建议选择信号速率为2倍速率以上的仪器进行测试,防止示波器带宽不足,出现测试失真情况,影响对信号质量的判定。测试眼图如下图所示,若测试信号眼图质量较差,可通过调节CPU或FPGA的PCIE相关参数(均衡、加重、摆幅等相关参数)。若想了解均衡、加重、摆幅对眼图的影响可查询相关文章或测试说明。

PCIe眼图测试
-
交换机
+关注
关注
23文章
2936浏览量
104892 -
总线
+关注
关注
10文章
3061浏览量
91878 -
PCIe
+关注
关注
16文章
1482浏览量
88942
原文标题:PCIe速率解析与硬件设计
文章出处:【微信号:gh_9d70b445f494,微信公众号:FPGA设计论坛】欢迎添加关注!文章转载请注明出处。
发布评论请先 登录
硬件的单元测试:PCIe 3.0测试
PCIe 7.0最终版草案发布,传输速率128 GT/s,PCIe 6.0加速商业化
PCIe 8.0 规范公布:1TB/s 带宽、256GT/s 速率
PCIe协议分析仪在数据中心中有何作用?
请问GEN1 PCIE最高可配置2.5Gbps,这里说的最高传输速率是根据PCIE的协议制定的吗?
基于Xilinx XCKU115的半高PCIe x8 硬件加速卡解决方案
基于Xilinx XCKU115的半高PCIe x8硬件加速卡
XCKU115板卡资料:1-基于Xilinx XCKU115的半高PCIe x8 硬件加速卡
XILINX FPGA的硬件设计总结之PCIE硬件设计避坑指南
PCIe速率解析与硬件设计
评论