各层次的具体细节将在以后逐步介绍
特别地有四个层次的实现是较为集中的 USB物理设备(USB Physical Device)USB
上的一种硬件可运行一些用户程序 客户软件(client software)为一个特定的USB设备而在主机上运行的软件这种软件由USB
设备的提供者提供或由操作系统提供 USB系统软件(USB system software)此软件用于在特定的操作系统中支持USB它由 操作系统提供与具体的USB设备无关也独立于客户软件 USB主机控制器(USB Host Controller):总线在主机方面的接口是软件和硬件的总和用于支持USB设备通过USB连到主机上
这四个USB系统的组成部分在功能上存在相互重叠的部分为了支持主机与客户之间的坚
固可靠的通信还需要在后面对这些部分进行细节性描述
如图4-2所示一台主机与一个USB设备间的连接是由许多层上的连接组成USB总线接口层提供了在主机和设备之间的物理连接发送连接数据包连接USB设备层对USB系统软件是可见的系统软件基于它所见的设备层来完成对设备的一般的USB操作应用层可以通过与之相配合的客户软件向主机提供一些额外的功能USB设备层和应用层的通信是逻
辑上的对应于这些逻辑通信的实际物理通信由USB总线接口层来完成
关于USB的物理通信在第56章中描述而相关的逻辑通信在第89章中介绍本章描述一些核心概念USB系统的实现者必须先掌握它们然后在往后几章中阅读更加详细的部分
为了描述和管理USB通信
以下概念是很重要的 总线拓朴(Bus Topology)USB的基本物理组成基本逻辑组成以及各组成部分之间 的相互关系这将在4.2节中描述 通信流模型(communication Flow Models):描述主机与设备如何通过USB通信以及通信所用的四种通信类型这将在4.3到4.8的各节中介绍 总线访问管理(BUS Access)主机面对大量的USB设备的各种通信要求如何控制协 调总线的访问 关于同步传送的考虑4.10节中将介绍对要求同步传送的设备提供一些特性非同步传送设备的实现者不必阅读此节
4.2 总线拓朴
总线拓朴结构包括四个重要的组成部分
主机和设备USB系统的基础组成部分
物理拓朴结构描述USB系统中的各组成部分是如何连接起来的 逻辑拓朴结构描述USB系统中各种组成部分的地位和作用以及描述从主机和设备的角度观察到的USB系统 客户软件层与应用层的关系描述从客户软件层看到的应用层的情况以及从应用层看到的客户软件层的情况
4.2.1 USB主机
主机的逻辑结构如图4-3包括 USB
主机控制器USB Host Controller USB
系统软件集合USB驱动程序主机控制器的驱动程序主机软件 客户软件