OpenCores
URL https://opencores.org/ocsvn/neorv32/neorv32/trunk

Subversion Repositories neorv32

[/] [neorv32/] [trunk/] [sw/] [ocd-firmware/] [README.md] - Blame information for rev 59

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 59 zero_gravi
# NEORV32 On-Chip Debugger (OCD) - "Park Loop" Code
2
 
3
This folder contains the ASM sources for the *execution-based* debugger code ROM.
4
`park_loop.S` contains the "park loop" that is executed when the CPU is in debug mode. This code is used to communicate
5
with the *debug module (DM)* and is responsible for:
6
 
7
* acknowledging halt requests
8
* processing and acknowledging resume requests
9
* processing and acknowledging "execute program buffer" requests
10
* executing the program buffer (provided by the DM)
11
* catching exceptions while in debug mode
12
 
13
The park loop code is implemented as endless loop that polls the status register of the *debug memory (DBMEM)* module
14
to check for requests from the DM and sets according flags in the status register to acknowledge these requests.
15
 
16
:warning: Executing `make clean_all all` will **NOT** update the actual debugger code ROM that will be synthesized.
17
The interface with the DM will break if there are any bugs in this code. However, if you wish to update the code ROM,
18
copy the array content from `neorv32_debug_mem.code.vhd` to the `code_rom_file` constant in `rtl/core/neorv32_debug_dbmem.vhd`.

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.