How to debug a RISC-V soft core

This page summarizes the projects mentioned and recommended in the original post on /r/FPGA

Our great sponsors
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • SaaSHub - Software Alternatives and Reviews
  • ibex

    Ibex is a small 32 bit RISC-V CPU core, previously known as zero-riscy.

  • I want to use the RISC-V ibex core, however, I need a debugger. For that reason, I'm using the code from here, which includes a debug unit in the FPGA example compliant with the RISC-V debug specification. I managed to port the code to my FPGA but now I'm a little lost on how can I debug my applications. If I understood right, I need an Olimex adapter to connect my PC to the JTAG interface of the FPGA, but besides that, what do I need to do in order to use gdb? Sorry for my ignorance but I'm new to the field.

  • ibex

    Ibex is a small 32 bit RISC-V CPU core, previously known as zero-riscy. (by majbthrd)

  • I want to use the RISC-V ibex core, however, I need a debugger. For that reason, I'm using the code from here, which includes a debug unit in the FPGA example compliant with the RISC-V debug specification. I managed to port the code to my FPGA but now I'm a little lost on how can I debug my applications. If I understood right, I need an Olimex adapter to connect my PC to the JTAG interface of the FPGA, but besides that, what do I need to do in order to use gdb? Sorry for my ignorance but I'm new to the field.

  • WorkOS

    The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.

    WorkOS logo
  • riscv-debug-spec

    Working Draft of the RISC-V Debug Specification Standard

  • I want to use the RISC-V ibex core, however, I need a debugger. For that reason, I'm using the code from here, which includes a debug unit in the FPGA example compliant with the RISC-V debug specification. I managed to port the code to my FPGA but now I'm a little lost on how can I debug my applications. If I understood right, I need an Olimex adapter to connect my PC to the JTAG interface of the FPGA, but besides that, what do I need to do in order to use gdb? Sorry for my ignorance but I'm new to the field.

  • tomverbeure

  • I’m in the process of writing a blog post about debugging a VexRiscv soft core. It’s work in progress, but the introduction should give you an idea how things connect together in general.

  • vexriscv_ocd

  • Similarly, my the README of test project might give you some pointers.

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts