第一章 计算机系统的主要架构 1
第一节 输入与输出系统 3
第二节 处理系统 4
第三节 储存系统 5
第四节 程式的编辑与执行 7
第五节 指令的执行 10
习题研讨 16
第二章 储存系统 19
第一节 快取记忆体与主记忆体之间的关系 21
一、快取读中(Cache Hit) 22
二、快取错失(Cache Miss) 23
三、写回错失(Write Miss) 24
第二节 主记忆体(Main Memory) 26
一、唯读记忆体(Read Only Memory, ROM) 27
二、随机存取记忆体(Random Access Memory, RAM) 30
三、记忆体的资料读写动作(Memory Read and Write) 33
四、记忆体读写控制的时序 34
五、刷新周期(Refresh Cycle) 35
第三节 其他类型的记忆体与其技术 35
一、共用位址与资料汇流排 36
二、记忆体的扩充 37
三、交错式记忆体(Cross Memory) 41
四、长字组记忆体(Long Word Memory) 44
五、区块存取记忆体(Block Access Memory) 44
六、封包存取记忆体 47
七、比对式记忆体 48
八、记忆体库(Memory Bank) 48
第四节 快取记忆体(Cache Memory) 53
一、各种形式的Cache资料存取设计 54
二、多层Cache的设计 59
第五节 Cache与主记忆体的资料更改 61
第六节 外部储存体的资料使用 64
一、记忆体管理程式的分页技术 64
二、实际位址与虚拟位址的存取方式 68
三、对照表 73
四、资料查询的流程 75
第七节 记忆体资料的除错 76
习题研讨 85
第三章 输出入装置的控制 87
第一节 资料传输 91
一、资料传输线路(Data Transfer Lines) 91
二、传输控制线路(Transfer Control Lines) 93
三、同步脉波线路(Synchronous Clock Line) 96
四、资料传送速率(Data Transfer Rate) 100
五、资料格式(Data Format) 101
六、单一线路传送(Single Line Transfer) 102
七、无线传送(Lineless Transfer) 103
第二节 装置的介面电路(Interface Circuit) 108
一、CPU要读取装置的资料 109
二、CPU要写出资料存入装置 109
三、CPU对主记忆体的控制 109
四、I/O指令与I/O命令 110
五、状态表示 110
六、介面与装置间的连接 111
七、多个I/O装置的连接 111
第三节 CPU与输出入装置的资料传送 112
一、分时(Time Sharing)作业系统 112
二、介面电路控制式的资料传送方式 114
第四节 CPU如何处理同时发生的多个中断要求 125
一、中断讯息的优先顺序编码 125
二、主动服务的轮询式(Polling) 127
三、菊轮式(Daisy Chain)的装置要求之询问服务 128
四、装置竞争式的中断服务要求 133
第五节 CPU与输出入装置、记忆体的连接方式 139
一、记忆体图示式(Memory Mapping)装置连接 140
二、分离式(Isolation)装置连接 141
三、输出入处理器(I/O Processor) 143
四、功能处理器(Function Processor) 143
第六节 桥接器(Bridge) 146
第七节 网路介面(Network Interface) 150
第八节 错误检查码(Error Check Code, ECC) 153
一、同位元核对(Parity Check) 153
二、馀数核对(Remainder Check) 155
三、循环运算核对(Cyclic Operating Check) 155
习题研讨 158
第四章 中央处理单元的运算系统 161
第一节 暂存器的设计 163
第二节 暂存器的资料传送 171
第三节 算术逻辑运算单元 179
一、算术运算电路 179
二、逻辑运算电路 194
三、移位电路 197
四、比较电路 201
五、状态旗号 205
六、数值的扩展 206
第四节 实数运算处理 208
一、浮点格式 210
二、程式中数值的格式转换 213
三、浮点格式的加减法计算 223
四、浮点格式的乘除法计算 226
五、浮点格式转换回十进制值 226
第五节 运算电路的整合 229
习题研讨 233
第五章 指令的执行系统 235
第一节 硬体架构 236
一、计算暂存器 237
二、特殊暂存器 238
三、状态位元 239
四、ALU电路 239
五、记忆体规格 239
六、输出入资料 240
七、中断处理 240
第二节 记忆体规划 241
第三节 计算电路规划 246
第四节 指令规划 247
一、暂存器计算指令 248
二、资料搬移指令 249
三、跳跃指令 250
第五节 硬体电路的控制单元设计 251
一、电脑的控制频率 251
二、外部装置的不同设计概念 253
三、外部装置的大量资料传递 256
四、控制单元的主要电路 257
五、系统运作的指令周期 259
六、读取与解码指令的阶段 260
七、计算指令执行的阶段 262
八、计算指令的控制电路设计 265
九、资料搬移指令执行的阶段 268
十、资料搬移指令的控制电路设计 273
十一、跳跃指令的执行阶段 280
十二、副程式的呼叫 282
十三、跳跃指令的控制电路设计 285
第六节 中断处理 286
一、没有中断要求的指令执行 286
二、中断的程序 287
三、中断所需要的控制电路 290
四、状态暂存器 291
五、暂存器与状态的保存 291
六、中断的指令执行 293
第七节 CPU内部电路设计探讨 294
一、CLR指令的电路设计 294
二、计算电路的执行时间各有不同 295
三、计算资料的同时读入 297
四、不同的计算指令可分开同时完成 299
五、段暂存器的值可以改变 299
六、指令的精简化 300
七、呼叫副程式与中断的暂存器规划 301
八、多个中断要求产生要如何处理 302
第八节 CPU的效能评估 303
第九节 高阶语言的执行 308
一、编译高阶语言为低阶语言 309
二、组译低阶语言为机械码 313
三、指令码的执行 316
第十节 精简与复杂指令集电脑 318
一、指令的种类 319
二、指令的格式 321
三、指令中运算元的表示 322
习题研讨 325
第六章 管线处理 327
第一节 何谓管线处理 328
第二节 指令的分割 334
第三节 CPU内单一管线设计 336
一、管线执行技术 337
二、电路障碍(Circuit Hazard) 339
三、跳跃障碍(Jump Hazard) 344
四、资料障碍(Data Hazard) 359
第四节 管线的中断处理 365
一、指令中断的管线处理技术 365
二、系统中断的管线处理技术 366
三、外部中断的管线处理技术 368
第五节 多条管线的设计 370
一、指令的非依序(Out of Order)执行 371
二、纪录板(Scoreboard)技术 374
三、预留站(Reservation Station)技术 377
四、个人电脑的CPU设计 382
五、超级管线的中断处理 383
六、超长指令字(Very Long Instruction Word) 384
习题研讨 387
第七章 多处理器系统 389
第一节 单一指令单一笔资料(SISD)的电脑架构 393
第二节 单一指令多笔资料(SIMD)的电脑架构 393
一、向量处理(Vector Process) 402
二、多输出入的运算电路 406
三、浪潮阵列处理器(Wave Front Array Processor) 410
四、心脏收缩阵列处理器(Systolic Array Processor) 413
第三节 多个指令单一资料(MISD)的电脑架构 416
一、控制流与资料流 418
二、资料流的图形语言 419
三、资料流电脑的特色 423
第四节 多个指令多笔资料(MIMD)的电脑架构 429
一、多处理器系统 431
二、多处理器系统的启动与执行 435
三、多处理器系统的资料管理 441
四、多处理器间的连接方式 451
五、多核心的CPU时代 458
习题研讨 461