Code profiling in embedded ULE applications
First Claim
1. A computer-implemented method to perform code profiling for processing ultra-low energy (ULE) devices having a low duty cycle comprising the steps of(1) providing an ULE processing device, having one or more functions with a low duty cycle, comprising a timer, wherein an external memory is connected to the device, and wherein for each function one or more global variables are assigned;
- (2) starting code profiling including initialization and start of timer, wherein initialization and start of timer is performed in the ULE device only;
(3) calling functions of the ULE device by a main function of the ULE device, determine the duration each function was active and put the duration results into a first of the one or more related global variables, wherein the one or more global variables are declared in a profiling code itself, and, in case a function was called multiple times, the durations of each call are incremented in its global variable;
(4) writing by the ULE device at the end of the code profiling only, after all function calls are done, the values of the one or more global variables to the memory just before the ULE device is going to sleep mode; and
(5) reading out the values from the memory.
1 Assignment
0 Petitions
Accused Products
Abstract
Mobile electronic devices and related methods to achieve an enhanced security level are disclosed. A security module is deeply embedded in a non-open companion chip of the mobile device, wherein the companion chip controls vital functions of the mobile device. Any security technology can be provided by the security module. The security module can, in case of a security violation, disable all vital functions of the companion chip without requiring communicating to other components of the mobile device. The vital functions deployed in the companion chip comprise e.g. system power management or audio functions.
40 Citations
34 Claims
-
1. A computer-implemented method to perform code profiling for processing ultra-low energy (ULE) devices having a low duty cycle comprising the steps of
(1) providing an ULE processing device, having one or more functions with a low duty cycle, comprising a timer, wherein an external memory is connected to the device, and wherein for each function one or more global variables are assigned; -
(2) starting code profiling including initialization and start of timer, wherein initialization and start of timer is performed in the ULE device only; (3) calling functions of the ULE device by a main function of the ULE device, determine the duration each function was active and put the duration results into a first of the one or more related global variables, wherein the one or more global variables are declared in a profiling code itself, and, in case a function was called multiple times, the durations of each call are incremented in its global variable; (4) writing by the ULE device at the end of the code profiling only, after all function calls are done, the values of the one or more global variables to the memory just before the ULE device is going to sleep mode; and (5) reading out the values from the memory. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17)
-
-
18. An ultra-low energy (ULE) processing device to perform code profiling for functions having low duty cycle comprising:
-
a timer; an external memory connected to the processing device; and a micro-controller configured to at least perform initialization of the profiling, including initialization and start of the timer, wherein initialization and start of the timer is performed in the ULE processing device only, calling, as required, the functions having low duty cycle, determining duration between start and end of each function, storing, if applicable added-up, duration values to global variables assigned to each function, wherein the global variables are declared in a profiling code itself, stopping timer after all function calls are done, writing global variable values to the external memory only at the end of the code profiling, and going to sleep mode. - View Dependent Claims (19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34)
-
Specification