USB2.0协议知识详解.ppt

上传人:小飞机 文档编号:5451771 上传时间:2023-07-08 格式:PPT 页数:129 大小:3.75MB
返回 下载 相关 举报
USB2.0协议知识详解.ppt_第1页
第1页 / 共129页
USB2.0协议知识详解.ppt_第2页
第2页 / 共129页
USB2.0协议知识详解.ppt_第3页
第3页 / 共129页
USB2.0协议知识详解.ppt_第4页
第4页 / 共129页
USB2.0协议知识详解.ppt_第5页
第5页 / 共129页
点击查看更多>>
资源描述

《USB2.0协议知识详解.ppt》由会员分享,可在线阅读,更多相关《USB2.0协议知识详解.ppt(129页珍藏版)》请在三一办公上搜索。

1、USB2.0协议详解,1,序,USB发展历史 传统的串口、并口通讯方式逐渐不能满足现有系统或者设备的数据传输速率需求。以Intel为首的七家公司于1994年推出了USB(Universal Serial Bus,通用串行总线协议)概念,并在随后的几年内不断的对USB协议进行改进,成功推行USB 1.1;2004年底,正式推出了USB 2.0协议。接口与USB1.1兼容;2007秋季,正式推出了USB 3.0协议。,2,序,USB 1.1与USB 2.0之间的差别,3,USB2.0 协议,USB 体系简介USB 数据流模型USB 物理规范USB 电气规范USB 协议层规范USB 设备架构;USB

2、 主机:硬件和软件USB HUB 规范,4,USB 体系简介,USB 是一种支持热插拔的高速串行传输总线,使用差分信号来传输数据,最高速度可达 480Mb/S。USB 支持“总线供电”和“自供电”两种供电模式。在总线供电模式下,USB2.0设备最多可以获得500mA的电流;USB2.0 被设计成为向下兼容的模式,当有全速(USB 1.1)或者低速(USB 1.0)设备连接到高速(USB 2.0)主机时,主机可以通过分离传输来支持它们。一条 USB 总线上,可达到的最高传输速度等级由该总线上最慢的“设备”决定,该设备包括主机、HUB以及USB功能设备。,5,USB 体系简介,USB 体系包括“主

3、机”、“设备”以及“物理连接”三个部分。主机是一个提供USB接口及接口管理能力的硬件、软件及固件的复合体,可以是PC,也可以是OTG设备。一个USB 系统中仅有一个USB主机;设备包括 USB功能设备和 USB HUB,最多支持 127个设备;物理连接即指的是USB 的传输线。在USB 2.0系统中,要求使用屏蔽的双绞线。USB 体系采用分层的星型拓扑来连接所有USB设备,6,USB 体系简介,以 HOST-ROOT HUB为起点,最多支持 7 层(Tier),也就是说任何一个USB 系统中最多可以允许 5个 USB HUB 级联。一个复合设备(Compound Device)将同时占据两层或

4、更多的层。ROOT HUB 是一个特殊的 USB HUB,它集成在主机控制器里,不占用地址。“复合设备(Compound Device)”可以占用多个地址。所谓复合设备其实就是把多个功能设备通过内置的 USB HUB 组合而成的设备,比如带录音话筒的 USB 摄像头等。一个 USB HOST 最多可以同时支持 128 个地址,地址 0 作为默认地址,只在设备枚举期间临时使用,而不能被分配给任何一个设备,因此一个 USB HOST 最多可以同时支持 127 个地址,如果一个设备只占用一个地址,那么可最多支持 127个 USB 设备(含USB HUB)。,7,USB 体系简介,8,USB 体系简介

5、,USB 采用轮询的广播机制传输数据 所有的传输都由主机发起,任何时刻整个USB体系内仅允许一个数据包的传输,即不同物理传输线上看到的数据包都是同一被广播的数据包;USB 采用“令牌包”-“数据包”-“握手包”的传输机制在令牌包中指定数据包去向或者来源的设备地址和端点(Endpoint),从而保证了只有一个设备对被广播的数据包/令牌包作出响应。握手包表示了传输的成功与否。数据包:USB 总线上数据传输的最小单位,包括 SYNC、数据及 EOP 三个部分。其中数据的格式针对不同的包有不同的格式。但都以 8 位的 PID 开始。PID 指定了数据包的类型(共 16种)。令牌包即指 PID 为 IN

