2USB3。0的基本结构与工作方式
2。1 USB3。0的系统结构
2。1。1 基本物理结构
USB主机:USB设备所连接的计算机即为主机。
USB电缆:其连接了USB设备与USB主机,以实现数据传输。
USB连接器:在USB电缆中用于对接USB主机和USB设备之间,在USB设备或USB主机中时提供USB总线接口。
USB设备:分为USB集线器设备和USB功能设备(又称外部设备)。其中集线器设备用于为USB系统提供额外的连接点,USB设备通过USB集线器的下行端口与USB主机相连接,来扩展USB主机的USB端口【1】。下行端口可以有很多,且集线器可以级联,USB协议规定USB集线器可以级联5个(当然下图中各结构之间用USB电缆进行连接)【2】。
图2。1 USB基本结构
在数据传输过程中,数据传输指向USB设备时称为下行通信,指向USB主
机时称为上行通信。
2。1。2 功能结构
为了使读者对USB工作方式更加明确,USB还可以分为功能层、USB设备层以及USB总线接口层这3层结构。
1。功能层
各种数据要通过总线在主机与设备之间传输 ,那么功能层就负责数据传输
等特点的操作。功能层是由USB设备的功能单元和对应的USB主机程序实现组
成的。特定的USB主机程序段用于和特定的USB设备功能单元进行通信。按通信类型可分为下列4种。
中断传输:用于传输少量的传输频率稳定的数据,如常用于鼠标、键盘等HID人机接口设备中【3】。
控制传输:用于传输少量对速率和周期都没有特定要求的数据。在USB主机读取设备描述符或接口描述符、设置USB设备的配置信息或其他简单操作中常用。
块传输:用于传输大量的对传输速率和传输频率都没有严格要求的数据。常应用于打印机、扫描仪等设备中。
同步传输:用于传输大量的且传输时间具有周期性、速率恒定的数据。常应用于音频、视频等设备如VCD、DVD,其对数据正确性有一定的容忍。
2。USB设备层
其主要用于管理USB设备,读取设备描述符、分配USB地址等。用户通过在主机上编写相应的固件程序同时也需要USB主机出厂时自带的一些必要功能就可以实现USB主机对USB设备功能的获取【4】。文献综述
3。USB总线接口层
其主要用于实现USB设备与USB主机之间的数据传输。USB协议规定USB总线接口使用NRZI编码来传输数据。USB主控制器和USB集线器将数据接收或发送并自动进行解码或编码。这一部分一般由USB系统硬件自动完成。
2。1。3 USB接口开发
需要额外介绍的是USB接口的开发分为USB硬件开发、USB驱动开发、USB
软件开发。USB硬件开发是USB设备开发的基础。【2】USB接口通过驱动程序来实现外部USB功能设备与上位机软件的通信所以驱动开发必不可少。USB软件运行在USB主机中是直接呈现给使用者的操作终端,USB上位机软件经USB驱动程序来与外部的USB硬件设备进行交互故USB软件开发直接用户对USB设备功能的实现。USB开发的整个流程中3个环节是息息相关的。本课题主要属于USB硬件开发。
2。2 USB3。0通信协议
所谓通信协议就是指完成通信或服务必须遵守的规则或约定,即某种互相都能接受并遵循的规则。在USB3。0通信协议中这就包括了USB3。0的基本工作方式即各数据在传输过程中以怎样的方式传输以及怎么实现传输。下面就着重地介绍这一部分。
2。2。1 USB总线数据流结构
一个完整的USB数据流包含3个阶段: