CO实验总结
这是 CajZella 的学期末的 CO上机回忆录~
计算机组成原理课程分为理论课和实验课部分。理论课以MIPS系统为主要学习对象,讲述计算机硬件系统的组成、各部件的结构及其底层硬件的工作原理。实验课要求自主开发一台以MIPS处理器为核心的功能型计算机。
看到此,读者不必担忧。实验课是比较循序渐进的。在大二上学期开学前的两周左右,课程组会开放实验教程(VPN登录方式)以供同学预习。在这期间,读者可以熟悉 Logisim
, Verilog
, MIPS
的环境及编写,完成实验教程对应的例题。当然如果暑假没有预习也不必担心,笔者同样在暑假没有学习相关内容,只是配置了Logisim
, ISE
, Mars
等软件,在开学后会有四周预习时间(2021级),内容即为暑假开放的Pre
。在第五周会迎来第一次上机 Pre
, 时长为 , Logisim
, Verilog
, MIPS
各一题,印象中对笔者来说比较难,当时未通过,不过本次上机不通过不会gap一周。接下来会是几乎每周各一次的上机:
P0
,P1
,P2
分别为Logisim
,Verilog
,MIPS
, 题型和Pre
差不多;P3
,P4
分别是Logisim
,Verilog
开发MIPS单周期处理器(P3
开始进入正题);P5
是Verilog
开发单周期流水线CPU (P5
开始不会涉及Logisim
);P6
在P5
的基础上,扩展了乘除指令,需要模拟乘除模块的执行;p7
在P6
的基础上,实现一个简单的计算机系统——MIPS微系统,需要处理内部溢出和外部中断,与外设交互;P8
要求在FPAG上实现系统验证,需要替换不可综合的部分,添加GPIO
,DigitalTube
,UART
外设,编写软件实现一些功能。
笔者认为CO实验是在涅槃中浴火重生的一场考验,作为进入计算机专业后的第一门专业课,注定是不平凡的。如果缺乏相应知识,仅仅阅读实验教程是难以顺利完成上机的,笔者认为还可借助以下资源:
- 理论课的PPT和《数字设计和计算机体系结构》等教科书,对
P3
开始的CPU搭建会有一定帮助。 - 学长学姐们的博客和 github repo,会有历届学长学姐们的学习体会、测试数据、注意事项和课上回忆(注意每年题目可能会有变化)。
- 请教助教,助教们都非常亲切耐心,遇到问题百思不得其解的时候不要犹豫(^U^)ノ~YO
- 同学间的帮助,尤其是
P5
开始的流水线CPU,需要自己构造测试数据debug,可能遇到一些隐蔽性极好的bug,集思广益或许可以加快进度 O(∩_∩)O 。祝读者课上不会遇到课下的bug哇~
“于高山之巅,方见大河奔涌;于群峰之上,更觉长风浩荡。” 这是一门由千千万万BUAA学子实践过的课程,其价值不断被凝练,祝你从中有所收获,更深入理解计算机组成原理。
21级老学姐就在此祝大家一路通关啦ヾ(✿゚▽゚)ノ
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 CajZellaのBlog!
评论