第0章读者指南1 0.1本书概要1 0.2因特网和Web资源1 第一部分概述 第1章导论4 1.1计算机组织与体系结构4 1.2结构和功能5 1.2.1功能5 1.2.2结构6 1.3为何要学习计算机组织和体系 结构8
第2章计算机的演变和性能10 2.1计算机简史10 2.1.1第一代:真空管10 2.1.2第二代:晶体管17 2.1.3第三代:集成电路19 2.1.4后续的几代24 2.2性能设计26 2.2.1微处理器的速度27 2.2.2性能平衡27 2.2.3芯片组织和体系结构的 改进29 2.3Pentium和PowerPC的进展32 2.3.1Pentium32 2.3.2PowerPC33 2.4推荐的参考文献和Web站点34 2.5关键词、思考题和习题34 第二部分计算机系统 第3章计算机功能和互连的顶层 视图41 3.1计算机的部件41 3.2计算机功能43 3.2.1指令的取和执行44 3.2.2中断47 3.2.3I/O功能53 3.3互连结构54 3.4总线互连55 3.4.1总线结构56 3.4.2多总线层次结构57 3.4.3总线设计要素59 3.5PCI63 3.5.1总线结构63 3.5.2PCI命令67 3.5.3数据传送68 3.5.4仲裁70 3.6推荐的参考文献和Web站点72 3.7关键词、思考题和习题72 附录3A时序图76
第4章Cache78 4.1计算机存储系统概述78 4.1.1存储系统的特性78 4.1.2存储器分层结构80 4.2Cache存储器原理83 4.3Cache的设计要素86 4.3.1Cache容量86 4.3.2映射功能86 4.3.3替换算法94 4.3.4写策略95 4.3.5行的大小96 4.3.6Cache数目96 4.4Pentium 4和PowerPC的Cache 组织98 4.4.1Pentium 4的Cache 组织98 4.4.2PowerPC的Cache 组织100 4.5推荐的参考文献101 4.6关键词、思考题和习题101 附录4A两级存储器的性能特点107 4A.1局部性107 4A.2两级存储器的 操作110 4A.3性能110
第5章内部存储器114 5.1半导体主存储器114 5.1.1组织114 5.1.2DRAM和SRAM114 5.1.3ROM类型117 5.1.4芯片逻辑118 5.1.5芯片封装119 5.1.6模块组织120 5.2纠错122 5.3高级DRAM组织127 5.3.1同步DRAM127 5.3.2rambus DRAM129 5.3.3DDR SDRAM129 5.3.4带Cache的DRAM130 5.4推荐的参考文献和Web站点130 5.5关键词、思考题和习题131
第6章外部存储器135 6.1磁盘135 6.1.1磁读写机制135 6.1.2数据组织和格式化136 6.1.3物理特性138 6.1.4磁盘性能参数140 6.2RAID(磁盘冗余阵列)143 6.2.1RAID 0级144 6.2.2RAID 1级148 6.2.3RAID 2级149 6.2.4RAID 3级149 6.2.5RAID 4级150 6.2.6RAID 5级151 6.2.7RAID 6级151 6.3光存储器152 6.3.1光盘153 6.3.2数字通用盘155 6.4磁带156 6.5推荐的参考文献和Web站点158 6.6关键词、思考题和习题158
第7章输入输出161 7.1外部设备162 7.1.1键盘/监视器163 7.1.2磁盘驱动器164 7.2I/O模块166 7.2.1模块功能166 7.2.2I/O模块结构167 7.3编程式I/O168 7.3.1概述169 7.3.2I/O命令169 7.3.3I/O指令169 7.4中断驱动式I/O171 7.4.1中断处理172 7.4.2设计问题173 7.4.3Intel 82C59A中断控 制器175 7.4.4Intel 82C55A可编程 外部接口176 7.5存储器直接存取(DMA)178 7.5.1编程式I/O和中断驱动式 I/O的不足178 7.5.2DMA功能179 7.5.3Intel 8237A DMA控 制器181 7.6I/O通道和处理器183 7.6.1I/O功能的演变183 7.6.2I/O通道的特性183 7.7外部接口:FireWire和 InfiniBand185 7.7.1接口的类型185 7.7.2点对点和多点配置186 7.7.3FireWire串行总线186 7.7.4InfiniBand190 7.8推荐的参考文献和Web站点193 7.9关键词、思考题和习题193
第8章操作系统支持198 8.1操作系统概述198 8.1.1操作系统的目标和 功能198 8.1.2操作系统的类型200 8.2调度207 8.2.1长期调度207 8.2.2中期调度208 8.2.3短期调度208 8.3存储管理212 8.3.1交换212 8.3.2分区213 8.3.3分页215 8.3.4虚拟存储器216 8.3.5转换后援缓冲器218 8.3.6分段220 8.4Pentium Ⅱ和PowerPC的存储 管理221 8.4.1Pentium Ⅱ的存储管理 硬件221 8.4.2PowerPC存储管理 硬件225 8.5推荐的参考文献和Web站点228 8.6关键词、思考题和习题229 第三部分中央处理器 第9章计算机算术235 9.1算术逻辑单元235 9.2整数表示236 9.2.1符号幅值表示法236 9.2.22的补码表示法237 9.2.3不同位长间的转换239 9.2.4定点表示法241 9.3整数算术241 9.3.1取负241 9.3.2加法和减法242 9.3.3乘法244 9.3.4除法250 9.4浮点表示253 9.4.1原理253 9.4.2二进制浮点表示的IEEE 标准256 9.5浮点算术258 9.5.1浮点加法和减法259 9.5.2浮点乘法和除法261 9.5.3浮点运算的精度问题263 9.5.4二进制浮点算术的IEEE 标准264 9.6推荐的参考文献和Web站点266 9.7关键词、思考题和习题267
第10章指令集:特征和功能272 10.1机器指令特征272 10.1.1机器指令要素272 10.1.2指令表示273 10.1.3指令类型274 10.1.4地址数目275 10.1.5指令集设计277 10.2操作数类型277 10.2.1数值278 10.2.2字符278 10.2.3逻辑数据279 10.3Pentium和PowerPC数据 类型279 10.3.1Pentium数据类型279 10.3.2PowerPC数据类型280 10.4操作类型281 10.4.1数据传送类283 10.4.2算术运算类284 10.4.3逻辑运算类285 10.4.4转换类287 10.4.5输入输出类288 10.4.6系统控制类288 10.4.7控制传递类288 10.5Pentium和PowerPC操作 类型293 10.5.1Pentium操作类型293 10.5.2PowerPC操作类型300 10.6汇编语言301 10.7推荐的参考文献303 10.8关键词、思考题和习题303 附录10A堆栈309 10A.1堆栈实现310 10A.2表示式求值311 附录10B小数在先和大数在先314 10B.1字节排序314 10B.2位排序316
第11章指令集:寻址方式和指令 格式317 11.1寻址方式317 11.1.1立即寻址319 11.1.2直接寻址319 11.1.3间接寻址319 11.1.4寄存器寻址320 11.1.5寄存器间接寻址320 11.1.6偏移寻址321 11.1.7堆栈寻址322 11.2Pentium和PowerPC寻址 方式323 11.2.1Pentium寻址方式323 11.2.2PowerPC寻址方式325 11.3指令格式327 11.3.1指令长度327 11.3.2位的分配328 11.3.3变长指令331 11.4Pentium和PowerPC指令 格式334 11.4.1Pentium指令格式334 11.4.2PowerPC指令格式336 11.5推荐的参考文献337 11.6关键词、思考题和习题338
第12章CPU结构和功能342 12.1处理器组织342 12.2寄存器组织344 12.2.1用户可见寄存器344 12.2.2控制和状态寄存器346 12.2.3微处理器寄存器组织 的例子347 12.3指令周期349 12.3.1间址周期349 12.3.2数据流350 12.4指令流水352 12.4.1流水线策略352 12.4.2流水线的性能356 12.4.3转移处理357 12.4.4Intel 80486的流 水线363 12.5Pentium处理器364 12.5.1寄存器组织364 12.5.2MMX寄存器368 12.5.3中断处理369 12.6PowerPC处理器371 12.6.1寄存器组织371 12.6.2中断处理374 12.7推荐的参考文献377 12.8关键词、思考题和习题377
第13章精简指令集计算机382 13.1指令执行特征383 13.1.1操作384 13.1.2操作数385 13.1.3过程调用385 13.1.4结论386 13.2大寄存器组方案的使用386 13.2.1寄存器窗口387 13.2.2全局变量389 13.2.3大寄存器组与Cache 的对比389 13.3基于编译器的寄存器优化391 13.4精简指令集体系结构392 13.4.1CISC的理由392 13.4.2精简指令集体系结构 特征394 13.4.3CISC与RISC特征 对比395 13.5RISC流水线技术397 13.5.1规整指令的流水线 技术397 13.5.2流水线的优化398 13.6MIPS R4000400 13.6.1指令集400 13.6.2指令流水线403 13.7SPARC406 13.7.1SPARC寄存器组406 13.7.2指令集408 13.7.3指令格式409 13.8RISC与CISC的争论411 13.9推荐的参考文献411 13.10关键词、思考题和习题412
第14章指令级并行性和超标量处 理器416 14.1概述416 14.1.1超标量与超级流 水线417 14.1.2限制418 14.2设计考虑421 14.2.1指令级并行性和机器 并行性421 14.2.2指令发射策略421 14.2.3寄存器重命名424 14.2.4机器并行性425 14.2.5转移预测426 14.2.6超标量执行427 14.2.7超标量实现427 14.3Pentium 4428 14.3.1由前端到跟踪 Cache429 14.3.2无序执行逻辑434 14.3.3整数和浮点执行 单元435 14.4PowerPC435 14.4.1PowerPC 601435 14.4.2转移处理439 14.4.3PowerPC 620439 14.5推荐的参考文献441 14.6关键词、思考题和习题442
第15章IA64体系结构447 15.1推动因素447 15.2通常组织449 15.3判定、推测和软件流水450 15.3.1指令格式450 15.3.2汇编语言格式452 15.3.3判定执行453 15.3.4控制推测457 15.3.5数据推测461 15.3.6软件流水462 15.4IA64指令级体系结构465 15.4.1寄存器堆栈467 15.4.2当前栈帧标示器和先 前功能状态寄存器468 15.5Itanium处理器组织469 15.6推荐的参考文献和Web站点472 15.7关键词、思考题和习题472 第四部分控制器 第16章控制器操作478 16.1微操作479 16.1.1指令周期的子周期479 16.1.2指令周期483 16.2处理器控制484 16.2.1功能需求484 16.2.2控制信号485 16.2.3控制信号举例486 16.2.4处理器内部组织488 16.2.5Intel 8085489 16.3硬连线实现493 16.3.1控制器输入493 16.3.2控制器逻辑494 16.4推荐的参考文献495 16.5关键词、思考题和习题495
第17章微程序式控制497 17.1基本概念497 17.1.1微指令497 17.1.2微程序式控制器499 17.1.3Wilkes控制501 17.1.4优缺点505 17.2微指令排序505 17.2.1设计考虑505 17.2.2排序技术505 17.2.3地址生成508 17.2.4LSI11微指令排序508 17.3微指令执行509 17.3.1微指令分类法510 17.3.2微指令编码512 17.3.3LSI11微指令执行513 17.3.4IBM 3033微指令 执行518 17.4TI 8800519 17.4.1微指令格式519 17.4.2微顺序器522 17.4.3寄存器式ALU525 17.5推荐的参考文献527 17.6关键词、思考题和习题527 第五部分并行处理的组织 第18章并行处理532 18.1多处理机组织533 18.1.1并行处理机系统 类型533 18.1.2并行组织533 18.2对称多处理机535 18.2.1组织535 18.2.2多处理机操作系统设 计考虑538 18.2.3大型机SMP538 18.3cache一致性和MESI协议540 18.3.1软件解决方案541 18.3.2硬件解决方案541 18.3.3MESI协议543 18.4多线程化和芯片多处理器546 18.4.1隐式和显式多线 程化546 18.4.2显式多线程化的 方法547 18.4.3实例系统550 18.5机群系统552 18.5.1机群系统配置552 18.5.2操作系统设计问题554 18.5.3机群计算机体系 结构555 18.5.4机群系统与SMP的 对比557 18.6非均匀存储器存取557 18.6.1推动因素557 18.6.2组织558 18.6.3NUMA的赞成票和反 对票559 18.7向量计算560 18.7.1向量计算方法561 18.7.2IBM 3090向量设备565 18.8推荐的参考文献和Web站点571 18.9关键词、思考题和习题572
附录A计算机组织与体系结构 课题578 A.1研究性课题578 A.2仿真性课题578 A.2.1SimpleScalar579 A.2.2SMPCache579 A.3阅读/报告类题目579 |