译者序
序
前言
作者简介
第一部分 引言
第1章 基本概念和计算机演化 2
1.1 组成与体系结构 2
1.2 结构与功能 3
1.2.1 功能 3
1.2.2 结构 4
1.3 计算机简史 8
1.3.1 第一代:真空管 9
1.3.2 第二代:晶体管 13
1.3.3 第三代:集成电路 15
1.3.4 第三代以后 18
1.4 Intel x86体系结构的演化 20
1.5 嵌入式系统 22
1.5.1 物联网 23
1.5.2 嵌入式操作系统 23
1.5.3 应用处理器和专用处理器 23
1.5.4 微处理器与微控制器 24
1.5.5 嵌入式与深度嵌入式系统 24
1.6 ARM体系结构 25
1.6.1 ARM的演进 25
1.6.2 指令集架构 25
1.6.3 ARM产品 26
1.7 云计算 29
1.7.1 基本概念 29
1.7.2 云服务 30
1.8 关键词、复习题和练习题 31
第2章 性能问题 34
2.1 优化性能设计 34
2.1.1 微处理器速度 35
2.1.2 性能平衡 35
2.1.3 芯片组成与体系结构的改进 37
2.2 多核、MIC和GPGPU 38
2.3 Amdahl定律和Little定律 39
2.3.1 Amdahl定律 39
2.3.2 Little定律 40
2.4 计算机性能的基本度量 41
2.4.1 时钟速度 42
2.4.2 指令执行速率 42
2.5 计算均值 44
2.5.1 算术均值 45
2.5.2 调和均值 46
2.5.3 几何均值 47
2.6 基准测试和SPEC 49
2.6.1 基准测试原则 49
2.6.2 SPEC基准测试 50
2.7 关键词、复习题和练习题 54
第二部分 计算机系统
第3章 计算机功能与互连的顶层视图 60
3.1 计算机组件 60
3.2 计算机功能 62
3.2.1 取指和执行 62
3.2.2 中断 65
3.2.3 I/O功能 71
3.3 互连结构 71
3.4 总线互连 72
3.5 点对点互连 74
3.5.1 QPI物理层 75
3.5.2 QPI链接层 76
3.5.3 QPI路由层 77
3.5.4 QPI协议层 77
3.6 PCI Express 77
3.6.1 PCI物理和逻辑架构 78
3.6.2 PCIe物理层 79
3.6.3 PCIe事务层 80
3.6.4 PCIe数据链路层 82
3.7 关键词、复习题和练习题 83
第4章 高速缓存 87
4.1 计算机存储系统概述 87
4.1.1 存储系统的特性 87
4.1.2 存储器层次结构 89
4.2 高速缓存存储器原理 92
4.3 高速缓存设计要素 94
4.3.1 高速缓存地址 94
4.3.2 高速缓存大小 95
4.3.3 映射函数 96
4.3.4 替换算法 105
4.3.5 写策略 106
4.3.6 数据行大小 107
4.3.7 高速缓存的数量 107
4.4 Pentium 4高速缓存结构 109
4.5 关键词、复习题和练习题 111
附录4A 两级存储的性能特征 116
第5章 内部存储器 121
5.1 半导体存储器 121
5.1.1 组成 121
5.1.2 DRAM和SRAM 121
5.1.3 ROM的类型 123
5.1.4 芯片逻辑 124
5.1.5 芯片封装 126
5.1.6 模块组织 126
5.1.7 交叉存储器 128
5.2 纠错 128
5.3 DDR DRAM 131
5.3.1 同步DRAM 132
5.3.2 DDR SDRAM 133
5.4 闪存 135
5.4.1 操作 135
5.4.2 NOR和NAND闪存 135
5.5 新的非易失性固态存储器技术 137
5.5.1 STT-RAM 137
5.5.2 PCRAM 138
5.5.3 ReRAM 139
5.6 关键词、复习题和练习题 139
第6章 外部存储器 143
6.1 磁盘 143
6.1.1 磁性读写机制 143
6.1.2 数据组织和格式 144
6.1.3 物理特性 146
6.1.4 磁盘性能参数 147
6.2 RAID 149
6.2.1 RAID级别0 151
6.2.2 RAID级别1 153
6.2.3 RAID级别2 153
6.2.4 RAID级别3 154
6.2.5 RAID级别4 154
6.2.6 RAID级别5 155
6.2.7 RAID级别6 155
6.3 固态驱动器 156
6.3.1 SSD与HDD的比较 156
6.3.2 SSD组成 157
6.3.3 实际问题 157
6.4 光存储器 158
6.4.1 光盘 158
6.4.2 数字通用光盘 160
6.4.3 高清光盘 161
6.5 磁带 162
6.6 关键词、复习题和练习题 163
第7章 输入/输出 166
7.1 外部设备 167
7.1.1 键盘和监视器 167
7.1.2 磁盘驱动器 168
7.2 I/O模块 168
7.2.1 模块功能 168
7.2.2 I/O模块结构 169
7.3 可编程I/O 170
7.3.1 可编程I/O概述 170
7.3.2 I/O命令 170
7.3.3 I/O指令 171
7.4 中断驱动I/O 172
7.4.1 中断处理 173
7.4.2 设计问题 1