USB3.2 摘录(九)

在这里插入图片描述

系列文章目录


USB3.2 摘录(一)
USB3.2 摘录(二)
USB3.2 摘录(三)
USB3.2 摘录(四)
USB3.2 摘录(五)
USB3.2 摘录(六)
USB3.2 摘录(七)
USB3.2 摘录(八)
USB3.2 摘录(九)


文章目录

  • 系列文章目录
  • 10 集线器、主机下游端口和设备上游端口规范
    • 10.5 面向 Hub 上游的端口(Hub Upstream Facing Ports)
      • 10.5.1 面向上游的端口状态描述(Upstream Facing Port State Descriptions)
        • 10.5.1.1 USPORT.Powered-off
        • 10.5.1.2 USPORT.Powered-on
        • 10.5.1.3 USPORT.Training
        • 10.5.1.4 USPORT.Connected/Enabled
        • 10.5.1.5 USPORT.Error
      • 10.5.2 Hub Connect 状态机(Hub Connect State Machine)
        • 10.5.2.1 Hub Connect 状态描述
        • 10.5.2.2 HCONNECT.Powered-off
        • 10.5.2.3 HCONNECT.Attempt ESS Connect
        • 10.5.2.4 HCONNECT.Connected on ESS
    • 10.6 面向上游的端口电源管理
      • 10.6.1 面向上游的端口 PM 计时器
      • 10.6.2 面向 Hub 上游的端口状态描述
        • 10.6.2.1 Enabled U0 States
        • 10.6.2.2 尝试 U0 – U1 转换(Attempt U0 – U1 Transition)
        • 10.6.2.3 尝试 U0 – U2 转换(Attempt U0 – U2 Transition)
        • 10.6.2.4 U1 中的链接(Link in U1)
        • 10.6.2.5 U2 中的链接(Link in U2)
        • 10.6.2.6 U3 中的链接(Link in U3)
    • 10.7 超高速集线器头包转发和数据中继器
      • 10.7.1 **SuperSpeed Hub** 弹性缓冲区(SuperSpeed Hub Elasticity Buffer)
      • 10.7.2 SKP 有序集(SKP Ordered Sets)
      • 10.7.3 数据包间距(Interpacket Spacing)
      • 10.7.4. SuperSpeed 报头数据包缓冲区体系结构
      • 10.7.5 SuperSpeed 包连接(SuperSpeed Packet Connectivity)
    • 10.8 SuperSpeedPlus 存储和转发行为
      • 10.8.1 Hub 弹性缓冲区(Hub Elasticity Buffer)
      • 10.8.2 SKP 有序集(SKP Ordered Sets)
      • 10.8.3 数据包间距(Interpacket Spacing)
      • 10.8.4 上游流缓冲(Upstream Flowing Buffering)
      • 10.8.5 下游流缓冲(Downstream Flowing Buffering)
      • 10.8.6. 数据包的 SuperSpeedPlus Hub 仲裁
        • 10.8.6.1 仲裁权重(Arbitration Weight)
    • 10.9 端口状态机(Port State Machines)
    • 10.10 暂停和恢复(Suspend and Resume)
    • 10.11 集线器上行端口重置行为
    • 10.12 集线器端口电源控制(Hub Port Power Control)
    • 10.13 集线器控制器(Hub Controller)
    • 10.14 集线器配置(Hub Configuration)
    • 10.15 描述符(Descriptors)
    • 10.16 请求(Requests)
    • 10.17 主机根(下行)端口
    • 10.18 外围设备上行接口
    • 10.19 Hub 章节参数说明(Hub Chapter Parameters)
  • 11 互操作性和功率传输
  • A Gen1 符号编码(Gen 1 Symbol Encoding)
  • B 符号扰乱(Symbol Scrambling)
  • C 电源管理(Power Management)
  • D 示例数据包(Example Packets)
  • E 中继器(Example Packets)


10 集线器、主机下游端口和设备上游端口规范

10.5 面向 Hub 上游的端口(Hub Upstream Facing Ports)

    以下部分提供了状态机的功能描述,该状态机对面向集线器的上游端口表现出正确的行为。除非特别指出例外情况,否则这些部分也适用于设备上面向上游的端口。上游端口应仅尝试连接到增强型 SuperSpeed 总线和 USB 2.0 总线,如以下部分中的上游端口状态机所述。

在这里插入图片描述

10.5.1 面向上游的端口状态描述(Upstream Facing Port State Descriptions)

    有关集线器 USB 状态,请参阅图 9-1。

