【USB笔记】USB 2.0 帧开始包Start-of-Frame Packets
USB笔记 USB 2.0 帧开始包Start-of-Frame Packets (SOF包SOF Packets)
说明
介绍的是USB 2.0协议中的帧开始包(Start-of-Frame Packets),通常简写为SOF包(SOF packets)。
下面是使用抓包工具查看的一个Full-Speed设备的SOF包示例:
介绍
帧开始包Start-of-Frame (SOF) packets用于SOF标记和帧号。
帧开始包Start-of-Frame (SOF) packets由主机(host)发出,对于全速总线(full-speed bus),标称速率为1.00 ms±0.0005 ms,对于高速总线(high-speed bus),标称速率为125 µs±0.0625 µs。
SOF包(SOF packets)包含一个表示包类型的PID,然后是一个11位的帧号(frame number)字段,如下图所示。
SOF PID参数如下:
Type | Value |
---|---|
PID Type | Token |
PID Name | SOF |
PID<3:0> | 0101B |
PID value<7:0> | 0xA5 |
Source | host |
Bus Speed | high, full |
Description | Start-of-Frame marker and frame number |
SOF令牌(SOF token)的组成只有令牌事务,该事务以精确的时间间隔分发与每一帧开始相对应的SOF标记和帧号。所有高速和全速设备(包括集线器)都会接收SOF包。
SOF令牌不会使任何接收的设备产生返回包;因此,不能保证SOF包成功发送到任何指定的设备。
SOF包的帧号(frame number),帧号每帧递增,在达到其最大值7FFH时会翻转,开始重新计数。
SOF包提供了两个定时信息。当设备检测到SOF PID时,就会知道产生了一个SOF。对帧时序敏感的设备,如果不需要跟踪帧号(如全速运行的集线器),只需要解码SOF PID,它们可以忽略帧号及其CRC。如果一个设备需要跟踪帧号,它必须同时解析PID和时间戳。对总线时序(bus timing)信息没有特别需求的全速设备(full-speed devices)可以忽略SOF包。
SOF标记还可以防止设备在总线没有其他USB通信时进入低功耗挂起状态。
USB帧和微帧USB Frames and Microframes
USB定义了一个全速1ms帧时间,由帧开始包Start-of-Frame (SOF) packets指示,每1ms一个周期,具有定义的抖动容限(jitter tolerances)。帧间隔(TFRAMET_{FRAME}TFRAME)长度定义为1.000 ms±500 ns。帧间隔(frame interval)是从一个帧的SOF令牌中的任意点到下一个帧的SOF令牌中的同一点测量的。
USB还定义了高速125µs帧时间,并具有抖动容限(jitter tolerances)的微帧(microframe)。微帧间隔(THSFRAMT_{HSFRAM}THSFRAM)长度定义为125.0µs±62.5 ns。微帧间隔(microframe interval)是从一个微帧的SOF令牌中的任意一点到下一个微帧的SOF令牌中的同一点进行测量的。
对于全速链路(full-speed links),SOF包由主机控制器(host controller)或集线器事务转换器(hub transaction translator)每1ms生成一次。对于高速链路(high-speed links),则是会在每8个125µs周期之后生成SOF包。
下图显示了微帧和帧之间的关系。
高速设备(high-speed devices)在每1 ms的周期内,会看到具有相同帧号的SOF包8次(每125 µs)。如果需要,高速设备可以通过检测具有与前一个SOF不同的帧号的SOF,并将其作为第0个微帧,以此来确定特定的微帧 “编号”。接下来的7个具有相同帧号的SOF可以视为第1至第7个微帧。
参考资料
Universal Serial Bus Specification Revision 2.0
USB Complete, 5th Edition
本文链接:https://blog.csdn.net/u012028275/article/details/113819250
【USB笔记】USB 2.0 帧开始包Start-of-Frame Packets相关推荐
- 【USB笔记】 USB2.0 包格式 握手包Handshake Packets
USB笔记 USB2.0 包格式Packet Formats 握手包Handshake Packets 说明 介绍的是USB 2.0协议中包格式(Packet Formats)的握手包(Handsha ...
- 【USB笔记】USB2.0 不同传输类型下的理论最大速率
USB笔记 USB2.0 不同传输类型下的理论最大速率 USB2.0协议中定义了三种速率,低速(low speed),全速(full speed),高速(high speed). 最大速率如下: 最大 ...
- 【USB笔记】 USB1.0与USB1.1差异概述
USB笔记 USB1.0与USB1.1差异概述 为什么写这个 之前打算整理一下不同的USB协议的差异,由于对于这些协议之间的区别不是太了解,就直接通过搜索引擎进行查找.然后看某度百科,某度知道,某乎, ...
- 【USB笔记】 USB设备请求USB Device Requests
USB笔记 USB设备请求USB Device Requests 所有USB设备都会响应主机向设备默认控制管道(Control Pipe)上发送的请求(requests). 这些请求是使用控制传输(c ...
- 第二篇 USB2.0协议简述(包-事务-传输)
上一篇:https://blog.csdn.net/qq_40088639/article/details/109462408 一. USB2.0通信协议简介 1. 包(Package) 包是USB传 ...
- 【USB笔记】端点描述符Endpoint Descriptor
USB笔记 端点描述符 (Endpoint Descriptor) 端点描述符 (Endpoint Descriptor)描述了USB规范定义的端点信息,包含有端点的带宽等信息.每一个端点都有自己的端 ...
- 【USB笔记】 标准设备请求Standard Device Requests
USB笔记 标准设备请求 Standard Device Requests 这里主要列举出所有设备定义的标准设备请求.分别概述了标准设备请求(Standard Device Requests)和给出了 ...
- 【USB笔记】配置描述符Configuration Descriptor
USB笔记 配置描述符(Configuration Descriptor) 配置描述符(Configuration Descriptor)说明了一个特定配置的相关信息.取得设备描述符(Device D ...
- 【USB笔记】接口描述符Interface Descriptor
USB笔记 接口描述符 (Interface Descriptor) 接口描述符(Interface Descriptor)描述了配置中一个特定的接口.配置提供了一个或多个接口,每个接口都含有类(Cl ...
最新文章
- 关于单CPU,多CPU上的原子操作
- 7-4 jmu-Java-03面向对象基础-04-形状-继承 (15 分)
- 面试中的这些坑,你踩过几个?
- 当当网首页——CSS代码
- 【数据结构与算法】【算法思想】Dijkstra算法
- 负载均衡工具 haproxy剖析
- python select實現非阻塞socket
- 雷林鹏分享:jQuery EasyUI 数据网格 - 设置排序
- 加州理工学院公开课:机器学习与数据挖掘_神经网络
- CAS实现单点登录SSO执行原理探究超详细
- win7连接共享打印机时安装驱动程序出现0x00000bcb错误【解决办法】
- 微信小游戏3d入门视频教程
- matlab仿真调速,直流调速系统的MATLAB仿真参考程序
- ios 微信分享重新编码链接_iOS微信分享及从Safari跳转到App
- 人工智能数学基础--微分:定义、运算以及应用
- python 聚宽 对股票名称或代码进行查询
- linux终端设置es副本数,elasticsearch之修改shards数
- qcow2文件的snapshot管理
- 最简单Unity 连招入门--只有20行代码
- 北邮计科院导师简况2009-09-27 14:13:38
热门文章
- Python数据分析三剑客学习笔记Day3——pandas包的使用:认识series类型,DataFrame类型,读取excel表格数据及数据操作
- 屏幕录制方法?如何在电脑进行屏幕录制
- NNDL 作业3:分别使用numpy和pytorch实现FNN例题
- 2.css字体 文本属性
- HDMI设计1--HDMI 1.4b SPEC的阅读个人总结
- GC日志的查看(日志意思)
- JAVA期末大作业之学生信息管理简洁版系统
- 硕盟 HDMI转VGA 笔记本台式主机HDMI转VGA显示器转接头
- Win11 与 macOS 12 界面对比
- php 倒置,PHP依赖倒置案例详解