通用串行总线 4 (USB4™) 设计细节和一般要求

除了规范定义的要求外,某些高级设计和用户体验还需要满足以下要求。

  • 通过 USB4 建立隧道的设备(USB 3.x、PCIe 和显示器)应该可以像原生搭载了 USB4 那样正常工作。 不需要对协议堆栈进行任何软件更改,并且这些设备透彻地知道它们是通过 USB4 建立了隧道。

  • 合作伙伴应确保其 USB 硬件(例如系统、集线器、线缆和附件)可以与即将上市或已经上市的其他 USB 硬件进行互操作。 我们鼓励参与由通用串行总线实现者论坛 (USB-IF) 主办的互操作性和合规性活动。

  • 对于具有多个 USB-C® 端口的系统,Microsoft 强烈建议它们都支持 USB4 以提供一致的用户体验。

  • 根据 USB4 基本规范的第 13 章以及 USB Type-C® 连接器和线缆规范,需要确保 Thunderbolt™ 3 兼容性。 Windows USB4 连接管理器驱动程序旨在支持连接到 USB4 主机的 Thunderbolt™ 3 外围设备。

  • 对于 Windows 11 上的第一个版本的 USB4 连接管理器,不支持附加卡。

  • 请参阅 Windows 硬件兼容性计划的 USB4 Hardware Lab Kit (HLK) 中的整套详细要求。

  • 第一个版本的 USB4 连接管理器要求主机和设备路由器支持 USB4 规范,并根据 USB4 连接管理器指南修订版 1.0rc 实现。 除了其他 ECN 之外,硬件实现者必须确保他们已审查以下 ECN,因为这些 ECN 对于 USB4 连接管理器极其重要。 这并不是一份完整的所需 ECN 列表。 可以在 USB4 规范下载内容中找到这些文档。

    • USB4 1.0 ECN - Change in ISC and ISS Registers Address.pdf

    • USB4 1.0 ECN - DROM Base Address.pdf

    • USB4 1.0 ECN - Router Ready Bit.pdf

    • USB4 1.0 ECN - HI memory order.pdf

    • USB4 1.0 ECN - Host Router State Machine.pdf

    • USB4 1.0 ECN - Change C3S Bit Polarity.pdf

    • USB4 1.0 ECN - Buffer Allocation Request Operation.pdf

    • USB4 1.0 ECN - DP BW Allocation.pdf*

      *不需要整个 DP 带宽分配 ECN。 Windows USB4 连接管理器目前仅在其图形电源管理方案中使用该 ECN 的连接管理器 ID、适配器编号和 TopologyID 功能。 有关详细信息,请参阅图形驱动程序要求

注意

我们提供了连接管理器的某些实现细节以帮助调试。 请不要依赖于实现细节。

USB Type-C® 要求

Windows USB4 连接管理器对 USB Type-C® 软件堆栈不存在任何软件依赖关系。 例如 UCMCx、UCSICx 等。 主机路由器和设备路由器必须遵守最新 USB Type-C® 连接器规范中所述的 USB4 发现和入口要求。

当 USB4 设备无法作为 USB4 设备连接时,它可以通过 USB 告示牌设备类提供 USB 接口。 在发现告示牌设备时,Windows 会向用户显示通知,指出设备功能可能受限制。

BIOS 到操作系统的切换

在缺少用于重置 USB4 主机路由器的硬件接口的情况下,Windows USB4 连接管理器将实现主机路由器配置空间清理,以便模拟硬件发起的主机路由器重置。 主机路由器配置空间清理的目的是将配置空间值恢复为默认值,以防在运行 Windows USB4 连接管理器之前运行预启动连接管理器 (UEFI CM)。 如果 UEFI 连接管理器在冷启动或者从休眠状态 (S4) 恢复之前运行,则可能发生这种情况。

带宽共享策略

Windows USB4 连接管理器提供带宽管理功能,以防止过度订阅 USB4 链路。 最多可将 90% 的 USB4 链路带宽显式分配给 USB 3.x(等时)、PCIe 和 DisplayPort™ 流量,这些带宽根据连接管理器实现的带宽共享策略进行划分。

在枚举设备路由器时,上游和下游方向的 USB4 链路的容量是在通道绑定后确定的,因此,举例而言,计算出的链路速率为 10Gbps、20Gbps 或 40Gbps。 那么,计算出的链路可用容量为此值的 90%。 在此示例中,此值的 90% 分别为 9Gbps、18Gbps 或 36Gbps。

注意

对于 Thunderbolt™ 3 链路,以下 USB 3.x 和 PCIe 计算说明不适用。 DisplayPort™ 隧道可以使用整个带宽。

该链路的带宽最初分配给了 USB 3.x 和 PCIe。 在 USB 3.x 和 PCIe 的这种组合带宽中,有 2/3 划分给 USB 3.x,1/3 划分给 PCIe。 此带宽的 USB 3.x 部分通过握手进程设定给 USB 3.x 主机控制器以供等时使用,在此进程中,设置了 USB 3.x 适配器配置空间中的 CMR。USB4 连接管理器在设定可用带宽之前会等待 USB 3.x 主机控制器的确认。 最大 USB 3.x 带宽可能受限于 USB 3.x 链路速率 (10Gbps/20Gbps),在计算要分配的带宽时会考虑此因素。

