Information on the future of debug: CoreSight

Getting Started

The culmination of decades of development in debug and trace IP – Arm CoreSight SoC-600 offers the most comprehensive library for the creation of debug and trace solutions. This includes debug access, trace routing and termination, cross-triggering and time stamping.

Architectural changes simplify and standardise access into debug memory space, enabling protocol based debug access though existing functional interfaces.

Reliance on a protocol that is agnostic of the physical link, ensures that solutions built around CoreSight SoC-600 are portable and scalable, avoiding the limitations associated with point solutions.

Key benefits include:

  • Debug access available and accessible throughout the product lifecycle, from production and manufacture, to remote access in the field
  • Remote debug access (e.g. via Ethernet or wirelessly)
  • Increased data bandwidth for improved system visibility

Total cost of ownership (TCO) is reduced thanks to a combination of greater system visibility and a reduction in operational costs. 

Learn more about CoreSight SoC-600

New DAP architecture

The new Debug Access Port (DAP) architecture introduces standard APB connectivity between Debug Port (DP) and Access Port (AP), making it possible to have multiple DPs connected to multiple APs.

Benefits include:

  • Multiple debug agents can simultaneously access debug memory space (e.g. for concurrent external and self-hosted access)
  • Interface peripherals (such as USB and PCIe) share a common access to APs, together with any existing JTAG DP or resident software
  • Self-hosted, cross CPU debug access
DAP Architecture Diagram.

High trace bandwidth

CoreSight SoC-600 introduces enhanced Embedded Trace Router (ETR) functionality out-of-box. In additional to removing the need for a separate Trace Memory Controller (TMC) license, enhancements to the Embedded Trace Router (ETR) configuration make it possible to supply a trace interface with four times the amount of bandwidth previously possible.

In practice, each ETR configuration can supply a trace output port with up to 100Gbps, should the link be capable of such rates.

As the total amount of trace bandwidth increases, so does the visibility into time correlated events across the SoC, from CPU instructions to system trace (STM), as well as paving the way for bus tracing.

Further improvements have been made to the handoff of buffer contents between interface controllers and ETR. Reliance on a CPU to manage such traffic is significantly reduced.

The ETR now also signals the debugger when trace has been flushed. Capabilities of Embedded Trace Buffer (ETB) and Embedded Trace FIFO (ETF) remain unchanged from the standalone TMC.

System design choices

Broadly speaking, CoreSight SoC-600 systems can be built to have the link protocol hosted by either a main CPU or a dedicated one. There are pros and cons associated with either approach, which are summarized below.

Protocol on dedicated CPU: this approach comes at a cost of additional dedicated resources, however, it is the least intrusive approach and provides bare metal debug capabilities.

Protocol on main CPU: this approach does not require additional hardware, yet it is invasive and relies on CPU not being halted.


Security

Debug access extended to functional IO needs to maintain the same level of security as offered through a JTAG connection. CoreSight SoC-600 continues to offer security control on the DAP side, now extended to accesses over protocol. 

More than an IP library

CoreSight SoC-600 offers much more than just configurable IP. In an effort to support the creation of entire end-to-end solutions, the following items have been developed alongside the IP library and will be made available to IP licensees, tools developers and application developers.

  • Debug and trace protocol

    Availability of a standardised protocol and API between debugger and SoC is key to accelerate development of CoreSight SoC-600 solutions and in avoiding fragmentation into multiple custom protocols and associated efforts.

  • Open source Linux drivers

    Availability of software drivers is critical to self-hosted debug. Arm’s developed drivers will be supplied.

  • Productivity tools
    CoreSight SoC-600 is a library of components that requires stitching into a topology appropriate to the design goals. This flow can be time consuming and requires a deep understanding of the underlying CoreSight architecture.

Enhancements across the SoC library

As part of an extensive effort to update the entire library, all elements in CoreSight SoC-600 have been refreshed with the aim of improving the performance range of supported future CPUs.

Similarly, significant effort has gone towards reducing logic area and power consumption by offering better finer control over which features are implemented.

For improved power management, all power aware elements in the SoC-600 library now benefit from a standardised Low Power Interface (LPI) via a Q-channel interface

Tools support

CoreSight SoC-600 based SoCs will benefit from support in Arm Development Studio, as well as from a number of independent tools vendors.

Learn about customer success stories

Want to know more about SoC-600 and our customer success stories? Learn more by clicking the link below.

Learn more

The top half of a human.

Resources

Get support

Arm support

Arm training courses and on-site system-design advisory services enable licensees to realize maximum system performance with lowest risk and fastest time-to-market.

Arm training courses  Open a support case

Community Blogs

Community Forums 1

Not answered Aligned and unaligned word transfers on a 64-bit bus
  • AXI
  • AXI4
0 votes 247 views 0 replies Started 3 days ago by Maria_d Answer this
Suggested answer CMSIS: Storage interface vs Flash interface - what's the difference ?
  • CMSIS
  • CMSIS-NN
0 votes 459 views 1 replies Latest 4 days ago by Vladimir Umek Answer this
Suggested answer What SBCs I need to choose?
  • Raspberry Pi
  • Maker Faire
  • Single Board Computer (SBC)
  • Development Boards
0 votes 442 views 1 replies Latest 5 days ago by Andy Neil Answer this
Not answered Does anyone knows why a documentation as ARM DSU 0030 is only available for licensees 0 votes 382 views 0 replies Started 5 days ago by JaWa Answer this
Suggested answer The meanings of AxCACHE 0 votes 436 views 1 replies Latest 8 days ago by Christopher Tory Answer this
Suggested answer CoreLink NIC-400 Interconnect gives an extra request
  • CoreLink NIC-400 Network Interconnect
0 votes 508 views 1 replies Latest 8 days ago by Christopher Tory Answer this
Not answered Aligned and unaligned word transfers on a 64-bit bus Started 3 days ago by Maria_d 0 replies 247 views
Suggested answer CMSIS: Storage interface vs Flash interface - what's the difference ? Latest 4 days ago by Vladimir Umek 1 replies 459 views
Suggested answer What SBCs I need to choose? Latest 5 days ago by Andy Neil 1 replies 442 views
Not answered Does anyone knows why a documentation as ARM DSU 0030 is only available for licensees Started 5 days ago by JaWa 0 replies 382 views
Suggested answer The meanings of AxCACHE Latest 8 days ago by Christopher Tory 1 replies 436 views
Suggested answer CoreLink NIC-400 Interconnect gives an extra request Latest 8 days ago by Christopher Tory 1 replies 508 views