6、/OUT/SETUP的包。端点(Endpoint):是 USB 设备中的可以进行数据收发的最小单元,支持单向或者双向的数据传输。设备支持端点的数量是有限制的,除默认端点外低速设备最多支持 2 组端点(2 个输入,2 个输出),高速和全速设备最多支持 15 组端点。,9,10,包包的基本格式,USB 体系简介,11,令牌(token)包,USB 体系简介,12,数据包,握手包,USB 体系简介,USB 体系简介,管道(Pipe)管道是主机和设备端点之间数据传输的模型,共有两种类型的管道;无格式的流管道(Stream Pipe)有格式的信息管道Message Pipe)。任何USB设备一旦上电就存

7、在一个信息管道,即默认的控制管道,USB 主机通过该管道来获取设备的描述、配置、状态,并对设备进行配置。USB 设备连接到 HOST 时,HOST必须通过默认的控制管道对其进行枚举,完成获得其设备描述、进行地址分配、获得其配置描述、进行配置等操作方可正常使用。USB 设备的即插即用特性即依赖于此。,13,USB 体系简介,USB 体系四种传输类型的控制传输:主要用于在设备连接时对设备进行枚举以及其他因设备而异的特定操作。中断传输:用于对延迟要求严格、小量数据的可靠传输,如键盘、游戏手柄等。批量传输:用于对延迟要求宽松,游戏手柄等大量数据的可靠传输,如U盘等。同步传输:用于对可靠性要求不高的实时

8、数据传输,如摄像头、USB 音响等。不同的传输类型在物理上并没有太大的区别,只是在传输机制、主机安排传输任务、可占用USB 带宽的限制以及最大包长度有一定的差异。,14,USB 体系简介,USB 设备通过管道和HOST 通信,在默认控制管道上接受并处理以下三种类型的请求:标准请求:一共有11 个标准请求,如得到设备描述、设置地址、得到配置描述等。所有USB 设备均应支持这些请求。HOST 通过标准请求来识别和配置设备。类(class)请求:USB 还定义了若干个子类,如HUB 类、大容量存储器类等。不同的类又定义了若干类请求,该类设备应该支持这些类请求。设备所属类在设备描述符中可以得到。厂商请

9、求:这部分请求并不是 USB 规范定义的,而是设备生产商为了实现一定的功能而自己定义的请求。,15,USB 体系简介,USB 接口扩展USB HUB提供了一种低成本、低复杂度的USB 接口扩展方法。HUB的上行PORT 面向 HOST,下行 PORT 面向设备(HUB 或功能设备)。在下行 PORT 上,HUB 提供了设备连接检测和设备移除检测的能力,并给各下行PORT供电。HUB可以单独使能各下行PORT,不同PORT 可以工作不同的速度等级(高速/全速/低速)。USB HUBHUB由HUB重发器(HUB Repeater)、转发器(Transaction Translator)以及HUB

10、控制器(HUB Controller)三部分组成。HUB Repeater是上行PORT 和下行PORT之间的一个协议控制的开关,它负责高速数据包的重生与分发;HUB 控制器负责和 HOST的通信,HOST通过 HUB 类请求和 HUB 控制器通讯,获得关于 HUB 本身和下行 PORT 的 HUB 描述符,进行HUB和下行PORT 的监控和管理。转发器提供了从高速和全速/低速通讯的转换能力,通过 HUB 可以在高速 HOST 和全速/低速设备之间进行匹配。HUB 在硬件上支持 Reset、Resume、Suspend。,16,USB 体系简介,USB HOST 在USB体系中负责设备连接/移

11、除的检测、HOST 和设备之间控制流和数据流的管理、传输状态的收集、总线电源的供给。,17,USB2.0 协议,USB 体系简介USB 数据流模型USB 物理规范USB 电气规范USB 协议层规范USB 设备架构;USB 主机:硬件和软件USB HUB 规范,18,USB 数据流模型,USB 体系在实现时采用分层的结构,19,USB 数据流模型,在 HSOT端,应用软件(Client SW)不能直接访问 USB 总线,而必须通过USB系统软件和USB主机控制器来访问 USB 总线,在 USB总线上和USB 设备进行通讯。从逻辑上可以分为功能层、设备层和总线接口层三个层次。功能层完成功能级的描述

