第二章USB基本结构与特性 下载本文

内容发布更新时间 : 2024/6/29 10:13:18星期一 下面是文章的全部内容请认真阅读。

第二章 USB基本结构与特性

§2.1 引言

本章主要是对USB的基本结构和特性作初步的介绍,是否了解这些知识对于USB应用与设计至关重要,只有清楚地理解这些概念才能进行更好的设计。

§2.2 USB1.1协议总览

USB是一种电缆总线,支持在主机和各式各样的即插即用的外设之间进行数据传输。USB1.1是一个传输率可达12Mb/s的串行接口,并由不同类型的外设一起分享这个串行总线接口,而且一个USB主机可以对应于高达127个外设。其中,USB主机是整个总线上的主控者,负责对各个外设发出各种命令。USB是以令牌包为基础的通信协议,当主机在总线上发布一种令牌包,此时一定会有一个符合其地址的设备根据这个令牌包做出相应的操作。此外,12Mb/s的总线带宽将被分割,所有位于总线上的设备会以一定的时间间隔来分享它。USB仅含有四条线,两条是电源线(Vcc与GND),两条是以差分方式产生的信号线(D+与D-)。

§2.3 USB系统模型

USB系统以USB主机为核心,以外围的USB设备为功能,组成了系统模型。即,USB提供的是主机和设备中间的一种数据通信服务。主机是USB的核心,每一次USB数据通信都必须是由主机来发起的,主机管理着每个USB设备。见图2-1,图中的Hub是一类特殊的USB设备,它是一组USB的连接点,主机中有一个被嵌入的Hub叫根Hub(root Hub)。根Hub提供若干个连接点。

图2-1 USB系统模型

§2.4 USB主机

图2-2 USB主机结构

图2-2表示了一个比较完整的USB主机组成部分1.USB主控制器/根Hub

USB主控制器芯片提供USB的收发物理层,实现USB电缆上差模信号与数字信号的转换并提供端点的物理存储机制,还能根据USB的传输机制自动管理各个端点的存储与数据交换。此外,USB主控制器还需提供与外围控制CPU的接口电路,通过并行或串行的方式连接到CPU的总线上,从而建立与CPU的通信。而根Hub是USB的第一级Hub,提供USB的物理接口,供外围设备连接使用。

2.USB系统软件

USB系统软件主要由USB核心驱动程序和USB主控制器驱动程序组成。USB核心驱动程序是整个软件体系的核心部分,用来解释USB设备类驱动程序发送来的命令并将其划分为一系列的USB事务,然后发送给USB主控制器驱动程序。USB主控制器驱动程序负责最底层的驱动任务,控制和管理硬件底层,并负责将USB事务发送给USB主控制器芯片,最终将串行数据发送到电缆上。 3.用户软件和USB设备类驱动程序

USB设备类驱动程序,它把用户要求的USB命令发送给USB的主控制器硬件,同时初始化内存缓冲区,存储所有USB通信中的数据。而用户软件主要是指用户与USB系统之间的一种界面,主要完成用户对于USB的控制,以及实时地进行一些数据的交互。

[7,8]

§2.5 USB设备

图2-3 USB设备结构

见图2-3,与USB主机相对应,USB设备也同样分为3个层次: 1.设备接口

设备接口是最底层的物理实体,以USB接口控制器作为核心,是USB发送和接收数据的接口。它通过电缆直接与USB主机交换串行数据,并能够实现串行数据到并行数据的转换。

2.USB逻辑设备

处于中间层次的USB逻辑设备,是USB协议栈的主体,处理总线接口和不同端点之间的数据,实现USB的各种基本行为。

以上的2个部分是所有USB设备所共同的部分。 3.功能单元

USB设备各自的特点是通过第3层次功能单元来提供的,它实现特定USB设备的类协议。

[9]

§2.6 USB数据通信