Chinaunix首页 | 论坛 | 博客
  • 博客访问: 15113
  • 博文数量: 2
  • 博客积分: 101
  • 博客等级: 民兵
  • 技术积分: 20
  • 用 户 组: 普通用户
  • 注册时间: 2010-03-29 00:20
文章分类
文章存档

2012年(2)

我的朋友
最近访客

分类:

2012-08-11 10:05:09

原文地址:USB工作过程 作者:Arthursky

USB设备的加载过程 

当USB设备接入hub或root hub后,主机控制器和主机软件(host controller & host software)能自动侦测到设备的接入。然后host software读取一系列的数据用于确认设备特征,如vendor ID, product ID, interface工作方式,电源消耗量等参数。之后主机分配给外设一个单独的地址。地址是动态分配的,各次可能不同。在分配完地址之后对设备进行初始化,初始化完成以后就可以对设备进行IO操作了。 

启动主机后,它会查询所有与总线相连的设备,并为每个设备分配一个地址。这个过程称为枚举——在将设备连接到总线时,主机也会枚举它们。此外,主机还会查出每台设备要执行的数据传输类型。

  • 中断——鼠标或等设备发送的数据非常少,它们会选择中断模式。 
  • 批量——打印机等设备接收的数据包含在一个大的数据包中,它们会使用批量传输模式。这种模式会将大块数据发送到打印机(块的大小为64个字节),并对这些数据进行验证,以确保它们的正确性。 
  • 同步——流式设备(如)都使用同步模式。在这种模式下,设备与主机之间的数据是实时传输的,其间没有数据纠正过程。

此外,主机还可以通过控制数据包发送命令或查询参数。

列举设备时,主机会一直跟踪所有同步和中断设备所请求的总带宽情况。如果总带宽为480Mbps(兆比特每秒),这些设备最多可占用90%的带宽。在用完这部分带宽后,主机就会拒绝访问任何其他同步或中断设备,控制数据包和用于批量传输的数据包将使用剩下的带宽(至少有10%)。

通用串行总线会将可用带宽分成多个帧,而主机则控制着这些帧。每个帧包含1,500个字节的数据,每隔一毫秒就会启动一个新帧。在形成帧的过程中,将为同步和中断设备分配一个槽,以便保证它们得到所需要的带宽。批量和控制传输将使用剩下的空间来传输数据。如果想了解更多信息,您可以查看本文末尾的技术链接,它们提供了大量的详细信息。

USB性能特点通用串行总线具有以下性能特点:

  • 计算机可以充当主机。 
  • 主机上可以连接多达127台设备(可直接连接,也可以通过USB集线器连接)。 
  • 单根USB线缆可达5米之长;使用集线器后,设备最多可以在远离主机30米的地方工作,这相当于六根线缆的长度。 
  • 使用USB 2.0时,总线的最大数据传输速率可达到每秒480兆比特。 
  • USB线缆包含两根电源线(一根电压为5伏的电线,另一根是地线)和一对用来承载数据的双绞线。 
  • 在电源线上,计算机在5伏电压下可提供高达500毫安的电流。 
  • 低功率设备(如鼠标)可以直接使用总线中的电流。高功率设备(如打印机)则配有自己的电源,总线只向它们提供很少一部分电能。集线器也自己有电源,能够直接为与之相连的设备供电。 
  • USB设备都是热插拔型的,这表示您随时都可以将它们插入总线和拔掉它们。 
  • 当计算机进入省电模式时,主计算机可以将许多USB设备置于睡眠状态。

与USB端口相连的设备依靠USB线缆来承载电源和数据。



USB线缆的内部构成:两根电源线,其中一根是电压为5伏的电线(红色),另一根是地线(棕色);一对用来承载数据的双绞线(黄色和蓝色)。该线缆还是屏蔽电缆。


USB 2.0USB 2.0标准是USB 1.1的升级版本,于2000年4月推出。

USB 2.0(高速USB)为多媒体和存储应用程序提供了额外带宽,其数据传输速度比USB 1.1快40倍。为了让消费者和制造商顺利实现这一过渡,USB 2.0具有完全的向前和向后兼容性,它不仅可以用于原来的USB设备,而且还能使用之前USB制造的线缆和接口。

USB 2.0支持三种速度模式(每秒1.5、12和480兆比特),这样它既可支持和等低带宽设备,也可支持高分辨率的、、和高容量的等高带宽设备。随着USB 2.0的广泛应用,个人计算机(PC)领域的领导者可以加快新一代PC外设的开发,以跟上现有高性能PC的发展步伐。USB 2.0的传输速度也促进了新一代PC和应用程序的发展。除了改进功能和鼓励创新外,USB 2.0还提高了用户应用程序的效率,用户可以同时运行多个PC应用程序或高性能外设。

阅读(3215) | 评论(0) | 转发(0) |
0

上一篇:没有了

下一篇:Linux内核学习——文件系统与块设备

给主人留下些什么吧!~~