12、、定义和行为;设备级则完成从功能级到传输级的转换,把一次功能级的行为转换为一次一次的基本传输;USB 总线接口层则处理总线上的Bit流,完成数据传输的物理层实现和总线管理。途中黑色箭头代表真实的数据流,灰色箭头代表逻辑上的通讯。,20,USB 数据流模型,物理上,USB设备通过分层的星型总线连接到 HOST,但在逻辑上HUB是透明的,各USB 设备和HOST直接连接,和 HOST上的应用软件形成一对一的关系。如下图所示:各应用软件-功能设备对之间的通讯相互独立,应用软件通过USB设备驱动程序(USBD)发起 IRQ 请求,请求数据传输。主机控制器驱动程序(HCD)接收 IRQ 请求,并解析成为

13、 USB传输和传输事务(Transaction),并对 USB 系统中的所有传输事务进行任务排定(因为可能同时有多个应用软件发起 IRQ 请求)。主机控制器(Host Controller)执行排定的传输任务,在同一条共享的 USB 总线上进行数据包的传输。如右图所示。,21,USB 数据流模型,USB 端点、管道和接口的关系。USB 系统中数据的传输,宏观的看来是在HOST 和 USB 功能设备之间进行;微观的看是在应用软件的 Buffer 和 USB 功能设备的端点之间进行。一般来说端点都有 Buffer,可以认为USB通讯就是应用软件Buffer和设备端点Buffer之间的数据交换,交换

14、的通道称为管道。应用软件通过和设备之间的数据交换来完成设备的控制和数据传输。通常需要多个管道来完成数据交换,因为同一管道只支持一种类型的数据传输。用在一起来对设备进行控制的若干管道称为设备的接口;一个 USB 设备可以包括若干个端点,不同的端点以端点编号和方向区分。不同端点可以支持不同的传输类型、访问间隔以及最大数据包大小。除端点 0外,所有的端点只支持一个方向的数据传输。端点 0是一个特殊的端点,它支持双向的控制传输。管道和端点关联,和关联的端点有相同的属性,如支持的传输类型、最大包长度、传输方向等。,22,USB 数据流模型,四种传输类型(控制/中断/批量/同步传输)1.控制传输:控制传输

15、是一种可靠的双向传输,一次控制传输可分为三个阶段。第一阶段为从HOST到Device的SETUP事务传输,这个阶段指定了此次控制传输的请求类型;第二阶段为数据阶段,也有些请求没有数据阶段;第三阶段为状态阶段,通过一次IN/OUT 传输表明请求是否成功完成。控制传输通过控制管道在应用软件和 Device 的控制端点之间进行,控制传输过程中传输的数据是有格式定义的,USB 设备或主机可根据格式定义解析获得的数据含义。其他三种传输类型都没有格式定义。控制传输对于最大包长度有固定的要求。对于高速设备该值为 64Byte;对于低速设备该值为 8;全速设备可以是 8或 16或 32或 64。高速端点的控制

16、传输不能占用超过 20%的微帧,全速和低速的则不能超过 10%的帧。在一帧内如果有多余的未用时间,并且没有同步和中断传输,可以用来进行控制传输。,23,USB 数据流模型,2.中断传输:中断传输是一种轮询的传输方式,是一种单向 的传输,HOST通过固定的间隔对中断端点进行查询,若有数据传输或可以接收数据则返回数据或发送数据,否则返回NAK,表示尚未准备好。中断传输的延迟有保证,但并非实时传输,它是一种延迟有限的可靠传输,支持错误重传。对于高速/全速/低速端点,最大包长度分别可以达到1024/64/8 Bytes。高速中断传输不得占用超过 80%的微帧时间,全速和低速不得超过 90%。中断端点的

17、轮询间隔由在端点描述符中定义,全速端点的轮询间隔可以是 1255mS,低速端点为 10255mS,高速端点为(2*interval-1)*125uS,其中 interval取 1到 16之间的值。除高速高带宽中断端点外,一个微帧内仅允许一次中断事务传输,高速高带宽端点最多可以在一个微帧内进行三次中断事务传输,传输高达 3072 字节的数据。,24,USB 数据流模型,3.批量传输:批量传输是一种可靠的单向传输,但延迟没有保证,它尽量利用可以利用的带宽来完成传输,适合数据量比较大的传输。低速 USB 设备不支持批量传输,高速批量端点的最大包长度为 512,全速批量端点的最大包长度可以为 8、16

