- 博客(13)
- 收藏
- 关注
原创 一生一芯踩坑小结006
实测99%的情况是实现的指令有问题,导致读写内存地址的时候出错,不匹配,未对齐。当然,这一切的前提是你已经正确实现了上下文切换的内容。的情况 而无法跑RTThread。
2026-01-22 15:47:22
56
1
原创 一生一芯踩坑小结005
当读/写 mmio的时候 标记此指令 主循环更新的时候跳过此次difftest 执行 同时把当前的寄存器状态和PC赋给REF。执行REF 一次, 进行 GPR_REGS 通用寄存器堆和PC检查。
2026-01-22 15:45:26
36
原创 一生一芯踩坑小结004
检查发现自己有个信号定义成了 Reg(signal) Reg 原语好像不支持直接延迟一拍 所以换成了Regnext 成功修复。搜索浏览发现 上述的reg 可以换成任意type 不匹配 检查自己的原语是否用错了。
2026-01-03 16:16:10
96
原创 一生一芯踩坑小结003
之后再次 sudo gparted 打开进行重分配即可搞定。把file_path 换成你要改写的分区路径即可。如果遇到read only 的情况 可以。这个工具进行磁盘分区的查看和重分配。
2026-01-03 09:57:26
106
原创 一生一芯踩坑小结002
difftest的接入越早越好 无论是nemu还是npc 这是设计的终极武器 因为相信自己的眼力 在浩瀚的itrace 和mtrace的输出中读取指令的错误 导致我花费了三天时间检测指令的出错 结果一无所获 接入difftest之后秒通!不得不感叹基础设施的完善真的会大大提高工作效率。
2025-12-27 10:59:00
112
原创 一生一芯踩坑小结001
键盘的输入那块需要启动SDL window窗口 第一次用这玩意 用了几个printf 导致窗口访问被数据淹没 一直卡住 event的检测可以写一个计数器 几千次检测一次 然后少用点printf打印 SDL窗口的访问就正常了。
2025-12-26 19:55:38
135
原创 signal unoptimizable 解决办法 verilator
将电路中报错的变量进行路径分析,查看是否存在某条数据通路导致自己部分赋值给自己导致无限刷新。wire 类型的变量指向自己无限递归,由于不存在时钟延时,会导致逻辑错误。这个赋值看起来没有问题,实际上会无限刷新x的值!
2024-04-30 16:43:59
496
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