BUAA-CO-p3-课上

OWPETER Lv3

今年P3难度比去年大了不少,我考前做完去年的题感觉稳了,结果一看到题人直接傻了。如你所见,光RTL语言就已经这么长了…

T1

别忘了比较的时候用 unsigned就行

T2 Gray_code

1
2
3
4
gray(2'b00) = 2'b00;
gray(2'b01) = 2'b01;
gray(2'b10) = 2'b11;
gray(2'b11) = 2'b10;

看着挺复杂,其实还好。先建个gray码的转换模块。这个for循环的意思其实就是每2位取imm,取完之后进行格雷码转换,换完先别急着 bit_adder,用 splitter合成32位数之后再 bit_adder,否则加法过程中可能会出现溢出!

另外这个操作属于改版的 beq,PC转移的方法和 beq是一致的,所以可以这样和 beq共用一个NPCOp码

图示

T3 sw改版

这个就真其实真不难了,细心一点线别连反了,其他跟 sw是一样的

  • Title: BUAA-CO-p3-课上
  • Author: OWPETER
  • Created at : 2024-10-28 12:40:29
  • Updated at : 2025-01-25 21:13:15
  • Link: https://owpeter.github.io/2024/10/28/CO-p3-course/
  • License: This work is licensed under CC BY-NC-SA 4.0.
Comments
On this page
BUAA-CO-p3-课上