Assigning an instance of this module to the ti.uia.runtime.LogSync
module's CpuTimestampProxy provides a way for applications to notify
System Analyzer about CPU frequency changes, so that multicore event
correlation properly accounts for the change in CPU frequency.
Whenever a SyncPoint event is logged, the LogSync module will use the information
stored in this module's Module_state as the CPU clock frequency information.
config TimestampC66XLocal_maxBusClockFreq // module-wide |
 |
The highest bus clock frequency used to drive the timer
extern const Types_FreqHz TimestampC66XLocal_maxBusClockFreq;
DETAILS
The default ticks per second rate of the timer is calculated by dividing
the timer's bus clock frequency by the cyclesPerTick config parameter.
The default ticks per second rate of the timer is calculated by dividing
the timer's bus clock frequency by the cyclesPerTick config parameter.
By default, this will be set to the CPU speed defined in the Platform.xdc
file that is part of the platform specified in the build settings.
RETURNS
the 32 MSBs of the highest bus clock frequency used to drive
the timer.
EXAMPLES
Example: The following is an example of the configuration script used
to configure the frequency for a value of 1.2 GHz:
var TimestampC66Local = xdc.useModule('ti.uia.family.c66.TimestampC66Local');
TimestampC66Local.maxTimerClockFreq = {lo:1200000000,hi:0};
config TimestampC66XLocal_maxTimerClockFreq // module-wide |
 |
The highest timer clock frequency
extern const Types_FreqHz TimestampC66XLocal_maxTimerClockFreq;
DETAILS
The default ticks per second rate of the timer is calculated by dividing
the timer's bus clock frequency by the cyclesPerTick config parameter.
The default ticks per second rate of the timer is calculated by dividing
the timer's bus clock frequency by the cyclesPerTick config parameter.
By default, this will be set to the CPU speed defined in the Platform.xdc
file that is part of the platform specified in the build settings.
RETURNS
the 32 LSBs of the highest timer clock frequency
(i.e. ticksPerSecond).
EXAMPLES
Example: The following is an example of the configuration script used
to configure the frequency for a value of 1.2 GHz, and assigns it
to the LogSync module so that the information can be passed up
to the host to enable multicore event correlation.
var TimestampC66Local = xdc.useModule('ti.uia.family.c66.TimestampC66Local');
TimestampC66Local.maxTimerClockFreq = {lo:1200000000,hi:0};
var LogSync = xdc.useModule('ti.uia.runtime.LogSync');
LogSync.CpuTimestampProxy = TimestampC66Local;
SEE
TimestampC66XLocal_get32() // module-wide |
 |
Return a 32-bit timestamp
Bits32 TimestampC66XLocal_get32();
RETURNS
Returns a 32-bit timestamp value.
Use
getFreq to convert this value into units of real time.
Returns a 32-bit timestamp value.
Use
getFreq to convert this value into units of real time.
SEE
TimestampC66XLocal_get64() // module-wide |
 |
Return a 64-bit timestamp
ARGUMENTS
result
pointer to 64-bit result
This parameter is a pointer to a structure representing a 64-bit
wide timestamp value where the current timestamp is written.
If the underlying hardware does not support 64-bit resolution, the
hi field of
result is always set to 0; see
xdc.runtime.Types.Timestamp64. So, it is possible for
the
lo field to wrap around without any change to the
hi field.
Use
getFreq to convert this value into units of real
time.
pointer to 64-bit result
This parameter is a pointer to a structure representing a 64-bit
wide timestamp value where the current timestamp is written.
If the underlying hardware does not support 64-bit resolution, the
hi field of
result is always set to 0; see
xdc.runtime.Types.Timestamp64. So, it is possible for
the
lo field to wrap around without any change to the
hi field.
Use
getFreq to convert this value into units of real
time.
SEE
TimestampC66XLocal_getFreq() // module-wide |
 |
Get the timestamp timer's frequency (in Hz)
ARGUMENTS
freq
pointer to a 64-bit result
This parameter is a pointer to a structure representing a 64-bit
wide frequency value where the timer's frequency (in Hz)
is written; see
xdc.runtime.Types.FreqHz.
This function provides a way of converting timestamp
values into units of real time.
pointer to a 64-bit result
This parameter is a pointer to a structure representing a 64-bit
wide frequency value where the timer's frequency (in Hz)
is written; see
xdc.runtime.Types.FreqHz.
This function provides a way of converting timestamp
values into units of real time.
SEE
TimestampC66XLocal_setFreq() // module-wide |
 |
Set the timestamp timer's frequency (in Hz)
ARGUMENTS
freq
pointer to a 64-bit input value
This parameter is a pointer to a structure representing a 64-bit
wide frequency value where the timer's frequency (in Hz)
is written; see
xdc.runtime.Types.FreqHz.
This function provides a way of updating the timestamp
data that is logged with a sync point event.
SEE
Module-Wide Built-Ins |
 |
