新闻中心

EEPW首页>嵌入式系统>设计应用> PCI Express 多播功能

PCI Express 多播功能

作者:Matt Jones IDT 产品营销经理 时间:2009-04-15 来源:电子产品世界 收藏

TLP 的传输和路由与单播TLP 相比略有变化。图 4 为交换器基本功能图,充分描述了这些差别。接收主发送的 TLP时,入站端口的地址解码决定 TLP 是一个TLP (从逻辑上讲,这是初始处理成为多重处理的地方)。没有错误的解码TLP 转发到交换器的虚拟 PCI。单播流量有不同的路由规则,取决于 TLP 是在P2P 桥的初级还是次级接收的。与单播流量不同,多播 TLP 是对称转发,而不必考虑P2P 桥是否连了上行或下行端口。

本文引用地址://m.amcfsurvey.com/article/93477.htm

  所有连接到虚拟 PCI的端口(即P2P 桥功能)都可以接收多播 TLP,检查地址中MCG 的 ID,防止多播接收矢量的位状态。基于每个 MCG,多播接收矢量显示是否允许 P2P 桥功能向其目的地转发 TLP。这将有助于交换器上每个 P2P 桥功能以每组为基础对多播 TLP 接收者进行寄存。

  一旦交换器内的 P2P 桥功能接收了多播 TLP,就会在 TLP 上执行出站处理。多播 TLP 的出站处理将取决于连接在 P2P 桥的交换器端口上的链路组件能力。图 5 显示了交换器到 PCIe 交换器传输的多播能力结构的链路组件的情况。TLP 是在没有修改的情况下由远程路由转发的。不过,如上文所述,PCIe 端点不需要实现多播能力结构来接收多播 TLP。为了支持不具有多播功能的端点,系统软件必须保证端点的基址寄存器覆盖一部分多播地址范围,或者 PCIe 交换器必须使用随意指定的多播覆盖机制。

  由于确保端点功能地址范围覆盖的工作和多播地址范围给系统设计者造成的负担,以及每个产品 SKU 可能需要一个唯一的代码库,定义明确的交换器方案需要在每个交换端口的多播能力结构实现多播覆盖功能,以优化灵活性并利用现有的可用端点。如图 6 所示,地址覆盖功能机制可以用于重映射来自多播窗口到端点基址寄存器(BAR)窗口接收的多播 TLP 地址。地址覆盖是由交换器端口执行的。每个交换器端口可以配置不同的地址覆盖值,从而独立映射到伴随每个端点的 BAR 窗口。支持 32 位和 64 位地址之间的转换(例如,多播区域可以位于 4GB 边界以上,而端点 BAR 可以在 4GB 边界以下,反之亦然。)

linux操作系统文章专题:linux操作系统详解(linux不再难懂)


评论


相关推荐

技术专区

关闭