module ti.uia.events.UIASync

UIA Synchronization Events

The UIASync module defines events that enable correlation of events from multiple cores as well as correlation of software events with hardware trace [ more ... ]
C synopsis target-domain sourced in ti/uia/events/UIASync.xdc
DETAILS
The UIASync module defines events that enable correlation of events from multiple cores as well as correlation of software events with hardware trace
The following configuration script demonstrates how to configure an application to log sync point events, using the default configuration settings provided by the LogSync module. By default, the LogSync module creates a dedicated 256 byte LoggerCircBuf logger to use to capture sync point events. By default, the Rta module logs sync point events when it receives a start or stop command, or before sending up an event packet if the LogSync.isSyncPointRequired API returns 'true'.
SEE
EXAMPLES
Example 1: This is part of the XDC configuration file for the application:
  // the LogSync module internally does xdc.useModule('ti.uia.events.UIASync')
  var LogSync = xdc.useModule('ti.uia.runtime.LogSync');
  var Rta = xdc.useModule('ti.uia.services.Rta');

 
config UIASync_globalTimerFreq  // module-wide

syncPoint event containing global timer frequency information

C synopsis target-domain
extern const Log_Event UIASync_globalTimerFreq;
 
VALUES
serialNumber — a 32b serial number, used for correlation with HW trace sync points
CpuCyclesPerGlobalTimerTick — the number of CPU cycles per global timer increment. 0 if no conversion possible.
GlobalTimerFreqLSW — the 32 LSBs of the Global Timer frequency
GlobalTimerFreqMSW — the 32 MSBs of the Global Timer frequency
DETAILS
This event logs clock information that allows the host to determine how to convert global imestamp tick counts into time values and CPU cycle counts.
 
config UIASync_syncPoint  // module-wide

syncPoint event

C synopsis target-domain
extern const Log_Event UIASync_syncPoint;
 
VALUES
serialNumber — a 32b serial number, used for correlation with HW trace sync points
CpuTimestampLSW — the 32 LSBs of the global timestamp
CpuTimestampMSW — the 32 MSBs of the global timestamp
GlobalTimestampLSW — the 32 LSBs of the global timestamp
GlobalTimestampMSW — the 32 MSBs of the global timestamp
CpuCyclesPerCpuTimerTick — the number of CPU cycles per CPU timer increment. 0 if no conversion possible.
CPUFreqLSW — the 32 LSBs of the CPU frequency
CPUFreqMSW — the 32 MSBs of the CPU frequency
DETAILS
This event logs both a local CPU timestamp (the event timestamp) and a global timestamp, which enables time correlation of the local CPU timestamps that each event can be tagged with against the global timebase, thus enabling multi-core event correlation. It also logs clock information that allows the host to determine how to convert CPU timestamp tick counts into time values and CPU cycle counts.
 
config UIASync_syncPointAfterHalt  // module-wide

syncPoint event logged after the CPU has resumed running after being reset, suspended or halted by the debugger

C synopsis target-domain
extern const Log_Event UIASync_syncPointAfterHalt;
 
VALUES
serialNumber — a 32b serial number, used for correlation with HW trace sync points
CpuTimestampLSW — the 32 LSBs of the global timestamp
CpuTimestampMSW — the 32 MSBs of the global timestamp
GlobalTimestampLSW — the 32 LSBs of the global timestamp
GlobalTimestampMSW — the 32 MSBs of the global timestamp
CpuCyclesPerCpuTimerTick — the number of CPU cycles per CPU timer increment. 0 if no conversion possible.
CPUFreqLSW — the 32 LSBs of the CPU frequency
CPUFreqMSW — the 32 MSBs of the CPU frequency
DETAILS
This event logs both a local CPU timestamp (the event timestamp) and a global timestamp, which enables time correlation of the local CPU timestamps that each event can be tagged with against the global timebase, thus enabling multi-core event correlation. It also logs clock information that allows the host to determine how to convert CPU timestamp tick counts into time values and CPU cycle counts.
 
config UIASync_syncPointUserProvidedData  // module-wide

An event that provides supplementary info to a sync point event

C synopsis target-domain
extern const Log_Event UIASync_syncPointUserProvidedData;
 
VALUES
serialNumber — a 32b serial number, used for correlation with HW trace sync points
fmt — a format specifier string for up to 6 additional parameters
DETAILS
This event can be used by user-provided code to log supplementary event data whenever a sync point event is logged.
Module-Wide Built-Ins

C synopsis target-domain
Types_ModuleId UIASync_Module_id();
// Get this module's unique id
 
Bool UIASync_Module_startupDone();
// Test if this module has completed startup
 
IHeap_Handle UIASync_Module_heap();
// The heap from which this module allocates memory
 
Bool UIASync_Module_hasMask();
// Test whether this module has a diagnostics mask
 
Bits16 UIASync_Module_getMask();
// Returns the diagnostics mask for this module
 
Void UIASync_Module_setMask(Bits16 mask);
// Set the diagnostics mask for this module
 
