Zephyr Project API 4.0.0
A Scalable Open Source RTOS
|
Arch specific Timing Measurement APIs. More...
Functions | |
void | arch_timing_init (void) |
Initialize the timing subsystem. | |
void | arch_timing_start (void) |
Signal the start of the timing information gathering. | |
void | arch_timing_stop (void) |
Signal the end of the timing information gathering. | |
timing_t | arch_timing_counter_get (void) |
Return timing counter. | |
uint64_t | arch_timing_cycles_get (volatile timing_t *const start, volatile timing_t *const end) |
Get number of cycles between start and end . | |
uint64_t | arch_timing_freq_get (void) |
Get frequency of counter used (in Hz). | |
uint64_t | arch_timing_cycles_to_ns (uint64_t cycles) |
Convert number of cycles into nanoseconds. | |
uint64_t | arch_timing_cycles_to_ns_avg (uint64_t cycles, uint32_t count) |
Convert number of cycles into nanoseconds with averaging. | |
uint32_t | arch_timing_freq_get_mhz (void) |
Get frequency of counter used (in MHz). | |
Arch specific Timing Measurement APIs.
Implements the necessary bits to support timing measurement using architecture specific timing measurement mechanism.
timing_t arch_timing_counter_get | ( | void | ) |
#include <include/zephyr/arch/arch_interface.h>
Return timing counter.
#include <include/zephyr/arch/arch_interface.h>
Get number of cycles between start
and end
.
start | Pointer to counter at start of a measured execution. |
end | Pointer to counter at stop of a measured execution. |
#include <include/zephyr/arch/arch_interface.h>
Convert number of cycles
into nanoseconds.
cycles | Number of cycles |
#include <include/zephyr/arch/arch_interface.h>
Convert number of cycles
into nanoseconds with averaging.
cycles | Number of cycles |
count | Times of accumulated cycles to average over |
uint64_t arch_timing_freq_get | ( | void | ) |
#include <include/zephyr/arch/arch_interface.h>
Get frequency of counter used (in Hz).
uint32_t arch_timing_freq_get_mhz | ( | void | ) |
#include <include/zephyr/arch/arch_interface.h>
Get frequency of counter used (in MHz).
void arch_timing_init | ( | void | ) |
#include <include/zephyr/arch/arch_interface.h>
Initialize the timing subsystem.
Perform the necessary steps to initialize the timing subsystem.
void arch_timing_start | ( | void | ) |
#include <include/zephyr/arch/arch_interface.h>
Signal the start of the timing information gathering.
Signal to the timing subsystem that timing information will be gathered from this point forward.
void arch_timing_stop | ( | void | ) |
#include <include/zephyr/arch/arch_interface.h>
Signal the end of the timing information gathering.
Signal to the timing subsystem that timing information is no longer being gathered from this point forward.