第一部分 引言 1
第1章 基本概念和计算机演化 1
1.1 组成与体系结构 2
1.2 结构与功能 3
1.3 计算机简史 11
1.4 Intel x86体系结构的演化 27
1.5 嵌入式系统 29
1.6 ARM体系结构 33
1.7 云计算 39
1.8 关键词、复习题和练习题 42
第2章 性能问题 45
2.1 优化性能设计 46
2.2 多核、MIC和GPGPU 52
2.3 深刻理解性能的两个定律:Ahmdahl定律和Little定律 53
2.4 计算机性能的基本度量 56
2.5 计算均值 59
2.6 基准测试和SPEC 67
2.7 关键词、复习题和练习题 74
第二部分 计算机系统 80
第3章 计算机功能与互连的顶层视图 80
3.1 计算机组件 81
3.2 计算机功能 83
3.3 互连结构 99
3.4 总线互连 100
3.5 点对点互连 102
3.6 PCI Express 107
3.7 关键词、复习题和练习题 116
第4章 高速缓存 120
4.1 计算机存储系统概述 121
4.2 高速缓存存储器原理 128
4.3 高速缓存设计要素 131
4.4 Pentium 4高速缓存结构 149
4.5 关键词、复习题和练习题 152
附录4A两级存储的性能特征 157
第5章 内部存储器 165
5.1 半导体主存 166
5.2 纠错 174
5.3 DDR DRAM 180
5.4 闪存 185
5.5 新的非易失性固态存储器技术 187
5.6 关键词、复习题和练习题 190
第6章 外部存储器 194
6.1 磁盘 195
6.2 RAID 204
6.3 固态硬盘 212
6.4 光学存储器 217
6.5 磁带 222
6.6 关键词、复习题和练习题 224
第7章 输入/输出 228
7.1 外部设备 230
7.2 I/O模块 232
7.3 可编程I/O 235
7.4 中断驱动的I/O 239
7.5 直接存储器访问 248
7.6 直接高速缓存访问 254
7.7 I/O通道和处理器 261
7.8 外部互连标准 263
7.9 IBM zEnterprise EC 12 I/O系统 266
7.10 关键词、复习题和练习题 270
第8章 操作系统支持 275
8.1 操作系统概述 276
8.2 调度 287
8.3 存储管理 293
8.4 Intel x86存储管理 304
8.5 ARM存储管理 309
8.6 关键词、复习题和练习题 314
第三部分 算术与逻辑 318
第9章 数字系统 318
9.1 十进制系统 319
9.2 按位记数系统 320
9.3 二进制系统 321
9.4 二进制与十进制的转换 321
9.5 十六进制表示 324
9.6 关键词和练习题 326
第10章 计算机算术运算 328
10.1 算术与逻辑单元 329
10.2 整数表示 330
10.3 整数算术运算 335
10.4 浮点表示 350
10.5 浮点算术运算 358
10.6 关键词、复习题和练习题 367
第11章 数字逻辑 372
11.1 布尔代数 373
11.2 门 376
11.3 组合电路 378
11.4 时序电路 396
11.5 可编程逻辑设备 405
11.6 关键词和练习题 409
第四部分 中央处理单元 412
第12章 指令集:特点与功能 412
12.1 机器指令特点 413
12.2 操作数类型 420
12.3 Intel x86和ARM的数据类型 422
12.4 操作类型 425
12.5 Intel x86和ARM的操作类型 438
12.6 关键词、复习题和练习题 446
附录12A小端序、大端序和双端序 452
第13章 指令集:寻址模式与格式 456
13.1 寻址模式 457
13.2 x86和ARM的寻址模式 463
13.3 指令格式 469
13.4 x86和ARM指令格式 477
13.5 汇编语言 482
13.6 关键词、复习题和练习题 484
第14章 处理器结构与功能 488
14.1 处理器组成 489
14.2 寄存器组成 491
14.3 指令周期 496
14.4 指令流水线 500
14.5 x86处理器系列 517
14.6 ARM处理器 524
14.7 关键词、复习题和练习题 530
第15章 精简指令集计算机 535
15.1 指令执行特性 537
15.2 大寄存器文件的使用 542
15.3 基于编译器的寄存器优化 547
15.4 精简指令集架构 549
15.5 RISC流水线 555
15.6 MIPS R4000 559
15.7 SPARC 565
15.8 RISC与CISC之争 570
15.9 关键词、复习题和练习题 571
第16章 指令级并行与超标量处理器 575
16.1 概述 576
16.2 设计问题 581
16.3 Intel Core微架构 591
16.4 ARM Cortex-A8 596
16.5 ARM Cortex-M3 604
16.6 关键词、复习题和练习题 608
第五部分 并行结构 613
第17章 并行处理 613
17.1 多处理器结构 615
17.2 对称多处理器 617
17.3 高速缓存一致性和MESI协议 621
17.4 多线程和片上多处理器 628
17.5 集群 633
17.6 非均匀内存访问 640
17.7 云计算 643
17.8 关键词、复习题和练习题 650
第18章 多核计算机 656
18.1 硬件性能问题 657
18.2 软件性能问题 660
18.3 多核结构 665
18.4 异构多核结构 667
18.5 Intel Core i7-990X 676
18.6 ARM Cortex-A 15 MPCore 677
18.7 IBM zEnterprise EC 12大型机 682
18.8 关键词、复习题和练习题 685
第19章 通用图形处理单元 688
19.1 CUDA基础 689
19.2 GPU与CPU 691
19.3 GPU架构概述 692
19.4 Intel的Gen8 GPU 701
19.5 何时把GPU当作协处理器使用 704
19.6 关键词和复习题 706
第六部分 控制单元 707
第20章 控制单元操作 707
20.1 微操作 708
20.2 处理器的控制 714
20.3 硬布线实现 724
20.4 关键词、复习题和练习题 727
第21章 微程序控制 729
21.1 基本概念 730
21.2 微指令序列 739
21.3 微指令执行 745
21.4 TI 8800 755
21.5 关键词、复习题和练习题 766
附录A计算机组成与体系结构教学项目 768
附录B 汇编语言与相关主题 774
参考文献 800