




已阅读5页,还剩124页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
USB2 0协议详解 Daxiang 20111031 1 序 USB发展历史传统的串口 并口通讯方式逐渐不能满足现有系统或者设备的数据传输速率需求 以Intel为首的七家公司于1994年推出了USB UniversalSerialBus 通用串行总线协议 概念 并在随后的几年内不断的对USB协议进行改进 成功推行USB1 1 2004年底 正式推出了USB2 0协议 接口与USB1 1兼容 2007秋季 正式推出了USB3 0协议 2 序 USB1 1与USB2 0之间的差别 3 USB2 0协议 USB体系简介USB数据流模型USB物理规范USB电气规范USB协议层规范USB设备架构 USB主机 硬件和软件USBHUB规范 4 USB体系简介 USB是一种支持热插拔的高速串行传输总线 使用差分信号来传输数据 最高速度可达480Mb S USB支持 总线供电 和 自供电 两种供电模式 在总线供电模式下 USB2 0设备最多可以获得500mA的电流 USB2 0被设计成为向下兼容的模式 当有全速 USB1 1 或者低速 USB1 0 设备连接到高速 USB2 0 主机时 主机可以通过分离传输来支持它们 一条USB总线上 可达到的最高传输速度等级由该总线上最慢的 设备 决定 该设备包括主机 HUB以及USB功能设备 5 USB体系简介 USB体系包括 主机 设备 以及 物理连接 三个部分 主机是一个提供USB接口及接口管理能力的硬件 软件及固件的复合体 可以是PC 也可以是OTG设备 一个USB系统中仅有一个USB主机 设备包括USB功能设备和USBHUB 最多支持127个设备 物理连接即指的是USB的传输线 在USB2 0系统中 要求使用屏蔽的双绞线 USB体系采用分层的星型拓扑来连接所有USB设备 6 USB体系简介 以HOST ROOTHUB为起点 最多支持7层 Tier 也就是说任何一个USB系统中最多可以允许5个USBHUB级联 一个复合设备 CompoundDevice 将同时占据两层或更多的层 ROOTHUB是一个特殊的USBHUB 它集成在主机控制器里 不占用地址 复合设备 CompoundDevice 可以占用多个地址 所谓复合设备其实就是把多个功能设备通过内置的USBHUB组合而成的设备 比如带录音话筒的USB摄像头等 一个USBHOST最多可以同时支持128个地址 地址0作为默认地址 只在设备枚举期间临时使用 而不能被分配给任何一个设备 因此一个USBHOST最多可以同时支持127个地址 如果一个设备只占用一个地址 那么可最多支持127个USB设备 含USBHUB 7 USB体系简介 8 USB体系简介 USB采用轮询的广播机制传输数据所有的传输都由主机发起 任何时刻整个USB体系内仅允许一个数据包的传输 即不同物理传输线上看到的数据包都是同一被广播的数据包 USB采用 令牌包 数据包 握手包 的传输机制在令牌包中指定数据包去向或者来源的设备地址和端点 Endpoint 从而保证了只有一个设备对被广播的数据包 令牌包作出响应 握手包表示了传输的成功与否 数据包 USB总线上数据传输的最小单位 包括SYNC 数据及EOP三个部分 其中数据的格式针对不同的包有不同的格式 但都以8位的PID开始 PID指定了数据包的类型 共16种 令牌包即指PID为IN OUT SETUP的包 端点 Endpoint 是USB设备中的可以进行数据收发的最小单元 支持单向或者双向的数据传输 设备支持端点的数量是有限制的 除默认端点外低速设备最多支持2组端点 2个输入 2个输出 高速和全速设备最多支持15组端点 9 包包的基本格式 USB体系简介 10 令牌 token 包 USB体系简介 11 数据包 握手包 USB体系简介 12 USB体系简介 管道 Pipe 管道是主机和设备端点之间数据传输的模型 共有两种类型的管道 无格式的流管道 StreamPipe 有格式的信息管道MessagePipe 任何USB设备一旦上电就存在一个信息管道 即默认的控制管道 USB主机通过该管道来获取设备的描述 配置 状态 并对设备进行配置 USB设备连接到HOST时 HOST必须通过默认的控制管道对其进行枚举 完成获得其设备描述 进行地址分配 获得其配置描述 进行配置等操作方可正常使用 USB设备的即插即用特性即依赖于此 13 USB体系简介 USB体系四种传输类型的控制传输 主要用于在设备连接时对设备进行枚举以及其他因设备而异的特定操作 中断传输 用于对延迟要求严格 小量数据的可靠传输 如键盘 游戏手柄等 批量传输 用于对延迟要求宽松 游戏手柄等大量数据的可靠传输 如U盘等 同步传输 用于对可靠性要求不高的实时数据传输 如摄像头 USB音响等 不同的传输类型在物理上并没有太大的区别 只是在传输机制 主机安排传输任务 可占用USB带宽的限制以及最大包长度有一定的差异 14 USB体系简介 USB设备通过管道和HOST通信 在默认控制管道上接受并处理以下三种类型的请求 标准请求 一共有11个标准请求 如得到设备描述 设置地址 得到配置描述等 所有USB设备均应支持这些请求 HOST通过标准请求来识别和配置设备 类 class 请求 USB还定义了若干个子类 如HUB类 大容量存储器类等 不同的类又定义了若干类请求 该类设备应该支持这些类请求 设备所属类在设备描述符中可以得到 厂商请求 这部分请求并不是USB规范定义的 而是设备生产商为了实现一定的功能而自己定义的请求 15 USB体系简介 USB接口扩展USBHUB提供了一种低成本 低复杂度的USB接口扩展方法 HUB的上行PORT面向HOST 下行PORT面向设备 HUB或功能设备 在下行PORT上 HUB提供了设备连接检测和设备移除检测的能力 并给各下行PORT供电 HUB可以单独使能各下行PORT 不同PORT可以工作不同的速度等级 高速 全速 低速 USBHUBHUB由HUB重发器 HUBRepeater 转发器 TransactionTranslator 以及HUB控制器 HUBController 三部分组成 HUBRepeater是上行PORT和下行PORT之间的一个协议控制的开关 它负责高速数据包的重生与分发 HUB控制器负责和HOST的通信 HOST通过HUB类请求和HUB控制器通讯 获得关于HUB本身和下行PORT的HUB描述符 进行HUB和下行PORT的监控和管理 转发器提供了从高速和全速 低速通讯的转换能力 通过HUB可以在高速HOST和全速 低速设备之间进行匹配 HUB在硬件上支持Reset Resume Suspend 16 USB体系简介 USBHOST在USB体系中负责设备连接 移除的检测 HOST和设备之间控制流和数据流的管理 传输状态的收集 总线电源的供给 17 USB2 0协议 USB体系简介USB数据流模型USB物理规范USB电气规范USB协议层规范USB设备架构 USB主机 硬件和软件USBHUB规范 18 USB数据流模型 USB体系在实现时采用分层的结构 19 USB数据流模型 在HSOT端 应用软件 ClientSW 不能直接访问USB总线 而必须通过USB系统软件和USB主机控制器来访问USB总线 在USB总线上和USB设备进行通讯 从逻辑上可以分为功能层 设备层和总线接口层三个层次 功能层完成功能级的描述 定义和行为 设备级则完成从功能级到传输级的转换 把一次功能级的行为转换为一次一次的基本传输 USB总线接口层则处理总线上的Bit流 完成数据传输的物理层实现和总线管理 途中黑色箭头代表真实的数据流 灰色箭头代表逻辑上的通讯 20 USB数据流模型 物理上 USB设备通过分层的星型总线连接到HOST 但在逻辑上HUB是透明的 各USB设备和HOST直接连接 和HOST上的应用软件形成一对一的关系 如下图所示 各应用软件 功能设备对之间的通讯相互独立 应用软件通过USB设备驱动程序 USBD 发起IRQ请求 请求数据传输 主机控制器驱动程序 HCD 接收IRQ请求 并解析成为USB传输和传输事务 Transaction 并对USB系统中的所有传输事务进行任务排定 因为可能同时有多个应用软件发起IRQ请求 主机控制器 HostController 执行排定的传输任务 在同一条共享的USB总线上进行数据包的传输 如右图所示 21 USB数据流模型 USB端点 管道和接口的关系 USB系统中数据的传输 宏观的看来是在HOST和USB功能设备之间进行 微观的看是在应用软件的Buffer和USB功能设备的端点之间进行 一般来说端点都有Buffer 可以认为USB通讯就是应用软件Buffer和设备端点Buffer之间的数据交换 交换的通道称为管道 应用软件通过和设备之间的数据交换来完成设备的控制和数据传输 通常需要多个管道来完成数据交换 因为同一管道只支持一种类型的数据传输 用在一起来对设备进行控制的若干管道称为设备的接口 一个USB设备可以包括若干个端点 不同的端点以端点编号和方向区分 不同端点可以支持不同的传输类型 访问间隔以及最大数据包大小 除端点0外 所有的端点只支持一个方向的数据传输 端点0是一个特殊的端点 它支持双向的控制传输 管道和端点关联 和关联的端点有相同的属性 如支持的传输类型 最大包长度 传输方向等 22 USB数据流模型 四种传输类型 控制 中断 批量 同步传输 1 控制传输 控制传输是一种可靠的双向传输 一次控制传输可分为三个阶段 第一阶段为从HOST到Device的SETUP事务传输 这个阶段指定了此次控制传输的请求类型 第二阶段为数据阶段 也有些请求没有数据阶段 第三阶段为状态阶段 通过一次IN OUT传输表明请求是否成功完成 控制传输通过控制管道在应用软件和Device的控制端点之间进行 控制传输过程中传输的数据是有格式定义的 USB设备或主机可根据格式定义解析获得的数据含义 其他三种传输类型都没有格式定义 控制传输对于最大包长度有固定的要求 对于高速设备该值为64Byte 对于低速设备该值为8 全速设备可以是8或16或32或64 高速端点的控制传输不能占用超过20 的微帧 全速和低速的则不能超过10 的帧 在一帧内如果有多余的未用时间 并且没有同步和中断传输 可以用来进行控制传输 23 USB数据流模型 2 中断传输 中断传输是一种轮询的传输方式 是一种单向的传输 HOST通过固定的间隔对中断端点进行查询 若有数据传输或可以接收数据则返回数据或发送数据 否则返回NAK 表示尚未准备好 中断传输的延迟有保证 但并非实时传输 它是一种延迟有限的可靠传输 支持错误重传 对于高速 全速 低速端点 最大包长度分别可以达到1024 64 8Bytes 高速中断传输不得占用超过80 的微帧时间 全速和低速不得超过90 中断端点的轮询间隔由在端点描述符中定义 全速端点的轮询间隔可以是1 255mS 低速端点为10 255mS 高速端点为 2 interval 1 125uS 其中interval取1到16之间的值 除高速高带宽中断端点外 一个微帧内仅允许一次中断事务传输 高速高带宽端点最多可以在一个微帧内进行三次中断事务传输 传输高达3072字节的数据 24 USB数据流模型 3 批量传输 批量传输是一种可靠的单向传输 但延迟没有保证 它尽量利用可以利用的带宽来完成传输 适合数据量比较大的传输 低速USB设备不支持批量传输 高速批量端点的最大包长度为512 全速批量端点的最大包长度可以为8 16 32 64 批量传输在访问USB总线时 相对其他传输类型具有最低的优先级 USBHOST总是优先安排其他类型的传输 当总线带宽有富余时才安排批量传输 高速的批量端点必须支持PING操作 向主机报告端点的状态 NYET表示否定应答 没有准备好接收下一个数据包 ACK表示肯定应答 已经准备好接收下一个数据包 25 USB数据流模型 4 同步传输 同步传输是一种实时的 不可靠的传输 不支持错误重发机制 只有高速和全速端点支持同步传输 高速同步端点的最大包长度为1024 全速的为1023 除高速高带宽同步端点外 一个微帧内仅允许一次同步事务传输 高速高带宽端点最多可以在一个微帧内进行三次同步事务传输 传输高达3072字节的数据 全速同步传输不得占用超过80 的帧时间 高速同步传输不得占用超过90 的微帧时间 同步端点的访问也和中断端点一样 有固定的时间间隔限制 在主机控制器和USBHUB之间还有另外一种传输 分离传输 SplitTransaction 它仅在主机控制器和HUB之间执行 通过分离传输 可以允许全速 低速设备连接到高速主机 分离传输对于USB设备来说是透明的 不可见的 26 USB2 0协议 USB体系简介USB数据流模型USB物理规范USB电气规范USB协议层规范USB设备架构 USB主机 硬件和软件USBHUB规范 27 USB接口 USB物理规范 28 USB物理规范 注 MiniUSB接口和MicroUSB接口不属于USB2 0协议范围 目前多数手机厂商已宣布统一使用MicroUSB接口作为手机充电器标准接口 29 USB物理规范 USB连接器支持热拔插 高速 全速USB线缆要求使用内含双绞线的屏蔽线 而且必须打上符合USB使用标记 低速USB推荐但非要求使用双绞线和屏蔽线 30 USB物理规范 USB合法cable标准可分离的USBcable APlug BPlugCable最大长度取决于信号衰减和传播延迟 同时受电压跌落限制 cable跌落电压 125mV 31 USB物理规范 高速 全速不可分离USBcableAplug 线或客户定义端Aplug端与线的定义同标准USBcable 都是必须适用与高速 全速 Cable差分线间skew 100ps 满足高速 全速的阻抗特性要求 电压跌落 衰减和传播延迟等也要满足相关要求 32 USB物理规范 低速不可分离USBcableAplug 线或客户定义端 满足阻抗特性和负载cap要求 单端cap 200 450pf cable最大长度取决于低速信号的上升和下降时间 即传播延迟 18ns 以满足Tr Tf要求 差分skew 100ps USB标准cable禁止使用在低速USB总线 USB标准cable的负载电容对低速USB总线而言太大了 33 USB物理规范 USB图标 Icon Device的USB接口打此图标 需要交费 不打图标使用USB接口可不缴费 34 USB物理规范 USBCable机械配置与材料需求High full speedcable电源线 28 20AWG 不要求绞线 信号线 28AWG 双绞线 每圈间隔60mm 80mm 排扰线 drainwire 28AWG镀锡铜线 镀锡铜编织层 有效区 65 Low speedcable 电源线 28 20AWG 不要求绞线 信号线 28AWG 推荐双绞线 排扰线 drainwire 28AWG镀锡铜线 镀锡铜编织层 有效区 65 推荐使用 35 USB物理规范 额定电压30V rms 操作温度范围 0 to 50 存储温度 20 to 60 电阻 36 USB物理规范 USB接地USB的屏蔽线必须与插头的机壳地相连 用户可以选择USBDevice与Cable的接地机制以满足实际需求和安规 EMI ESD RFI等要求 37 USB2 0协议 USB体系简介USB数据流模型USB物理规范USB电气规范USB协议层规范USB设备架构 USB主机 硬件和软件USBHUB规范 38 USB电气规范 信号发送高速信号发送简介支持480Mbps的高速信号传送 差分线每条线末端采用45ohm端接 合计差分阻抗为90ohm HUB下行端口 必须支持高速 全速和低速 HUB上行端口 必须支持高速 全速 不支持低速 所以上行端口的D 线不允许上拉1 5K 39 USB电气规范 ExampleHigh speedCapableTransceiverCircuit 40 USB电气规范 USB驱动器特性FS LS输出的低电平电压0 0 3V 输出高电平电压2 8V 3 6V HS输出的差分低电平电压 10 10mV 输出差分高电平电压360 440mV USBPort信号还必须能连续耐受与Vbus GND或其他数据线的短路 USBPort信号在任何驱动状态都必须能连续耐受如下电压波形 USB信号发送的最大输出波形 41 USB电气规范 FS驱动器特性连接要求用屏蔽的双绞线 差分阻抗90ohm 15 共模阻抗30 30 单线最大延迟26ns 不支持HS的 每条线驱动器的阻抗要求28 44ohm 支持HS的 每条线驱动器的阻抗要求40 5 49 5ohm 42 USB电气规范 FS信号波形 43 USB电气规范 LS驱动器特性连线与device组合电容 450pF D 或D 线电容 200pF 无阻抗控制要求 Cable传播延迟小于18nS LS信号波形 44 USB电气规范 HS 480Mbps 驱动器特性输出驱动器单端阻抗45 10 差分阻抗90 10 D 或D 输出高电平 400mV 10 输出低电平 0 10mV 电流驱动方式 D 或D 正常驱动电流17 78mA 下行端口D 或D 下拉15K 10 电阻到GND 要关注IC是否内部集成此电阻 参考如下摘录 要求使用屏蔽线 要求差分阻抗90ohm 15 共模阻抗30ohm 30 单线路延迟 26ns PCB板内走线控制差分阻抗90ohm 延迟可达4ns 长度约20inch以上 45 USB电气规范 信号的上升时间 下降时间FS LSTr Tf 10 90 时间 4 20ns1 3V VCRS 2 0V 46 USB电气规范 HSTransmitter ReceiverTestFixture 直接用100 差分探头测USB眼图时 请参考 MeasurementPlanes 47 USB电气规范 HS眼图模板Template1 TransmitwaveformrequirementsforhubmeasuredatTP2 andfordevice withoutacaptivecable measuredatTP3Template2 Transmitwaveformrequirementsfordevice withacaptivecable measuredatTP2Template3 Receiversensitivityrequirementsfordevice withacaptivecable whensignalisappliedatTP2Template4 Receiversensitivityrequirementsfordevice withoutacaptivecable whensignalisappliedatTP3 andforhubwhensignalisappliedatTP2Templates5and6arerecommendedguidelinesfordesigners Template5 TransmitwaveformrequirementsforhubtransceivermeasuredatTP1 andfordevicetransceivermeasuredatTP4Template6 ReceiversensitivityrequirementsfordevicetransceiverwhensignalisappliedatTP4 andforhubtransceiveratwhensignalisappliedatTP1 48 USB电气规范 49 USB电气规范 HS信号Tr Tf收端和发端都要求大于500ps 10 90 上升沿或下降沿单调 CableSkewD 与D 的Skew小于100ps 50 USB电气规范 接收器特性FS LS接收器特性差分信号接受范围见下图 D 和D 都可以接受瞬间低于VIH min FS 14ns LS 210ns 51 USB电气规范 HS接收器特性能接受符合模板要求的信号 推荐能接收 50mV 500mV的共模信号 能接收在复位握手期间的 50mV 600mV低频chirpJ和K信号 禁止在高速箝位电平 VHSSQ 以下恢复数据 VHSSQ 100mV 150mV 高速包的同步信号 至少12bit的SYNC KJKJKJKJKJKK 下行端口还必须具备检查连线断开能力 断开电平 525mV 625mV 52 USB电气规范 设备速度识别FS LS速度识别USB采用在D 或D 线上增加上拉电阻的方法来识别低速和全速设备 当USB主机探测到D D 线的电压已经接近高电平 而其它的线保持接地时 它就知道全速 低速设备已经连了 53 USB电气规范 HS速度识别为识别出高速设备 需要在上拉电阻和D 线之间连接一个由软件控制的开关 它通常被集成在USB设备接口芯片的内部 在reset期间 高速设备先切换到FS状态 并在D 上发chirpJ信号给Hub Hub收到chirpJ信号后返回连续的chirpK J K J K J信号 并在reset结束后切换到HS状态 device收到连续的chirpK J K J K J信号 在reset结束后也会切换到HS状态 至此速度识别成功 中间任何一个环节错 device将恢复到FS状态 54 USB电气规范 USB输入特性D 与D 无端接输入阻抗 300K FS LSHUBFS的D 或D 线上加铁氧体beadisdiscouraged 55 USB电气规范 HSD 或D 的DC阻抗 40 5 ZHSDRV 49 5 HS差分端接阻抗 80 ZHSTERM 100 HSD 或D 对地CAP 10pF 差分CAP 5pF HS的D 或D 线上加铁氧体beadisstronglydiscouraged HS负载等效电路 56 USB电气规范 信号电平FS LS电平 57 USB电气规范 HS电平 58 USB电气规范 连接和断开信号 59 USB电气规范 HS设备是通过检测到信号线上出现双倍的信号电压来判断连接断开的 525mV VHSDSC 625mV 60 USB电气规范 上电与连接时序 t1 上电电源切换时间 t2 电源稳定到信号连接时间 t3 reset前的确保机电稳定预留时间 t4 无活动挂起时间 t5 Hub发送reset到device的时间 t6 reset时间 10msminimum 61 USB电气规范 数据信号发送USB数据包采用差分信号传输 低速 全速数据信号发送 Thestartofapacket SOP issignaledbytheoriginatingportbydrivingtheD andD linesfromtheIdlestatetotheoppositelogiclevel Kstate 8bit L F 32bit FULL SYNCsignalforapacketstart TheSE0stateisusedtosignalanend of packet EOP EOP 2bitSE0 1bitJstate then busrecovertoIdlestate 62 USB电气规范 高速数据信号发送SOP 即由Idle切换到K状态来宣告开始发送包 其 K 是SYNC电平 NRZI序列KJKJKJKJKJKJKJKJKJKJKJKJKJKJKJKK 的第一个symbol EOP 对非SOF的EOP 共8bit 其第1bit为EOP前最后一个symbol取反 其余7bit与EOP前最后一个symbol相同 类似NRZI码的 0111111 对SOF的EOP 为40bit 其第1bit为EOP前最后一个symbol取反 其余bits与EOP前最后一个symbol相同 类似NRZI码的 0111111111111111111111111111111111111111 EOP结束后 BUS恢复到Idle状态 Idle D 和D 为 GND 63 USB电气规范 复位信号发送集线器信号通过控制端口上的持久的SE0态来实现对下形端口的复位 复位信号清除后 设备都将处于缺省状态 复位信号可在任一个集线器或主机的控制端口产生 该复位信号的最小持续时间为10ms 一个设备如果见其上形端口的SE0态持续时间超过2 5us 则它就把该信号作为复位信号处理 在复位信号清除后的10ms的复位恢复时间后 集线器必须能接收所有集线器请求 设备也必须能接收一个SetAddress 请求 如果接收这些请求失败 则设备将不能被USB系统软件所识别 64 USB电气规范 高速Hub或Device的复位协议先确认是高速device Hub开始发出SE0信号 视为T0点 Device检测SE0信号如果是从挂起状态唤醒 则device在检查到2 5us的reset信号后 启动高速检测握手进程 如果是从全速的非挂起状态唤醒 则device在检查到2 5us 3ms的reset信号后 启动高速检测握手进程 如果是从高速的非挂起状态唤醒 则device切换到全速前 必须等待3ms 3 125ms 在切换到全速后的100 s 875 s间 如果检测到SE0信号 启动高速检测握手进程 65 USB电气规范 高速检测握手进程 对低速device无效 高速device让D 上拉 断开高速端接 往Bus上发送ChirpK 时间1 7ms 从T0计算 Hub检测到的ChirpK必须大于2 5us 否则会持续发SE0信号 直到reset结束 Bus结束ChirpK状态后100us内 Hub必须不间断的交替发送ChirpK sandChirpJ s信号 以保证Bus处于激活状态而不会挂起 J或K信号时长40 60us ChirpJ K交替信号必须持续到reset结束前100 500us Hub发完Chirp信号后 发送SE0信号直到reset结束 复位结束前Hub必须切换到高速状态 Device发完chirp后 device必须接收到hub的交替ChirpK J K J K J信号 且每位信号的长度大于2 5us 如果检测OK device会在500us内 断开D 上拉 回复高速端接 进入高速default状态 如果device在发完自己的chirp后1ms 2 5ms后检测Fail device会切换到全速default状态直到reset结束 66 USB电气规范 挂起所有的设备都必须能支持挂起状态 并可从任一电平状态进入挂起态 当设备发现它们的上行总线上的空闲态持续时间超3 0ms时 它们便进入挂起态 当设备的所有端口上的总线不活动时间不超过10ms后 设备必须被真正的挂起 此时它仅从总线上获得挂起电流 如果总线缺少其他的通信流量时 SOF令牌将在每 微 帧中出现一次 以防止全速 高速设备被挂起 当任一低速设备缺乏通信流量时 在SOF令牌出现的每一帧中至少有一个低速设备处于活动态 以避免它们不被挂起 当处在挂起状态时 设备必须继续为它的D 高速 或D 低速 上的Rpu电阻提供电压从而维持一个空闲态 这样上行集线器才能为设备维持正确的连结状态 67 USB电气规范 高速设备挂起额外要求高速device如果检测到Bus为Idle状态大于3ms device将在idle开始后的3 125us内转换到全速配置 切换到全速后的100us 875us期间 device会采样Bus状态 如果是全速下的J状态 device会继续挂起 高速device或下行端口从挂起唤醒后 必须回复到高速状态 68 USB电气规范 挂起又可分为全局挂起和局部挂起 全局挂起当在总线的任何地方没有通信需要时 就要用到全局挂起 此时所有总线都处在挂起状态 主机通过中止它所有的传送 包括SOF令牌 来发送开始全局挂起信号 当总上的每个设备识别总线的空闲态持续适当时间时 它将进入挂起状态 局部挂起可以通过向集线器端口发送SetPortFeature PORT SUSPEND 来使与其相连的总线部分被挂起 此时处于那部分的设备经过上面所说的适当时延后进入挂起状态 69 USB电气规范 唤醒处在挂起状态的设备 当它的上行端口接收到任一非空闲信号时 它的操作将被唤醒 特别地 如果设备的远程唤醒功能被USB系统软件开启时 它也可以发信号给系统来完成唤醒操作 唤醒信号由主机或设备使用 以使一个挂起的总线段回到活动态 集线器在唤醒信号的生成和传播中起了十分重要的作用 设备唤醒时总有一个先后次序 我们将在后面详细介绍 USB系统软件必须提供10ms的唤醒恢复时间 在这段时间内 它将不对与被唤醒的部分总线相连的任一设备进行操作 端口的中断与连接也可以使集线器发送一个复位信号 从而唤醒系统 但仅当集线器具有远程唤醒使能时 这些事件才能引起集线器发送唤醒信号 70 USB电气规范 数据的编码与解码在包传送时 USB使用一种NRZI NoneReturnZeroInvert 即无回零反向码 编码方案 在该编码方案中 1 表示电平不变 0 表示电平改变 图8列出了一个数据流及其它的NRII编码 在该图的第二个波形图中 一开始的高电平表示数据线上的J态 后面就是NRZI编码 NRZI数据编码 71 USB电气规范 位插入为了确集信号发送的准确性 当在USB上发送一个包时 传送设备就要进行位插入操作 所谓位插入操作是指在数据被编码前 在数据流中每六个连续的 1 后插入一个 0 从而强迫NRZI码发生变化 如图所示 72 USB电气规范 位插入操作从同步格式 如图10所示 开始 贯穿于整个传送过程 在同步格式端的数据 1 作为真正数据流的第一位 位插入操作是由传送端强制执行的 是没有例外的 如果严格遵守位插入规则 甚至在EOP信号结束前也要插入一位 0 位 73 USB电气规范 接收端必须能对NRZI数据进行解码 识别插入位并去掉它们 如果接收端发现包中任一处有七个连续的 1 则将会产生一个位插入错误 该数据包将被忽略 关于位的插入有一个特例 那就是刚好在EOP前的时间间隔 EOP前的最后一个数据位可能被集线器的转换偏移而拉长 这种情况如图11所示 74 USB电气规范 同步pattern全速 低速 KJKJKJKK 共8bits 高速 15个KJ对 2个KK 32bits 每个Hub允许丢4bit 经过5级Hub后 最少可能只有12bits 75 USB电气规范 数据信号的发送速率高速数据发送率通常为480 000Mb s 主机 集线器和高速设备的数据率误差为 0 05 500ppm 对支持高速USB的主机 集线器和设备 工作在任何速率下数据率误差为 0 05 500ppm 全速数据发送率通常为12 000Mb s 主机 集线器和高速设备的数据率误差为 0 25 2500ppm 集线器控制器的数据率应该准确地知道 其误差最好控制在 0 05 500ppm 内 低速数据发送率为1 50Mb s 低速功能设备所允许的误差为 1 5 15000ppm 以上所述的误差 主要由下面的几种情况所引起 初始频率精度 crystal负载电容量的影响振荡器上电压供应的稳定性影响温度的影响器件的老化 76 USB电气规范 帧与帧间隔 FrameInterval 在低速 全速模式下 主机每间隔1ms 这个1ms称为一帧 允许误差0 005ms 发送一个帧开始令牌包SOF StartofFrame 包含SOF标记 帧序列号及CRC5校验码 在高速模式下 主机每间隔1 8ms 即为一微帧 允许误差0 0625 s 发送一个帧开始令牌包SOF 相邻帧间隔时间差 0 5bittime fullspeed 相邻微帧间隔时间差 4bitstime highspeed 77 USB电气规范 数据源的抖动在数据发送的边缘时间内 数据源可能发生一些变化 即抖动 处在任何数据变化集间的时间为N Tperiod 抖动时间 其中N为发生变化的位数 Tperiod为具有一定范围的数据率的实际时间段 数据抖动的测量与计算最大上升沿和下降沿时所用的负载相同 并且它们在数据线的交叉点处进行测量 如图12 对高速传送 Jitter需要满足眼图要求 对于全速传送 任何连续的差分数据变化的抖动时间为必须在 2 0ns内 对于任何一个成对出现的差分数据变化 Jk到下一个Jk的变化或kJ到下一个kJ的变化 的抖动时间必须在1 0ns内 对于低速传送 任何连续的差分数据变化的抖动时间必须在25ns内 而任一成对出现差分数据变化的抖动时间必须在 10ns内 这些抖动的现象包括时间的变化 主要归咎于差分缓冲器的延迟和上升沿及下降沿时间的不匹配 内部时钟抖动 噪声及其他随机因素的影响 78 USB电气规范 79 USB电气规范 接收端数据的抖动当抖动存在时 任何设备类型的数据接收必须能正确地对差分数据进行解码 这种情况的抖动可能是由上面所说的时延不匹配所引起 也可能是由源端和目标端数据速率的不匹配所引起 在特定的应用中 只要抖动条件满足 输出驱动器的抖动可能对设备时钟的精确性产生影响 详细的全速 低速接收端Jitter预算请参考USBspec2 0Table7 4和7 5 高速接收端在BER 10E 12下 Jitter应满足相应模板要求 80 EOP宽度全速 低速EOPEOP中SE0的宽度为2bitstime 发送端 全速SE0时间 160 175ns 低速SE0时间 1 25us 1 5us接收端 全速SE0时间应 82ns 低速SE0时间应 670ns 高速EOP 81 USB电气规范 电缆的延迟USB中传送信号的电缆所允许的时延为26ns 对于一个标准的USB可分电缆 其时延由从串行A口连接器端到串行B口连结端计算而得 并且其值小于26ns 而对于其它电缆 其时延由从串行A口连结器端到该电缆所连设备端计算而得 电缆延迟必须 5 2ns 米 即标准USB2 0电缆最大可以支持到5M以上 低速USBcable延迟必须 18ns 电缆的信号衰减对于进行高速信号发送的每根电缆而言 信号对 D D 所允许的最大衰减量右表所示 信号时延 Cable允许的最大衰减 82 USB电气规范 USB最大端到端信号延迟全速 低速 Host等待响应的最大时间为18bitstime 高速 721bitstime 83 USB测试模式顺应性测试需要 高速的USBHub Host和的Device才必须支持USBTestMode USB全速和低速没有testmode USBtestmode下的端口会反复发送如下数据 SI眼图测测试即可完成 84 USB电气规范 电源分布所有USB设备的缺省电压为低电压 当设备要从低电压变化到高电压时 则是由软件来控制的 在允许设备达到高电压之前 软件必须保证有足够的电压可供使用USB支持一定范围的电压来源和电压消耗供应者 包括如下的部分 根端口集线器 它是直接与USB主机控制器相连的 并与其相同的电源来源 从外部获得操作电压 AC或DC 的系统 在每个端口至少支持五个单位负载 这些端口称为高电压端口 由电池组提供电压的系统可以支持一个或五个单位负载 哪些只能支持一个单位负载的端口称为低电压端口 从总线获得电压的集线器 它的所有内部功能设备和下形端口都从它的上形端口的Vbus上获得电压 在电压升高时 它可以接一个单位负载 经过初始设置后 它可以接五个单位负载 初始设置电压被分配给了集线器 任一固定功能设备和外部端口 它的外部端口只能接一个单位负载 当集线器处于活动或挂起态时 它必须为这个端口提供电流 该种集线器如图所示 注 一个单位负载为100mA 85 USB电气规范 86 USB电气规范 自给电压集线器 如图所示 它的任一内部功能设备和下形端口不再从Vbus上获得电压 但当它的其余部分电压下降时 它的USB接口可接一个单位负载并从Vbus处获得电压 以允许该接口能工作 从外部 从USB 获得操作电压的集线器 可在每个端口接五个单位负载 由电池组提供电压的集线器 每端口可接一个或五个单位负载 Host和自供电Hub必须有OCP OCP值要 5A 拔插cable和上电Inrush不能触发OCP OCP后必须可自动恢复 无需用户机械干预 常用聚合物PTC或固态开关实现 87 USB电气规范 从总线获得电压的低电压功能设备 如图 该种设备上的所有电压均来自Vbus 在任一时刻 它们最多只能接一个单位负载 要求电压在4 4V以上都可以正常工作 从总线获得电压的高电压设备 如图所示 该种设备上的所需电压均来自Vbus 在电压升高时 它们至多只能接一个单位负载 要求在4 4V以上能正常工作 但当初始设置后 可接五个单位负载 要求在4 75V以上能正常工作 88 USB电气规范 自给电压功能设备 如图 当它function部分外的其余设备电压下降时 Vbus上可以最多接一个单位负载 以使USB接口处于活动状态 任何设备在任何时间都不允许向其上行端口的Vbus供电 只能向对应上行端口取电 在Vbus电源检测OK前 device也不允许向USB数据线 D D 的上拉电阻供电 在检测到Vbus消失后10s内 停止向数据线 D D 的上拉电阻供电 Device上电要确认没有向上行端口Vbus供电后才会接受复位信号 89 USB电气规范 电压跌落预算高压端口输出电压 4 75V 5 25V 低压端口输出电压 4 4V 5 25V 总线供电的Hub允许最大电压跌落350mV 从cable源端到Hub输出连接器端 可拔插的USBcable允许的最大电压跌落为125mV GND允许的最大电压跌落为125mV 从上行端口到下行端口 所有的Hub和功能设备要能够在4 4V下提供配置信息 只有低压功能端口操作电压可低至4 4V 带载超过一个负载的功能设备 其上行端口连接器处电压应 4 75V 90 USB电气规范 挂起与唤醒期间的电源控制低电压设备或高电压设备工作于低电压下时 它们所允许的挂起电流限制为500uA 如果一个设备被初始设置为高电压并且具有远程唤醒功能 则在挂起期间 它的电流可达到2 5mA 在挂起状态下允许间隔1s以上的 电流达到100mA 或500mA 的瞬间脉冲电流 脉冲电流 100mA uS 当一个集线器处在挂起状态时 它必须仍能为每个端口提供最大电流值 对于具有远程唤功能的设备 当它的电压在升高而系统的其余部分仍处于挂起态时 上面的要求是十分必要的 当设备被唤醒时 远程唤醒或由唤醒信号唤醒 它们此时必须能限制Vbus上的inrush电流 集线器内Vbus所允许的最大电压落差为330mV 设备必须有足够的bypass电容器或要有一个可控制的上电时序 以便当设备正在被唤醒的任一时间内 从集线器输入的电流不能超过端口的最大电流允许值 91 USB电气规范 设备的动态加载与卸载插入或拨掉一个集线器或其它功能设备时 不应影响网络中其余设备的正常工作为前提 卸载掉一个功能设备将中止设备与主机间的通信 此时集线器向主机警告该端口已被中断 动态加载某设备可能会产生强电流 因而会使HUB上的其他端口的Vbus低于它的最小工作电压 因此必须引用一些限流装置 Hub内Vbus允许的最大跌落电压为330mV 下行端口允许的最大负载为10uF 44 每个Hub的下行端口电源线必须带有大于120uF的lowESR的Bypass电容 在动态加载期间 通过使连结器上的信号端口处于空闲 以使其免受强电流的破坏 这样为了使电压端口首先进行联系 这就保证 在信号端口连接前 分布在下行设备上的电压是可用的 另外 在连接期间 信号线均处于高阻抗状态 因此标准信号线上此时没有电流 92 USB电气规范 设备从网络中卸去时 电缆的电感系统将在设备电缆的开口端产生一个很大的回流电压 它是没有破坏性的 但在电缆设备的末端必须有一些小容量的电容器 大于1uF 以保证产生的回流电压不会引起设备端电压极性的改变 但回流电压会产生噪音 通常利用分流电容器进行适当分流以减少噪音 分流电容器对回流电压及其产生的噪声进行缓和 93 USB电气规范 电气特性详细要求参考USB2 0协议Page206Table7 7 DCElectricalCharacteristics 94 USB2 0协议 USB体系简介USB数据流模型USB物理规范USB电气规范USB协议层规范USB设备架构 USB主机 硬件和软件USBHUB规范 95 USB协议层规范 USB采用littleedian字节顺序 在总线上先传输一个字节的最低有效位 最后传输最高有效位 采用NRZI编码 若遇到连续的6个1要求进行人为填充 即插入一个0 详见 NRZI编码 pdf 96 USB协议层规范 所有的USB包都由SYNC开始 高速包的SYNC宽度为32bit 31bits 0 1bit 1 全速 低速包的SYNC段度为8bit 0000 0001 实际接收到的SYNC长度由于USBHUB的关系 可能会小于该值 USB数据包的格式 97 USB协议层规范 PID表征了数据包的类型 分为令牌 Token 数据 Data 握手 Handshacke 以及特殊包4大类 共16种类型的PID 98 USB协议层规范 99 USB协议层规范 对于令牌包来说 PID之后是7位的地址和4位的端点号 令牌包没有数据域 以5位的CRC校验和结束 SOF是一类特殊的令牌包 PID后跟的是11位的帧编号 对于数据包来说 PID之后直接跟数据域 数据域的长度为N字节 数据域后以16位的CRC校验和结束 握手包仅有PID域 没有数据也没有校验和 分离传输会用到一类特殊的包 Start Split和Complete Split包 格式如下 在Start Split和Complete Split包中主要指定了此次分离传输所在的HUB的地址和下行端口编号以及端点类型 控制 中断 批量 同步 以及此次传输中数据包在整个数据中的位置 第一个包 中间的包 末尾的包 100 USB协议层规范 数据在USB总线上的传输以包为单位 包只能在帧内传输 高速USB总线的帧周期为125uS 全速以及低速USB总线的帧周期为1mS 帧的起始由一个特定的包 SOF包 表示 帧尾为EOF EOF不是一个包 而是一种电平状态 EOF期间不允许有数据传输 注意 虽然高速USB总线和全速 低速USB总线的帧周期不一样 当时SOF包中帧编号的增加速度是一样的 因为在高速USB系统中 SOF包中帧编号实际上取得是计数器的高11位 最低三位作为微帧编号没有使用 因此其帧编号的增加周期也为1mS 101 USB协议层规范 1 批量事务传输 102 USB协议层规范 批量传输是可靠的传输 需要握手包来表明传输的结果 若数据量比较大 将采用多次批量事务传输来完成全部数据的传输 传输过程中数据包的PID按照DATA0 DATA1 DATA0 的方式翻转 以保证发送端和接收端的同步 USB允许连续3次以下的传输错误 会重试该传输 若成功则将错误次数计数器清零 否则累加该计数器 超过三次后 HOST认为该端点功能错误 STALL 放弃该端点的传输任务 一次批量传输 Transfer 由1次到多次批量事务传输 Transa
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 中小学人教版语文《昆明的雨》第1课时教学课件
- 创业计划修订风险管理策略考核试卷
- 广元理科数学试卷
- 合川区中考数学试卷
- 广东中考22年数学试卷
- 杭州七县市高一数学试卷
- 2025年艺术教育培训平台运营风险与应对策略研究报告
- 煤炭清洁高效燃烧技术与我国煤炭产业发展趋势研究报告
- K2教育2025年STEM课程实施与教育质量评价改革研究报告
- 2025年肿瘤精准医疗在临床实践中的个体化治疗药物疗效监测体系构建报告
- 间隔棒安装机器人研究与应用
- 上市专项工作组管理办法
- 右肺上叶恶性肿瘤
- 四川省成都市武侯区2024-2025学年八年级下学期期末物理试卷(含答案)
- 《思想道德与法治》学习通课后章节答案期末考试题库2025年
- 清廉讲堂活动方案
- 新概念第一册家长会课件
- 家居落地活动方案
- 陕西省专业技术人员继续教育2025公需课《党的二十届三中全会精神解读与高质量发展》20学时题库及答案
- 2024华师一附中自招考试数学试题
- CJT 288-2017 预制双层不锈钢烟道及烟囱
评论
0/150
提交评论