前言

2015年我们出版了一本《计算机组成原理实践教程》,是与同年出版的理论课教材《计算机组成原理(第二版)》配套的。2021年理论课教材出版了第3版,其中微程序控制的教学模型计算机更新为JUC-3,这本实验指导和另一本课程设计指导是与JUC-3相关的,编写思路和实验方案与《计算机组成原理实践教程》是同一个体系,细节上根据第3版理论课教材做了更新。

为了能够让读者更方便地获得学习和实践资源,我们决定将本书和实验代码等资源按照CC BY-NC-SA:署名-非商业性使用-相同方式共享 4.0 国际许可协议开源,实验代码和相关资源发布在开源项目托管网站。

本书设计了12个实验项目。实验的过程是一个从设计到验证的过程。逻辑设计采用Verilog / SystemVerilog硬件描述语言,在FPGA上实现。在验证环节,通过预先设计的步骤和记录表提高可操作性,同时引导学生分析实验结果,理解其中的原理问题。课程设计项目在提供的JUC-3 CPU硬件的基础上完成微程序设计,为便于教学实施设计为三个教学模块。基本模块包含6项实战任务,可作为课程设计的基本要求;增强模块包含3项实战任务,输入输出模块安排了2项实战任务,可作为课程设计的拓展要求。本书实验的教学目标更侧重于原理验证,在硬件设计上并不要求训练学生达到熟练的设计水平。

如果希望以硬件设计为主,建议学习我们后来开发的RISC-V CPU设计实验,它也是《计算机组成原理》(第3版)主要增加的内容。针对RISC-V CPU设计实验我们在中国大学MOOC建设了开放课程《计算机组成与CPU设计实验》, 该课程的实验指导和参考设计等资源也已经开源。

对于实验课,实验工具也是非常重要的一环。课程支持团队开发了本地(线下)和远程(线上)两种实验系统,开源项目中也提供了这两种实验系统的实验文件。远程实验系统7×24小时免费开放,已经建好了本书的实验课程,名称是“计算机组成原理(第3版)实验”。 设计工具和实验系统的使用见《RISC-V CPU设计实验教程》的第一部分,本书未包含。

欢迎读者给我们提出改进意见。可以在开源项目托管网站发issue讨论,也可以直接给我们发邮件。

作者

2023年1月