Embedded Debug Core

Old Content - visit altium.com/documentation

The following content has been imported from Legacy Help systems and is in the process of being checked for accuracy.

Parent process: WorkspaceManager:ProjectSpecificProcess

Applied parameters: Server=EditEmbedded|Command=StartDebug|ProjectKind=EmbeddedProject|StartServer=True|Simulate=False|ProcessorIndex=N

Summary

This command is used to initiate a debug session, with respect to the currently focused embedded project.

First, ensure that the FPGA design has been downloaded to the physical FPGA device and that the embedded software is running on the target MCU.

Also ensure that the embedded project whose source code you wish to debug is focused in the Projects panel. Focus is given simply by clicking once on the project's entry.

After launching the command, the embedded project for the software running in the indicated processor will initially be recompiled and the debug session will commence. The relevant source code document (either Assembly or C) will be opened and the current execution point will be set to the first line of executable code.

The debug environment offers the full suite of tools you would expect to see in order to efficiently debug the embedded code. These features include:

Setting Breakpoints

Adding Watches

Stepping into and over at both the source (*.C) and instruction (*.asm) level

Reset, Run and Halt code execution

Run to cursor

All of these and other feature commands can be accessed from the Debug menu or the associated Debug toolbar.

Notes

You can have multiple debug sessions running simultaneously - one per embedded software project associated with a microcontroller in the FPGA design.

Various workspace panels are accessible in the debug environment, allowing you to view/control code-specific features, such as Breakpoints, Watches and Local variables, as well as information specific to the microcontroller in which the code is running, such as memory spaces and registers.

These panels can be accessed from the View>> Workspace Panels>> Embedded sub menu, or by clicking on the Embedded button at the bottom of the application window and choosing the required panel from the subsequent pop-up menu.

Full-feature debugging is of course enjoyed at the source code level - from within the source code file itself. To a lesser extent, debugging can also be carried out from a dedicated Generic Processor Controller dialog. To access this dialog, simply double-click on the icon representing the microcontroller to be debugged, in the Soft Devices region of the Devices view. The Soft Devices Instrument Rack will appear.

Each core microcontroller that you have included in the design will appear, when double-clicked, as an Instrument in the rack (along with any other Nexus-enabled devices). The Nexus Debugger button provides access to the Generic Processor Controller dialog, which in turn allows you to interrogate and to a lighter extent control, debugging of the processor and its embedded code, notably with respect to the microcontroller registers and memory.

One key feature of the Generic Processor Controller dialog is that it enables you to specify (and therefore change) the embedded code (HEX file) that is downloaded to the microcontroller, quickly and efficiently.

You are reporting an issue with the following selected text and/or image within the active document: