- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
USB通讯原理 协议摘要 2008-08-01 14:33 概述USB总线的控制是主从结构,有一个Host和多个Device。Host负责总线的带宽管理(帧的编组),Device枚举,Device的编址。Device对Host在总线上的行为做出回应,如从总线上读取数据或写出数据,处理或生成回应。USB总线的数据线由两根差分信号线D+ D-构成,Host和Device都挂接在这两条信号线上通讯。USB协议内容分两大块,一个是对通讯逻辑进行分层定义;一个是对设备的组成逻辑进行分层定义 。 通讯逻辑 USB通讯的逻辑结构分成三层: 包(packet):信号层上传送的若干连续位流构成一个包,包由信号层定义; 事务(transaction):一组相关的包(packet)构成了个事务,事务由协议层定义; 传输(transfer):一组相关的事务构成一个传输,传输由数据传输层定义; 端点(endpoint):进行事务处理的实体; 接口(interface):进行传输处理的实体; 包(packet)的格式: 包有四种:令牌包/数据包/握手包/前导包。这四种包还有些子类。一个包是哪种,由PID标识。 令牌包 数据包 握手包 PID 注:当USB的令牌包的PID是SOF时,期数据字段必须为11位的帧序列号;2.0的USB协议中定义了更多的PID。事 务(transaction)的种类:有输入(IN)、输出(OUT)、设置(SETUP)、帧起始(SOF)、帧结尾(EOF),基本和令牌包的种类一 致。它并不画出单独的示意图,而体现在传输(transfer)示意图的各个可能的分支里。SOF和EOF较特殊,协议本身并没有将它们当成一种事务类 型。事务(transaction)的特点:*数据包的最大长度为1023个字节,一个事务最多只有一个数据包;*数据处理顺序由Host控制,一个事务的包不会分到不同的帧里;*事务处理中,包的传输是顺序,如令牌包总在数据包之前传送;*令牌包都是由Host发出的;*设备Device根据令牌包决定自己是否发送数据,不能主动发送数据;帧:是Host对总线进行带宽管理、流量分配的单位,由若干事务(transaction)构成(不是传输),一个帧在时间上看来,是对总线1ms的占用。 传输(transfer):有4种,批量传输(bulk)、控制传输(control)、中断传输(interrupt)、实时传输(isochronous)。 批量传输(bulk):传送大块数据,不要求有周期性的或一定的数据传输速率。它可占用总线所任何可用带宽来传输,如果总线带宽被必须保证带宽的传输占用时,它可以等 待。它采用数据检错和重传,还保证数据正确传输。 解读: 当主机要开始一次输入的批量传输(bulk transfer)时,向总线上发送一个IN的令牌包(packet),设备收到令牌后,向总线上发送DATA或NAK或STALL,主机如收到 DATA,则向总线上发送一个ACK;一次输出的批量传输(bulk transfer)与此类似。 控 制传输(control):用于传输命令。所有命令都是Host发起的。所有设备Device都要支持控制传输。是非周期性的传输,但要优点占用总线。只 有控制传输是双向的,而别的传输都是单向的。分成三个阶段(stage):设置阶段、数据(可选)阶段、状态阶段;各个阶段由一个事务处理 (transaction)构成。 中断传输(interrupt):用于Host接收Device的事件信息。Host给中断传输的设备分配一定 的总线带宽,周期性地通过中断传输接收此设备的信息,达到与传统中断方式相同的目的,(也就是定时查询)。1.1版协议开始支持IN/OUT的中断传输。 也是一种可靠的传输方式。 实时传输(isochronous):速率保证,正确性不保证。 USB设备的组成逻辑: 以 例子说明,一个HID设备,具有鼠标、键盘、游戏杆功能,但同一时刻,鼠标和游戏杆只能选一个。因此,一个设备(设备描述符),可以有两种配置(配置描述 符),一种配置由若干接口(接口描述符)(鼠标+键盘 键盘+游戏杆)构成,接口interface对应传输transfer,每个接口有多个端点endpoint,对应着事务transaction。 所有配置里,都会有一个端口0,用于完成控制传输。 设备描述符中有字段bDeviceClass,指出设备归属那个大类,字段bNumConfigurations指出可能的配置描述符数目。 配置描述符中有字段bNumInterfaces,指出支持的接口数目。 接口描述符中有字段bInterfaceClass,指出接口的类型,字段bNumEndpoints指支持的端点数目。 端
文档评论(0)