10.5.1.1 USPORT.Powered-off

    USPORT.Powered-off 状态是面向上游的端口的默认状态。

    如果出现以下任何情况,端口应转换为此状态:

  • 在任何状态下,当 VBUS 无效时。
  • 在任何状态下,当未检测到远端接收器终端时。
  • USPORT.Connected/Enabled 下,当端口配置过程失败时。

    在此状态下,端口的链接应处于 eSS.Disabled 状态,相应的集线器 USB 状态应为 Attached。

    注意:如果端口由于未检测到远端接收器终端且存在 VBUS 而进入此状态,则它不会删除近端终端,并且可能会立即转换为 USPORT.Powered 打开状态。

10.5.1.2 USPORT.Powered-on

    在以下任何情况下,端口应转换为此状态:

  • USPORT.Powered-off 下,当 VBUS 有效时。
  • USPORT.Error 下,当链路收到热重置或删除远端终端时。
  • USPORT.Connected/Enabled 下,当链路收到热重置时。
  • USPORT.Training 下,当端口的链路从任何轮询子状态超时,或者端口收到热 (LFPS) 重置时。

    在此状态下,端口的链接应处于 Rx.Detect 状态。相应的集线器 USB 状态应为 Powered (Far-end Receiver Termination 子状态)。在此状态下,如果集线器的 USB 2.0 部分进入挂起状态,则从 VBUS 汲取的集线器总电流不应超过挂起电流限制。

10.5.1.3 USPORT.Training

    当检测到增强型 SuperSpeed 远端接收器终端时,端口将从 USPORT.Powered-on 转换到此状态。

    在此状态下,端口的链接应处于 Polling 状态。相应的集线器 USB 状态应为 Powered (Link Training 子状态)。

10.5.1.4 USPORT.Connected/Enabled

    当端口的链路从 Polling.Idle 进入 U0 时,端口将从 USPORT.Training 状态转换为此状态。在热重置期间,端口保持此状态。热重置完成后,相应的集线器 USB 状态应转换为 Default。

    在此状态下,端口的链接应为 U0、U1、U2、U3 或 Recovery 状态。相应的集线器 USB 状态应为 Default、Address 或 Configured。

    当链路进入 U0 时,端口应启动第 8.4.6 节中定义的端口配置过程。

    该端口可以发送链路管理数据包或链路命令,但不得传输任何其他数据包,除非在 USPORT.Connected 状态下响应默认控制端点请求。

10.5.1.5 USPORT.Error

    当 att 清空以操作链路时发生严重错误情况时,端口将转换为此状态。在以下任何情况下,端口都会转换为此状态:

  • USPORT.Connected/Enabled 状态下,当链路进入 Recovery 并超时而不恢复时。

    在此状态下,端口的链接应处于 eSS.Inactive 状态。相应的集线器 USB 状态应为 Error。

    仅当链路上收到热重置或删除远端接收器终端时,端口才会退出 Error 状态。

10.5.2 Hub Connect 状态机(Hub Connect State Machine)

    以下部分提供了状态机的功能说明,该状态机在增强型 SuperSpeed 总线或 USB 2.0 总线上连接时表现出正确的集线器行为。对于集线器,增强型 SuperSpeed 总线和 USB 2.0 总线的连接逻辑是完全独立的。集线器应遵循 USB 2.0 规范进行 USB 2.0 连接。图 10-13 是增强型 SuperSpeed 集线器的 Hub Connect 状态机的图示。每种状态都在 Section 10.5.2.1 中描述。

在这里插入图片描述

10.5.2.1 Hub Connect 状态描述
10.5.2.2 HCONNECT.Powered-off

    HCONNECT.Powered-off 状态是集线器设备的默认状态。如果出现以下情况,集线器设备应转换为此状态:

  • 在任何状态下,当删除 VBUS 时。

    在此状态下,集线器上游端口的链接应处于 eSS.Disabled 状态。

10.5.2.3 HCONNECT.Attempt ESS Connect

    如果出现以下任何情况,集线器应转换为此状态:

  • HCONNECT.Powered-off 下,当 VBUS 生效时(如果需要,本地电源有效)。
  • ESS 上的 HCONNECT.Connected 状态下,当 Rx.DetectLink Training 超时。

    在此状态下,集线器的上游端口增强型 SuperSpeed 链路位于 Rx.DetectPolling 中。

