如何使用Reveal和Mico32 MSB来调试我的系统?

调试新系统设计的一个典型问题是软件算法会出现错误,但软件和GDB调试器无法看到可能产生错误的组件的内部逻辑。

例如,新系统设计可以与新板上的新定制存储器组件接口。

编写软件存储器测试以执行硬件上的标准步进,所有设置,所有清晰,随机模式等存储器测试。

当软件检查例程读回它不期望的值时,会发现错误。

问题是在软件域中可能无法确定错误是在写侧,读取侧,数据总线适配,组件接口等。这是Reveal可以提供帮助的地方。

  1. 创建一个Reveal Inserter项目,捕获有问题的信号,例如从组件读取数据总线。
  2. 使用可由软件检查例程设置的顶级信号触发器,例如驱动错误LED的GPIO网络。
  3. 然后,软件可以在检测到错误后立即设置该GPIO位,并触发Reveal以捕获跟踪。
  4. 由于数据总线活动将在触发之前发生,因此将触发点设置在捕获缓冲区的末尾(90%)。
  5. 这将允许您检查检测到的错误周围存在的硬件信号。
  6. 从该示例中,如果读取数据总线已经显示损坏的数据,则可以将监视点移动到组件的内部逻辑或FPGA I / O中,以查看数据是否进入FPGA有效或损坏。
在同时使用Reveal和MSB调试器时,以下步骤提供了最大的成功。 。使用ispVM下载设计 。将Reveal Logic Analyzer连接到设计 。启动MSB调试器 。运行检测错误的可执行程序 。在看到错误指示灯(LED输出)后,停止调试器或在LED置位后设置断点。 。在MSB完成暂停调试器并收集状态信息后,Reveal将看到触发器已发生并上传跟踪数据以进行分析
编辑 重设标签(回车键确认) 标为违禁 关闭 合并 删除

提问于 2018-07-27 10:29:04 +0800

这个帖子被标记为一个社区wiki

这个帖子是一个wiki(维基). 任何一个积分 >500的人都可以完善它