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

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

3天内不再提示

通过PCI Express桥接优化PCI读取性能

星星科技指导员 来源:嵌入式计算设计 作者:Craig Downing 2022-06-14 16:58 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

PCI Express (PCIe) 现在是 PC 芯片组和嵌入式处理器上普遍存在的互连标准。尽管使用桥接器可以为现有 PCI 设备提供一种经济高效的 PCIe 升级路径,但由此产生的 PCI 读取会产生额外的延迟,从而严重影响系统性能。Craig 探讨了实施 PCIe 桥接器如何解决由 PCI 读取引起的性能问题。

虽然 PCIe 正在取代原来的 PCI 总线标准,但许多外围设备和设备(例如 FPGA 和 I/O 模块)仍在使用 PCI。没有集成 PCIe 接口的组件需要从 PCI 总线到 PCIe 的桥接器。两个需要桥接的应用示例包括一个 PCIe 附加处理器卡,它使用基于 PCI 的 DSP 进行通信应用,以及一个嵌入式视频录像机,它使用带有 PCI 的 I/O 设备连接到带有 PCIe 端口的嵌入式处理器。

在这些系统和其他系统中,添加总线桥会带来设计挑战。性能通常取决于网桥的 PCI 读取性能。由于旧 PCI 协议的限制,一旦引入网桥,就会出现性能问题。使用市售的总线桥可以消除这些问题,从而最大限度地提高系统性能。

PCI 设备的繁重读取负担

PCI 总线上的设备通常严重依赖于从主机处理器读取大量数据。PCI I/O 设备通常控制系统中的数据移动,并启动对主机内存的读取和写入周期。例如,主机处理器可能通过写入外设上的寄存器来组织和协调数据移动,以在外设中设置 DMA 传输,但它会将自己从数据移动中移除以专注于其他任务。然后外围设备将读取或写入数据以服务于 DMA请求。在其他时候,处理器可能会读取状态信息并写入寄存器以进行控制。这种流量通常不涉及高带宽或显着有助于整体系统性能。

在处理器附加卡的情况下,它的 DSP 必须从主机 PC 内存中读取数据以进行数据处理或压缩任务。同样,诸如安全 DVR 之类的嵌入式处理系统将捕获和压缩将通过磁盘控制器写入磁盘存储的视频。 磁盘控制器通过PCI 总线从主机的内存中读取数据来实现这一点。

从 PCI 外设到桥接器的写入通常发布在内部写缓冲区中,以克服桥接器带来的固有性能损失。然而,PCI 读取会带来一些问题,因为 PCIe 桥必须重试外围设备,直到它从主机的内存中获得请求的数据。这通常涉及尝试读取许多小的 PCIe 数据包,从而增加延迟。

虽然 PCI-X 协议通过拆分事务绕过了这个问题,但传统的 PCI 协议并没有实现这个特性。 此外,一些 PCI 设备被设计为在接收到一到两条高速缓存行数据后自动释放总线,这加剧了 PCI 读取的性能挑战。

以 DSP 处理器卡应用为例。这个特殊的 DSP 使用 32 位 PCI 接口。与许多 PCI 设备一样,它会在释放 PCI 总线之前读取一到两条高速缓存行数据。在这种情况下,高速缓存行由 16 到 128 个字节组成,具体取决于系统设计和设备功能。

该卡将读取大量原始数据进行处理,例如在电信应用程序中处理的音频比特流。在DSP 直接通过 PCI 总线与主机处理器通信的传统系统中,读取性能将比添加桥之后更好,因为每个事务都有额外的延迟。

桥接引起的性能恶化

引入 PCIe 桥接器可能会对性能造成重大影响。这种读取性能下降可能通过以下过程发生(图 1):

1.DSP 将启动从 PC 主存储器的读取。网桥将锁定事务并继续重试,直到网桥接收到数据。

2.网桥将从内存中预取数据并将其存储在内部缓冲区中。

3.DSP 将读取一部分数据(一个或两个高速缓存行),然后断开连接,释放 PCI 总线。

4.一旦断开连接,网桥将丢弃其缓冲区中的所有剩余数据。随着DSP 启动下一次读取,桥将需要再次获取数据,重试直到数据可供 DSP 使用。

图1

poYBAGKoTcOAfrpcAABa8Rc6nXw141.jpg

在此示例中,步骤 4 在读取事务之间引入了显着延迟,这极大地影响了读取性能。 因此,与直接使用 PCI 总线相比,使用 PCIe 桥对读取性能的影响会大大降低系统性能。

