- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
4.2USB事务处理(Transaction) USB事务处理是USB主机与USB设备数据通信的基础,一个完整的USB是事务处理包含三个阶段: 令牌阶段:定义了本次传输的类型,用于表征事务处理的开始。令牌阶段由令牌包和EOP构成,这是所有USB事务处理必须包含的阶段。在USB系统中只有主机才能发出令牌包,它定义了数据传输的类型,令牌包中比较重要的是SETUP、IN、OUT这三个令牌包。它们是用来在跟集线器和设备端点之间建立数据传输。一个IN包建立一个从设备到根集线器的是数据传送,一个OUT包用来建立从根集线器到设备的数据传输。令牌包格式: 数据阶段:包含了本次传输的数据,数据的大小根据端点和传输类型而定,最大的数据量位1024字节。数据阶段由数据包和EOP构成。数据包含有4个域:SYNC、PID、DATA与CRC16。DATA数据域的位置是根据USB的传输速度与传输类型而定,且必须以8字节为基本单位,若传输数据不足8字节,或传输到最后剩余不足8字节,仍传输8字节的数据域。数据包格式: 8位 8位 7位 4位 5位 SYNC PID ___ PID ADDR ENDP CRC5 8位 8位 0~ 16位 SYNC PID ___ PID DATA CRC16 第二十一页,共四十九页。 握手阶段:用于数据的接收方向发送方报告此次数据传输是否成功。握手阶段由握手包和EOP构成。握手信息包是最简单的包类型,在这个握手信息包中只含有一个PID数据域而已,格式: 在USB上数据信息的一次接收或发送的处理过程称为事务处理。事务处理的类型包括输入(IN)事务处理、输出事务处理、设置事务处理(SETUP)和帧开始、帧结尾等类型。在输出(OUT)事务处理和设置(SETUP)事务处理中,紧接着SETUP和OUT包后面的是DATA包,DATA0和DATA1包是交替地发送的。在DATA包后面,设备将回应一个握手信号,如果设备 可以接受数据,就回应ACK包,如果设备忙,就回应NAK包,如果设备出错,则回应STALL包;在IN事务中,IN包后面的是设备发来的DATA包或NAK包或STALL包,若设备忙或出错,就发NAK包或STALL包给主机,若设备数据准备发送,则发DATA包,DATA0和DATA1包也是交替的发送的,紧接着DATA包后面是主机发送给设备的握手包,ACK表示主机可以接收数据,NAK包代表主机忙,STALL包代表主机出错。 8位 8位 SYNC PID ___ PID 第二十二页,共四十九页。 输入(IN)事务处理: 输入事务处理表示USB主机从总线上的某个USB设备接收一个数据包的过程: 正常事务处理 设备忙时的输入事务处理 设备出错时的输入事务处理 1.主机?设备(令牌) SYNC IN ADDR ENDP CRC5 EOP 2.设备-主机(数据) SYNC DATA0 DATA CRC16 EOP 3.主机-设备(握手) SYNC ACK 1.主机?设备(令牌) SYNC IN ADDR ENDP CRC5 EOP 3.主机-设备(握手) SYNC NAK 1.主机?设备(令牌) SYNC IN ADDR ENDP CRC5 EOP 3.主机-设备(握手) SYNC STALL 第二十三页,共四十九页。 输出(OUT)事务处理 正常的输出事务处理 设备忙时的输出事务处理 设备出错时的输出事务处理 1.主机?设备(令牌) SYNC OUT ADDR ENDP CRC5 EOP 2.主机?设备(数据) SYNC DATA0 DATA CRC16 EOP 3.设备-主机(握手) SYNC ACK 1.主机?设备(令牌) SYNC OUT ADDR ENDP CRC5 EOP 2.主机?设备(数据) SYNC DATA0 DATA CRC16 EOP 3.设备-主机(握手) SYNC NAK 1.主机?设备(令牌) SYNC OUT ADDR ENDP CRC5 EOP 2.主机?设备(数据) SYNC DATA0 DATA CRC16 EOP 3.设备-主机(握手) SYNC STALL 第二十四页,共四十九页。 设置(SETUP)事务处理 正常的设置处理 设备忙时的设置事务处理 设备出错时的设置事务处理 1.主机?设备(令牌) SYNC SETUP ADDR ENDP CRC5 EOP 2.主机?设备(数据) SYNC DATA0 DATA CRC16 EOP 3.设备-主机(握手) SYNC ACK 1.主机?设备(令牌) SYNC SETUP ADDR ENDP CRC5 EOP 2.主机?设备(数据) SYN
文档评论(0)