计组记录
计组记录
你会看到什么
因为本人真的非常不擅长讲清楚一个知识点,所以这篇只是一个自我记录,不辜负辛辛苦苦学习计组的大半个学期,大概没有任何指导性作用。不过你还是可以通过本文了解北航的6系计组到底都让人干了点啥()
pre
- logisim:简单的状态机
- verilog:简单的状态机(因为当时不太清楚mealy型状态机输出会早于moore型状态机,所以面向波形编程了orz)
- mips:求根(除了不能盲目列举之外没啥要注意的)
过了的时候真的很开心,不过事实是,我还是菜鸡))))
p0(logisim)
两道简单的状态机,一道斐波那契变形,最后一道题需要对logisim的时序部件比较熟悉
p1(verilog状态机)
难度和pre差不多
就是状态机
p2(mips)
首挂(泪目)
心态会有点崩溃的
反思出了几个问题:
因为前三次都过了所以没有很重视计组,心态不太正确
没有弄清楚for,while,do-while三种循环的区别(for和while是一样的)
(本质其实是我c语言学得菜)
递归的“保护寄存器的值”的本质那时候还不太了解
第二次解决了后两个问题,很顺利地写出了三道题
第三题是一道允许有括号的表达式计算(给了c语言代码)
p3 (logisim 单周期)
做课下的时候一次就过了三个测还很高兴
然后又被课上狠狠打击
反思出来的问题是:
我其实不太了解logisim各个部件
没有通读指令集(lw,lb,lh以及sw,sh,sb都只是模模糊糊地会用,其实并不精确)
(这个问题在p6也背刺了我一下)
因为实在太心碎把自己关进了图书馆(本学期第一次去图书馆成就get)
p4(verilog单周期)
花了很长时间去了解verilog要怎么搭建电路
也花了很长时间debug
那个时候看觉得p4很难,花了一整个周末
从后来的眼光看,p4真的好简单
p5(verilog多周期)
从黑书上了解了多周期的基本原理
从大佬的博客qsgg的博客上学会了AT法
(从黑书的做法改成AT法没花很长时间)
从这个时候获取知识的方法就变成了各路大佬的博客
“无脑阻塞”之类的知识对我来说也是口口相传得来的
不太了解大佬都是从哪里学会的
过得很神奇(问答我的助教说是那道题测试点太弱了
p6(加了很多指令和乘除模块的verilog多周期)
做课下的时候不情不愿的,因为看起来工作量真的很大
但是结果倒是出奇地顺利
debug基本上只de了一个sb
过得依然很神奇,课上tle没过,但是助教复核的时候给过了
指令是shl:交换hi寄存器和lo寄存器的值
更神奇的是上机上到四分之三被救护车拉去了方舱
新冠初体验
后记
其实过了p6之后还有两周上机,如果愿意的话可以挑战p7和p8,但是我全gap了(复习了概统还有其他一学期没学过的东西)
没有挑战p7有一点点遗憾
想的就是:过了p6已经能拿一个我可以接受的分数了
希望能成为更加勇敢的人