18、、32、64。批量传输在访问 USB 总线时,相对其他传输类型具有最低的优先级,USB HOST 总是优先安排其他类型的传输,当总线带宽有富余时才安排批量传输。高速的批量端点必须支持PING 操作,向主机报告端点的状态,NYET 表示否定应答,没有准备好接收下一个数据包,ACK 表示肯定应答,已经准备好接收下一个数据包。,25,USB 数据流模型,4.同步传输:同步传输是一种实时的、不可靠的传输,不支持错误重发机制。只有高速和全速端点支持同步传输,高速同步端点的最大包长度为 1024,全速的为 1023。除高速高带宽同步端点外,一个微帧内仅允许一次同步事务传输,高速高带宽端点最多可以在一个微帧

19、内进行三次同步事务传输,传输高达 3072 字节的数据。全速同步传输不得占用超过 80%的帧时间,高速同步传输不得占用超过 90%的微帧时间。同步端点的访问也和中断端点一样,有固定的时间间隔限制。在主机控制器和 USB HUB 之间还有另外一种传输分离传输(Split Transaction),它仅在主机控制器和 HUB之间执行,通过分离传输,可以允许全速/低速设备连接到高速主机。分离传输对于USB 设备来说是透明的、不可见的。,26,USB2.0 协议,USB 体系简介USB 数据流模型USB 物理规范USB电气规范USB 协议层规范USB 设备架构;USB 主机:硬件和软件USB HUB

20、规范,27,28,USB接口,USB物理规范,USB物理规范,注:Mini USB接口和Micro USB接口不属于USB2.0协议范围;目前多数手机厂商已宣布统一使用 Micro USB接口作为手机充电器标准接口。,29,USB物理规范,USB连接器支持热拔插;高速/全速USB线缆要求使用内含双绞线的屏蔽线,而且必须打上符合USB使用标记;低速USB推荐但非要求使用双绞线和屏蔽线;,30,USB物理规范,USB 合法cable 标准可分离的USB cable=A Plug+B PlugCable最大长度取决于信号衰减和传播延迟,同时受电压跌落限制(cable跌落电压125mV);,31,US

21、B物理规范,高速/全速 不可分离 USB cableA plug+线或客户定义端A plug端与线的定义同标准USB cable,都是必须适用与高速/全速;,Cable 差分线间skew100ps;满足高速/全速的阻抗特性要求;电压跌落,衰减和传播延迟等也要满足相关要求;,32,USB物理规范,低速不可分离 USB cableA plug+线或客户定义端,满足阻抗特性和负载cap要求(单端cap:200450pf);cable最大长度取决于低速信号的上升和下降时间(即传播延迟18ns,以满足Tr/Tf要求);差分skew100ps;,USB标准cable禁止使用在低速USB总线;USB标准ca

22、ble的负载电容对低速USB总线而言太大了;,33,USB物理规范,USB 图标(Icon)Device的USB接口打此图标,需要交费;不打图标使用USB接口可不缴费;,34,USB物理规范,USB Cable机械配置与材料需求High-/full-speed cable电源线:2820AWG,不要求绞线;信号线:28AWG,双绞线(每圈间隔60mm-80mm);排扰线(drain wire):28AWG镀锡铜线;镀锡铜编织层:有效区65%;Low-speed cable;电源线:2820AWG,不要求绞线;信号线:28AWG,推荐双绞线;排扰线(drain wire):28AWG镀锡铜线;镀

23、锡铜编织层:有效区65%,推荐使用;,35,USB物理规范,额定电压30V(rms)操作温度范围:0 to+50 存储温度:-20 to+60 电阻:,36,USB物理规范,USB接地USB的屏蔽线必须与插头的机壳地相连;用户可以选择USB Device与Cable的接地机制以满足实际需求和安规/EMI/ESD/RFI等要求;,37,USB2.0 协议,USB 体系简介USB 数据流模型USB 物理规范USB电气规范USB 协议层规范USB 设备架构;USB 主机:硬件和软件USB HUB 规范,38,USB 电气规范,信号发送高速信号发送简介支持480Mbps的高速信号传送,差分线每条线末端

