iii
目录
缩略词 ...................................................................................................................................... 1
正文之前 ................................................................................................................................... ii
1. 此文目的 ...................................................................................................................... ii
2. 关于一些USB方面的文档 ................................................................................................ ii
2.1. 大而全的USB英文资料 ........................................................................................ ii
2.2. 简明扼要的USB英文资料 ..................................................................................... ii
2.3. 全系列的介绍Linux下的USB中文资料 ................................................................... ii
3. 声明 ............................................................................................................................. ii
1. USB的来龙去脉 ..................................................................................................................... 4
1.1. USB是什么 ................................................................................................................ 4
1.2. 为何要有USB ............................................................................................................. 6
2. USB相关的基础知识 .............................................................................................................. 9
2.1. USB相关的硬件 .......................................................................................................... 9
2.1.1. USB控制器类型:OHCI,UHCI,EHCI,xHCI ................................................... 9
2.1.1.1. OHCI和UHCI ....................................................................................... 9
2.1.1.1.1. 为何Intel设计的UHCI把更多的任务都留给软件实现? ................... 9
2.1.1.1.2. 为何嵌入式系统中的USB主控多用OHCI,而非UHCI? ................ 10
2.1.1.1.3. OHCI和UHCI技术细节上的区别 ................................................. 10
2.1.1.2. EHCI .................................................................................................. 10
2.1.1.3. xHCI .................................................................................................. 10
2.1.1.4. OHCI,UHCI,EHCI,xHCI的区别和联系 ............................................. 11
2.1.2. USB接口的引脚定义 ....................................................................................... 11
2.1.3. USB的接口(connector)类型 ....................................................................... 12
2.2. USB相关的软件 ........................................................................................................ 13
2.2.1. USB设备端的固件(Firmware) ..................................................................... 13
2.2.2. USB主机(Host)端的USB驱动和软件 ............................................................ 13
2.2.3. 其他一些USB测试和协议分析等软件 ................................................................ 13
3. USB协议概览 ...................................................................................................................... 15
3.1. USB 2.0协议内容概览 ............................................................................................... 15
3.2. USB协议的版本和支持的速度 .................................................................................... 17
3.2.1. 为何USB的速度,最开始没有设计的更快些? ................................................... 17
3.3. USB系统的核心是Host ............................................................................................. 18
3.4. USB中用NRZI来编码数据 .......................................................................................... 18
3.4.1. USB中用Bit-Stuffing来同步时钟信号 .............................................................. 20
4. USB协议细节 ...................................................................................................................... 21
4.1. USB Class ............................................................................................................... 21
4.1.1. 为何要搞这么多USB的Class ........................................................................... 21
4.2. USB的框架 .............................................................................................................. 22
4.3. USB Transfer and Transaction ................................................................................ 27
4.4. USB枚举(Emulation) ........................................................................................... 27
4.4.1. 什么是USB枚举 ............................................................................................. 27
4.4.2. USB枚举的过程 ............................................................................................. 27
4.4.3. 举例详解USB的枚举过程 ................................................................................ 28
4.4.3.1. USB枚举示例数据 ............................................................................... 28
4.4.3.2. 详细分析USB枚举数据的每个字段的具体含义 ........................................ 29
4.5. USB OHCI学习笔记 ................................................................................................. 35
参考书目 ................................................................................................................................ 39