跳转至

计算机组成原理

程序员看到的是变量、函数和指令,芯片看到的是时钟边沿上的电平变化。计算机组成原理研究二者之间那条可实现、可测量、可优化的链:信息如何编码,指令如何约定,数据如何流过 CPU,存储器为何分层,外设如何异步协作,以及并行硬件怎样保持一致。

为什么需要这门课

只学编程语言,我们会把机器当作“足够快的黑盒”;只学数字电路,又容易迷失在门电路细节。组成原理的动机,是找到合适的中间层:既能解释一次 cache miss 为什么慢,也不必从晶体管物理重新推导每条指令。

一个贯穿全站的问题是:

c = a + b;

它可能被翻译成一次 load、一次 add 和一次 store。短短三条指令会牵动寄存器、ALU、控制器、流水线、cache、页表、总线和主存。第 8 章会把这条路径完整走一遍。

全站知识地图

层次 核心问题 对上提供什么
信息表示与逻辑 位怎样表达数,电路怎样保存状态 可计算的二进制机器
ISA 软件与硬件约定哪些指令和状态 稳定的机器接口
微体系结构 指令怎样由数据通路和控制器执行 性能各异但语义相同的实现
存储与 I/O 大容量、低成本设备怎样接近 CPU 速度 连续地址空间与设备抽象的硬件基础
并行系统 多个执行单元怎样协作 更高吞吐量与可扩展性

建议学习路线

按章节顺序读最平滑。第一次学习时,先抓住三条主线:状态存在哪里、数据往哪里走、谁决定下一步。遇到细节时反复追问它属于哪条主线,知识就不会散成器件清单。

每章末尾都有自测,最后还有综合自测。若一个概念能用自己的话解释,并能在最小例子中手算一遍,才算真正掌握。

范围与限制

本站偏向通用处理器的基础机制,示例主要使用简化的 RISC-V 风格指令。晶体管工艺、GPU 专用微体系结构、复杂一致性协议的形式化证明只作必要联系;目标是建立能迁移到具体机器手册的骨架,而非替代芯片设计教材。