C1.1 About debug methods

The core is part of a debug system and supports both self-hosted and external debug.

The following figure shows a typical external debug system.

Figure C1-1 External debug system
To view this graphic, your browser must support the SVG format. Either install a browser with native support, or install an appropriate plugin such as Adobe SVG Viewer.

Debug host
A computer, for example a personal computer, that is running a software debugger such as the DS-5 Debugger. With the debug host, you can issue high-level commands, such as setting a breakpoint at a certain location or examining the contents of a memory address.
Protocol converter
The debug host sends messages to the debug target using an interface such as Ethernet. However, the debug target typically implements a different interface protocol. A device such as DSTREAM is required to convert between the two protocols.
Debug target

The lowest level of the system implements system support for the protocol converter to access the debug unit using the Advanced Peripheral Bus (APB) slave interface. An example of a debug target is a development system with a test chip or a silicon part with a core.

Debug unit

Helps debugging software that is running on the core:

  • Hardware systems that are based on the core.
  • Operating systems.
  • Application software.

With the debug unit, you can:

  • Stop program execution.
  • Examine and alter process and coprocessor state.
  • Examine and alter memory and the state of the input or output peripherals.
  • Restart the core.

For self-hosted debug, the debug target runs additional debug monitor software that runs on the Cortex®-A55 core itself. This way, it does not require expensive interface hardware to connect a second host computer.

Non-ConfidentialPDF file icon PDF version100442_0200_00_en
Copyright © 2016–2018 Arm Limited or its affiliates. All rights reserved.