[][src]Module cc2650::cpu_dwt

Cortex-M's Data watchpoint and Trace (DWT)

Modules

comp0

Comparator 0 This register is used to write the reference value for comparator 0.

comp1

Comparator 1 This register is used to write the reference value for comparator 1.

comp2

Comparator 2 This register is used to write the reference value for comparator 2.

comp3

Comparator 3 This register is used to write the reference value for comparator 3.

cpicnt

CPI Count This register is used to count the total number of instruction cycles beyond the first cycle.

ctrl

Control Use the DWT Control Register to enable the DWT unit.

cyccnt

Current PC Sampler Cycle Count This register is used to count the number of core cycles. This counter can measure elapsed execution time. This is a free-running counter (this counter will not advance in power modes where free-running clock to CPU stops). The counter has three functions: 1: When CTRL.PCSAMPLEENA = 1, the PC is sampled and emitted when the selected tapped bit changes value (0 to 1 or 1 to 0) and any post-scalar value counts to 0. 2: When CTRL.CYCEVTENA = 1 , (and CTRL.PCSAMPLEENA = 0), an event is emitted when the selected tapped bit changes value (0 to 1 or 1 to 0) and any post-scalar value counts to 0. 3: Applications and debuggers can use the counter to measure elapsed execution time. By subtracting a start and an end time, an application can measure time between in-core clocks (other than when Halted in debug). This is valid to 2^32 core clock cycles (for example, almost 89.5 seconds at 48MHz).

exccnt

Exception Overhead Count This register is used to count the total cycles spent in interrupt processing.

foldcnt

Fold Count This register is used to count the total number of folded instructions. The counter increments on each instruction which takes 0 cycles.

function0

Function 0 Use the DWT Function Registers 0 to control the operation of the comparator 0. This comparator can: 1. Match against either the PC or the data address. This is controlled by CYCMATCH. This function is only available for comparator 0 (COMP0). 2. Emit data or PC couples, trigger the ETM, or generate a watchpoint depending on the operation defined by FUNCTION.

function1

Function 1 Use the DWT Function Registers 1 to control the operation of the comparator 1. This comparator can: 1. Perform data value comparisons if associated address comparators have performed an address match. This function is only available for comparator 1 (COMP1). 2. Emit data or PC couples, trigger the ETM, or generate a watchpoint depending on the operation defined by FUNCTION.

function2

Function 2 Use the DWT Function Registers 2 to control the operation of the comparator 2. This comparator can emit data or PC couples, trigger the ETM, or generate a watchpoint depending on the operation defined by FUNCTION.

function3

Function 3 Use the DWT Function Registers 3 to control the operation of the comparator 3. This comparator can emit data or PC couples, trigger the ETM, or generate a watchpoint depending on the operation defined by FUNCTION.

lsucnt

LSU Count This register is used to count the total number of cycles during which the processor is processing an LSU operation beyond the first cycle.

mask0

Mask 0 Use the DWT Mask Registers 0 to apply a mask to data addresses when matching against COMP0.

mask1

Mask 1 Use the DWT Mask Registers 1 to apply a mask to data addresses when matching against COMP1.

mask2

Mask 2 Use the DWT Mask Registers 2 to apply a mask to data addresses when matching against COMP2.

mask3

Mask 3 Use the DWT Mask Registers 3 to apply a mask to data addresses when matching against COMP3.

pcsr

Program Counter Sample This register is used to enable coarse-grained software profiling using a debug agent, without changing the currently executing code. If the core is not in debug state, the value returned is the instruction address of a recently executed instruction. If the core is in debug state, the value returned is 0xFFFFFFFF.

sleepcnt

Sleep Count This register is used to count the total number of cycles during which the processor is sleeping.

Structs

COMP0

Comparator 0 This register is used to write the reference value for comparator 0.

COMP1

Comparator 1 This register is used to write the reference value for comparator 1.

COMP2

Comparator 2 This register is used to write the reference value for comparator 2.

COMP3

Comparator 3 This register is used to write the reference value for comparator 3.

CPICNT

CPI Count This register is used to count the total number of instruction cycles beyond the first cycle.

CTRL

Control Use the DWT Control Register to enable the DWT unit.

CYCCNT

Current PC Sampler Cycle Count This register is used to count the number of core cycles. This counter can measure elapsed execution time. This is a free-running counter (this counter will not advance in power modes where free-running clock to CPU stops). The counter has three functions: 1: When CTRL.PCSAMPLEENA = 1, the PC is sampled and emitted when the selected tapped bit changes value (0 to 1 or 1 to 0) and any post-scalar value counts to 0. 2: When CTRL.CYCEVTENA = 1 , (and CTRL.PCSAMPLEENA = 0), an event is emitted when the selected tapped bit changes value (0 to 1 or 1 to 0) and any post-scalar value counts to 0. 3: Applications and debuggers can use the counter to measure elapsed execution time. By subtracting a start and an end time, an application can measure time between in-core clocks (other than when Halted in debug). This is valid to 2^32 core clock cycles (for example, almost 89.5 seconds at 48MHz).

EXCCNT

Exception Overhead Count This register is used to count the total cycles spent in interrupt processing.

FOLDCNT

Fold Count This register is used to count the total number of folded instructions. The counter increments on each instruction which takes 0 cycles.

FUNCTION0

Function 0 Use the DWT Function Registers 0 to control the operation of the comparator 0. This comparator can: 1. Match against either the PC or the data address. This is controlled by CYCMATCH. This function is only available for comparator 0 (COMP0). 2. Emit data or PC couples, trigger the ETM, or generate a watchpoint depending on the operation defined by FUNCTION.

FUNCTION1

Function 1 Use the DWT Function Registers 1 to control the operation of the comparator 1. This comparator can: 1. Perform data value comparisons if associated address comparators have performed an address match. This function is only available for comparator 1 (COMP1). 2. Emit data or PC couples, trigger the ETM, or generate a watchpoint depending on the operation defined by FUNCTION.

FUNCTION2

Function 2 Use the DWT Function Registers 2 to control the operation of the comparator 2. This comparator can emit data or PC couples, trigger the ETM, or generate a watchpoint depending on the operation defined by FUNCTION.

FUNCTION3

Function 3 Use the DWT Function Registers 3 to control the operation of the comparator 3. This comparator can emit data or PC couples, trigger the ETM, or generate a watchpoint depending on the operation defined by FUNCTION.

LSUCNT

LSU Count This register is used to count the total number of cycles during which the processor is processing an LSU operation beyond the first cycle.

MASK0

Mask 0 Use the DWT Mask Registers 0 to apply a mask to data addresses when matching against COMP0.

MASK1

Mask 1 Use the DWT Mask Registers 1 to apply a mask to data addresses when matching against COMP1.

MASK2

Mask 2 Use the DWT Mask Registers 2 to apply a mask to data addresses when matching against COMP2.

MASK3

Mask 3 Use the DWT Mask Registers 3 to apply a mask to data addresses when matching against COMP3.

PCSR

Program Counter Sample This register is used to enable coarse-grained software profiling using a debug agent, without changing the currently executing code. If the core is not in debug state, the value returned is the instruction address of a recently executed instruction. If the core is in debug state, the value returned is 0xFFFFFFFF.

RegisterBlock

Register block

SLEEPCNT

Sleep Count This register is used to count the total number of cycles during which the processor is sleeping.