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

这篇具有很好参考价值的文章主要介绍了《CPU设计实战》第四章lab3记录找bug。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

修bug之路

1. debug_wb_pc

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

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,CPU设计实战,bug
这里没有:
《CPU设计实战》第四章lab3记录找bug,CPU设计实战,bug
《CPU设计实战》第四章lab3记录找bug,CPU设计实战,bug

3. 模块实例化错误

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

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,CPU设计实战,bug
暂停,学习汇编程序去。
《CPU设计实战》第四章lab3记录找bug,CPU设计实战,bug

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

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

5.

《CPU设计实战》第四章lab3记录找bug,CPU设计实战,bug
应该还是某个转移指令出错。
《CPU设计实战》第四章lab3记录找bug,CPU设计实战,bug
有可能是bne。
对rtl代码和如何调试还是不熟悉。剩下的都是参考别人的弄出来的。待补。。。

《CPU设计实战》第四章lab3记录找bug,CPU设计实战,bug
这就算成功了,可是不是自己debug出来的。。。文章来源地址https://www.toymoban.com/news/detail-728365.html

到了这里,关于《CPU设计实战》第四章lab3记录找bug的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Java Web程序设计课后习题答案 第四章

    第4章 一、填空 1.如果当前Web资源不想处理请求, RequestDispatcher接口提供了一个 forward()方法,该方法可以将当前请求传递给其他Web资源对这些信息进行处理并响应给客户端,这种方式称为请求转发。 2.Servlet API中,专门用来封装HTTP响应消息的接口是HttpServletResponse。 3. 重定向指

    2024年04月23日
    浏览(37)
  • 智能寻迹避障清障机器人设计(第四章)

            在Arduino出现之前,意大利一所高科技技术学校的学生常常抱怨市面上的微控处理器基本上操作复杂,性价比低,无法同时适应多种复杂多变的微传感器。至此,2005年的某一天,该校的老师马西莫·班兹和来这所学校研究的学者大卫·卡泰尔斯一起讨论了现下微控制

    2024年02月03日
    浏览(43)
  • 【自学记录】【Pytorch2.0深度学习从零开始学 王晓华】第四章 深度学习的理论基础

    遇到的疑问: 1、对神经网络前向计算中,关于系数矩阵W的讨论。 上一章讲到了层结构是【out,in】,所以我觉得在计算Y=WX+b的时候,W矩阵也应该是【out,in】的形状。但是该代码(或者正规代码实现流程)不是的,他是一个这样的结构: 所以,W矩阵还是【in,out】结构,a1=X1 W

    2024年04月09日
    浏览(54)
  • STM32G4 Simulink FOC开发实战--第四章:ST MCSDK快速启动电机

    HALL有感启动电机基于STMCSDK: https://www.bilibili.com/video/BV1W14y1k7Ct/?spm_id_from=333.999.0.0vd_source=eb375996b1aae493d63fe367f98b306c 无感启动电机基于STMCSDK: https://www.bilibili.com/video/BV1QG41197AH/?spm_id_from=333.999.0.0vd_source=eb375996b1aae493d63fe367f98b306c 电位器控制电机转速基于STMCSDK: https://www.bilibili

    2024年02月22日
    浏览(36)
  • 第四章 Text

    在本章中,您将学习如何在页面上绘制文本。 绘图文本是 PDF 图形中最复杂的部分,但它也是帮助 PDF 击败竞争对手成为当今国际标准的原因。 当其他原始播放器将文本转换为光栅图像或矢量路径(以保持视觉完整性)时,PDF 的发明者知道用户需要可以搜索和复制的文本,而

    2024年02月06日
    浏览(46)
  • 第四章 RPC 调用

    通过以上案例我们发现,Http请求调用服务实例属实过于麻烦。其实对于请求同一个服务,很多步骤都是相同的,例如:服务名,地址,httpClient 创建步骤等。 RPC的出现,就是为了解决这一问题。 RPC: 即我们常说的远程过程调用,就是像调用本地方法一样调用远程方法,通信协

    2024年02月04日
    浏览(49)
  • 四,Eureka 第四章

           2.3.4修改主启动类 标注为Eureka客户端           springcloud-eureka-sever-7001 springcloud-eureka-sever-7001   springcloud-eureka-sever003           5.25编写PaymentMapper接口   5.    

    2024年02月15日
    浏览(82)
  • Linux第四章

    ctrl+c :强制停止(Linux某些程序的运行;命令输入错误) ctrl+d :退出或登出(退出账户的登录;或者退出某些特定程序的专属页面) history :查看历史输入过的命令(!命令前缀,自动执行上一次匹配前缀的命令,不能搜索太久的) ctrl+r :输入内容去匹配历史命令(如果搜索到的内

    2024年02月01日
    浏览(43)
  • 第四章,登录注册

    目录 4.1 添加注册页面 4.2 注册表单验证 4.3提交注册信息 4.4 完善注册功能

    2024年02月12日
    浏览(38)
  • 第四章 单例模式

    代码示例 优缺点:可能会造成内存的浪费,但也只能浪费内存 代码示例 代码示例 缺点:多线程不安全 缺点效率太低 在类加载时,静态内部类没有调用是不会进行类加载的,当被调用时才会被加载,而且只加载一次,加载时线程安全 优缺点

    2023年04月21日
    浏览(56)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包