55AA-006

组成原理

层级
本科生
状态
建设中

提示:本课程仍在持续设计和校准中,页面内容仅供参考,不代表最终教学版本。

教学大纲

课程概览

计算机组成讲清从逻辑门到可执行程序之间的层次:数字逻辑、数据通路、控制器、指令集、汇编、存储器和 I/O。课程目标是让学生理解软件运行在什么机器上,而不是把硬件当作黑盒。

这是汇编语言、系统编程、体系结构、操作系统和可信计算的底层基础。

先修要求

  • 程序设计基础和离散数学基础。
  • 能阅读简单 C 程序并理解二进制表示。
  • 愿意完成硬件描述或模拟实验。

学习目标

  • 解释数字电路、组合逻辑和时序逻辑。
  • 构造基本数据通路和控制器。
  • 理解指令编码、调用约定和内存访问。
  • 分析缓存、流水线和 I/O 的基本行为。
  • 把高级语言行为映射到机器级执行。

教学组织

  • 每周 2 次课堂:一次讲授核心概念,一次用于实验、论文讨论或项目评审。
  • 课程按 16 周推进,每周都有可检查的作业、实验或项目里程碑。
  • 强调可复现材料:代码、配置、数据、实验日志和报告需要能被助教或同学复查。

周计划

第 2 周

信息表示与布尔逻辑实验与评审

完成整数、浮点和逻辑电路练习。完成配套实验、记录问题,并在课堂评审中解释设计取舍。

第 4 周

组合逻辑与时序逻辑实验与评审

实现 ALU 和寄存器文件。完成配套实验、记录问题,并在课堂评审中解释设计取舍。

第 6 周

指令集与汇编视角实验与评审

手工跟踪指令执行和调用栈。完成配套实验、记录问题,并在课堂评审中解释设计取舍。

第 8 周

单周期和多周期数据通路实验与评审

扩展教学 CPU 的一条指令。完成配套实验、记录问题,并在课堂评审中解释设计取舍。

第 10 周

流水线和冒险实验与评审

分析数据冒险和控制冒险。完成配套实验、记录问题,并在课堂评审中解释设计取舍。

第 12 周

存储器层次和缓存实验与评审

测量缓存局部性对程序的影响。完成配套实验、记录问题,并在课堂评审中解释设计取舍。

第 14 周

I/O、中断和总线实验与评审

解释一次设备交互的完整路径。完成配套实验、记录问题,并在课堂评审中解释设计取舍。

第 16 周

从组成到系统软件实验与评审

提交处理器实验和机器级分析报告。完成配套实验、记录问题,并在课堂评审中解释设计取舍。

考核方式

个人作业

概念题、阅读题、设计题和小型编程或实验任务。

25%
实验与项目

硬件或模拟器实验、测试程序和机器级解释。

40%
课堂参与与评审

参与讨论、演示、代码或论文评审,以及同伴反馈。

10%
期末报告与答辩

提交可复现材料、技术报告和演示,说明方法、结果、限制与后续工作。

25%

课程项目

学生实现或扩展一个教学处理器、汇编器或模拟器,并用测试程序证明其行为正确。

课程政策

  • 允许使用 AI 工具,但所有生成代码、实验记录和设计建议必须经过学生本人审查,并在报告中说明使用方式。
  • 严禁提交不能解释的代码、证明、配置或实验结果;答辩时每名成员都需要解释自己负责部分的设计、测试和取舍。
  • 迟交会影响迭代评分,但课程更看重可复现、可审计和可维护的结果,而不是临时堆砌。

参考课程

中国 985 高校