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

修bug之路

1. debug_wb_pc

一个信号一个信号找下去,发现ID_stage.v中load_op未赋值

assign load_op = inst_lw;

  • 代码解释
c 复制代码
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未赋值

这里没有:

3. 模块实例化错误

c 复制代码
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指令格式

暂停,学习汇编程序去。

应该跳转到bfc0038c,但是顺序执行了

该bug自己没有解决,借鉴了上面大佬的。

5.

应该还是某个转移指令出错。

有可能是bne。

对rtl代码和如何调试还是不熟悉。剩下的都是参考别人的弄出来的。待补。。。

这就算成功了,可是不是自己debug出来的。。。

相关推荐
T01156184 小时前
全栈项目实战手记|艺培场馆课时预约小程序底层安全、交互、分包全量迭代复盘
安全·小程序·bug·前端实战·全栈项目实战手记·小程序实战
霍格沃兹测试学院-小舟畅学1 天前
DeepSeek Harness vs Claude Code:谁更会修Bug、跑测试?
bug
咖啡星人k1 天前
2026 AI 自动化测试:让 AI 帮你写用例、跑测试、修 Bug(MonkeyCode 云端实战)
人工智能·功能测试·单元测试·测试用例·bug·集成测试
Shadow(⊙o⊙)3 天前
Bug调试1.0
bug
T01156184 天前
艺培场馆课时预约小程序用户端 & 后台联动踩坑上篇(预约、课时、缓存、消息、学员端自身问题)
java·缓存·小程序·bug·全栈项目实战手记·艺培课时系统‘’
zone_z4 天前
07 · 等待事件与 OWI 方法:从 OSW 到 BUG 的完整破案实录
linux·数据库·oracle·ffmpeg·bug·troubleshooting
黑猫学长呀5 天前
【驱动开发常见问题】编译出现rm: cannot remove `asm/arch‘: Is a directory
驱动开发·单片机·嵌入式硬件·bug·编译报错·kernrl
姚青&6 天前
测试流程搭建
测试用例·bug·jira
mmsx6 天前
return false 不是拦截:一次按键触发两个动作的事件冒泡陷阱
android·bug
随风丶飘7 天前
[特殊字符] 告别“update“和“fix bug“——Smart Git Commit LLM 让 AI 帮你写专业的 Git 提交信息
人工智能·git·bug