一、代码准备
按之前的教程下载好openocd的源码(还未进行编译)之后,会看到下图所示的界面。我截取了其中重要的文件夹。
我们在研究openocd的代码的时候,主要的重点是在src文件夹中。
二、参考文档准备
程序有了,我们还需要准备一个官方的debug的参考文档。
下载的网站如下:riscv官方的debug参考文档
点击download就可以下载riscv官方的debug参考文档,注意官网下载的参考文档是英文的。当然大家也可以在我的阿里云盘中下载中文版的参考手册。debug的参考文档中文版
三、整体框架的理解
debugger:例如gdb等调试的工具。
debug translator:例如已经编译完毕的openocd,编译教程请参照openocd的配置。
debug transport hardware: 例如jtag,我是用的是spieed调试器。
其中最重要的几个模块
- Debug Transport Module
- Debug Module Interface
- Debug Module
这三个模块分别与一些寄存器有关,在后面我会一一进行介绍。