Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Debug support for ibex #1340

Closed
mrdiogodias opened this issue Apr 15, 2021 · 3 comments
Closed

Debug support for ibex #1340

mrdiogodias opened this issue Apr 15, 2021 · 3 comments
Labels
Type:Question Questions

Comments

@mrdiogodias
Copy link

Hello,
I want to use the ibex core, however, I need a debugger. For that reason, I'm using the code from #1218.
I managed to port the code to my fpga but now I'm a little lost on how can I debug the led application example.
I already understood that I need an Olimex adapter 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.

Thank you

@mrdiogodias mrdiogodias added the Type:Question Questions label Apr 15, 2021
@GregAC
Copy link
Collaborator

GregAC commented Apr 17, 2021

Hi @mrdiogodias I'm afraid we can't offer much in the way of help as we keep this repository focused on Ibex and how you build/use Ibex systems is a different topic. In general you'll need some kind of debug probe (JTAG is commonly used and that's what's used in that PR) to connect to the board then something to bridge GDB and the debug probe. OpenOCD is commonly used for this (http://openocd.org/). It connects to the debug probe and provides a network port that GDB can connect to.

You could take a look at OpenTitan (https://github.com/lowRISC/opentitan) which uses Ibex and contains debug functionality (https://docs.opentitan.org/doc/ug/getting_started_fpga/ shows how you connect to it under 'Connect with OpenOCD and debug' ) however it's a complex SoC so not a good minimal example.

Also consider if you really need the debugger, it's useful to have but you can do a lot with FPGA logic debugging instead (e.g. if using Xilinx and Vivado see https://www.xilinx.com/video/hardware/logic-debug-in-vivado.html) or just use printf debugging via a UART.

@mrdiogodias
Copy link
Author

Thank you for your explanation, I will take a look into those topics!

@rswarbrick
Copy link
Contributor

Hi there! I'm closing this issue, since the question seems to be answered. Please feel free to get in touch again with anything else.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Type:Question Questions
Projects
None yet
Development

No branches or pull requests

3 participants