《计算机USB接口技术》PDF下载

  • 购买积分:12 如何计算积分?
  • 作  者:陈启美,丁传锁编著
  • 出 版 社:南京:南京大学出版社
  • 出版年份:2003
  • ISBN:7305039950
  • 页数:340 页
图书介绍:本书系统介绍了USB总线技术及其开发应用技术。全书共分11章,首先讨论了USB的特点和地位;然后描述了USB体系结构的基本原理;接着具体阐述USB的机械及电气特性、USB协议层、USB设备和USB主机的硬件和软件、USB集线器的工作原理;最后以实际应用为背景,具体介绍了操作系统对于USB驱动的具体编程,以及对于USB控制器模块的应用开发。 本书自成系统、便于自学,可作为高等学校计算机及相关专业的教材,也可作为科技人员的参考书。

1 导论 1

1.1 USB的背景 1

1.1.1 起因 1

1.1.2 特色 2

1.1.3 USB设备的分类 3

1.1.4 USB规范的目标 3

1.1.5 USB规范的发展 4

1.2 微机系统与总线 4

1.2.1 微机系统构成 4

1.2.2 外部设备分类与特点 6

1.2.3 与串口、并口信息交互 7

1.2.4 总线的构想 9

1.2.5 总线数据传输 12

1.2.6 总线仲裁 14

1.2.7 PCI总线 17

1.3 USB总线在PCI总线上的实现 23

1.4 网络相关技术 24

1.4.1 计算机网络功能 24

1.4.2 网络体系结构 25

1.4.4 服务质量 26

1.4.3 流量控制 26

2 体系结构概述 28

2.1 USB系统概述 28

2.1.1 总线布局 28

2.1.2 USB的主机 28

2.1.3 USB的设备 29

2.2 物理接口 29

2.2.1 电气特性 29

2.3.1 电源分配 30

2.3 电源 30

2.2.2 机械特性 30

2.3.2 电源管理 31

2.4 总线协议 31

2.5 容错性 32

2.5.1 错误检测 32

2.5.2 错误处理 32

2.6 系统设置 32

2.6.1 USB设备的安装 32

2.6.3 总线标识 33

2.7 数据流种类 33

2.6.2 USB设备的拆卸 33

2.7.1 控制传送 34

2.7.2 批传送 34

2.7.3 中断传送 34

2.7.4 同步传送 34

2.7.5 指定USB带宽 35

2.8 USB设备 35

2.8.1 设备特性 35

2.8.2 设备描述 36

2.9 USB主机:硬件和软件 37

2.10 体系结构的扩充 38

3 USB数据流模型 39

3.1 USB主机与外设视图 39

3.2 总线拓朴 41

3.2.1 USB主机 41

3.2.2 USB设备 41

3.2.3 总线的物理拓朴结构 42

3.2.4 总线的逻辑拓朴结构 42

3.3 USB通信流 44

3.3.1 设备端点 45

3.3.2 通道 46

3.4 传送类型 48

3.5 控制传送 49

3.5.1 控制传送类型的数据格式 50

3.5.2 控制传送的方向 50

3.5.3 控制传送对包的大小的限制 50

3.5.4 控制传送对总线访问的限制 51

3.5.5 控制传送的数据顺序 53

3.6 同步传送 53

3.6.3 同步传送对包的大小的限制 54

3.6.2 同步传送的方向 54

3.6.1 同步传送的数据格式 54

3.6.4 同步传送对总线访问的限制 55

3.6.5 同步传送的数据顺序 55

3.7 中断传送 56

3.7.1 中断传送的数据格式 56

3.7.2 中断传送的方向 56

3.7.3 中断传送对包的大小的限制 56

3.7.4 中断传送对总线访问的限制 57

3.8.3 批传送对包的大小的限制 59

3.8.1 批传送的数据格式 59

3.8.2 批传送的方向 59

3.8 批传送 59

3.7.5 中断传送的数据顺序 59

3.8.4 批传送对总线访问的限制 60

3.8.5 批传送的数据顺序 61

3.9 传送的总线访问 61

3.9.1 传送管理 61

3.9.2 事务的跟踪 64

3.9.3 计算总线事务的时间 65

3.9.5 总线带宽归还 67

3.9.4 应用层和客户软件对缓冲区大小的计算 67

3.10 关于同步传送的一些特别考虑 68

3.10.1 典型的非USB同步应用 69

3.10.2 USB时钟模型 71

3.10.3 时钟同步 71

3.10.4 同步设备 73

3.10.5 数据预缓存 80

3.10.6 SOF跟踪 81

3.10.7 差错处理 81

3.10.8 为匹配速率而做的缓冲 82

