USB2.0物理层的电信号
+ -

USB2.0低速、全速高速的EOP结束包

2026-04-20 本文链接为:http://www.usbzh.com/article/detail-1610.html ,欢迎转载,转载请附上本文链接。

USB 2.0 的包结束符(End of Packet, EOP)在电气层面上是一个特定的总线状态序列,其具体实现在“低速/全速”与“高速”模式下有本质区别

核心区别在于:

  • 低速/全速模式:EOP 通过电平状态(SE0 状态)的持续时间来界定。
  • 高速模式:EOP 通过差分信号上更复杂的逻辑(如“位填充”违例)来界定。

1. 低速与全速模式下的 EOP

这是 USB 1.x 定义的经典 EOP 结构,在 USB 2.0 规范中为了兼容性而被保留。

  • 电气定义:发送端驱动 SE0(Single-Ended 0,即 D+ 和 D- 均为低电平)状态。
  • 时序要求:SE0 状态必须维持 2 个位周期(Bit Times)的长度。
  • 结束序列:在 2 个周期的 SE0 结束后,总线还需要切换为 J 状态(Idle 空闲状态)并维持 1 个位周期,随后总线恢复高阻态(由上下拉电阻维持空闲电平),标志整个包的传输结束。

波形示意(全速模式为例):

  • 逻辑状态:数据结束 -> [SE0 维持 2 个位周期] -> [J 状态维持 1 个周期] -> Idle

2. 高速模式下的 EOP

高速模式(480 Mbps)的信号机制与低速/全速完全不同,其 EOP 定义更为复杂。

  • 电气定义:高速模式下总线空闲时为 SE0 状态(区别于低速/全速的 J 状态),因此不能单纯依靠 SE0 来标记结束。
  • 协议机制:高速模式的 EOP 通常通过强制违反 NRZI 编码规则或特定的数据序列来实现。虽然在数据包层面仍称为 EOP,但在物理层上,它表现为一个精确时序控制下的差分信号结束序列
  • 数据包特点:高速模式的数据包(Packet)以 Sync(同步域,32 位)开始,以 EOP(8 位字节,但有个别例外如 SOF 后 EOP 可长达 4 字节)结束。对于软件开发人员而言,高速 EOP 的处理较为复杂,通常由硬件控制器自动完成。

普通包 EOP:1 字节 01111111

用于:

这些包,所以 EOP 只需要 1 字节 就够:

0 1111111
  • 开头 0 是为了 NRZI 跳变对齐
  • 后面 7 个 1 → 触发位填充错误 → EOP

高速微帧 SOF 的 EOP:5 字节连续 1

用于:高速 Microframe SOF(微帧包)

USB2.0 高速 SOF 是一个较长、特殊的包,协议规定它的 EOP 不是 1 字节,而是5 字节的全1序列

01111111 11111111 11111111 11111111 11111111
  • 第 1 字节依然是 01111111
  • 后面继续跟 4 字节全 1
  • 总共一大串连续 1 → 依然是位填充错误
  • 作用依然是:告诉接收器“包结束了”

为什么 SOF 要 5 字节?

因为高速 SOF 要同步整个总线、时序要求更严格,
需要更长、更明显的结束序列,仅此而已。

3. 总结对比表

特性 低速 (Low Speed) / 全速 (Full Speed) 高速 (High Speed)
传输速率 1.5 Mbps / 12 Mbps 480 Mbps
EOP 关键特征 SE0 (D+/D- 均为低电平) 复杂的信号结束序列 (基于电流驱动与阻抗匹配)
EOP 持续时间 2 个位周期 (Bit Times) 逻辑上的 1 个字节长度,物理时序极短
空闲状态 (Idle) J 状态 (全速:D+高;低速:D-高) SE0 状态 (D+/D- 均低)
总线电压摆幅 3.3V (使用 1.5k 上拉电阻) 400mV (使用 45 欧姆/22.5 欧姆阻抗匹配)

4. 额外知识:高速模式是如何识别的?

高速设备并非一开始就使用高速 EOP。当一个高速设备插入 USB 2.0 主机时,它首先会被识别为全速设备(通过 D+ 线的 1.5k 上拉电阻)。

只有在主机发出 Reset 信号(SE0 持续 10ms 以上)后,设备与主机会通过 Chirp KChirp KJ 握手信号进行协商。协商成功后,双方才会断开上拉电阻并切换到高速模式(此时信号电压降至 400mV),并使用上述的高速 EOP 机制进行通信。

本文链接为:http://www.usbzh.com/article/detail-1610.html ,欢迎转载,转载请附上本文链接。

HID人机交互QQ群:564808376    UAC音频QQ群:218581009    UVC相机QQ群:331552032    BOT&UASP大容量存储QQ群:258159197    STC-USB单片机QQ群:315457461    USB技术交流QQ群2:580684376    USB技术交流QQ群:952873936     USB技术交流3:1031974172

0 篇笔记 写笔记

USB2.0全速设备使用逻辑分析仪抓取IN令牌包分析SOP/SYNC/PID/EOP
发在B站上的录制的视频 2.USB2.0包Packet的组成-SOP SYNC EOP的解析其中下面有一条评论,询问 站长,也就是说SOP/SYNC/EOP是物理层的,用分析仪都抓不到是吧?这个我在下面也回答了,是可以抓取到的,只不过对于我们进行包分析,意义不大,因为我们的关注点已经不在那里了。刚......
USB2.0低速、全速高速的EOP结束包
USB 2.0 的包结束符(End of Packet, EOP)在电气层面上是一个特定的总线状态序列,其具体实现在“低速/全速”与“高速”模式下有本质区别。核心区别在于:低速/全速模式:EOP 通过电平状态(SE0 状态)的持续时间来界定。高速模式:EOP 通过差分信号上更复杂的逻辑(如“位......
关注公众号
  • HID人机交互
  • Linux&USB
  • UAC音频
  • CDC
  • TYPE-C
  • USB规范
  • USB大容量存储
  • USB百科
  • USB周边
  • UVC摄像头
  • Windows系统USB
  • 音视频博客
  • 取消
    感谢您的支持,我会继续努力的!
    扫码支持
    扫码打赏,你说多少就多少

    打开支付宝扫一扫,即可进行扫码打赏哦

    您的支持,是我们前进的动力!