USB信息流格式总结

来源:互联网 发布:ceph 写入数据失败 编辑:程序博客网 时间:2024/06/09 22:16

由基本到复合分为三种:

包(packet)

   是USB总线上传输的基本信息单位,由五个字段组成,如下图所示

 

USB数据包结构

事务处理(transaction)

    是主机向USB设备端点的一次数据接收或数据发送的处理过程,包括输入,输出,设置等类型。由一个或几个包(packet)组成,比如输入事务处理包括输入令牌包,数据包,握手包(不同的包是由包中的PID字段指明的)三个包。

传输(transfer)

   是客户端驱动程序向设备功能接口发起的请求数据,其中包含有意义的信息,包括中断,控制,批量,实时四种类型。一个传输(transfer)由一个或多个事务处理(transaction)构成,比如控制传输包括设置事务处理阶段,数据(输入或输出)事务处理阶段,状态事务处理阶段。

帧:

   是指在总线上传输的数据按照1ms的时间片来划分,主机控制器负责帧管理,在一帧内根据一定的规则为总线上的设备分配一定的数据传输时间(事务处理(transaction)),如果剩余的空闲时间够用,则分配,否则不分配。1帧可以容纳许多事务处理(transaction)过程,但并不是在一帧内的事务处理(transaction)都属于同一个传输(transfer),可以属于不同的传输(transfer),甚至属于不同设备的事务处理(transaction)。决定某个帧内发哪些事务处理(transaction)是由USBD调度和分配的。如下图,说明了一种时序分配关系,也说明了传输(transfer),事务处理(transaction),包(packet)三者的结构关系。


USB请求包(传输),事务处理,帧,包的时序和结构关系

 

0 0
原创粉丝点击