4.2 连接器协议 84

4 机械特性 84

4.1 结构总述 84

4.3 电缆 85

4.4 电缆部件 85

4.4.1 可分离电缆部件 86

4.4.2 全速电缆部件 87

4.4.3 低速电缆部件 88

4.4.4 禁止使用电缆部件的情况 89

4.5 连接器的机械结构和材料要求 90

4.5.1 USB图标 90

4.5.3 系列A和系列B插座 91

4.5.2 USB连接器终端数据 91

4.5.4 系列A和系列B插头 94

4.6 电缆的机械结构和材料要求 97

4.6.1 概述 97

4.6.2 结构 98

4.6.3 电气特性 100

4.6.4 电缆环境特性 101

4.6.5 列表 101

4.7 电气、机械、环境一致性要求标准 101

4.9 印刷电路板参考图 107

4.8 USB基础 107

5 USB电气特性 111

5.1 信号的发送 111

5.1.1 USB驱动器特性 111

5.1.2 数据信号的上升沿和下降沿 114

5.1.3 电缆发送信号的偏移 116

5.1.4 接收器特性 116

5.1.5 设备速度验证 117

5.1.6 输入端特性 118

5.1.7 信号的发送标准 119

5.1.8 数据的编码和解码 128

5.1.9 位填充 128

5.1.10 同步格式 131

5.1.11 数据信号的传输速率 131

5.1.12 帧间距及其调节 131

5.1.13 数据源信号的发送 132

5.1.14 集线器信号发送时序 133

5.1.15 接收端数据的抖动 135

5.1.16 电缆时延 137

5.1.17 电缆上的信号衰减 138

5.1.19 端对端最大信号延迟 139

5.1.18 总线的周转时间和内部包的延时 139

5.2 供电分配 140

5.2.1 设备的分类 140

5.2.2 电压落差的范围 145

5.2.3 挂起/唤醒期间的电压控制 146

5.2.4 动态加载与卸载 147

5.3 物理层 149

5.3.1 控制条件 149

5.3.2 总线定时/电气特征 149

5.3.3 时间波形 157

6.3 包字段格式 161

6.3.1 包标识符字段 161

6 协议层 161

6.2 同步字段 161

6.1 位定序 161

6.3.2 地址字段 163

6.3.3 帧号字段 164

6.3.4 数据字段 164

6.3.5 循环冗余校验 164

6.4 包格式 165

6.4.1 标记包 165

6.4.3 数据包 166

6.4.4 握手包 166

6.4.2 帧起始(SOF)包 166

6.4.5 握手应答(Handshake Response) 168

6.5 事务格式 169

6.5.1 批处理事务 169

6.5.2 控制传送 171

6.5.3 中断事务 174

6.5.4 同步事务 175

6.6.1 通过建立标记初始化 176

6.6.2 成功的数据事务 176

6.6 数据切换同步和重试 176

6.6.3 损坏、或者不被接受的数据 177

6.6.4 损坏的ACK握手 177

6.6.5 低速事务 178

6.7 错误检测和恢复 179

6.7.1 包错误种类 180

6.7.2 总线周转(Turn-around)时间 180

6.7.3 错误的EOP 181

6.7.4 串扰(Babble)和活性丧失(Loss of Activity)的恢复 182

7.1.1 基本的设备状态 183

7.1 USB设备状态 183

7 USB设备架构 183

7.1.2 总线标识 186

7.2 通用USB设备操作 187

7.2.1 动态连接与移去 187

7.2.2 地址分配 187

7.2.3 配置 187

7.2.4 数据传送 188

7.2.5 电源管理 188

7.2.6 请求处理 188

7.3 USB设备请求 190

7.2.7 请求错误 190

7.3.1 bmRequest Type域 191

7.3.2 bRequest域 191

7.3.3 wValue域 191

7.3.4 wIndex域 191

7.3.5 wLength域 192

7.4 标准设备请求 192

7.4.1 清除特性(ClearFeature) 194

7.4.2 取得配置(GetConfiguration) 194

7.4.3 取得描述符(GetDescriptor) 194

7.4.5 取得状态(GetStatus) 195

7.4.4 取得接口设置(GetInterface) 195

7.4.6 设置地址(SetAddress) 197

7.4.7 设置配置值(SetConfiguration) 197

7.4.8 设置描述符(SetDescriptor) 197

7.4.9 设置特性(SetFeature) 197

7.4.10 设置接口(SetInterface) 198

7.4.11 同步帧(SynchFrame) 198

7.5 描述符 198

7.6 标准描述符的定义 199

7.6.1 设备 199

7.6.2 配置 201

