常见的RISC-V仿真器很多都是基于支持JTAG接口的接口芯片比如FTDI的芯片加上开源OpenOCD实现的。但是接口芯片可能不能满足一些灵活的需求,所以我们可以基于通用MCU去替代类似FTDI的接口芯片,即基于MCU去实现硬件适配器,上位机还是基于OpenOCD。所以我们实际就是实现一个类似xx-LINK的硬件。主要有两部分工作,硬件部分实现JTA...
make install时会自动复制到build\share\openocd\scripts\interface 一.驱动传递参数 以上我们分享了如何添加一个驱动支持,现在驱动只是一个简单的框架还未实现任何功能, 我们先来了解openocd是如何找到我们实现的驱动,如何给驱动传递参数的。这有助于我们后面驱动的实现,比如我们要给驱动做一些参数配置等。 使用仿真跟踪...
需要首先构造abstract command字段,该字段32位,其中包含了要访问的寄存器的index的值. OpenOCD发送给Debug Module后,会触发硬件将该寄存器值存放到"Abstract Data 0"寄存器中. OpenOCD只需要直接读取即可. 如下图是借助Bus Register读取特定寄存器的函数调用关系....
A. MRS模板创建的工程自带.launch配置文件。B. 点击工具栏Debug Configurations选项打开调试配置页,双击GDB OpenOCD Debugging菜单项,创建调试配置。C. 选中工程后直接点击右键菜单”Debug As->OpenOCD Debug”,MRS会根据对应的目标芯片内核创建默认调试配置并启动调试。【OpenOCD工具】MRS会自动根据当前工程...
openocd命令讲解 openocd可执行文件 -f 驱动配置文件 -f 芯片配置文件 -d3 -l 日志文件路径 -d3 -l联合使用,表示开启debug,制定日志文件,可以不使用. 即,只使用 openocd可执行文件 -f 驱动配置文件 -f 芯片配置文件 详情查看pdf\openocd.pdf / http://openocd.org/doc-release/pdf/openocd.pdf ...
gdb随工具链一起已经有了,只需要下载openocd。从国内镜像克隆, git clone https://gitee.com/mirrors/openocd.git 安装 安装的时候要使能用到的适配器驱动,比如 --enable-ftdi 等。 cd openocd ./bootstrap # (when building from the git repository) ...
在实践中,许多 RISC-V 处理器都会采用 Open OCD(Open OnChip Debugger,开源片上调试器)作为调试软件,而 Open OCD 实际上起到了 GDB 服务器的作用。 设计基于 RISC-V 指令集的 Soft CPU 2018 RISC-V Soft CPU Contest 获奖作品:PulseRain Reindeer
目前RISC-V的官方调试上位机是openocd,调试工具可以是JLink或者CMSIS-DAP,RISC-V调试系统框架如图3所示...
支持JTAG,可以通过openocd读写内存(在线更新程序); 支持中断; 支持总线; 支持FreeRTOS; 支持通过串口更新程序; 容易移植到任何FPGA平台(如果资源足够的话); 整体架构 ❝https://gitee.com/liangkangnan/tinyriscv ❞ 详细的中文设计说明,非常适合入门!
它可以控制大多数JTAG硬件设备。openOCD的功能需要在调试工具(例如GDB)的协同下完成。openOCD主要是对...