《CPU设计实战》第四章lab3记录找bug

修bug之路

1. debug_wb_pc

一个信号一个信号找下去,发现ID_stage.v中load_op未赋值
《CPU设计实战》第四章lab3记录找bug_第1张图片

assign load_op = inst_lw;

  • 代码解释
module decoder_5_32(
    input  [ 4:0] in,
    output [31:0] out
);
//这个循环被命名为 gen_for_dec_5_32。
genvar i;
generate for (i=0; i<32; i=i+1) begin : gen_for_dec_5_32
    assign out[i] = (in == i);
end endgenerate
2. ds_valid未赋值

《CPU设计实战》第四章lab3记录找bug_第2张图片
这里没有:
《CPU设计实战》第四章lab3记录找bug_第3张图片
《CPU设计实战》第四章lab3记录找bug_第4张图片

3. 模块实例化错误

《CPU设计实战》第四章lab3记录找bug_第5张图片《CPU设计实战》第四章lab3记录找bug_第6张图片

alu u_alu(
    .alu_op     (es_alu_op    ),
    .alu_src1   (es_alu_src1  ),
    .alu_src2   (es_alu_src2  ),
    .alu_result (es_alu_result)
    );
4.

借鉴
mips指令格式
《CPU设计实战》第四章lab3记录找bug_第7张图片
暂停,学习汇编程序去。

你可能感兴趣的:(CPU设计实战,bug)