10.5.2.4 HCONNECT.Connected on ESS

    如果出现以下情况,端口应转换为此状态:

  • ESS 连接时,并处在 HCONNECT.Attempt 下,当链路从轮询转换为 U0 时。

    在此状态下,集线器的上游端口增强型 SuperSpeed 链路位于 U0、U1、U2、U3、Inactive、Rx.Detect、Recovery 或 Polling 中。

10.6 面向上游的端口电源管理

    Upstream Facing Port Power Management

    以下部分提供了状态机的功能说明,该状态机为面向集线器的上游端口提供正确的链路电源管理行为。

    如果任何下游端口上出现状态更改,并且上游端口位于 U1U2 中,则 Hub 应在上游端口链接上启动一个到 U0 的转换。

    如果任何下游端口上存在状态更改,并且集线器上游端口的链接位于 U3 中,则集线器行为由当前远程唤醒掩码设置指定。有关更多详细信息,请参阅 Section 10.16.2.10。

在这里插入图片描述

10.6.1 面向上游的端口 PM 计时器

    Upstream Facing Port PM Timer

    集线器上行端口维护一个逻辑 PM 计时器,用于跟踪何时超过 U2 非活动超时。未定义标准 U1 非活动超时。收到 U2 非活动超时 LMP 时,将设置 U2 非活动超时。当集线器上游端口链路进入 U1 时,PM 计时器将重置。PM 定时器应精确到 +500/ -0 μs。计时器的其他要求在上游端口 PM 状态机描述中定义。

10.6.2 面向 Hub 上游的端口状态描述

    Hub Upstream Facing Port State Descriptions

10.6.2.1 Enabled U0 States

    有四种已启用的 U0 状态,它们仅在 U1U2 Enable (启用 U2) 设置中有所不同。以下规则全局适用于所有已启用的 U0 状态:

  • 如果上游端口上有待处理的数据包要传输,则上游端口不应启动到 U1U2 的转换。
  • 如果 Force_LinkPM_Accept 位设置为 1,则上游端口应接受来自链路伙伴的 U1U2 转换(请参阅第 8.4.2 节)。

    对于 U1U2 Enable 值的各种组合,端口的行为如下:

    U1_ENABLE = 0, U2_ENABLE = 0

  • 这是 Hub 收到任何 SetFeatureU1/U2_ENABLE) 请求之前的默认状态。
  • PM 定时器可以被禁用,而 PM 定时器的值应该被忽略。
  • 端口的链路应接受其链路合作伙伴的 U1 输入请求,除非集线器有一个或多个数据包/链路命令要在端口上传输,或者一个或多个集线器下游端口在 U0 或恢复中具有链路。
  • 端口的链路应接受其链路合作伙伴的 U2 输入请求,除非集线器有一个或多个数据包/链路命令要在端口上传输,或者一个或多个集线器下游端口在 U0U1 或恢复中具有链路。
  • 端口的链接不得尝试启动到 U1U2 的转换。

    U1_ENABLE = 1, U2_ENABLE = 0

  • 端口的链接不应启动 U2 转换。
  • 端口的链路应接受链路合作伙伴的所有 U2 输入请求,除非集线器有一个或多个数据包/链路命令要在端口上传输,或者一个或多个集线器下游端口在 U0U1recovery 中具有链路。
  • 端口的链路应接受其链路合作伙伴的 U1 输入请求,除非集线器有一个或多个数据包/链路命令要在端口上传输,或者一个或多个集线器下游端口在 U0 或恢复中具有链路。
  • PM 定时器可以被禁用,而 PM 定时器的值应该被忽略。
  • 如果所有 Hub 下行端口都处于 U1 或较低的链路状态,则端口的链路应启动到 U1 的过渡。

    U1_ENABLE = 0, U2_ENABLE = 1

  • 端口的链接不得启动 U1 转换。
  • 端口的链路应接受链路伙伴的所有 U1 输入请求,除非集线器有一个或多个数据包/链路命令要在端口上传输,或者一个或多个集线器下游端口在 U0 或恢复中具有链路。
  • 端口的链路应接受其链路伙伴的 U2 输入请求,前提是集线器在端口上有一个或多个数据包/链路命令要传输,或者一个或多个集线器下游端口在 U0U1 或恢复中具有链路。
  • PM 定时器可以被禁用,而 PM 定时器的值应该被忽略。
  • 如果所有 Hub 下游端口都处于 U2 或较低的链路状态,则端口的链路应启动到 U2 的转换。

    U1_ENABLE = 1, U2_ENABLE = 1

  • 端口的链路应接受其链路伙伴的 U1U2 输入请求,除非集线器有一个或多个数据包/链路命令要在端口上传输。
       
    如果一个或多个集线器下游端口在 U0recovery 中具有链接,则不应接受 U1 输入请求。
    如果一个或多个集线器下游端口在 U0U1recovery 中具有链接,则不应接受 U2 输入请求。
  • 如果所有 Hub 下游端口都处于 U1 或较低的链路状态,则端口的链路应启动向 U1 的过渡,除非满足 U2 进入的条件。
  • 如果所有 Hub 下游端口都处于 U2 或较低的链路状态,则端口的链路应启动到 U2 的过渡。请注意,如果端口已在 U1 中,则端口应在转换为 U2 之前转换为 U0
  • PM 定时器可以被禁用,而 PM 定时器的值应该被忽略。

    在以下任何情况下,端口将转换为 Enabled U0 状态之一(取决于 U1U2 Enable 值):

  • U1 状态下,当链接伙伴成功启动到 U0 的转换时。
  • U2 状态下,当链接伙伴成功启动到 U0 的转换时。
  • U1 状态下,当下游端口的状态发生变化时。
  • U2 状态下,当下游端口的状态发生变化时。
  • U1 状态下,当集线器下游端口的链路启动到 U0 的转换时。
  • U2 状态下,当集线器下游端口的链路启动到 U0 的转换时。
  • 如果上游端口的链路伙伴拒绝尝试从 U0 转换为 U1 转时。
  • 如果上游端口的链路伙伴拒绝尝试从 U0 转换为 U2 转时。
  • U3 状态下,当集线器的上游端口收到唤醒信号时。
  • U3 状态下,当下行端口有状态变化或本地电源状态变化,并且相应的事件类型开启了远程唤醒时。