24、采用45 ohm端接,合计差分阻抗为90ohm;HUB下行端口,必须支持高速、全速和低速;HUB上行端口,必须支持高速、全速,不支持低速;所以上行端口的D-线不允许上拉1.5K;,39,USB 电气规范,Example High-speed Capable Transceiver Circuit,40,USB 电气规范,USB驱动器特性FS&LS输出的低电平电压00.3V;输出高电平电压2.8V3.6V;HS输出的差分低电平电压-10+10mV;输出差分高电平电压360440mV;USB Port信号还必须能连续耐受与Vbus、GND或其他数据线的短路;USB Port信号在任何驱动状态都必须

25、能连续耐受如下电压波形;,USB信号发送的最大输出波形,41,USB 电气规范,FS 驱动器特性连接要求用屏蔽的双绞线,差分阻抗90ohm15%;共模阻抗3030%;单线最大延迟26ns;不支持HS的,每条线驱动器的阻抗要求2844ohm;支持HS的,每条线驱动器的阻抗要求40.549.5ohm;,42,USB 电气规范,FS信号波形,43,USB 电气规范,LS 驱动器特性连线与device组合电容,450pFD+或D-线电容200pF;无阻抗控制要求;Cable传播延迟小于18nS;LS信号波形,44,USB 电气规范,HS(480Mbps)驱动器特性输出驱动器单端阻抗4510%,差分阻抗

26、9010%;D+或D-输出高电平:400mV10%;输出低电平:010mV;电流驱动方式,D+或D-正常驱动电流17.78mA;下行端口D+或D-下拉15K 10%电阻到GND(要关注IC是否内部集成此电阻,参考如下摘录);要求使用屏蔽线。要求差分阻抗90ohm15%,共模阻抗30ohm30%;单线路延迟26ns;PCB板内走线控制差分阻抗90ohm,延迟可达4ns(长度约20inch以上);,45,USB 电气规范,信号的上升时间/下降时间FS/LSTr/Tf(10%90%)时间:420ns1.3VVCRS2.0V,46,USB 电气规范,HS Transmitter/Receiver Te

27、st Fixture(直接用100差分探头测USB眼图时,请参考)Measurement Planes,47,USB 电气规范,HS 眼图模板Template 1:Transmit waveform requirements for hub measured at TP2,and for device(without a captive cable)measured at TP3Template 2:Transmit waveform requirements for device(with a captive cable)measured at TP2Template 3:Receiver

28、sensitivity requirements for device(with a captive cable)when signal is applied at TP2Template 4:Receiver sensitivity requirements for device(without a captive cable)when signal is applied at TP3,and for hub when signal is applied at TP2Templates 5 and 6 are recommended guidelines for designers:Temp

29、late 5:Transmit waveform requirements for hub transceiver measured at TP1,and for device transceiver measured at TP4Template 6:Receiver sensitivity requirements for device transceiver when signal is applied at TP4,and for hub transceiver at when signal is applied at TP1,48,USB 电气规范,49,USB 电气规范,HS 信号

30、Tr&Tf收端和发端都要求大于500ps(10%90%);上升沿或下降沿单调;Cable SkewD+与D-的Skew小于100ps;,50,USB 电气规范,接收器特性FS/LS接收器特性差分信号接受范围见下图;D+和 D-都可以接受瞬间低于VIH(min);FS:14 ns,LS:210 ns.,51,USB 电气规范,HS接收器特性能接受符合模板要求的信号;推荐能接收-50mV500mV的共模信号;能接收在复位握手期间的-50mV600mV低频chirp J 和 K 信号;禁止在高速箝位电平(VHSSQ)以下恢复数据;VHSSQ:100mV150mV;高速包的同步信号:至少12bit的S

31、YNC(KJKJKJKJKJKK);下行端口还必须具备检查连线断开能力;断开电平:525 mV625mV;,52,USB 电气规范,设备速度识别FS/LS速度识别USB采用在D+或D-线上增加上拉电阻的方法来识别低速和全速设备。当USB主机探测到D+/D-线的电压已经接近高电平,而其它的线保持接地时,它就知道全速/低速设备已经连了。,53,USB 电气规范,HS速度识别 为识别出高速设备,需要在上拉电阻和D+线之间连接一个由软件控制的开关,它通常被集成在USB设备接口芯片的内部。在reset期间,高速设备先切换到FS状态,并在D-上发chirp J信号给Hub;Hub收到chirp J信号后返

