计算机组成原理¶
程序员看到的是变量、函数和指令,芯片看到的是时钟边沿上的电平变化。计算机组成原理研究二者之间那条可实现、可测量、可优化的链:信息如何编码,指令如何约定,数据如何流过 CPU,存储器为何分层,外设如何异步协作,以及并行硬件怎样保持一致。
为什么需要这门课¶
只学编程语言,我们会把机器当作“足够快的黑盒”;只学数字电路,又容易迷失在门电路细节。组成原理的动机,是找到合适的中间层:既能解释一次 cache miss 为什么慢,也不必从晶体管物理重新推导每条指令。
一个贯穿全站的问题是:
它可能被翻译成一次 load、一次 add 和一次 store。短短三条指令会牵动寄存器、ALU、控制器、流水线、cache、页表、总线和主存。第 8 章会把这条路径完整走一遍。
全站知识地图¶
| 层次 | 核心问题 | 对上提供什么 |
|---|---|---|
| 信息表示与逻辑 | 位怎样表达数,电路怎样保存状态 | 可计算的二进制机器 |
| ISA | 软件与硬件约定哪些指令和状态 | 稳定的机器接口 |
| 微体系结构 | 指令怎样由数据通路和控制器执行 | 性能各异但语义相同的实现 |
| 存储与 I/O | 大容量、低成本设备怎样接近 CPU 速度 | 连续地址空间与设备抽象的硬件基础 |
| 并行系统 | 多个执行单元怎样协作 | 更高吞吐量与可扩展性 |
建议学习路线¶
按章节顺序读最平滑。第一次学习时,先抓住三条主线:状态存在哪里、数据往哪里走、谁决定下一步。遇到细节时反复追问它属于哪条主线,知识就不会散成器件清单。
每章末尾都有自测,最后还有综合自测。若一个概念能用自己的话解释,并能在最小例子中手算一遍,才算真正掌握。
范围与限制¶
本站偏向通用处理器的基础机制,示例主要使用简化的 RISC-V 风格指令。晶体管工艺、GPU 专用微体系结构、复杂一致性协议的形式化证明只作必要联系;目标是建立能迁移到具体机器手册的骨架,而非替代芯片设计教材。