10.6.2.2 尝试 U0 – U1 转换(Attempt U0 – U1 Transition)

    在此状态下,端口尝试将其链接从 U0 状态转换为 U1 状态。

    在以下任何情况下,端口应尝试转换为 U1 状态:

  • U1 条目由链路伙伴请求,端口上没有待处理流量,并且所有集线器下游端口的链路都处于 U1 或更低状态。
  • 所有集线器下游端口都处于 U1 或较低链路状态,并且上游端口上没有待传输的流量,并且 U1_ENABLE 设置为 1
  • 链接伙伴请求 U1 条目,并设置 Force_LinkPM_Accept 位。

    如果转换尝试失败(收到 LXU 或链路进入恢复状态),则端口将返回到相应的已启用 U0 状态。

10.6.2.3 尝试 U0 – U2 转换(Attempt U0 – U2 Transition)

    在此状态下,端口会尝试将链接从 U0 状态转换为 U2 状态。

    在以下任何情况下,端口应尝试转换为 U2 状态:

  • U2 条目由链路伙伴请求,端口上没有待处理流量,并且所有集线器下游端口的链路都处于 U2 或更低状态。
  • 所有集线器下游端口都处于 U2 或较低链路状态,并且上游端口上没有待传输的流量,U2_ENABLE设置为 1。
  • 链接伙伴请求 U2 条目,并设置 Force_LinkPM_Accept 位。

    如果转换尝试失败(收到 LXU 或链路进入恢复状态),则端口将返回到相应的已启用 U0 状态。

10.6.2.4 U1 中的链接(Link in U1)

    当进入此状态并处于活动状态时,PM 计时器将重置。

    端口转换为 U1

  • 发送 LAU 以接受由链接合作伙伴发起的转换后。
  • 在开始尝试将链接转换为 U1 后从链接伙伴收到 LAU 后(After receiving an LAU from the link partner after initiating an attempt to transition
    the link to U1)

    如果 U2 非活动超时值不是 0xFF0x00,并且 PM 计时器达到 U2 非活动超时,则端口的链接应启动从 U1U2 的转换。

10.6.2.5 U2 中的链接(Link in U2)

    链接位于 U2 中。

    端口转换为 U2

  • 发送 LAU 以接受由链接合作伙伴发起的转换后。
  • 在开始尝试将链接转换为 U2 后,从链接伙伴收到 LAU 后
10.6.2.6 U3 中的链接(Link in U3)

    链接位于 U3 中。

    端口转换为 U3

  • 发送 LAU 以接受由链接合作伙伴发起的转换后。

