第1章 PCI局部总线简介 1
1.1 总线的基本概念 1
1.2 PCI局部总线的发展 1
1.2.1 PCI局部总线的孕育 1
1.2.2 PCI局部总线发展的动力 2
1.2.3 总线的性能指标 3
1.3 PCI局部总线的特点 3
1.4 PCI设备与功能 5
1.5 遵循的技术规范及获取方法 6
1.6 PCI局部总线的应用 6
第2章 PCI局部总线信号定义 8
2.1 信号类型说明 8
2.2 PCI局部总线信号定义 9
2.2.1 系统信号定义 9
2.2.2 地址和数据信号 9
2.2.3 接口控制信号 10
2.2.4 仲裁信号 10
2.2.5 错误报告信号 11
2.2.6 中断信号 12
2.2.7 附加信号 13
2.2.8 64位总线扩展信号 14
2.2.9 JTAG/边界扫描信号 15
2.3 边带信号 16
2.4 中央资源功能 16
第3章 PCI局部总线的操作 17
3.1 总线命令 17
3.1.1 总线命令编码 17
3.1.2 命令使用规则 23
3.2 PCI局部总线协议 25
3.2.1 PCI局部总线的交易控制 26
3.2.2 PCI局部总线的编址 26
3.2.3 字节校正和字节使能的用法 38
3.2.4 总线的驱动与过渡 40
3.2.5 交易顺序与报告 41
3.2.6 组合、合并与叠并 43
3.3 总线交易 45
3.3.1 总线上的读交易 45
3.3.2 总线上的写交易 49
3.3.3 交易的终止过程 53
3.4 PCI局部总线的仲裁 66
3.4.1 仲裁算法 67
3.4.2 公平仲裁举例 68
3.4.3 双主设备间的仲裁举例 69
3.4.4 仲裁协议 71
3.4.5 快速背对背交易 73
3.4.6 仲裁的停靠 75
3.5 PCI局部总线的访问延迟 75
3.5.1 总线访问延迟的概念 76
3.5.2 目标延迟 76
3.5.3 主设备数据延迟 78
3.5.4 存储器写最大完成时间限制 78
3.5.5 仲裁延迟 79
3.6 PCI局部总线的其它操作 85
3.6.1 设备选择 85
3.6.2 特殊周期 87
3.6.3 地址/数据的渐进 88
3.6.4 中断应答 90
3.7 纠错功能 91
3.7.1 奇偶位的产生 91
3.7.2 奇偶校验 92
3.7.3 地址奇偶错误 92
3.7.4 错误的报告 92
3.7.5 延迟交易与数据奇偶错误 94
3.7.6 错误恢复 95
3.8 PCI局部总线的64位扩展 96
3.8.1 64位数据传送和64位寻址 96
3.8.2 64位扩展信号 97
3.8.3 在32位插入式连接器上的64位卡 97
3.8.4 64位扩展漂移的防止 97
3.8.5 64位数据传送能力 99
3.8.6 64位寻址 105
3.8.7 64位奇偶校验 109
第4章 PCI局部总线的电气规范 110
4.1 概述 110
4.1.1 从5V到3.3V的过渡 110
4.1.2 动态与静态驱动规范 111
4.2 PCI元件指标 111
4.2.1 5V信号环境下的指标 112
4.2.2 3.3V信号环境下的指标 116
4.2.3 时间指标 119
4.3 系统(母板)技术指标 123
4.3.1 时钟相位偏移 123
4.3.2 复位信号 123
4.3.3 上拉电阻 124
4.3.4 电源 125
4.3.5 系统时标限制 126
4.3.6 系统的物理要求 128
4.3.7 连接器 128
4.4 扩展板技术指标 131
4.4.1 扩展板上的引脚分配 131
4.4.2 电源要求 134
4.4.3 物理要求 134
第5章 PCI局部总线的机械特性 136
5.1 简介 136
5.2 PCI扩展卡的物理尺寸及公差 139
5.2.1 连接器的物理描述 140
5.2.2 平面实现 146
第6章 配置空间 152
6.1 配置空间的组织 152
6.2 配置空间的功能 154
6.2.1 设备识别 154
6.2.2 设备的控制 160
6.2.3 设备状态寄存器 162
6.2.4 其它头标区寄存器 163
6.2.5 基址寄存器 165
6.2.6 新能力 168
6.3 PCI扩展ROM 171
6.3.1 PCI扩展ROM的内容 172
6.3.2 上电自测试(POST)代码 173
6.3.3 PC兼容的扩展ROM 173
6.3.4 设备驱动程序 176
6.4 消息信号中断(MSI) 176
6.4.1 消息能力结构 176
6.4.2 MSI操作 178
第7章 66MHzPCI规范 180
7.1 设备实现 180
7.2 协议 181
7.3 电气特性 181
7.3.1 信号环境 182
7.3.2 直流(DC)指标 182
7.3.3 交流(AC)指标 182
7.3.4 最大交流允许值与设备保护 183
7.3.5 时间指标 183
7.4 系统(主板)技术指标 186
7.4.1 时钟误差 186
7.4.2 复位信号 187
7.4.3 上拉电阻 187
7.4.4 电源 187
7.4.5 系统时标限制 187
7.4.6 物理要求 189
7.4.7 连接器引脚排列 189
第8章 PCIBIOS 190
8.1 PCIBIOS的用途 190
8.2 支持的操作系统环境 190
8.2.1 BIOS的实现与调用规则 190
8.2.2 实模式 191
8.2.3 286保护模式(16:16) 192
8.2.4 386保护模式(32:32) 192
8.2.5 平模式(0:32) 193
8.3 确定系统是否实现32位BIOS 193
8.4 确定32位BIOS支持的服务 193
8.5 确定32位BIOS是否支持PCIBIOS服务 194
8.6 调用PCIBIOS 194
8.6.1 PCIBIOS的存在性 194
8.6.2 PCI设备检测 195
8.6.3 PCI分类代码检测 195
8.6.4 特殊周期的产生 196
8.6.5 PCI中断路由选项的获得 196
8.6.6 PCI硬件中断设置 197
8.6.7 读配置字节 198
8.6.8 读配置字 198
8.6.9 读配置双字 199
8.6.10 写配置字节 199
8.6.11 写配置字 199
8.6.12 写配置双字 200
第9章 PCI-PCI桥 201
9.1 采用PCI-PCI桥结构的原因 201
9.2 基本术语 201
9.3 具有PCI-PCI桥的系统举例 202
9.4 PCI-PCI桥的作用 204
9.4.1 桥的功能 204
9.4.2 桥对总线上交易的处理行为 205
9.5 桥配置寄存器 206
9.5.1 概述 206
9.5.2 头标类型寄存器 207
9.5.3 设备的识别 207
9.5.4 总线编号寄存器 208
9.5.5 命令寄存器 209
9.5.6 状态寄存器 211
9.5.7 底板/槽编号寄存器 212
9.5.8 与地址译码相关的寄存器 213
9.5.9 Cache行容量寄存器 224
9.5.10 延迟定时寄存器 224
9.5.11 BIST寄存器 224
9.5.12 与中断相关的寄存器 225
9.6 配置过程 225
9.6.1 总线编号分配 225
9.6.2 底板与槽编号分配 225
9.6.3 地址空间分配 232
9.6.4 IRQ分配 233
9.6.5 显示配置 233
9.7 配置与特殊周期过滤 236
9.7.1 概述 236
9.7.2 特殊周期交易 237
9.7.3 类型1配置访问 238
9.7.4 类型0配置访问 238
9.8 中断确认处理 239
9.9 具有负向译码特征的PCI-PCI桥 239
9.10 复位 240
9.11 仲裁 240
9.12 中断支持 240
9.12.1 使用中断跟踪的设备 240
9.12.2 使用MSI的设备 241
9.13 缓冲区管理 241
9.13.1 存储器写并无效命令的处理 242
9.13.2 关于报告写缓冲区用法的规则. 242
9.13.3 多数据期特殊周期请求 243
9.14 错误检测与处理 243
9.14.1 简介 243
9.14.2 地址期奇偶校验错的处理 243
9.14.3 读数据期的奇偶校验错 244
9.14.4 写数据期的奇偶校验错 245
9.14.5 主设备缺省的处理 249
9.14.6 目标缺省的处理 250
9.14.7 放弃定时器时间溢出 250
9.14.8 在第二总线上处理SERR 251
附录A PCI局部总线操作规则 252
附录B 系统交易顺序 256
附录C 互斥访问 262
参考文献 267