碧波液压网 欢迎你,游客。 登录 注册

PCIExpress桥接PCI的读取性能

版权信息:站内文章仅供学习与参考,如触及到您的版权信息,请与本站联系。

  PCI Express 是目前 PC 芯片集及嵌入式处理器的普遍互连标准。尽管之前的PCI标准由PCIe所取代,但 FPGA 和I/O设备仍使用 PCI。当前基于 PCI 的设计均采用未集成 PCIe 接口的组件,因此若要升级系统,需使用 PCIe 桥接器。例如,PCIe桥接器将用于采用I/O设备的嵌入式视频录音机,通过PCI连接至具有PCIe 端口的嵌入式处理器。

  在系统中添加桥接器将会带来一定的设计难题,本文旨在研究通常受引入桥接器影响的 PCI 读取性能问题,以及相应的解决方法。

  引入桥接器带来的性能挑战

  PCI 总线上的设备主要依赖有关系统从主机处理器读取大量的数据。PCI I/O 设备通常控制系统中的数据移动,并将读写循环传入主机内存。例如,主机处理器可通过写入外围设备上的寄存器设置外围设备中的 DMA,即可设置和配合数据移动,但为了专注于其他任务,处理器会将自身从数据移动中删除。然后,外围设备将读取或写入数据以服务 DMA。在其他时间,处理器可读取状态信息并写入寄存器以进行控制。通常,此通信量不会涉及高带宽,且不会对系统整体性能带来重大影响。

  对于安全数字视频录像机(DVR)等嵌入式处理系统,将捕获并压缩视频数据,通过磁盘控制器写入磁盘存储器,且磁盘控制器通过 PCI 总线读取主机内存中的数据即可实现上述结果。

  从 PCI 外围设备写入桥接器通常传送至内部写入缓冲器,以解决桥接器带来的内在性能影响。然而,PCIe 桥产品需要重试外围设备,直至它从主机内存中获得所需的数据。这通常意味着试图读取许多小型 PCIe 数据包,从而增加时延。通过使用分割式传输方式,PCI-X 协议可避免此问题,但传统的 PCI 协议并不具备此特点。此外,一些 PCI 设备在收到一条或两条数据缓冲行后就自动释放总线,这将成为 PCI 读取的性能挑战。

  例如,在使用嵌入式 DVR 的普通情况下(图1),系统需要将持续的压缩视频数据流写入磁盘,以便存储及随后检索或分析。在此系统中,一个或多个磁盘控制器(SATA 控制器)将读取系统主内存中的视频数据,以存储在相关磁盘阵列。上述系统还可以令以太网控制器等其他外部设备共享 PCI 总线。

  

  如上所述,引入 PCI 桥接器可能导致性能下降。此读取性能如下所示(参考图 2):

  

  1.SATA 设备"A"开始从主内存读取。桥接器从内存中预取数据。然后,SATA设备"A"读取部分预取数据。

  2.SATA 设备"B"开始从主内存读取。桥接器从内存中预取数据。然后,SATA设备"B"读取部分预取数据。

你没有登陆,无法阅读全文内容

您需要 登录 才可以查看,没有帐号? 立即注册

标签:
点赞   收藏

相关文章

发表评论

请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。

用户名: 验证码:

最新评论