32、回连续的chirp K-J-K-J-K-J信号,并在reset结束后切换到HS状态;device收到连续的chirp K-J-K-J-K-J信号,在reset结束后也会切换到HS状态,至此速度识别成功。中间任何一个环节错,device将恢复到FS状态。,54,USB 电气规范,USB输入特性D+与D-无端接输入阻抗300K;FS/LS HUBFS的D+或D-线上加铁氧体bead is discouraged;,55,USB 电气规范,HS D+或D-的DC阻抗:40.5 ZHSDRV 49.5.HS 差分端接阻抗:80 ZHSTERM 100 HS D+或D-对地CAP10pF;差分CAP5p

33、F;HS的D+或D-线上加铁氧体 bead is strongly discouraged;,HS 负载等效电路,56,USB 电气规范,信号电平FS/LS电平,57,USB 电气规范,-HS 电平,58,USB 电气规范,连接和断开信号,59,USB 电气规范,HS 设备是通过检测到信号线上出现双倍的信号电压来判断连接断开的;525mVVHSDSC625mV;,60,USB 电气规范,上电与连接时序,t1:上电电源切换时间;t2:电源稳定到信号连接时间;t3:reset前的确保机电稳定预留时间;t4:无活动挂起时间;t5:Hub发送reset到device的时间;t6:reset时间;10m

34、s minimum,61,USB 电气规范,数据信号发送USB数据包采用差分信号传输;低速/全速数据信号发送,The start of a packet(SOP)is signaled by the originating port by driving the D+and D-lines from the Idle state to the opposite logic level(K state).8bit(L/F)/32bit(FULL)SYNC signal for a packet start;The SE0 state is used to signal an end-of-pac

35、ket(EOP).EOP=2bit SE0+1 bit J state;then,bus recover to Idle state;,62,USB 电气规范,高速数据信号发送 SOP:即由Idle切换到K状态来宣告开始发送包;其“K”是SYNC电平(NRZI 序列 KJKJKJKJ KJKJKJKJ KJKJKJKJ KJKJKJKK)的第一个symbol;EOP:对非SOF的EOP,共8bit;其第1bit为EOP前最后一个symbol取反,其余7bit 与EOP前最后一个symbol相同,类似NRZI码的“0111111”;对SOF的EOP,为40bit;其第1bit为EOP前最后一个s

36、ymbol取反,其余bits 与EOP前最后一个symbol相同;类似NRZI码的“01111111 11111111 11111111 11111111 11111111.”EOP结束后,BUS恢复到Idle状态;Idle:D+和D-为“GND”;,63,USB 电气规范,复位信号发送集线器信号通过控制端口上的持久的SE0态来实现对下形端口的复位。复位信号清除后,设备都将处于缺省状态。复位信号可在任一个集线器或主机的控制端口产生,该复位信号的最小持续时间为10ms。一个设备如果见其上形端口的SE0态持续时间超过2.5us,则它就把该信号作为复位信号处理。在复位信号清除后的10ms的复位恢复时

37、间后,集线器必须能接收所有集线器请求,设备也必须能接收一个SetAddress()请求。如果接收这些请求失败,则设备将不能被USB系统软件所识别。,64,USB 电气规范,高速Hub或Device的复位协议先确认是高速device;Hub开始发出SE0信号;视为T0点;Device检测SE0信号如果是从挂起状态唤醒,则device在检查到2.5us的reset信号后,启动高速检测握手进程;如果是从全速的非挂起状态唤醒;则device在检查到2.5us3ms的reset信号后,启动高速检测握手进程;如果是从高速的非挂起状态唤醒;则device切换到全速前,必须等待3ms3.125ms;在切换到全

