CMSIS-DAP  Version 0.01 - Beta
Interface Firmware for CoreSight Debug Access Port
 All Functions Groups Pages
Firmware for CoreSight Debug Access Port

This chapter introduces the specification of the Firmware for the CoreSight Debug Access Port (CMSIS-DAP).The ARM® Cortex processors provide the CoreSight debug and trace unit. CMSIS-DAP supports target Devices that contain one or more Cortex processors. A Device provides a Debug Access Port (DAP) either with a 5-pin JTAG or with a 2-pin Serial Wired Debug (SWD) interface that connects to a Debug Unit. CMSIS-DAP is the interface firmware for a Debug Unit that connects the Debug Port to USB. Debuggers that execute on a host computer connect via USB and the Debug Unit to the Device which runs the application software.

CMSIS_DAP_INTERFACE.png
CMSIS-DAP Overview

Benefits of CMSIS-DAP

  • Provides a standardized interface for debuggers.
    • Interfaces to Keil MDK and ARM DS-5 are already available; adaption for 3rd party debuggers in preparation.
  • Access to CoreSight registers of all Cortex processor architectures (Cortex-A/R/M).
  • Connects via 5-pin JTAG or 2-pin Serial Wire Debug (SWD).
  • Supports multi-core debugging.
  • Easy to deploy to Debug Units based on Cortex-M microcontrollers.
  • Debug Unit may be integrated on an evaluation board.
  • USB using HID (Human Interface Device) driver class that avoids driver installation on host PC.

CMSIS-DAP Software Stack

The CMSIS-DAP Software stack is composed of the following components:

  • RDDI-DAP Access DLL that implements the connection to a debugger on a host computer.
  • CMSIS-DAP Firmware, which is fully configurable to a Debug Unit hardware that is using a Cortex-M Microcontroller.
CMSIS_DAP_SWStack.png
CMSIS-DAP Software Stack

CMSIS-DAP Firmware

The CMSIS-DAP Firmware is provided as source code and is fully configurable to a new Debug Unit. A source code template and several reference implementations for popular Debug Units are provided. Refer to Firmware Configuration for more information.

RDDI-DAP Access DLL

The RDDI-DAP Access DLL is provided as Windows DLL and connects the debugger to the CMSIS-DAP Firmware. It is provided as part of CMSIS-DAP in object form and can be freely distributed by debugger vendors as part of their CMSIS-DAP debugger interface. The RDDI-DAP Access DLL is also used to validate the CMSIS-DAP interface. CMSIS-DAP compliant Debug Units must be validated using this DLL. Refer to Validate Debug Unit for more information.

The RDDI-DAP interface specification will be available separately from ARM.


License

The CMSIS-DAP is provided free of charge by ARM and can be freely distributed as part of Cortex-M processor-based Debug Units that are stand-alone or integrated evaluation boards. used for all Cortex-M based devices. View the LICENCE AGREEMENT for CMSIS-DAP in detail.


Revision History of CMSIS-DAP.

Version Description
V0.01 Beta Release.