考虑另一种使用嵌入式 DVR 的常见情况。在这种情况下,系统必须将压缩视频数据的连续流写入磁盘以供存储和以后检索或分析。在这个系统中,一个或多个SATA 磁盘控制器将从系统的主存储器中读取视频数据,以存储在附加的磁盘阵列中。这些类型的系统可能包含额外的外围设备,例如共享 PCI 总线的以太网控制器。

与前面的示例一样,嵌入式 DVR 中的总线效率受到连续数据读取、总线断开以及多次重试和预取的严重影响,如图 2 所示。

图 2: DVR 系统中的 PCI 总线利用率

pYYBAGKoTcSARCZDAABo28Ga4ZA147.jpg

正如

指示正在读取数据的位置的 PCI_TRDYn(PCI 目标就绪)跟踪所证明的那样,第一次读取(步骤 3)和下一次读取(步骤 6)之间存在很大差距。这意味着将视频数据写入磁盘的最大速度显着降低,从而限制了系统性能。在这种情况下,最大限度地提高视频数据的写入速度对于最终产品至关重要,因为它能够存储监控所需的尽可能多的高质量视频通道。

解决问题:短期缓存

Tundra 的 PCIe 桥接器(Tsi381、Tsi382 和 Tsi384)集成了一种称为短期缓存 (STC)的功能,以帮助克服这一性能挑战。STC允许在初始 PCI 读取周期期间从连接的 PCIe 设备中预取数据,并临时存储在桥接器中,以便在后续读取周期期间快速周转。当请求的设备停止事务时,将在后续读取中读取的数据不会立即丢弃。

与最初的桥接情况相比,STC 对性能的影响可能是巨大的。以前面的嵌入式 DVR 为例,但系统中添加了 Tsi381 桥接器。通过启用 STC,后续读取不会因为它们保留在缓存中而延迟。此外,桥接器不必在第一次读取后从内存中重新读取数据,从而确保有效地使用总线(参见图 3)。

图 3:使用 Tsi381 和短期缓存的嵌入式 DVR 系统

poYBAGKoTcWAYpg3AABsQe1vmoU965.jpg

为了演示性能差异,请比较启用 STC 之前和之后的 PCI 总线时序(参见图 4)。在这个系统对每个设备执行 32 位读取的示例中,两个设备可以在没有 STC的情况下仅执行两次读取的同一时间段内执行七次读取。 因此,使用 STC可以将整体系统吞吐量提高三倍以上。对于具有执行此类读取的单个设备的系统,改进将更大。

图 4:启用短期缓存之前和之后的 PCI 总线时序

pYYBAGKoTcaASNOxAAA6E0fwZlk947.jpg

PCIe 桥接器允许开发人员通过调整以下参数来进一步修改系统:

数据保存在缓存中的时间。这允许设计人员确保陈旧数据一旦陈旧就被丢弃和预取。

PCI 读取预取长度。理想情况下,桥接器预取的数据不应超过 PCI 外设通常需要的数据,因此设计人员可以根据预期的典型传输长度设置此参数。

根据系统设计和设备行为,设计人员可以 通过调整预取长度和短期缓存丢弃定时器来提高整体性能或关键功能的性能。

桥接选项有助于消除瓶颈

使用 PCIe 桥接器将设计从 PCI 迁移到PCIe 的设计人员面临着相当大的设计挑战。PCI 外围设备启动的读取会引入额外的延迟,这对 整体系统性能有很大贡献。

Tundra 的 Tsi381 等 PCIe 桥接器为设计人员提供了调整桥接器的选项,从而提供最佳系统性能。使用 STC,这些桥接器可以轻松消除与 PCI 读取相关的性能瓶颈。