10.7 超高速集线器头包转发和数据中继器

    SuperSpeed Hub Header Packet Forwarding and Data Repeater

    SuperSpeed Hub 对标头数据包使用存储和转发模型,对数据使用转发器模型,它们组合在一起提供以下常规功能。

    在下游方向:

  • 验证报头数据包
  • 设置与选定下游端口的连接
  • 将报头数据包转发到下游端口
  • 将数据有效载荷转发到下游端口(如果存在)
  • 在数据包边界上设置和关闭连接

    在上游方向:

  • 验证报头数据包
  • 设置与上游端口的连接
  • 将报头数据包转发到上游端口
  • 将数据包有效载荷转发到上游端口(如果存在)
  • 在数据包边界上设置和关闭连接

10.7.1 SuperSpeed Hub 弹性缓冲区(SuperSpeed Hub Elasticity Buffer)

    SuperSpeed Hub 中没有针对弹性缓冲区行为的直接规范。但是,请注意, SuperSpeed Hub 必须满足第 10.7.3 节中的要求,即从上游端口转发到下游端口的报头数据包的传播延迟的最大变化。

10.7.2 SKP 有序集(SKP Ordered Sets)

    SuperSpeed Hub 按照第 6 章中所有发射机的规则,对所有发射进行 SKP 有序集传输。

10.7.3 数据包间距(Interpacket Spacing)

    当 SuperSpeed Hub 发起或转发数据包时,应按照第 7.2.1 节中的要求发送数据包标头和数据包有效负载。

    当 SuperSpeed Hub 将标头数据包转发到下游,并且下游端口链路为 U0 时,当在集线器上游端口上收到标头数据包时,传播延迟变化不应大于 tPropagationDelayJitterLimit

10.7.4. SuperSpeed 报头数据包缓冲区体系结构

    SuperSpeed Header Packet Buffer Architecture

    该规范不要求 SuperSpeed Hub 中的标头数据包缓冲区具有特定的体系结构。图 10-15 和图 10-16 显示了满足此规范功能要求的示例体系结构,以说明 SuperSpeed Hub 的功能行为。图 10-15 显示了一个 SuperSpeed Hub ,其中上游端口有一个 4 报头数据包 Rx 缓冲区,每个下游端口都有一个 4 报头数据包 Tx 缓冲区。图 10-16 显示了每个下游端口的 4 报头数据包 Rx 缓冲区和上行端口的 4 报头数据包 Tx 缓冲区。图 10-15 和图 10-16 所示的缓冲区是独立的物理缓冲区。

在这里插入图片描述

在这里插入图片描述

    下面列出了 SuperSpeed Hub 缓冲区体系结构的功能要求,并假设在每种情况下,只有集线器上指示的端口在接收或传输标头数据包:

  • 在所有报头数据包缓冲区为空的情况下开始的 SuperSpeed Hub 应能够在其上游端口用完报头数据包进行流控制信用之前接收至少 8 个定向到不在 U0 中的同一下游端口的报头数据包(header packet)。
  • 在其上游端口上接收路由到下游端口的报头数据包的 SuperSpeed Hub 应立即将报头数据包路由到相应的下游端口报头数据包缓冲区(如果该缓冲区中的空间可用),而不管任何其他下游端口报头数据包缓冲区的状态或上游端口 Rx 报头数据包缓冲区的状态如何。例如,下游端口 1 的 hub Tx 报头数据包缓冲区已满,并且该 Hub 上游端口 Rx 报头数据包缓冲区中还有三个报头数据包要路由到 hub 的下游端口 1 。如果集线器现在收到路由到下游端口 2 的报头数据包,则必须立即将报头数据包路由到下游端口 2 Tx 报头数据包缓冲区。
  • 当上游端口不在 U0 中时,所有标头数据包缓冲区为空的 SuperSpeed Hub 应能够在同一下游端口上接收至少 8 个标头数据包,这些数据包定向用于上游传输。
  • 下游端口传输的报头数据包应按照它们在上游端口上接收的顺序传输。
  • 上游端口从同一下游端口传输的报头数据包应按照它们在该下游端口上接收的顺序进行传输。

    Section 10.9 提供了 hub 实现中上游和下游端口 Tx 和 Rx 标头数据包缓冲区的详细功能状态机。

    SuperSpeed Hub 应至少有 1080 字节的缓冲,用于处理在上游端口上接收的数据包(data packets)。

    SuperSpeed Hub 应至少有 1080 字节的共享缓冲,用于所有下游端口上接收的数据包。