7.6.3 接口 202

7.6.4 端点 204

7.6.5 字串 206

7.7 设备类定义 207

7.7.1 描述符 207

7.7.2 接口与端点的使用 207

7.7.3 请求 207

8 USB主机:硬件与软件 208

8.1 USB主机概况 208

8.1.1 概论 208

8.1.4 收集状态及活动统计数据 211

8.1.2 控制机构 211

8.1.3 数据流 211

8.1.5 电气接口因素 212

8.2 主机控制器功能 212

8.2.1 状态处理 212

8.2.2 串行-并行转换 213

8.2.3 帧产生 213

8.2.6 差错控制 214

8.2.7 远程唤醒 214

8.2.5 协议引擎 214

8.2.4 数据处理 214

8.2.8 根集线器 215

8.2.9 主机系统接口 215

8.3 软件功能概论 215

8.3.1 设备配置 215

8.3.2 资源管理 217

8.3.3 数据传送 218

8.3.4 普通数据定义 218

8.4 主机控制器驱动器 219

8.5 USBD 220

8.5.1 USBD概况 220

8.5.2 USBD命令机制 221

8.5.3 USBD通道机制 224

8.5.4 通过USBD机制管理USB系统 226

8.5.5 USB的控制权转移 228

8.6 操作系统环境 228

9 集线器规范 229

9.1 概述 229

9.1.1 集线器结构 229

9.1.2 集线器连接 229

9.2 集线器帧计时器 231

9.2.1 帧计数器的同步 232

9.2.2 EOF1和EOF2时刻 233

9.3 帧结束时的主机行为 235

9.3.1 最后发给主机的包 235

9.3.2 包的取消 235

9.3.3 事务完成预测 236

9.4 内部端口 237

9.4.1 不活动状态(Inactive) 237

9.4.2 挂起时延(Suspend Delay) 237

9.5 下行端口 238

9.4.4 产生唤醒(GResume) 238

9.4.3 充分挂起(Fsus) 238

9.5.1 下行端口状态描述 240

9.5.2 未连接检测计时器 243

9.6 上行端口 243

9.6.1 接收部分 243

9.6.2 发送器 245

9.7 集线器中断器 247

9.7.2 等待来自上行端口的包结束(WFEOPFU) 249

9.7.3 等待包开始(WFSOP) 249

9.7.1 等待来自上行端口的包开始(WFSOPFU) 249

9.7.4 等待包结束(WFEOP) 250

9.8 总线状态核定 250

9.8.1 端口错 250

9.8.2 速度检测 250

9.8.3 冲突 251

9.8.4 高速和低速行为 252

9.9 挂起和唤醒 253

9.10 集线器重启 254

9.11 集线器端口电源管理 254

9.12.1 上拉和下拉电阻 256

9.12.2 沿陡峭率控制(Edge Rate Control) 256

9.12 集线器I/O缓冲器需求 256

9.13 集线器控制器 257

9.13.1 端点组织 257

9.13.2 集线器信息结构和操作 257

9.13.3 端口变化信息处理过程 258

9.13.4 集线器和端口状态变化位图 259

9.13.5 电流过载报告和恢复 261

9.14 集线器配置 261

9.15 描述符 263

9.15.1 标准描述符 263

9.15.2 集线器类的描述符 264

9.16 请求 265

9.16.1 标准请求 265

9.16.2 类请求 266

10 USB驱动程序 280

10.1 Windows操作系统对USB的支持 280

10.1.1 Win 32驱动模式 280

10.1.2 用户模式和内核模式 281

10.2 分层驱动 283

10.2.1 USB驱动程序分层结构 283

10.2.2 设备和总线驱动 285

10.3.1 USB驱动程序接口 286

10.3 USB设备驱动程序 286

10.3.2 Windows使用的设备驱动类型 290

10.3.3 自定义驱动 292

11 USB控制器模块应用开发 295

11.1 USB控制器模块 295

11.1.1 USB控制芯片主体结构 295

11.1.2 USB控制模块的划分 296

11.1.3 USB控制模块的要素 296

11.1.4 USB控制芯片的选择 297

11.1.5 常用的USB控制芯片 300

11.2.1 系统结构 304

11.2 USB设备模块的开发 304

11.2.2 PDIUSBD12芯片特性和内部结构 305

11.2.3 软体设计 309

11.2.4 基于USB数据采集系统 316

11.3 USB主机模块的开发 321

11.3.1 USB主机和设备接口 321

11.3.2 ISP1160的典型连接和软件模型 323

11.3.3 基于ISP1160的数码相机的可视监控系统 325

附录1 USB词汇参考 328

附录2 网络资源 340