DisplayPort™ 带宽 (DP BW) 分配模式

从 Windows 11 内部版本 22621.1344 (KB5022913) 开始,在支持 USB4 规范中定义的 DisplayPort™ 带宽 (DP BW) 分配模式的系统上,USB4 连接管理器允许动态 DisplayPort™ (DP) 隧道带宽分配。 此功能允许通过与系统上的图形堆栈协调,更高效、更动态地使用 DP 隧道可用的带宽,以最佳方式在所有隧道之间划分带宽。

创建 DP 隧道后,USB4 连接管理器最初会根据构成隧道的 DP IN 和 DP OUT 适配器的指示功能尝试为隧道保留带宽。 如果没有足够的带宽可用,初始预留将减少,就像非 DP BW 分配模式隧道一样。

然后,在创建隧道时,连接管理器将检查 DP 适配器是否支持 DP BW 分配模式。 如果支持 DP BW 分配模式,则会为 DP IN 适配器启用该模式,总可用(包括以前保留的)带宽将写出到适配器的“ESTIMATED_BW”寄存器,分配的带宽将写出到适配器的“ALLOCATED_BW”寄存器,为 0。

创建 DP 隧道后,隧道可用带宽的任何更改(由于其他 DP 隧道或其他带宽操作)都将导致 USB4 连接管理器更新 DP IN 适配器的“ESTIMATED_BW”寄存器,以通知其可用带宽增加或减少。

创建隧道后,图形驱动程序将发送通知,从 USB4 连接管理器请求支持隧道监视器的所选分辨率、刷新率和位深度等所需的精确带宽。

此后,由于监视器性能要求的变化,图形驱动程序可能会请求增加或减少带宽。 如果从 USB4 连接管理器请求额外的带宽,则连接管理器可能会尝试在与隧道共享的链接上回收分配给 USB3 的带宽。 然后,USB4 连接管理器将使用操作结果以及可用和/或分配给它的带宽的任何更改更新 DP IN 适配器配置空间。

不支持 DisplayPort™ 带宽分配模式的系统

在不支持 USB4 规范中定义的 DisplayPort™ 带宽分配模式功能的系统上,则按先到先得的分配方式分配 DisplayPort™ (DP) 带宽。 创建 DP 隧道后,USB4 连接管理器将检查其他 DP 隧道正在使用的带宽,并使用所述握手进程查询 USB 3.x 主机控制器,以确定当前有多少带宽用于等时流量。 如果带宽可用,它将为 DP 隧道回收足够的带宽,具体的回收量取决于构成该隧道的 DP IN 和 DP OUT 适配器的功能。

如果没有足够的带宽用于满足 DP IN/OUT 适配器对的功能,DP 功能将被屏蔽以匹配可用带宽,这可能会导致 DP 隧道的最大分辨率低于原生最大分辨率。 如果没有足够的带宽用于满足最低 DP 配置,DP 隧道将发生故障。 如果最高通用配置的带宽不足,并且在轮询后尚未释放以前创建的任何 DP 隧道的带宽,则会停止创建新的隧道,直到前一隧道可能释放带宽。

成功创建隧道后,连接管理器将不断轮询 DP IN 适配器配置空间,直到通用功能(反映输出设备所需的实际带宽)可用。 此时,如果分配了多余的带宽,则会将这些带宽释放回到 USB 3.x 和 PCIe 组合带宽池,并将其重新设定给 USB 3.x 主机控制器。

安全注意事项

禁用 PCIe 隧道

作为一项安全功能,可以使用 _OSC for USB 来提供禁用 PCIe 隧道的功能。 禁用 PCIe 隧道后,Windows USB4 连接管理器不会创建 PCIe 隧道。 此外,Thunderbolt™ 3 设备路由器可能无法枚举,因为在 Thunderbolt™ 3 中缺少 PCIe 隧道的情况下,从 PCIe 枚举的 USB 主机控制器提供的 USB 功能也会受影响。

请考虑在禁用 PCIe 隧道时禁用 Thunderbolt™ 3 备用模式。 这样,Thunderbolt™ 3 路由器或扩展坞就可以回退到 USB 3.x 操作和 (DP) 备用模式操作。

USB4 主机路由器的 DMA 重映射策略

为了限制无效 DMA 访问造成的影响,为 USB4 主机路由器设备启用了 DMA 重映射DmaRemappingCompatible 设置指定为 1,以便始终为主机路由器启用 DMA 重映射策略。

USB4 HLK 要求

下面是 USB4 要求的完整列表。

Device.BusController USB4 要求

System.Fundamentals USB4 要求

另请参阅

Thunderbolt 是 Intel Corporation 或其子公司的商标。

“USB4™”是 USB 实现者论坛的商标,只适用于基于并符合 USB4™ 规范的产品。