Configuration settings sourced in ti/uia/events/UIASync.xdc
var UIASync = xdc.useModule('ti.uia.events.UIASync');
module-wide config parameters
        mask: Diags.ANALYSIS,
        msg: "Sync Point Global Timer Freq: SerialNumber=0x%x, CpuCyclesPerGlobalTimerTick=%d, GlobalTimerFreq [LSW=0x%x, MSW=0x%x]"
    };
        mask: Diags.ANALYSIS,
        msg: "Sync Point: SerialNumber=0x%x, CpuTStamp [LSW=0x%x, MSW=0x%x], GlobalTStamp [LSW=0x%x, MSW=0x%x], CpuCyclesPerCpuTimerTick=%d, CpuFreq [LSW=0x%x, MSW=0x%x]"
    };
        mask: Diags.ANALYSIS,
        msg: "Sync Point After Halt: SerialNumber=0x%x, CpuTStamp [LSW=0x%x, MSW=0x%x], GlobalTStamp [LSW=0x%x, MSW=0x%x], CpuCyclesPerCpuTimerTick=%d, CpuFreq [LSW=0x%x, MSW=0x%x]"
    };
        mask: Diags.ANALYSIS,
        msg: "Sync Point User Data: SerialNumber=0x%x, %$S"
    };
 
 
 
config UIASync.globalTimerFreq  // module-wide

syncPoint event containing global timer frequency information

Configuration settings
UIASync.globalTimerFreq = Log.EventDesc {
    mask: Diags.ANALYSIS,
    msg: "Sync Point Global Timer Freq: SerialNumber=0x%x, CpuCyclesPerGlobalTimerTick=%d, GlobalTimerFreq [LSW=0x%x, MSW=0x%x]"
};
 
VALUES
serialNumber — a 32b serial number, used for correlation with HW trace sync points
CpuCyclesPerGlobalTimerTick — the number of CPU cycles per global timer increment. 0 if no conversion possible.
GlobalTimerFreqLSW — the 32 LSBs of the Global Timer frequency
GlobalTimerFreqMSW — the 32 MSBs of the Global Timer frequency
DETAILS
This event logs clock information that allows the host to determine how to convert global imestamp tick counts into time values and CPU cycle counts.
C SYNOPSIS
 
config UIASync.syncPoint  // module-wide

syncPoint event

Configuration settings
UIASync.syncPoint = Log.EventDesc {
    mask: Diags.ANALYSIS,
    msg: "Sync Point: SerialNumber=0x%x, CpuTStamp [LSW=0x%x, MSW=0x%x], GlobalTStamp [LSW=0x%x, MSW=0x%x], CpuCyclesPerCpuTimerTick=%d, CpuFreq [LSW=0x%x, MSW=0x%x]"
};
 
VALUES
serialNumber — a 32b serial number, used for correlation with HW trace sync points
CpuTimestampLSW — the 32 LSBs of the global timestamp
CpuTimestampMSW — the 32 MSBs of the global timestamp
GlobalTimestampLSW — the 32 LSBs of the global timestamp
GlobalTimestampMSW — the 32 MSBs of the global timestamp
CpuCyclesPerCpuTimerTick — the number of CPU cycles per CPU timer increment. 0 if no conversion possible.
CPUFreqLSW — the 32 LSBs of the CPU frequency
CPUFreqMSW — the 32 MSBs of the CPU frequency
DETAILS
This event logs both a local CPU timestamp (the event timestamp) and a global timestamp, which enables time correlation of the local CPU timestamps that each event can be tagged with against the global timebase, thus enabling multi-core event correlation. It also logs clock information that allows the host to determine how to convert CPU timestamp tick counts into time values and CPU cycle counts.
C SYNOPSIS
 
config UIASync.syncPointAfterHalt  // module-wide

syncPoint event logged after the CPU has resumed running after being reset, suspended or halted by the debugger

Configuration settings
UIASync.syncPointAfterHalt = Log.EventDesc {
    mask: Diags.ANALYSIS,
    msg: "Sync Point After Halt: SerialNumber=0x%x, CpuTStamp [LSW=0x%x, MSW=0x%x], GlobalTStamp [LSW=0x%x, MSW=0x%x], CpuCyclesPerCpuTimerTick=%d, CpuFreq [LSW=0x%x, MSW=0x%x]"
};
 
VALUES
serialNumber — a 32b serial number, used for correlation with HW trace sync points
CpuTimestampLSW — the 32 LSBs of the global timestamp
CpuTimestampMSW — the 32 MSBs of the global timestamp
GlobalTimestampLSW — the 32 LSBs of the global timestamp
GlobalTimestampMSW — the 32 MSBs of the global timestamp
CpuCyclesPerCpuTimerTick — the number of CPU cycles per CPU timer increment. 0 if no conversion possible.
CPUFreqLSW — the 32 LSBs of the CPU frequency
CPUFreqMSW — the 32 MSBs of the CPU frequency
DETAILS
This event logs both a local CPU timestamp (the event timestamp) and a global timestamp, which enables time correlation of the local CPU timestamps that each event can be tagged with against the global timebase, thus enabling multi-core event correlation. It also logs clock information that allows the host to determine how to convert CPU timestamp tick counts into time values and CPU cycle counts.
C SYNOPSIS
 
config UIASync.syncPointUserProvidedData  // module-wide

An event that provides supplementary info to a sync point event

Configuration settings
UIASync.syncPointUserProvidedData = Log.EventDesc {
    mask: Diags.ANALYSIS,
    msg: "Sync Point User Data: SerialNumber=0x%x, %$S"
};
 
VALUES
serialNumber — a 32b serial number, used for correlation with HW trace sync points
fmt — a format specifier string for up to 6 additional parameters
DETAILS
This event can be used by user-provided code to log supplementary event data whenever a sync point event is logged.
C SYNOPSIS
 
metaonly config UIASync.common$  // module-wide

Common module configuration parameters

Configuration settings
UIASync.common$ = Types.Common$ undefined;
 
DETAILS
All modules have this configuration parameter. Its name contains the '$' character to ensure it does not conflict with configuration parameters declared by the module. This allows new configuration parameters to be added in the future without any chance of breaking existing modules.
generated on Tue, 14 Feb 2017 00:15:10 GMT