0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

PCIe速率解析与硬件设计

FPGA设计论坛 来源:FPGA设计论坛 2026-04-29 14:24 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

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 协议及管脚确认

2.1CPU或AI处理器的pcie硬件管脚

对于CPU或AI处理器手册中会明确描述所支持的pcie接口及管脚,如RK3588中对pcie接口的描述见下图所示,因此对于CPU或AI处理器的pcie硬件设计时只需看此数据手册即可,比较简单;

0060fc72-3fa3-11f1-90a1-92fbcf53809c.png

00bd9784-3fa3-11f1-90a1-92fbcf53809c.png

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请查看对应的手册,能选择用硬核建议使用硬核资源。

3.PCIE交流耦合电容的选择

PCIE协议推荐的耦合电容范围如下:

011dbaec-3fa3-11f1-90a1-92fbcf53809c.png

对于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拓扑结构如下图所示:

0176b12e-3fa3-11f1-90a1-92fbcf53809c.png

4.1常用术语

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

0212f87c-3fa3-11f1-90a1-92fbcf53809c.png

TLP:“事务包(TLP,Transaction Layer Packet)”;

4.2协议分层

三层:

026941aa-3fa3-11f1-90a1-92fbcf53809c.png

TransactionLayer(事务层):定义包的内容;作用:“决定传什么?传给谁”

Data Link Layer(数据链路层):传输包;作用:“确保传对,传完整”;

Physical Layer(物理层):信号编码,电信号传递;作用“把数据变为电信号/光信号”;

包在各层次封装的图示:

02c2310c-3fa3-11f1-90a1-92fbcf53809c.png

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相关参数(均衡、加重、摆幅等相关参数)。若想了解均衡、加重、摆幅对眼图的影响可查询相关文章或测试说明。

031d9e2a-3fa3-11f1-90a1-92fbcf53809c.png

PCIe眼图测试

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 交换机
    +关注

    关注

    23

    文章

    2936

    浏览量

    104892
  • 总线
    +关注

    关注

    10

    文章

    3061

    浏览量

    91878
  • PCIe
    +关注

    关注

    16

    文章

    1482

    浏览量

    88942

原文标题:PCIe速率解析与硬件设计

文章出处:【微信号:gh_9d70b445f494,微信公众号:FPGA设计论坛】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    硬件的单元测试:PCIe 3.0测试

    PCIe标准自从推出以来,1代和2代标准已经在PC和Server上逐渐普及,用于满足高速显卡、高速存储设备对于高速数据传输的要求。出于支持更高总线数据吞吐率的目的,PCI-SIG组织在2010年制定了PCIe 3.0,即PCIe
    的头像 发表于 02-13 15:01 1.1w次阅读
    <b class='flag-5'>硬件</b>的单元测试:<b class='flag-5'>PCIe</b> 3.0测试

    PCIe 7.0最终版草案发布,传输速率128 GT/s,PCIe 6.0加速商业化

    PCIe 7.0最终版草案发布,传输速率128 GT/s,PCIe 6.0加速商业化   电子发烧友网综合报道,近日,PCI-SIG 组织公布了 PCI Express 7.0 规范的0.9 版草案
    发表于 03-29 00:07 1237次阅读

    PCIe 8.0 规范公布:1TB/s 带宽、256GT/s 速率

    将使速率PCIe 7.0 的基础上翻倍至 256.0 GT/s,通过 x16 配置实现 1TB/s 的双向带宽。   从 PCI-SIG 目前公布的细节来看,PCIe 8.0 首先实现了速度的提升
    的头像 发表于 08-08 09:14 7892次阅读

    PCIe协议分析仪在数据中心中有何作用?

    PCIe协议分析仪在数据中心中扮演着至关重要的角色,它通过深度解析PCIe总线的物理层、链路层、事务层及应用层协议,帮助运维人员、硬件工程师和系统架构师优化性能、诊断故障、验证设计合规
    发表于 07-29 15:02

    请问GEN1 PCIE最高可配置2.5Gbps,这里说的最高传输速率是根据PCIE的协议制定的吗?

    传输速率是根据PCIE的协议制定的吗?2.如果我设置的速率超过5.0Gbps可以吗?是否会出现数据的传输错误等现象?3.不太理解PCIE中关于x1和x2的含义,文档说
    发表于 06-19 04:36

    基于Xilinx XCKU115的半高PCIe x8 硬件加速卡解决方案

    散热。六、应用领域FPGA硬件加速。七、接口测试软件DDR4 数据速率2400Mb/s IP测试。PCIe 3.0 x8 IP测试。程序加载测试。北京太速科技有限公司在线客服:QQ:448468544公司网站:www.oriha
    发表于 07-27 16:49

    基于Xilinx XCKU115的半高PCIe x8硬件加速卡

    。 纹波:≤10%。 五、散热系统 采用无风扇被动式散热。 六、应用领域 FPGA硬件加速。 七、接口测试软件DDR4 数据速率2400Mb/s IP测试。 PCIe 3.0 x8 IP测试。 程序加载测试。
    发表于 08-22 17:31

    XCKU115板卡资料:1-基于Xilinx XCKU115的半高PCIe x8 硬件加速卡

    %。 五、散热系统 采用无风扇被动式散热。 六、应用领域 FPGA硬件加速。 七、接口测试软件DDR4 数据速率2400Mb/s IP测试。 PCIe 3.0 x8 IP测试。 程序加载测试。
    发表于 10-25 16:00

    如何提高PCIe数据速率

    如何提高PCIe数据速率
    发表于 05-20 06:17

    SIM7100-PCIE4G模块PCIE封装硬件资料

    本文档内容介绍了基于SIM7100-PCIE4G模块PCIE封装硬件资料,供参考
    发表于 03-15 11:26 137次下载

    XILINX FPGA的硬件设计总结之PCIE硬件设计避坑指南

    随着FPGA的不断发展,FPGA本身自带的PCIE硬核的数量越来越多,本文以ZU11EG为例介绍,如何进行对应的硬件引脚分配。 设计目标:ZU11EG FFVC1760封装,挂载4组NVME,接口为
    的头像 发表于 06-27 11:20 7758次阅读
    XILINX FPGA的<b class='flag-5'>硬件</b>设计总结之<b class='flag-5'>PCIE</b><b class='flag-5'>硬件</b>设计避坑指南

    PCIe传输速率和有效带宽计算方式

    受委托让我整理一个关于PCIe的主题分享文章,半月有余实在没办法交差,首先,我自己本身,对PCIe并没有做到胸有成竹,我的PCIe知识也只是停留在理论阶段,我并没有实际做过任何有关PCIe
    发表于 11-28 10:25 9048次阅读

    pcie4.0和pcie3.0接口兼容吗

    (Peripheral Component Interconnect Express)是一种高速串行总线,用于计算机硬件设备之间的数据传输。PCIe 4.0和PCIe 3.0是PCIe
    的头像 发表于 07-10 10:12 1.7w次阅读

    pcie 4.0与pcie 5.0的区别

    随着数据传输需求的日益增长,计算机硬件接口也在不断进化。PCIe(Peripheral Component Interconnect Express)作为连接计算机内部组件的高速串行总线标准,已经
    的头像 发表于 11-13 10:35 2.1w次阅读

    PCIe 4.0与3.0的区别 PCIe设备的故障排除方法

    规范的第四代,而PCIe 3.0是第三代。它们之间的主要区别如下: 带宽与速率PCIe 4.0提供了高达16 GT/s(千兆传输率/秒)的双向吞吐量,这意味着其理论最大带宽为32 GB/s(千兆
    的头像 发表于 11-26 15:12 1.2w次阅读