1、最简单的USB系统
USB系统是以USB主机为核心,USB设备为功能,组成的系统模型。
最简单的USB模型
2、PC上的USB系统组成
PC usb主机包括:USB主机控制器、USB系统软件、用户软件
(1)、USB主控制器/根Hub
- USB住控制器和根Hub是PC上的硬件,由USB主控制器芯片、USB Hub控制器芯片、USB端口连接件寄控制器外围电路组成。
- USB主控制器芯片提供USB的收发物理层,实现USB电缆上差模信号与数字信号的转换并提供端点的物理存储机制,还能根据USB的传输机制自动管理各个端点的存储于数据交换。
- USB主控制器是通过PCI总线和CPU进行通信的。
- 根Hub是USB第一级Hub,提供USB的物理接口。
- USB控制器芯片本身就集成了Hub。并且直接以D+和D-两根引脚的方式提供端口连接点。
(2)、USB系统软件
USB 系统软件主要是指 PC 上操作系统提供的一系列软件和驱动程序 , 主要由 USB 核心驱动程序和 USB 主控制器驱动程序组成。
USB主机读/写操作流程
USB主控制器驱动程序就负责最底层的驱动任务 , 控制和管理硬件底层 , 负责将USB事务发送给USB主控制器芯片 , 并最终将串行数据发送到电缆上。
USB主机驱动程序
(3)、用户软件和 USB 设备类驱动程序
USB 设备类驱动程序 , 也叫做USB用户驱动程序 , 它把用户要求的USB命令发送给USB的主控制器硬件 , 同时初始化内存缓冲区 , 用于存储所有USB通信中的数据。
3、USB 在 PCI 总线上的位置
USB在PCI总线的位置
4、设备级的USB系统
典型的USB Hub
(2)、USB设备
USB设备就是能够通过USB来发送和接收数据 , 从而实现一定功能的实体。每个USB设备都 具有表明自身能力和所需资源的描述符。在设备第一次连接到主机上之后 , 首先要接受主机的枚举 , 提供描述符。 在得到主机的允许之后 , 设备就可以分得USB的带宽 , 进行数据传输。
USB 设备可以分为 3 个层次 :功能单元、逻辑设备和总线接口。
- 总线接口:最底层的物理实体,以USB接口控制器作为核心 , 是USB 发送和接收数据的接口。
- 逻辑设备:基本上就是USB协议栈的主体。
- 功能单元:不同USB设备各自的特点就是通过第3层次的功能单元来提供的(如:USB接口的数码相机中图像采集、压缩的功能、USB接口的MP3播放器中音频压缩解码的功能以及USB移动存储设备中数据的存储功能等)
USB设备结构
5、USB的拓扑结构图
在USB协议1 .1 中 , 一个USB的拓扑网络最多可以支持 4 个Hub层(包 括最后一级设备后共5层)以及127个外设。而在最新的USB协议2.0中,对于Hub层的支持已经达到了6层(包括最后一级设备后共7 层)。对于目前的计算机应用来说 , 127个设备的上限就已经完全够用了。
USB拓扑结构
6、完整的USB系统软硬件组成
完整的USB系统构成
USB系统的软硬件资源可以分为3个层次,即功能层、设备层和接口层。
(1)、接口层涉及的是具体的物理层 , 其主要实现物理信号和数据包的交互 , 也就是在主机端的USB 主控制器和设备端的USB总线接口之间传输实际的数据流。
(2)、设备层主要提供USB基本的协议栈 , 执行通用的USB的各种操作和请求命令 , 从逻辑上讲 , 就是USB系统软件与USB逻辑设备之间的数据交换。
(3)、功能层提供每个USB设备所需的特定的功能 , 主机端的这个功能由用户软件和设备类驱动程序提供 , 而设备端就由功能单元来实现 , 它们之间的这种联系看作是逻辑上的数据流。
USB系统资源 | |
USB硬件 | USB住控制器/根Hub |
USB Hub | |
USB设备(包括USB协议栈固件) | |
USB软件(基于PC) | 用户软件和USB设备驱动程序 |
USB核心驱动程序 | |
USB控制器驱动程序 |
如有错误,请及时提出。谢谢!!!
上一篇 下一篇