6 Event signaling protocol

The cross-triggering system does not attempt to interpret the events that are signaled through it.

Events between CTI components and debug system components are transmitted using one of three mechanisms. For CTI input events:

  1. The event is signaled as a single-cycle clock pulse - an EventPulse. This option is selected using the CTI event configuration option EVENT_IN_LEVEL = 0.
  2. The event is signaled from the debug components as a request-acknowledge signal pair and signaled to the CTI input as a single-cycle EventPulse. This option is selected using the CTI event configuration option EVENT_IN_LEVEL = 0 and connecting the debug component event request-acknowledge signals to the CTI event input using the master side of an Event Pulse asynchronous bridge.
  3. The event is signaled from the debug component as a level sensitive event - an EventLevel. This option is selected using the CTI event configuration option EVENT_IN_LEVEL = 1.

For CTI output events:

  1. The event is signaled as a single-cycle clock pulse - an EventPulse. This option is selected using the CTI event configuration option SW_HANDSHAKE = 0.
  2. The event is signaled to the debug components as a request-acknowledge signal pair and signaled from the CTI output as a single-cycle EventPulse. This option is selected using the CTI event configuration option SW_HANDSHAKE = 0 and connecting the debug component event request-acknowledge signals to the CTI event output using the slave side of an Event Pulse asynchronous bridge.
  3. The event is signaled to the debug component as a level sensitive event - an EventLevel. This option is selected using the CTI event configuration option SW_HANDSHAKE = 1.

Events are broadcast between CTI and CTM components on the cross-trigger channels as a pulse. When an event passes across a clock domain boundary, using an asynchronous bridge, handshaking occurs to ensure that the event lasts for exactly one clock cycle in the destination clock domain.

Each channel is a shared broadcast medium that can carry events from multiple sources going to multiple domains. When a CTI sends events onto a channel, they can coincide with other events on the same channel, so that the events become pulses of more than one clock cycle. This behavior is normal within the cross trigger system.

In usage models that count events that are passed through the cross-triggering system, events that occur close together might be merged into a single event with a single pulse when passed to another clock domain.

Non-ConfidentialPDF file icon PDF version100806_0300_00_en
Copyright © 2017, 2018 Arm Limited or its affiliates. All rights reserved.