错误速查检查单
仿真前检查单
- 工程目录路径中没有中文
- 工程中没有
Syntax Error Files
- PLL 使用情况适用
- 硬件已经接入了使用 locked 的 reset 信号
- 仿真前 2000ns 未执行任何有效操作
- 工程所在盘拥有足够硬盘空间和操作权限进行仿真
- 开始仿真
仿真时检查单
- 外设信号的
X
已经消除,对应外设接入时适用- Base RAM 相关
- Ext RAM 相关
- UART 相关
- Flash 相关
-
X
出现时适用- 检查对应控制是否使用寄存器
- 若使用寄存器,确保信号拥有正确的复位逻辑
- 若使用组合逻辑
- 排除可能的 Multiple Driven Net
- 排除可能的 Latch
- 检查信号值来源,确认
X
的传播情况
- 外设信号已置于非使能状态,未接入对应外设时适用
- Base RAM 相关
- Ext RAM 相关
- UART 相关
- Flash 相关
-
仿真时没有出现:
Iteration limit xxx is reached.
,出现时适用- 进行综合
- 检查
xxx.runs/synth_1/runme.log
-
寻找如下图所示的信号列表
-
在其中插入寄存器断开组合逻辑回路
- 重新仿真,重新进行该项检查
-
各项仿真结果符合预期,外设工作出现异常时适用
- 找到最早发生问题的仿真时刻
- 地址错误
- 检查 Wishbone 总线地址
- 检查控制器地址
- 溯源排查问题
- 数据错误
- 向前使用搜索工具检查对应地址的写入情况
- 溯源排查问题
- 波形错误
- SRAM 写入有 Thold
- SRAM 操作有 Tsetup
- 访问时间大于 SRAM 延迟 10ns
- 在 Wishbone Master 收到 ACK 之后拉低 CYC 和 STB 至少一个周期
- Wishbone strb 信号与编写逻辑匹配
- 开始综合
综合后检查单
- 综合成功,未成功时适用
- 按照提示信息检查对应的 log 文件,确认错误位置
- 修正错误
- 重新仿真,综合
- 检查 Messages,点击垃圾桶清空过时信息
- 检查 Warning,确认没有 latch 相关警告
- 没有
always_comb did not result in combinatorial logic
- 没有
inferred latch
- 没有
- 检查 Warning,确认没有
Multiple Driven Net
相关警告 - 检查
xxx.runs/synth_1/runme.log
,确认没有 Timing Loop - 检查 Warning 中的
unconnected port
警告,确认连线情况正常 - 检查
driven by constant
警告,确认逻辑正常 - 检查 Warning 中的 Elaborate Design 的电路图,确认逻辑被正常优化
- 开始实现
实现后检查单
- 检查 Critical Warning,确认没有
Multiple Driven Net
相关警告 - 观察右上角的提示信息,没有
Timing Failed
字样- 检查 Implemented Design,确认关键路径进行优化
- 调低时钟频率
- 生成 bitstream
- 上板实验
Git Push 前检查单
- 确认 当前工作目录 正确
- commit 后,使用
git status
确认文件情况 - 必要时,使用
git diff
比对更改情况 - 必要时,检查
thinpad_top.xpr
文件,确认内部没有绝对目录项 -
git push
- 等待 CI 通过,未通过时适用
- 检查 CI 输出,查看错误位置
- 必要时,检查 artifact 中的对应 log,检查错误
- 参考综合和实现检查单处理对应问题
- 重新综合,实现,进行 CI
- 提交 OJ 进行测试
答疑前检查单
- 我已经尝试进行检索,并没有相关问题的处理方案,或者处理方案明显不合理
- 我检查了 faq,并在在线文档上进行了简单检索,没有找到相关问题的说明
- 我检查了近期的微信群聊天记录,没有发现相关问题的讨论
- 我完成了上面所有必要的检查单
- 非语法问题适用,我进行了仿真,能够提供正确 / 错误的波形图
- 仿真正确,实验失败时适用
- 我检查了 latch 相关错误
- 我检查了 Multiple Driven Net 相关错误
- 我检查了关键外设信号的 rst 情况
- 我检查了我认为关键的信号,确认没有异常的 X 信号出现
- 我确认了
unconnected port
警告和 Elaborate Design,我的代码没有被错误优化 - 我进行了上板实验,能够提供正确 / 错误的操作序列
- 到微信群 / 网络学堂答疑区进行提问和答疑
最后更新:
2023年11月5日
作者: