USB传输模式(控制传输、批量传输、中断传输、同步传输)介绍

USB传输模式(控制传输、批量传输、中断传输、同步传输)介绍
 
 控制传输、批量传输、中断传输、同步传输
 
 USB 有上述四种传输类型。枚举期间外设告诉主机每个端点支持哪种传输类型。
 
 USB设备驱动向USB控制器驱动请求的每次传输被称为一个事务(Transaction),
 
 事务有四种类型:Bulk Transaction、Control Transaction、Interrupt Transaction和Isochronous Transaction。
 
 数据包包含部分:
 
 每次事务都会分解成若干个数据包在USB总线上传输。每次传输必须历经两个或三个部分,第一部分——USB控制器向USB设备发出命令,
 
 第二部分——USB控制器和USB设备之间传递读写请求,其方向主要看第一部分的命令是读还是写,第二部分有时候可以没有。
 
 第三部分——握手信号。
 
 批量(Bulk)传输事务
 
 作用:主要应用在数据大量数据传输和接受数据上同时又没有带宽和间隔时间要求的情况下;
 
 特点:要求保证传输。打印机和扫描仪属于这种类型这种类型的设备
 
 适合于传输非常慢和大量被延迟的传输,可以等到所有其它类型的数据的传输完成之后再传输和接收数据。
 
 批量数据传输分三个阶段:
 
 第一部分——令牌阶段。
 
 Host端发出一个Bulk的令牌请求。
 
 如果令牌是IN请求 ,则是从Device到Host的请求;
 
 如果令牌是OUT请求,则是从Host到Device端的请求。
 
 第二部分——传送数据的阶段。
 
 根据先前请求的令牌的类型,数据传输有可能是IN方向,也有可能是OUT方向。传输数据的时候用DATA0和DATA1令牌携带着数据交替传送。
 
 数据传输格式DATA1和DATA0,这两个是重复数据,确保在1数据丢失时0可以补上,不至于数据丢失。
 第三部分——握手阶段。
 
 如果数据是IN 方向,握手信号应该是Host端发出;
 
 如果数据是OUT方向,握手信号应该是Device端发出。
 
 握手信号可以为ACK, 表示正常响应,
 
 NAK, 表示没有正确传送。
 
 STALL,表示出现主机不可预知的错误。
 
 如图所示。
 
 
 
 图Bulk传输
 
 
 
 图 Bulk传输时的令牌
 
  控制(Control)传输
 
 作用:USB系统软件用来主要进行查询配置和给USB设备发送通用的命令;
 
 特点:控制传输是双向传输,数据量通常较小;数据传送是无损性的。
 
 数据宽度:控制传输方式可以包括8、16、32和64字节的数据,这依赖于设备和传输速度。
 
 控制传输典型地用在主计算机和USB外设之间的端点0(EP0)之间的传输
 
 控制传输也分为三个阶段,即令牌阶段、数据传送阶段、握手阶段,如下图所示。
 
 
 
 
 
 图 控制传输事务
 
  中断(Interrupt)传输事务
 
 作用:主要用于定时查询设备是否有中断数据要传输;
 
 特点:设备的端点模式器的结构决定了它的查询频率从1到255ms之间。
 
 典型的应用在少量的分散的不可预测数据的传输键盘操纵杆和鼠标就属于这一类型
 
 (数据量很小)
 
 中断方式传输是单向的并且对于host 来说只有输入(IN)的方式
 在中断事务中,也分为三个阶段,即令牌阶段、数据传输阶段、握手阶段,如下图所示。
 
 
 
 
 中断传输事务
 
  同步(Isochronous)传输事务
 
 作用:用于时间严格并具有较强容错性的流数据传输,或者用于要求恒定的数据传输率的即时应用中。例如执行即时通话的网络电话。
 
 特点:保证传输的同步性。保证每秒有固定的传输量。
 
 (与Bulk传输不同)同步传输允许有一定的误码率。(这样符合视频会议等传输的需求,因为视频会议首先要保证实时性,在一定条件下,允许有一定的误码率。)
 同步传输事务有只有两个阶段,即令牌阶段、数据阶段,因为不关心数据的正确性,故没有握手阶段,
 如下图所示:
 
 
 图 同步传输事务
0
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值