AM243x MCU+ SDK  08.05.00
APIs for Counting CPU Cycles

Introduction

For more details and example usage, see Cycle Counter

Functions

void CycleCounterP_init (const uint64_t cpuFreqHz)
 initialize PMU Cycle Counter More...
 
uint32_t CycleCounterP_getCount32 ()
 Get 32b CPU cycle counter value. More...
 
void CycleCounterP_reset ()
 Enable, reset, clear overflow for CPU cycle counter. More...
 
uint64_t CycleCounterP_getCount64 ()
 Get 64b CPU cycle counter value. More...
 
uint64_t CycleCounterP_nsToTicks (const uint64_t nanosecs)
 API function to convert nanosecs to PMU counter ticks. More...
 

Function Documentation

◆ CycleCounterP_init()

void CycleCounterP_init ( const uint64_t  cpuFreqHz)

initialize PMU Cycle Counter

◆ CycleCounterP_getCount32()

uint32_t CycleCounterP_getCount32 ( )

Get 32b CPU cycle counter value.

Make sure to handle overflow condition in your application.

Returns
32b cycle counter value

◆ CycleCounterP_reset()

void CycleCounterP_reset ( )

Enable, reset, clear overflow for CPU cycle counter.

  • Call this API atleast once before using CycleCounterP_getCount32() to reset and enable the counter
  • Call this API to reset counter to zero.

◆ CycleCounterP_getCount64()

uint64_t CycleCounterP_getCount64 ( )

Get 64b CPU cycle counter value.

Only support with below CPUs,

  • A53
Returns
64b cycle counter value

◆ CycleCounterP_nsToTicks()

uint64_t CycleCounterP_nsToTicks ( const uint64_t  nanosecs)

API function to convert nanosecs to PMU counter ticks.

Parameters
nanosecstime unit in nano sec
Returns
PMU counter ticks