目录 1
第1章 PCI总线概述 1
1.1 计算机总线 1
1.1.1 计算机总线的概念 1
1.1.2 计算机总线的分类 1
1.2 PCI总线的特点 10
1.3 PCI总线的发展趋势 12
1.3.1 PCI总线的发展历程 12
1.3.2 PCI总线的未来 13
第2章 PCI板卡的机械和电气规范 15
2.1 PCI板卡的机械和电气规范介绍 15
2.2 PCI板卡的物理尺寸 15
2.3 PCI板卡接插件的物理尺寸 17
2.4.1 PCI卡的电源指标 19
2.4 PCI板卡的电气指标 19
2.4.2 PCI卡的引脚分配 21
2.4.3 PCI卡的电源要求 25
2.4.4 PCI卡的PCB布局布线要求 25
第3章 PCI总线设备的信号分配 27
3.1 信号类型定义 27
3.2 PCI总线信号定义 28
3.2.1 系统信号 28
3.2.2 地址和数据信号 28
3.2.3 接口控制信号 29
3.2.4 仲裁引脚 30
3.2.5 错误反馈引脚 30
3.2.6 中断引脚 30
3.2.7 高速缓存引脚 31
3.2.8 64位总线扩展引脚 31
3.2.9 JTAG边沿扫描引脚 32
第4章 PCI总线设备的配置空间 34
4.1 PCI配置空间简介 34
4.2 必须配置的寄存器 36
4.3 其他的配置寄存器 40
4.4 基地址配置寄存器 41
4.4.1 地址映射 42
4.4.2 扩展ROM基地址寄存器 43
4.4.3 外加存储器 44
4.5 PCI扩展ROM 44
4.5.1 PCI扩展ROM内容 44
4.5.2 PCI兼容的扩展ROM 46
4.6 PCI设备驱动程序 48
4.7 系统复位 49
5.1 PCI总线接口芯片介绍 50
第5章 PCI总线设备接口芯片 50
5.2 PCI9052芯片 51
5.2.1 PCI9052的主要特点 52
5.2.2 PCI9052的引脚分配 53
5.2.3 PCI9052的功能介绍 59
5.2.4 PCI9052使用时注意的问题 65
5.3 CH365芯片 65
5.3.1 CH365的特点 66
5.3.2 CH365芯片的引脚分配 67
5.3.3 CH365的功能介绍 68
5.3.4 CH365的应用 73
第6章 PCI总线设备的SCH图和PCB图设计 87
6.1 PCI总线设备的SCH图设计 87
6.1.1 信号线部分 87
6.1.2 特殊的引脚 88
6.1.3 去耦电容的使用 89
6.2.1 PCB图设计注意事项 90
6.2 PCI总线设备的PCB图设计 90
6.2.2 利用PCB设计向导 92
第7章 WDM设备驱动程序简介 99
7.1 WDM驱动程序概述 99
7.1.1 操作系统概述 99
7.1.2 WDM特性 102
7.1.3 WDM与其他驱动程序的比较 102
7.2 WDM驱动程序的种类 103
7.2.1 WDM驱动体系 103
7.2.2 Windows 2000中的设备驱动程序 104
7.3 WDM驱动程序的层次模型 105
7.4 WDM驱动程序的基本结构 106
7.5 驱动程序设计的硬件基础 119
7.6.1 WDM驱动程序的开发步骤 124
7.6 WDM开发驱动程序的过程 124
7.6.2 驱动程序开发的一些技巧 127
第8章 用DDK开发PCI总线设备驱动程序 130
8.1 开发工具的选择 130
8.2 开发环境的建立 130
8.3 PCI设备驱动程序的特点 133
8.4 PCI设备驱动程序的设计 133
8.5 PCI9052Demo设备的驱动程序开发 138
8.6 PCI9052Demo设备的驱动程序的编译链接 216
第9章 用DriverStudio开发PCI总线设备驱动程序 221
9.1 DriverStudio工具包简介 221
9.1.1 DriverStudio工具包的特点 221
9.1.2 DriverStudio工具包的组成 222
9.1.3 DriverStudio工具包的安装与运行环境设置 223
9.2 利用向导生成PCI设备驱动程序框架和设备配置信息 226
9.3.1 PCI设备的配置空间的访问 234
9.3.2 I/O端口的访问 234
9.3 PCI设备的操作 234
9.3.3 内存的访问 235
9.3.4 中断的处理 235
9.3.5 DMA的处理 237
9.4 I/O端口的访问实例 239
第10章 PCI总线设备上层应用程序的开发 268
10.1 设备名的标识方式 268
10.1.1 设备的符号链接 268
10.1.2 设备接口 269
10.2 设备接口注册 270
10.3 设备驱动程序的访问 270
10.4 应用程序的开发实例 271
11.1.1 INF文件的结构 291
第11章 PCI总线设备的安装和调试 291
11.1 INF文件 291
11.1.2 INF文件实例 297
11.1.3 使用INF文件 298
11.1.4 PCI9052Demo设备的INF文件 301
11.1.5 PCI9052Demo驱动程序的安装 304
11.2 驱动程序的调试 308
11.2.1 调试概述 308
11.2.2 编写代码的注意问题 310
11.2.3 WinDbg工具的使用 310
11.2.4 WinDbg分析崩溃实例 312
11.2.5 WinDbg的交互式的调试 318
11.2.6 SoftICE软件的使用 319
11.2.7 使用SoftICE调试程序 323