38、速后的100 s 875 s间,如果检测到SE0信号,启动高速检测握手进程;,65,USB 电气规范,高速检测握手进程(对低速device无效)高速device让D+上拉,断开高速端接,往Bus上发送Chirp K(时间17ms,从T0计算);Hub检测到的Chirp K必须大于2.5us;否则会持续发SE0信号,直到reset结束;Bus结束Chirp K状态后100us内,Hub必须不间断的交替发送Chirp Ks and Chirp Js信号,以保证Bus处于激活状态而不会挂起;J或K信号时长4060us,Chirp J/K交替信号必须持续到reset结束前100500us;Hub发完C

39、hirp信号后,发送SE0信号直到reset结束;复位结束前Hub必须切换到高速状态;Device发完chirp后,device必须接收到hub的交替Chirp K-J-K-J-K-J 信号,且每位信号的长度大于2.5us;如果检测OK,device会在500us内,断开D+上拉,回复高速端接,进入高速default状态;如果device在发完自己的chirp后1ms2.5ms后检测Fail,device会切换到全速default状态直到reset结束。,66,USB 电气规范,挂起 所有的设备都必须能支持挂起状态,并可从任一电平状态进入挂起态。当设备发现它们的上行总线上的空闲态持续时间超3.

40、0ms时,它们便进入挂起态。当设备的所有端口上的总线不活动时间不超过10ms后,设备必须被真正的挂起,此时它仅从总线上获得挂起电流。如果总线缺少其他的通信流量时,SOF令牌将在每(微)帧中出现一次,以防止全速/高速设备被挂起。当任一低速设备缺乏通信流量时,在SOF令牌出现的每一帧中至少有一个低速设备处于活动态,以避免它们不被挂起。当处在挂起状态时,设备必须继续为它的D+(高速)或D-(低速)上的Rpu电阻提供电压从而维持一个空闲态,这样上行集线器才能为设备维持正确的连结状态。,67,USB 电气规范,高速设备挂起额外要求高速device如果检测到Bus为Idle状态大于3ms,device将在

41、idle开始后的3.125us内转换到全速配置;切换到全速后的100us875us期间,device会采样Bus状态,如果是全速下的J状态,device会继续挂起;高速device或下行端口从挂起唤醒后,必须回复到高速状态;,68,USB 电气规范,挂起又可分为全局挂起和局部挂起。全局挂起 当在总线的任何地方没有通信需要时,就要用到全局挂起,此时所有总线都处在挂起状态。主机通过中止它所有的传送(包括SOF令牌)来发送开始全局挂起信号。当总上的每个设备识别总线的空闲态持续适当时间时,它将进入挂起状态。局部挂起 可以通过向集线器端口发送SetPortFeature(PORT-SUSPEND)来使与

42、其相连的总线部分被挂起,此时处于那部分的设备经过上面所说的适当时延后进入挂起状态。,69,USB 电气规范,唤醒 处在挂起状态的设备,当它的上行端口接收到任一非空闲信号时,它的操作将被唤醒。特别地,如果设备的远程唤醒功能被USB系统软件开启时,它也可以发信号给系统来完成唤醒操作。唤醒信号由主机或设备使用,以使一个挂起的总线段回到活动态。集线器在唤醒信号的生成和传播中起了十分重要的作用。设备唤醒时总有一个先后次序,我们将在后面详细介绍。USB系统软件必须提供10ms的唤醒恢复时间,在这段时间内,它将不对与被唤醒的部分总线相连的任一设备进行操作。端口的中断与连接也可以使集线器发送一个复位信号,从而

43、唤醒系统,但仅当集线器具有远程唤醒使能时,这些事件才能引起集线器发送唤醒信号。,70,USB 电气规范,数据的编码与解码在包传送时,USB使用一种NRZI(None Return Zero Invert,即无回零反向码)编码方案。在该编码方案中,“1”表示电平不变,“0”表示电平改变。图8列出了一个数据流及其它的NRII编码,在该图的第二个波形图中,一开始的高电平表示数据线上的J态,后面就是NRZI编码。,NRZI数据编码,71,USB 电气规范,位插入为了确集信号发送的准确性,当在USB上发送一个包时,传送设备就要进行位插入操作。所谓位插入操作是指在数据被编码前,在数据流中每六个连续的1后插

