| 选课类别:专业任务 | 教学语言:英文 |
| 课程类别:专业基础课 | 开课单位:计算机科学与工程系 |
| 课程层次:本科 | 获得学分:3.0 |
一句话总结,这课我给好评!
课程本身,确确实实学到了很多东西,收获很大;作业量不多,就是 Project 比较肝;白老师一直很好,讲课水平在你科已经很不错了;给分也还算不错,虽然期中考试有难度,但期末比较简单。(背景参考:本人数学系的,因为想学所以选了计组,也确实学到了很多东西,期中考的不错,期末因为不是专业课所以摆了没复习考的也不咋样,最后卡下绩 A+,体验还不错)
细化到大家最关心的分数分布上:
最后是资源分享:
我们组的 Project 仓库,bonus 都拿满了,做了很多东西 (流水线,分支预测,异常控制,Cache,手搓了 Uart,还用汇编写了个小游戏能在 CPU 上跑,别的不说,我觉得我们文档还是写的挺好的) :https://github.com/wLUOw/SUSTech_CS202_MineCPU
课程资料 (使用方式:Lab 签到如果懒得做了可以直接用,还有期中考卷子,作业题目可能每学期会变但也可以参考) :https://github.com/wLUOw/CS_Notes
必须好评!白老师讲得很好,ppt也完全可以用来自学,教材内容也很翔实,实验课王薇老师一如既往的细致。
project占15%,比较肝。我们组做了个RV32架构的5级流水CPU,pipeline的hazard均成功解决。不得不说CPU的debug过程还是很痛苦的,最后15周提前答辩+bonus全拿满。
期中比较难,均分70,我拿了93。期末不考期中之前的内容。期末前一天project登分,我发现期末只要考到78总评就能拿A,所以就摆了(),考前速通复习了一下。期末比期中简单,均分80,我刚好90,比期中还低一点()。最终总评97+,喜提A+。
(为什么评论区都是满绩大佬呜呜呜,我这个菜菜也来点评一下)
总的来说白姐姐的计组还是很好哒,数字逻辑和计组都喜提了A,关于期中期末的平均分 别的评论都说过了,期中70期末80.
给九分呢 是因为不让查卷,虽然期末考得还行,但是期中只有84,我其实很想看看卷子呜呜呜
除去这个因素,其他的都很棒啦。四次理论作业(感觉难度呈现递增趋势),和别人对一下答案基本也就满分辣
这门课程起步的时候会学RISC-V,嗯……刚刚接触这些东西的时候确实会感觉比较难,会有些难理解,不过多写写就感觉还好了,毕竟project也得写汇编的
总的来说(个人感觉)后半学期难度比前半学期较小。期中考其实不难,但是题量确实比较大。期末考会考一些概念(判断题),其实还挺细的,有些我真没复习到只能摸了(
project呢……好像楼上的大佬有做pipeline,我觉得看对个人实力自不自信吧,我们小组对15周答辩并做出pipeline就不是很自信,就没做pipeline,现在很庆幸我们小组没做pipeline,要是做了的话每天熬夜熬到四点钟不说,可能还赶不上15周答辩,因为没做pipeline我们也只在ddl的前一天做完……
然后给下一届寄系小可爱们提个醒,这门课通常都是选完数字逻辑之后来选的,我个人觉得这个确实会比数字逻辑要难一些(从知识点的角度上来说),给分也确实会比数字逻辑差一些。
首先,白老师讲课还是挺好的,而且我认为计组的内容学起来比较扎实,学起来也不是很难,但是,这门课的分数结构不是很合理
只能说考试虽然不难,但是要是跟兄弟跟我一样粗心,可能就要扣扣分了,然后与其花很多时间做project不如早早复习,不要放过ppt的每一个角落,考试收益比那个project可大多了。怎么评论区都是a+大哥😢
最近出期末考试成绩了,然后分享一下上课体验吧。
首先我个人上这门课还算挺轻松,除了写project那一段时间。理论课我个人感觉还是比较轻松,大概就是上课上着就不想听,然后课后看看ppt就能知道讲的是什么,可能之前我学过csapp的大部分内容,所以计组里面的很多内容我都是知道很多general 的概念的,比如浮点数,缓存,流水线这些。虽然csapp里面用的是X86来教学,但很多思想是共通的,迁移一下就可以。所以理解起来相对比较轻松,这门课前半学期大概就讲riscv的指令,语法然后还有cpu的架构这种,然后考试重点就是这些。
后半学期主要讲流水线,内存,然后还有很多小的概念,期末不考期中前的内容,这点我觉得还是比较好的,反正这部分csapp都覆盖了。
再说说考试,期中都是大题,然后没有选择题,期末选择填空大题都有,考试题型这种应该看老师心情,但是但是期末考填空题,考的都是很细小的概念,我服了,有一些空我都没有印象课上讲过,然后复习ppt的时候,都看看就跳过的内容。所以,复习的时候ppt中的每个内容都要看,不要求每个犄角旮旯的都弄的很明白,但是至少这些概念你都要知道是什么,干什么的,解决什么的,以及拼写是什么。最好记住拼写吧,不然考填空题的时候,我不知道英文怎么拼写,只好用中文,不知道有没有给我分。
还有就是作业偏少吧,所以复习的时候往往就会针对那么几次作业容易过拟合,比如后半学期作业考的就是画各个缓存命中的那种表格,结果复习了好久画表格,结果没考。然后能够拿来练手的要么就是作业,要么就是ppt上的练习,然后ppt上的计算他也会考,考的还比较多,你应该知道每一个计算是怎么算的,尤其到后半学期计算内存大小这种,期末考就会考,因为来来去去就这几个考点。
再然后就是project,祖传的cpu,还是数字逻辑那一套开发板,还是*一样的verliog,我的建议就是多在github上找前辈的作品吧,站在巨人的肩膀,你的开发效率就会大大增加。值得吐槽的是,看到很多朋友都搞了流水线,结果搞完之后都在吐槽付出和收入不成正比,拼死拼活可能也就1.5分左右,我做别的bonus也能获得差不多的分数。我们组就没有搞,因为verliog就是没用,浪费了这么时间,有多少人以后用的到verliog,有多少人又和硬件打交道,硬件的调试弄过的人才知道有多恶心,多搞人心态。所以我觉得根本没有必要在project上花费如此多的心血,不如拿这时间来复习一下理论来分数来的快。
对了,这学期的期末总分是110,上限100,给分我觉得还是挺好的,最后也拿了个A+。
白老师上课讲得很好, slides 质量也很高,自学完全没有问题。作业和期中考试难度都还好。
Project 是用 verilog 在 FPGA 板上搓一个 RV32 架构的 CPU ,感觉比上学期数字逻辑的好写一些。