【问题标题】:PCIe and flow control creditsPCIe 和流量控制积分
【发布时间】:2015-09-11 20:07:06
【问题描述】:

它通常是一个软件,即设备驱动程序,负责在 PCIe 总线上设置 FC 信用吗?我在哪里可以熟悉相关的 linux API?

【问题讨论】:

    标签: linux-device-driver pci pci-e pci-bus


    【解决方案1】:

    PCIe 3.0 规范清楚地提到了 Credit Consumed 、 Credit Limit 变量实现为每个启用的 Virtual Channel for Flow Control 机制的计数器。

    但是,您可以通过软件启用或禁用特定的 VC(写入配置空间中的专用寄存器)。因此,流量控制机制完全由 PCIe 中的专用硬件处理。

    【讨论】:

      【解决方案2】:

      基于信用的流量控制是在硬件中构建的。

      【讨论】:

      • 我不争辩这一点,但是什么为基于信用的 FC 提供了相关设置?是软件决定的,还是硬件决定的?
      • 积分是根据 FIFO 大小计算的。发射器知道接收器中的空间。如果他发送一个数据包,他必须降低信用评分。当接收方处理完数据包并清空 FIFO 后,接收方发送流量控制数据包以再次更新/增加 credits。所有计算算法都在 PCIe 标准中定义。我不知道软件 API 的任何可变参数。如果我没记错的话,链接初始化后会有一个初始的信用交换。
      猜你喜欢
      • 1970-01-01
      • 2018-12-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多