10.7.5 SuperSpeed 包连接(SuperSpeed Packet Connectivity)

    SuperSpeed Hub 包中继器/转发器必须在两个方向上对数据包进行重新计时。Re-clocking 意味着 repeater 从接收到的 stream 中提取数据,并使用自己的本地 clock 重新传输 stream

10.8 SuperSpeedPlus 存储和转发行为

    SuperSpeedPlus Store and Forward Behavior

    SuperSpeedPlus Hub 提供以下常规功能。

    在下游方向:

  • 接收并验证数据包
  • 将包转发到适当的下游端口
  • 选择要在(每个)下游端口上传输的下一个包

    在上游方向:

  • 接收并验证数据包
  • 将数据包转发到上游端口
  • 选择要在上游端口上传输的下一个数据包

10.8.1 Hub 弹性缓冲区(Hub Elasticity Buffer)

    集线器中的弹性缓冲区行为没有直接的规范。但是,请注意,集线器必须满足第 10.7.3 节中关于传播延迟最大变化的要求。

10.8.2 SKP 有序集(SKP Ordered Sets)

    SuperSpeedPlus Hub 按照第 6 章中所有发射机的规则,对所有传输传输进行 SKP 有序集传输。

10.8.3 数据包间距(Interpacket Spacing)

    当集线器发起或转发数据包时,应按照第 7.2.1 节的要求发送 DPH 及其相应的 DPP

    SuperSpeedPlus Hub 的存储和转发行为有几个方面,包括缓冲、要转发到上游的数据包之间的仲裁以及转发过程中的数据包修改。

10.8.4 上游流缓冲(Upstream Flowing Buffering)

    SuperSpeedPlus Hub 应为每个 DFP(downstream facing port) 接收器提供 16 x 1 KB 控制/批量 DPP 缓冲区和 16 x 1 KB 中断/同步 DPP 缓冲区的缓冲。SuperSpeedPlus 集线器应为每个 DFP 接收器提供 16 个控制/批量标头缓冲区和 16 个 TP/中断/同步标头缓冲区的缓冲。这些缓冲区应用于保存从等待在上游端口上传输的下游端口接收的数据包。

    每个下游端口都需要缓冲区空间,因为在上游端口上传输数据包时,可能会有数据包同时到达每个下游端口。此外,集线器仲裁规则(请参阅 Section 10.8.6)可以延迟在下游端口上接收的数据包可以在上游端口上传输的时间。

在这里插入图片描述

10.8.5 下游流缓冲(Downstream Flowing Buffering)

    SuperSpeedPlus Hub 应根据上行端口的速度和通道数量以及下行端口的数量提供足够的缓冲。

    1KB 控制/批量 DPP 缓冲区和 1KB 中断/同步 DPP 缓冲区 (NBuf) 的数量应按以下方式计算:

  1. 确定要使上游端口饱和的下游端口数
    S p e e d R a t i o = U p s t r e a m P o r t S p e e d / G e n 1 x 1 S p e e d SpeedRatio = UpstreamPortSpeed/Gen 1x1 Speed SpeedRatio=UpstreamPortSpeed/Gen1x1Speed
    N u m b e r O f P o r t s F o r S a t u r a t i o n I s N = C e i l ( S p e e d R a t i o ) Number Of Ports For Saturation Is N = Ceil (SpeedRatio) NumberOfPortsForSaturationIsN=Ceil(SpeedRatio)

  2. 计算下游端口使用数据包的速率,假设下游连接的设备始终接受 DP:
    P a c k e t C o n s u m p t i o n R a t e ( P C R ) = M a x B u r s t / S p e e d R a t i o Packet Consumption Rate (PCR) = MaxBurst/SpeedRatio PacketConsumptionRate(PCR)=MaxBurst/SpeedRatio

  3. 计算所需的缓冲区数量:

	NBuf = 0; i = 1;While ((MaxBurst - |i*PCR|) > 0)NBuf += (MaxBurst - |i*PCR|); i++;NBuf += N;

    SuperSpeedPlus Hub 还应为同等数量的 Control/Bulk 标头缓冲区和 TP/中断/同步标头缓冲区提供缓冲。

    由于可能的上游端口和下游端口速度不同,下游流量的缓冲主要是为了提供速率匹配功能。因此,它是为每个集线器提供的,而不是为每个下游端口提供的。但是,此缓冲的组织和功能应允许从上游端口接收数据包,然后以与接收顺序不同的顺序同时在多个下游端口上传输。也就是说,此缓冲不能组织为单个简单的 FIFO

在这里插入图片描述