44、入一个0,从而强迫NRZI码发生变化,如图所示。,72,USB 电气规范,位插入操作从同步格式(如图10所示)开始,贯穿于整个传送过程,在同步格式端的数据1作为真正数据流的第一位。位插入操作是由传送端强制执行的,是没有例外的。如果严格遵守位插入规则,甚至在EOP信号结束前也要插入一位0位。,73,USB 电气规范,接收端必须能对NRZI数据进行解码,识别插入位并去掉它们。如果接收端发现包中任一处有七个连续的“1”,则将会产生一个位插入错误,该数据包将被忽略。关于位的插入有一个特例,那就是刚好在EOP前的时间间隔,EOP前的最后一个数据位可能被集线器的转换偏移而拉长,这种情况如图11所示。,74

45、,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)。集线器控制器的数据率应该准确地知道,其误差最好控制

46、在0.05%(500ppm)内。低速数据发送率为1.50Mb/s,低速功能设备所允许的误差为1.5%(15000ppm)。以上所述的误差,主要由下面的几种情况所引起:初始频率精度;crystal负载电容量的影响 振荡器上电压供应的稳定性影响 温度的影响 器件的老化,76,USB 电气规范,帧与帧间隔(Frame Interval)在低速、全速模式下,主机每间隔1ms(这个1ms称为一帧,允许误差0.005ms)发送一个帧开始令牌包SOF(Start of Frame)。包含SOF标记、帧序列号及CRC5校验码。在高速模式下,主机每间隔1/8ms(即为一微帧,允许误差0.0625 s)发送一个帧

47、开始令牌包SOF。相邻帧间隔时间差0.5bit time(full speed);相邻微帧间隔时间差4bits time(high speed);,77,USB 电气规范,数据源的抖动在数据发送的边缘时间内,数据源可能发生一些变化(即抖动)。处在任何数据变化集间的时间为N*Tperiod抖动时间,其中N为发生变化的位数,Tperiod为具有一定范围的数据率的实际时间段。数据抖动的测量与计算最大上升沿和下降沿时所用的负载相同,并且它们在数据线的交叉点处进行测量,如图12。对高速传送,Jitter需要满足眼图要求;对于全速传送,任何连续的差分数据变化的抖动时间为必须在2.0ns内,对于任何一个成对

48、出现的差分数据变化(Jk到下一个Jk的变化或kJ到下一个kJ的变化)的抖动时间必须在1.0ns内。对于低速传送,任何连续的差分数据变化的抖动时间必须在25ns内,而任一成对出现差分数据变化的抖动时间必须在10ns内。这些抖动的现象包括时间的变化,主要归咎于差分缓冲器的延迟和上升沿及下降沿时间的不匹配,内部时钟抖动,噪声及其他随机因素的影响。,78,USB 电气规范,79,USB 电气规范,接收端数据的抖动 当抖动存在时,任何设备类型的数据接收必须能正确地对差分数据进行解码。这种情况的抖动可能是由上面所说的时延不匹配所引起,也可能是由源端和目标端数据速率的不匹配所引起。在特定的应用中,只要抖动条

49、件满足,输出驱动器的抖动可能对设备时钟的精确性产生影响。详细的全速/低速接收端Jitter 预算请参考USB spec 2.0 Table 7-4和7-5;高速接收端在BER=10E-12下,Jitter应满足相应模板要求;,80,EOP宽度全速/低速EOPEOP中SE0的宽度为2bits time;发送端:全速SE0时间:160175ns;低速SE0时间:1.25us1.5us接收端:全速SE0时间应=82ns;低速SE0时间应=670ns;高速EOP,81,USB 电气规范,电缆的延迟 USB中传送信号的电缆所允许的时延为26ns,对于一个标准的USB可分电缆,其时延由从串行A口连接器端到

50、串行B口连结端计算而得,并且其值小于26ns;而对于其它电缆,其时延由从串行A口连结器端到该电缆所连设备端计算而得。电缆延迟必须5.2ns/米;即标准USB 2.0 电缆最大可以支持到5M以上;低速USB cable 延迟必须18ns;电缆的信号衰减对于进行高速信号发送的每根电缆而言,信号对(D+,D-)所允许的最大衰减量右表所示。,信号时延,Cable允许的最大衰减,82,USB 电气规范,USB最大端到端信号延迟全速/低速:Host等待响应的最大时间为18 bits time;高速:721bits time;,83,USB 测试模式顺应性测试需要:高速的USB Hub,Host和的Devi

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号