您现在的位置: USB开发网 > USB技术文档 > USB1.1
- USB1.1

USB物理模型简介(USB接口、USB电缆、USB总线拓扑结构)

------分隔线----------------------------

  现在usb接口非常广泛,对于开发人员非常有必要了解一下USB接口的物理模型,本文从USB接口类型、USB电缆以及USB总线拓扑结构这几方面,试图以最简短易懂的内容来阐述。

1、USB接口形式

  USB接口有A型、B型、Mini USB这几种,一般A型是扁平的,电脑主机上的USB接口一般都是A型,USB打印机上的一般是B型接口,Mini usb(又分mini usb-a、mini usb-b和mini usb-ab,mini usb-a和mini usb-ab在USB OTG是的标准)是为了减小接口尺寸而设计的,一般在移动设备如手机、数码相机上有,虽然mini usb-a和mini usb-ab在USB OTG是的标准,但手机使用了这两种接口并不一定代表手机插上电脑后被枚举成USB STG设备,有些手机还使用了非标USB接口用来同时传输音频信号等。 

电脑机箱上的USB-A插座
 
电脑机箱上的USB-A插座
 
 
USB-A插头
 
USB-A插头
 
USB-B插座
 
打印机上的USB-B插座
 
USB-B插头
 
USB-B插头
 
 
mini USB-B插座
 
手机上的Mini usb-b插座
 
mini usb-a插头
Mini usb-a 插头
 
mini usb-b插头
 
Mini usb-b 插头
 
 

  除了上面几种标准USB接口外,各大手机厂家为了统一手机上USB接口不统一状况,提出了micro usb接口标准,并提交USB协会采纳。 

 

Micro usb插座
 
手机上的Micro usb插座(左)
 
micro usb插头
 
Micro usb插头

 2、USB电缆

  usb电缆有中有两根信号线(D+和D-)和两根电源线(+5V和地),USB OGT标准中对mini usb接头定义多出一个ID线,用来检测插入的USB是master还是device。

  信号线中的D+和D-是一种差分信号线,两根信之间的电压差作为判断传输信号的逻辑高或逻辑低,电源线+5V在USB协议里定义为Vbus。协议规定USB集线器可向设备提供最大500mA电流。

  USB 2.0协议第6章中对 USB-A 和 USB-B 插头及相应电缆线有非常详细的阐述。USB OTG协议中对Mini USB插头及相应电缆线有非常详细的阐述(P14)。

3、USB物理拓扑结构

  一个USB系统包含三类硬件设备: USB主机(USB HOST)、 USB设备(USB DEVICE)、USB集线器(USB HUB)。

  USB系统中的这三者之间的关系如下:

 

usb拓扑结构
 
USB拓扑结构

  

(1)USB HOST

  在一个USB系统中,当且仅当有一个USB HOST时,USB HOST有以下功能:

  ◇ 管理USB系统;◇ 每毫秒产生一帧数据;◇ 发送配置请求对USB设备进行配置操作;◇ 对总线上的错误进行管理和恢复。

  (2)USB DEVICE

  在一个USB系统中,USB DEVICE和USB HUB总数不能超过127个。USB DEVICE接收USB总线上的所有数据包,通过数据包的地址域来判断是不是发给自己的数据包:若地址不符,则简单地丢弃该数据包;若地址相符,则通过响应USB HOST的数据包与USB HOST进行数据传输。

  (3)USB HUB

  USB HUB用于设备扩展连接,所有USB DEVICE都连接在USB HUB的端口上。一个USB HOST总与一个根HUB (USB ROOT HUB)相连。USB HUB可以通过端口的电气变化诊断出设备的插拔操作(详细原理见USB开发网另一篇文章),并通过响应USB HOST的数据包把端口状态汇报给USB HOST.一般来说,USB设备与USB HUB间的连线长度不超过5m,USB系统的级联不能超过5级(包括ROOT HUB)。

  从物理结构上,USB系统是一个星形结构;但在逻辑结构上,每个USB逻辑设备都是直接与USB HOST相连进行数据传输的。在USB总线上,每ms传输1帧数据。每帧数据可由多个数据包的传输过程组成。USB设备可根据数据包中的地址信息来判断是否响应该数据传输。在USB标准1.1版本中,规定了4种传输方式以适应不同的传输需求:

  (1)控制传输(control transfer)

  控制传输发送设备请求信息,主要用于读取设备配置信息及设备状态、设置设备地址,设置设备属性、发送控制命令等功能。全速设备每次控制传输的最大有效负荷可为64个字节,而低速设备每次控制传输的最大有效负荷仅为8个字节。

  (2)同步传输(isochronous transfer)

  同步传输仅适用于全速/高速设备。同步传输每ms进行一次传输,有较大的带宽,常用于语音设备。同步传输每次传输的最大有效负荷可为1023个字节。

  (3)中断传输(interrupt transfer)

  中断传输用于支持数据量少的周期性传输需求。全速设备的中断传输周期可为1~255ms,而低速设备的中断传输周期为10~255ms.全速设备每次中断传输的最大有效负荷可为64个字节,而低速设备每次中断传输的最大有效负荷仅为8个字节。

  (4)块数据传输(bulk transfer)

  块数据传输是非周期性的数据传输,仅全速/高速设备支持块数据传输,同时,当且仅当总线带宽有效时才进行块数据传输。块数据传输每次数据传输的最大有效负荷可为64个字节。

  在USB系统中所有的传输都是有主机发起的(注意一个完整的USB系统应包括主机系统和USB设备),这是由USB这种特定的拓扑结构决定的, 一个 USB 设备在没有首先被主控制器询问时从不启动发送数据. 这个配置允许一个非常容易即插即用的系统, 这样各种设备可自动被主机配置。

  USB串口总线将USB设备与USB和USB主机连接在一起。USB总线分为3层----接口层、设备层和功能层。

  接口层:在主机与设备之间提供了物理/信号/包连线;

  USB设备层:是USB系统软件对设备执行普通USB操作的层;

  功能层:可以通过正确匹配的客户软件层向主机提供额外的性能;

4、USB的识别、通信过程

  USB设备从插入主机到建立通讯要经历两个阶段:1、USB设备的插入动作识别,有关这方面内容可参考百合电子工作室USB专题站另一篇文章《搭个简单电路验证USB主机是如何检测USB设备的插入和拨出动作的》。2、USB设备的枚举,通过枚举过程,USB主机可以判断USB设备属于哪种类别(如USB鼠标、USB键盘、USB游戏杆、优盘等)并为之安装合适的驱动程序,有关USB设备的枚举过程请参考本站文章《用USB Monitor监视USB枚举(配置、识别)过程(USB枚举过程分析)》。正确识别USB设备后则可正常使用了。

------分隔线----------------------------
联系我们
  • Q Q: 1148374829 点击这里给我发消息
  • 旺旺:jhoneqhsieh 点击这里给我发消息
  • 电话:(0)15923141204
  • 淘宝网店
USB开源项目