计算机系统I 5.5 学分¶
授课教师¶
冯博
认定¶
专业基础课
分数构成¶
- 作业 10%
- 实验 60%
- Lab0 环境配置 6%
- Lab1 多路选择器+七段译码管 10%
- Lab2 加减法器 6%
- Lab3 时序电路:有限状态机、计数器、乘法器 8%
- Lab4-1 卷积核 8%
- Lab4-2(Bonus)串口
- Lab5 汇编程序设计与调试 10%
- Project 单周期CPU 12%
- Project(Bonus) 多周期CPU
Bonus total 10%
-------total <= 70--------- - 期末 30%
单选:15 * 2% = 30%
Q&A:70%
课程介绍¶
计算机系统I、II、III是计院课改的产物,三门5.5学分的课程有效地将传统计算机专业割裂的计逻、计组、操作系统和体系结构四门课程贯通起来,难度上略有削减,实验上更为连贯,包括不需要重新配置环境,直接使用之前完成的实验,坏处在于前置实验如果没有完成妥当会直接影响后续实验的进行,并不断牵连sys2与sys3,如果真有这种情况的出现,请利用寒暑假与刚开学较为空闲的时间完善前一学期的实验内容,当然更建议一次性完成
sys1包括计逻的全部内容与计组的部分内容:数字编码、逻辑门、组合逻辑、时序逻辑、RISCV汇编、RISCV指令集架构、单周期与多周期CPU
学习建议¶
由于这门课实验的巨大占比,加上前半学期计逻部分难度不高,这门课程在春学期会给人以一个错觉,理论课无用,事实也确实如此,但仅限于春学期,从夏学期开始包括sys2与sys3,理论课的重要性只会越来越重要,但fb老师的讲课着实令人一言难尽,即使加入了不定期的点名也不能挽救10%的到课率,不过作为一门5.5学分的大课,同时也是sys2与sys3的基础,这门课程的学习尤其是理论也是非常重要的,因此给出以下建议:
- 夏学期在智云课堂听卢立老师讲授的部分
- 期末复习可参照sys2第一、二节课的内容
- 成绩上限靠期末,理论部分期末全都会考,不仅限于必做实验部分,因此多周期CPU的理论也要求掌握
- 期末五个大题,包括数字逻辑、组合电路、时序电路、单周期CPUcontroller设计与多周期CPU的相关计算
- 这门课程的助教非常重要,请妥善利用issue、钉钉、线下P2P的方式解决你在实验中遇到的各种奇妙问题,也可以问我
本课程实验按难度排序依次为:Project > Lab4 > Lab0 > 其他
Lab0配置环境其实是一个很复杂的活,有问题勤问gpt与助教
Lab4实验的难度会陡然上升,在verilog尚不熟练的情况下想要快速理解valid-ready协议与卷积操作并实现是相当困难的,注意合理安排时间(本人因验收前熬夜做lab4错过了早八的签到),必要时助教会延迟lab的验收ddl,即使delay了也不必患得患失
Lab4-2是一个比较简单的bonus,建议完成
Project的单周期CPU是一个从0到1的过程,要在课业压力极其繁重的期末在7-10天(可能更短)的时间内独立完成整个CPU的设计是相当困难的,因此在下一节给出了一些指导