审核编辑:郭婷

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

    关注

    5

    文章

    685

    浏览量

    133673
  • 定时器
    +关注

    关注

    23

    文章

    3360

    浏览量

    121728
  • PCIe
    +关注

    关注

    16

    文章

    1420

    浏览量

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

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    DERA D8000系列顺利通过PCI SIG认证,开启高性能计算新篇章

    北京2025年10月29日 /美通社/ -- 近日,北京得瑞领新科技有限公司(以下简称"得瑞领新")旗舰产品PCIe 5.0企业级NVMe SSD D8000系列正式通过
    的头像 发表于 10-29 17:18 92次阅读
    DERA D8000系列顺利<b class='flag-5'>通过</b><b class='flag-5'>PCI</b> SIG认证,开启高<b class='flag-5'>性能</b>计算新篇章

    简仪科技推出PXIe-3171 PXI Express嵌入式控制器

    PXIe-3171配备集成的PCI Express交换机,支持四个x4或两个x8的PXI Express配置,通过PCI
    的头像 发表于 07-17 11:38 806次阅读

    MAX4888/MAX4889 2.5Gbps PCI Express无源开关技术手册

    MAX4888/MAX4889高速无源开关可在两个接收端之间切换PCI Express® (PCIe)数据。MAX4888是四路单刀/双掷(4 x SPDT)开关,非常适合在两个接收端之间切换2路
    的头像 发表于 05-26 15:41 911次阅读
    MAX4888/MAX4889 2.5Gbps <b class='flag-5'>PCI</b> <b class='flag-5'>Express</b>无源开关技术手册

    长江连接器新品,PCI-E 广泛应用于高性能计算、AI服务器存储设备和外部设备连接等领域

    PCI-E系列产品介绍长江连接器有限公司长江连接器·PCI-E系列新品PCI-E,PeripheralComponentInterconnectExpress的简称,是PCI电脑总线的
    的头像 发表于 05-17 23:35 800次阅读
    长江连接器新品,<b class='flag-5'>PCI</b>-E 广泛应用于高<b class='flag-5'>性能</b>计算、AI服务器存储设备和外部设备连接等领域

    QDMA Subsystem for PCI Express v5.0产品指南

    AMD QDMA Subsystem for PCI Express( PCIe )旨在利用多队列的概念实现高性能 DMA,以搭配 PCI Expr
    的头像 发表于 05-13 09:21 707次阅读
    QDMA Subsystem for <b class='flag-5'>PCI</b> <b class='flag-5'>Express</b> v5.0产品指南

    AD9573 PCI-Express时钟发生器IC,PLL内核,分频器,两路输出技术手册

    AD9573是一款高度集成的双路输出时钟发生器 , 包括一个针对PCI-e应用而优化的片内PLL内核 。 整数N分频PLL设计基于ADI公司成熟的高性能、低抖动频率合成器系列 , 可实现线路卡的较高
    的头像 发表于 04-11 09:51 721次阅读
    AD9573 <b class='flag-5'>PCI-Express</b>时钟发生器IC,PLL内核,分频器,两路输出技术手册

    与路由的区别 网络技术的应用

    一、与路由的区别 与路由是计算机网络中两种重要的技术,它们在网络连接和数据传输方面发挥着不同的作用。以下是
    的头像 发表于 01-31 10:40 2468次阅读

    PCI12000数据手册

    电子发烧友网站提供《PCI12000数据手册.pdf》资料免费下载
    发表于 01-22 16:48 3次下载
    <b class='flag-5'>PCI</b>12000数据手册

    PCI11414数据手册

    电子发烧友网站提供《PCI11414数据手册.pdf》资料免费下载
    发表于 01-22 16:17 6次下载
    <b class='flag-5'>PCI</b>11414数据手册

    PCI Express Gen5自动化多通道测试方案

    对高速链路(如PCI Express)的全面表征需要对被测链路的发送端(Tx)和接收端(Rx)进行多差分通道的测量。由于需要在不同通道之间进行同轴连接的物理切换,这对于完全自动化的测试环境来说是一个
    的头像 发表于 01-16 10:21 1474次阅读
    <b class='flag-5'>PCI</b> <b class='flag-5'>Express</b> Gen5自动化多通道测试方案

    安装注意事项

    安装注意事项 1. 了解的基本概念 在进行安装之前,了解
    的头像 发表于 01-10 11:15 1091次阅读

    的方法及其优缺点

    的方法 技术可以通过多种方式实现,以下是一些常见的
    的头像 发表于 01-10 11:12 2691次阅读

    故障排除技巧

    在现代网络环境中,技术是连接不同网络段的关键组件。它不仅提高了网络的灵活性,还增强了数据传输的效率。然而,设备和配置可能会出现各种问题,导致网络连接中断或
    的头像 发表于 01-10 11:05 1806次阅读

    EE-86:将SHARC 2106x DSP与PLX 9080 PCI芯片连接

    电子发烧友网站提供《EE-86:将SHARC 2106x DSP与PLX 9080 PCI芯片连接.pdf》资料免费下载
    发表于 01-08 14:42 0次下载
    EE-86:将SHARC 2106x DSP与PLX 9080 <b class='flag-5'>PCI</b><b class='flag-5'>桥</b><b class='flag-5'>接</b>芯片连接

    PCI2250 PCIPCI桥接器实施指南

    电子发烧友网站提供《PCI2250 PCIPCI桥接器实施指南.pdf》资料免费下载
    发表于 12-23 15:13 1次下载
    <b class='flag-5'>PCI</b>2250 <b class='flag-5'>PCI</b>到<b class='flag-5'>PCI</b>桥接器实施指南