10.8.6. 数据包的 SuperSpeedPlus Hub 仲裁

    SuperSpeedPlus Hub Arbitration of Packets

10.8.6.1 仲裁权重(Arbitration Weight)

第 i 个面向下游的端口 (DFPiith downstream facing port) 具有与之关联的仲裁权重 (AW,arbitration weight)。该权重应设置为;

D F P i . A W = D F P i . l i n k _ s p e e d / A r b i t r a t i o n W e i g h t B a s e DFPi.AW = DFPi.link\_speed / ArbitrationWeightBase DFPi.AW=DFPi.link_speed/ArbitrationWeightBase

10.9 端口状态机(Port State Machines)

   

10.10 暂停和恢复(Suspend and Resume)

   

10.11 集线器上行端口重置行为

    Hub Upstream Port Reset Behavior

10.12 集线器端口电源控制(Hub Port Power Control)

   

10.13 集线器控制器(Hub Controller)

   

10.14 集线器配置(Hub Configuration)

   

10.15 描述符(Descriptors)

   

10.16 请求(Requests)

   

10.17 主机根(下行)端口

    Host Root (Downstream) Ports

10.18 外围设备上行接口

    Peripheral Device Upstream Ports

10.19 Hub 章节参数说明(Hub Chapter Parameters)

   

11 互操作性和功率传输

    Interoperability and Power Delivery

A Gen1 符号编码(Gen 1 Symbol Encoding)

B 符号扰乱(Symbol Scrambling)

C 电源管理(Power Management)

D 示例数据包(Example Packets)

E 中继器(Example Packets)

   
 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/409539.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

页面设计任务 商品详情页(带评论区)

目录 效果图: 任务描述 源码: 详细讲解: 1.产品信息部分 2.用户评论区域 效果图: 任务描述 页面结构: 页面应包括一个标题部分、一个产品展示区和一个客户评价区。使用图片展示产品,并添加描述。客户评价区展示一…

IP代理池学习记录

免责声明 本文仅供学习和研究目的使用。所提供的信息和技术仅限于合规和合法的使用场景。请读者在应用相关技术时遵守法律法规,尊重他人的数据隐私和网站使用条款。本文作者对因使用本文信息而产生的任何法律责任或损失不承担责任。 1、初识IP代理池 概述&#xff…

如何使用ssm实现基于SSM的社区物业管理系统的设计与实现+vue

TOC ssm223基于SSM的社区物业管理系统的设计与实现vue 绪论 1.1 研究背景 现在大家正处于互联网加的时代,这个时代它就是一个信息内容无比丰富,信息处理与管理变得越加高效的网络化的时代,这个时代让大家的生活不仅变得更加地便利化&…

Redis—缓存机制

Redis 缓存机制 1. 缓存三兄弟1.1 缓存击穿1.2 缓存穿透1.3 缓存雪崩 2. 布隆过滤器3. 缓存和数据库数据一致性3.1 缓存更新策略3.2 缓存不一致处理 4. 热点 key4.1 热点 key 处理4.2 热点 key 重建 5. 缓存预热 Redis,一个轻量级的开源内存数据结构存储系统&#x…

Redis计数器:数字的秘密

文章目录 Redis计数器incr 指令用户计数统计用户统计信息查询缓存一致性 小结 技术派项目源码地址 : Gitee :技术派 - https://gitee.com/itwanger/paicodingGithub :技术派 - https://github.com/itwanger/paicoding 用户的相关统计信息 文章数,文章总阅读数&am…

go设计模式——单例模式

概念 单例是一种创建型设计模式,它确保一个类在整个程序运行期间只有一个实例,并提供一个全局访问点来使用该实例。虽然单例模式在某些情况下非常有用,例如管理全局配置、日志记录或资源共享,但它也带来了与全局变量相似的问题。…

redis面试(二十三)写锁释放

先加了写锁,后面再次加写锁或者读锁 anyLock: { “mode”: “write”, “UUID_01:threadId_01:write”: 2, “UUID_01:threadId_01”: 1 } 写锁的释放lua脚本在这里 RedissonWriteLock.unlockInnerAsync() 比如说现在的参数是这 KEYS[1] anyLock KEYS[2] redi…

SQL手工注入漏洞测试(MongoDB数据库)靶场通关攻略