// Get this module's unique id
Bool TimestampC66XLocal_Module_startupDone();
// Test if this module has completed startup
// The heap from which this module allocates memory
Bool TimestampC66XLocal_Module_hasMask();
// Test whether this module has a diagnostics mask
Bits16 TimestampC66XLocal_Module_getMask();
// Returns the diagnostics mask for this module
Void TimestampC66XLocal_Module_setMask(Bits16 mask);
// Set the diagnostics mask for this module
Instance Object Types |
 |
typedef struct TimestampC66XLocal_Object TimestampC66XLocal_Object;
// Opaque internal representation of an instance object
// Client reference to an instance object
typedef struct TimestampC66XLocal_Struct TimestampC66XLocal_Struct;
// Opaque client structure large enough to hold an instance object
// Convert this instance structure pointer into an instance handle
// Convert this instance handle into an instance structure pointer
Instance Config Parameters |
 |
typedef struct TimestampC66XLocal_Params {
// Instance config-params structure
// Common per-instance configs
} TimestampC66XLocal_Params;
// Initialize this config-params structure with supplier-specified defaults before instance creation
Instance Built-Ins |
 |
Int TimestampC66XLocal_Object_count();
// The number of statically-created instance objects
// The handle of the i-th statically-created instance object (array == NULL)
// The handle of the first dynamically-created instance object, or NULL
// The handle of the next dynamically-created instance object, or NULL
// The heap used to allocate dynamically-created instance objects
// The label associated with this instance object
// The name of this instance object
config TimestampC66XLocal.maxBusClockFreq // module-wide |
 |
The highest bus clock frequency used to drive the timer
XDCscript usage |
meta-domain |
TimestampC66XLocal.
maxBusClockFreq =
Types.FreqHz undefined;
DETAILS
The default ticks per second rate of the timer is calculated by dividing
the timer's bus clock frequency by the cyclesPerTick config parameter.
The default ticks per second rate of the timer is calculated by dividing
the timer's bus clock frequency by the cyclesPerTick config parameter.
By default, this will be set to the CPU speed defined in the Platform.xdc
file that is part of the platform specified in the build settings.
RETURNS
the 32 MSBs of the highest bus clock frequency used to drive
the timer.
EXAMPLES
Example: The following is an example of the configuration script used
to configure the frequency for a value of 1.2 GHz:
var TimestampC66Local = xdc.useModule('ti.uia.family.c66.TimestampC66Local');
TimestampC66Local.maxTimerClockFreq = {lo:1200000000,hi:0};
C SYNOPSIS
config TimestampC66XLocal.maxTimerClockFreq // module-wide |
 |
The highest timer clock frequency
XDCscript usage |
meta-domain |
TimestampC66XLocal.
maxTimerClockFreq =
Types.FreqHz undefined;
DETAILS
The default ticks per second rate of the timer is calculated by dividing
the timer's bus clock frequency by the cyclesPerTick config parameter.
The default ticks per second rate of the timer is calculated by dividing
the timer's bus clock frequency by the cyclesPerTick config parameter.
By default, this will be set to the CPU speed defined in the Platform.xdc
file that is part of the platform specified in the build settings.
RETURNS
the 32 LSBs of the highest timer clock frequency
(i.e. ticksPerSecond).
EXAMPLES
Example: The following is an example of the configuration script used
to configure the frequency for a value of 1.2 GHz, and assigns it
to the LogSync module so that the information can be passed up
to the host to enable multicore event correlation.
var TimestampC66Local = xdc.useModule('ti.uia.family.c66.TimestampC66Local');
TimestampC66Local.maxTimerClockFreq = {lo:1200000000,hi:0};
var LogSync = xdc.useModule('ti.uia.runtime.LogSync');
LogSync.CpuTimestampProxy = TimestampC66Local;
SEE
C SYNOPSIS
metaonly config TimestampC66XLocal.canCpuCyclesPerTickBeChanged // module-wide |
 |
Indicates whether the timer's cycles per tick divide down ratio can be
changed or not
XDCscript usage |
meta-domain |
TimestampC66XLocal.canCpuCyclesPerTickBeChanged = Bool false;
RETURNS
true if the timer's CPU cycles per tick can be changed
true if the timer's CPU cycles per tick can be changed
metaonly config TimestampC66XLocal.canFrequencyBeChanged // module-wide |
 |
Indicates whether the timer frequency can be changed or not
XDCscript usage |
meta-domain |
TimestampC66XLocal.canFrequencyBeChanged = Bool false;
RETURNS
true if the timer's clock frequency can be changed
true if the timer's clock frequency can be changed
metaonly config TimestampC66XLocal.common$ // module-wide |
 |
Common module configuration parameters
XDCscript usage |
meta-domain |
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.
metaonly config TimestampC66XLocal.cpuCyclesPerTick // module-wide |
 |
The number of CPU cycles each tick of the timestamp corresponds to
XDCscript usage |
meta-domain |
TimestampC66XLocal.cpuCyclesPerTick = UInt32 1;
DETAILS
A value of 0 indicates that no conversion between the timer's tick count
and CPU cycles is possible.
A value of 0 indicates that no conversion between the timer's tick count
and CPU cycles is possible.
Instance Config Parameters |
 |
XDCscript usage |
meta-domain |
var params = new TimestampC66XLocal.Params;
// Instance config-params object