Use this page to configure the selected launch configuration for simulator and hardware profiling.
The following table describes the various Trace and Profile options for HCS08.
| Group | Options | Descriptions |
|---|---|---|
| User Options | Enable Logging | When checked, creates a log file that keeps details of the actions that took place in the application. For example, when the debug session terminated, when the target execution resumed or stopped. |
| Configuration Set in User Code | When checked, lets you configure trace registers from the application without using the Trace and Profile page. In this scenario, you can write the appropriate registers in the source code to configure the trace mode and triggers. | |
| Trace Mode Options | Collect Program Trace | Consists of these options:
|
| Collect Data Trace | Collects the trace data of the values of a variable, which is located at the address where trigger B is set, for all the accesses (Read/Write/Both). | |
| Profile-Only | When selected, collects trace by sampling the program counter (PC) from time to time. | |
| Configure Expert Settings | When selected, enables the Configure Expert Settings button and gives you access to most of the on-chip DBG module registers. To configure expert settings, download the processor specific manual from the site: http://www.freescale.com/ | |
| Trace Start/Stop Conditions | No Trigger | Specifies that no triggers are set for collecting trace. When no triggers are set and trace is collected, the trace data starts collecting from the beginning of the application. |
| Collect Trace From Trigger | Starts collecting trace when the triggers generate, that is when the condition for A and B is met. | |
| Break on FIFO Full | While debugging, suspends the application automatically when buffer gets full. The checkbox gets enabled in the Automatically mode when the Collect Trace From Trigger option is selected. | |
| Collect Trace Until Trigger | Starts collecting trace and stops when the condition for triggers, A and B is met. This option is not enabled in the Continuously mode. | |
| Break on Trigger Hit | While debugging, suspends the application automatically when the trigger is hit, that is when the trigger condition is met. The checkbox gets enabled when the Collect Trace Until Trigger option is selected. | |
| Trigger Type | Contains various conditions of triggers, A and B for starting/stopping trace collection. | |
| Instruction at Address A is Executed | Starts trace from the address or source line corresponding to trigger A. | |
| Instruction at Address A or Address B is Executed | Starts trace from the address or source line corresponding to trigger A or trigger B whichever occurs first. | |
| Instruction Inside Range from Address A to Address B is Executed | Starts trace when any instruction in the range between trigger address A and trigger address B is executed. That is, when [address at trigger A] <= [current address] <= [address at trigger B]. | |
| Instruction Outside Range from Address A to Address B is Executed | Starts trace when any instruction outside the range between trigger address A and trigger address B is executed. That is, when [current address] < [address at trigger A or address at trigger B] < [current address]. | |
| Instruction at Address A, Then Instruction at Address B are Executed | Starts trace from trigger B only if trigger A occurred before. | |
| Instruction at Address A is Executed and Value on Data Bus Match | Collects the trace data from the instruction where trigger A is set when the value specified in the Value to Compare on Data Bus text box matches with the opcode read from trigger A address, that is the value in memory at trigger A address. Note: Because the hardware has a small delay in enabling the triggers, trace won't be collected as expected if data match is done for the instruction immediately following the line where trigger is set. | |
| Instruction at Address A is Executed and Value on Data Bus Mismatch | Collects the trace data from the instruction, where trigger A is set, on data mismatch. That is, trace is triggered at address A when the value specified in the Value to Compare on Data Bus text box does not match with the opcode read from trigger A address. | |
| Value to Compare on Data Bus | Contains the value that you specify to be matched or not matched with the opcode read from trigger A address. | |
| Capture Read/Write Values at Address B | Captures accesses to the variable address, where trigger B is set, after you press resume. Appears only when the Collect Data Trace mode is selected. | |
| Capture Read/Write Values at Address B, After Access at Address A | Waits for the program to execute the instruction at the address where trigger A is set, monitors the variable address where trigger B is set, and collects trace from there. Appears only when the Collect Data Trace mode is selected. | |
| Trigger Selection | Instruction Execute | This option is related to how the hardware executes triggering. An address is triggered only when the opcode is actually executed, but this circuitry has a delay which sometimes makes the very next instruction in memory not caught in the trace when you press resume. In this mode, the output of the comparator must propagate through an opcode tracking circuit before triggering FIFO actions. |
| Memory Access | When selected, allows memory access to both variables and instructions. Refer to the Memory Triggers topic in the Profiling and Analysis User Guide. |
The following table describes the various Trace and Profile options for ColdFire V1.
| Group | Options | Descriptions |
|---|---|---|
| User Options | Enable Logging | Creates a log file that keeps details of the actions that took place in the application. For example, when the debug session terminated, when the target execution resumed or stopped. |
| Configuration Set in User Code | When checked, lets you configure trace registers from the application without using the Trace and Profile page. In this scenario, you can write the appropriate registers in the source code to configure the trace mode and triggers. | |
| Select Trace Mode | Continuous | When selected, collects the trace data continuously. It produces best possible trace and profile results because it captures all executed instructions. However, it is slow and intrusive as it stops the target in the background every about 500 cycles. |
| Automatic (One-buffer) | When selected, captures only the last instructions executed before the target gets suspended. It is totally unintrusive. | |
| Halt the Target when Trace Buffer Gets Full | Appears only when the Automatic (One-Buffer) option is selected. It acts as a breakpoint for stopping the application. If selected, stops the application automatically when trace buffer gets full. | |
| Profile-Only. Sample PC every cycles | When selected, captures the PC address every N cycles, where N is 128/256/512.......16384. Trace is mostly irrelevant in this mode, but Profile Statistics will be fairly accurate for a long cyclic run. This method is a bit intrusive because it stops the target in the background every about 8*N cycles. | |
| Expert | When selected, enables the Configure Expert Settings button and lets you configure the ColdFire V1 trace and debug registers directly. | |
| Trace Start/Stop Conditions | Includes various conditions of triggers, A, B, and C, for starting and stopping trace. | |
| Target PC Address | 2 Bytes | Select this option to save 5-30% trace-buffer space if your PC addresses never exceed 16-bits (64K). This results in less intrusiveness, or more instructions traced, depending on the trace mode you use. This feature is not supported for the Expert trace mode. |
| 3 Bytes | Select this default and recommended option if the PC address length in your program exceeds 16-bits (64K). This feature is not supported for the Expert trace mode. | |
| Trace data values | Read Data | Traces the values of data operands being read from the memory. This feature is not supported for the Profile-Only and Expert trace modes. |
| Write Data | Traces the values of data operands being written to the memory. This feature is not supported for the Profile-Only and Expert trace modes. |
The following table describes the various Trace and Profile options.
| Group | Option | Description |
|---|---|---|
| ETB | Embedded Trace Buffer where collected trace data is stored. | |
| JTrace | Enables trace collection by using the Segger/J-Trace probe. | |
| TPIU | Trace Port Interface Unit - Collects ETM and ITM trace into the internal probe buffer of size 4MB. TPIU is a block on the processor that manages the output of trace. | |
| SWO | Serial Wire Output - Single pin serial output that collects only ITM trace into the buffer of size 4MB. SWO uses the Serial Wire Debug ( SWD) debug connection. If selected, the Debug Port Interface should be set as SWD. | |
| Core clock | ARM core clock in Mhz needed for the serial connection setup. The core clock can change due to multiple settings. For example, when started, a K60 processor rated at 100Mh works at 25Mhz, which is the default value. You can change the core clock value according to the requirements. | |
| Low Power Profiling | Allows monitoring of low power Wait states. This state lets peripherals to function, while allowing CPU to go to sleep reducing power. | |
| Continuous Trace Collection | Allows you to collect continuous trace data when checked. That is, it stops the target in the background to read the trace every time the FIFO is almost full. | |
| ETM | Enables/disables trace output from the Embedded Trace Macrocell (ETM) block. It controls the ETM port selection bit from ETM's control register. | |
| ITM | Enables/disables trace output from the Instrumentation Trace Macrocell (ITM) block. | |
| Collect Instrumentation trace | Collects instrumentation trace. | |
| Collect Profiling Counters | Enables/disables the following profiling counters at once:
|