构造数据回显 });return ({title:1,content:2 成功回显1,2,接下来我们开始尝试查询数据库 });return({title:tojson(db),content:2 得到之后我们就可以继续查询他的表名了 });return({title:tojson(db.getCollectionNames()),content:2 最后我们就可以爆出他表里的数…

宝塔面板配置FTP服务并安装内网穿透实现无公网IP远程连接

文章目录 前言1. Linux安装Cpolar2. 创建FTP公网地址3. 宝塔FTP服务设置4. FTP服务远程连接小结 5. 固定FTP公网地址6. 固定FTP地址连接 前言 本文主要介绍宝塔FTP文件传输服务如何搭配内网穿透工具,实现随时随地远程连接局域网环境搭建的宝塔FTP文件服务并进行文件…

ssrf实现.SSH未创建写shell

一、介绍SSRF漏洞 SSRF (Server-Side Request Forgery,服务器端请求伪造)是一种由攻击者构造请求,由服务端发起请求的安全漏洞。一般情况下,SSRF攻击的目标是外网无法访问的内部系统(正因为请求是由服务端发起的,所以服务端能请求到与自身相…

C语言基础——函数详解

目录 函数的概述 1 函数的概念 2 函数的意义 函数的定义和使用 1 函数的定义 2 函数的调用 2.1 在同一文件中函数定义后函数调用 2.2 在同一文件中函数定义前函数调用 2.3 调用其它文件中定义的函数 2.3.1 在函数调用文件中进行声明 2.3.2 在头文件中进行函数的声明 函…

图片工具箱:一键批量加水印,守护创意,提升效率!

前言 你是否曾在处理海量图片时,被繁琐的步骤和漫长的等待时间折磨得苦不堪言?是否梦想过拥有一款神器,能让你的图片处理工作变得轻松愉快,从此告别加班的烦恼,迎接升职加薪的曙光?那么,让我向…

有限差分学习笔记

有限差分介绍 ​ 在数学中,有限差分法(finite-difference methods,简称FDM),是一种微分方程数值方法,是通过有限差分来近似导数,从而寻求微分方程的近似解。 由泰勒展开式的推导 显式方…

Web应用加密数据传输方案

目录 概述 最初的方案 改进后的方案 秘钥的过期时间 概述 介于公司最近发布了一个面向C端用户的Web系统,为防止前端调用后端的API接口时,数据传输的内容轻易的被黑客获取,而设计的一个前后端数据加密传输方案 最初的方案 在最开始&#xf…

2 种方式申请免费 SSL 证书,阿里云 Certbot

如何使用免费的 SSL 证书,有时在项目中需要使用免费的 SSL 证书,Aliyun 提供免费证书,三个月有效期,可以直接在aliyun 申请,搜索 SSL 证书,选择测试证书。 Aliyun 证书需要每三月来来换一次,页…

<数据集>车内视角行人识别数据集<目标检测>

数据集格式:VOCYOLO格式 图片数量:6470张 标注数量(xml文件个数):6470 标注数量(txt文件个数):6470 标注类别数:1 标注类别名称:[pedestrian] 序号类别名称图片数框数1pedestrian647029587 使用标注…

奔驰S迈巴赫S480升级动态按摩座椅效果怎么样

在迈巴赫 S480 的尊崇之旅中,舒适从未有尽头。现在,为您呈现前排动态按摩座椅的升级,将舒适体验提升至全新境界。 迈巴赫 S480 已然是舒适的代名词,但前排动态按摩座椅的升级,将为您带来前所未有的放松与享受。 当您…

网络UDP报文详细解析

目录 一、简介二、详细介绍三、其他相关链接1、TCP报文段的详细图总结2、TCP三次握手和四次挥手详解3、socket通信原理及相关函数详细总结4、网络包IP首部详细解析 一、简介 本文主要介绍UDP报文格式。 二、详细介绍 UDP是一种无连接、不可靠的用户数据报协议,其…

【注解】反序列化时匹配多个 JSON 属性名 @JsonAlias 详解

JsonAlias 注解是 Jackson 提供的一个功能强大的注解,允许一个字段在反序列化时匹配多个 JSON 属性名。它适用于在处理多种输入数据格式时,或当 JSON 数据的键名可能变化时。 一、JsonAlias 的作用 多种别名:JsonAlias 允许你为一个字段定义…

MySQL在Windows和Ubuntu上的安装与远程连接配置

MySQL是一个广泛使用的开源关系数据库管理系统,适用于各种操作系统。本文将详细介绍如何在Windows和Ubuntu系统上安装MySQL,并配置远程连接。 1. 在Windows上安装MySQL 1.1 下载MySQL安装包 首先,访问MySQL官方网站(https://de…