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 TimestampC64XLocal_maxBusClockFreq // module-wide |
 |
The highest bus clock frequency used to drive the timer
extern const Types_FreqHz TimestampC64XLocal_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 700 MHz:
var TimestampC64XLocal = xdc.useModule('ti.uia.family.c64p.TimestampC64XLocal');
TimestampC64XLocal.maxBusClockFreq = {lo:700000000,hi:0};
config TimestampC64XLocal_maxTimerClockFreq // module-wide |
 |
The highest timer clock frequency
extern const Types_FreqHz TimestampC64XLocal_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 700 MHz:
var TimestampC64XLocal = xdc.useModule('ti.uia.family.c64p.TimestampC64XLocal');
TimestampC64XLocal.maxTimerClockFreq = {lo:700000000,hi:0};
TimestampC64XLocal_get32() // module-wide |
 |
Return a 32-bit timestamp
Bits32 TimestampC64XLocal_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
TimestampC64XLocal_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
TimestampC64XLocal_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
TimestampC64XLocal_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 TimestampC64XLocal_Module_startupDone();
// Test if this module has completed startup
// The heap from which this module allocates memory
Bool TimestampC64XLocal_Module_hasMask();
// Test whether this module has a diagnostics mask
Bits16 TimestampC64XLocal_Module_getMask();
// Returns the diagnostics mask for this module
Void TimestampC64XLocal_Module_setMask(Bits16 mask);
// Set the diagnostics mask for this module
Instance Object Types |
 |
typedef struct TimestampC64XLocal_Object TimestampC64XLocal_Object;
// Opaque internal representation of an instance object
// Client reference to an instance object
typedef struct TimestampC64XLocal_Struct TimestampC64XLocal_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 TimestampC64XLocal_Params {
// Instance config-params structure
// Common per-instance configs
} TimestampC64XLocal_Params;
// Initialize this config-params structure with supplier-specified defaults before instance creation
Instance Built-Ins |
 |
Int TimestampC64XLocal_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 TimestampC64XLocal.maxBusClockFreq // module-wide |
 |
The highest bus clock frequency used to drive the timer
TimestampC64XLocal.
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 700 MHz:
var TimestampC64XLocal = xdc.useModule('ti.uia.family.c64p.TimestampC64XLocal');
TimestampC64XLocal.maxBusClockFreq = {lo:700000000,hi:0};
C SYNOPSIS
config TimestampC64XLocal.maxTimerClockFreq // module-wide |
 |
The highest timer clock frequency
TimestampC64XLocal.
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 700 MHz:
var TimestampC64XLocal = xdc.useModule('ti.uia.family.c64p.TimestampC64XLocal');
TimestampC64XLocal.maxTimerClockFreq = {lo:700000000,hi:0};
C SYNOPSIS
metaonly config TimestampC64XLocal.canCpuCyclesPerTickBeChanged // module-wide |
 |
Indicates whether the timer's cycles per tick divide down ratio can be
changed or not
TimestampC64XLocal.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 TimestampC64XLocal.canFrequencyBeChanged // module-wide |
 |
Indicates whether the timer frequency can be changed or not
TimestampC64XLocal.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 TimestampC64XLocal.common$ // module-wide |
 |
Common module configuration parameters
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 TimestampC64XLocal.cpuCyclesPerTick // module-wide |
 |
The number of CPU cycles each tick of the timestamp corresponds to
TimestampC64XLocal.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 |
 |
var params = new TimestampC64XLocal.Params;
// Instance config-params object