Tracing
This GOAL core module provides macros for tracing data via a configurable interface. Helpful for getting additional information about the system on debugging or setting reference pins for e.g. timing analysis. Tracing data is disabled by default.
Table: GOAL_TGT_TRACE8
Macro | GOAL_TGT_TRACE8(_chan, _data) | |
Description | tracing an 8-bit value | |
Parameters | _chan | output channel |
_data | data value | |
Category | Optional | |
Condition | Compiler-define GOAL_CONFIG_TGT_TRACE must be set to 1 and a tracing interface has to be enabled. |
Table: GOAL_TGT_TRACE16
Macro | GOAL_TGT_TRACE16 (_chan, _data) | |
Description | tracing a 16-bit value | |
Parameters | _chan | output channel |
_data | data value | |
Category | Optional | |
Condition | Compiler-define GOAL_CONFIG_TGT_TRACE must be set to 1 and a tracing interface has to be enabled. |
Table: GOAL_TGT_TRACE
Macro | GOAL_TGT_TRACE32(_chan, _data) | |
Description | tracing a 32-bit value | |
Parameters | _chan | output channel |
_data | data value | |
Category | Optional | |
Condition | Compiler-define GOAL_CONFIG_TGT_TRACE must be set to 1 and a tracing interface has to be enabled. |
Table: GOAL_TGT_TRACE_BIT_SET
Macro | GOAL_TGT_TRACE_BIT_SET(_chan, _bit) | |
Description | Setting a single bit on the tracing data. Keeping the other bits unchanged. This feature is available for tracing via pin only. | |
Parameters | _chan | output channel |
_bit | bit position | |
Category | Optional | |
Condition | Compiler-define GOAL_CONFIG_TGT_TRACE and GOAL_CONFIG_TGT_TRACE_PIN must be set to 1. |
Table: GOAL_TGT_TRACE_BIT_CLR
Macro | GOAL_TGT_TRACE_BIT_CLR(_chan, _bit) | |
Description | Clearing a single bit on the tracing data. Keeping the other bits unchanged. This feature is available for tracing via pin only. | |
Parameters | _chan | output channel |
_bit | bit position | |
Category | Optional | |
Condition | Compiler-define GOAL_CONFIG_TGT_TRACE and GOAL_CONFIG_TGT_TRACE_PIN must be set to 1. |
Â
Tracing via ITM
The Instrumentation Trace Macrocell (ITM) is a special ARM feature providing a tracing interface for output data via debugger.
Handling single data bits by GOAL_TGT_TRACE_BIT_SET
or GOAL_TGT_TRACE_BIT_CLR
is not implemented at this version.
Tracing via pin
Outputs the data on pins. The number and choice of pins is board specific and may not be available on all systems.
Please verify, that the configured tracing pins are free to use before enabling this GOAL feature.
There are no different output channels, so the _chan argument at the macros will not be considered.
Configuration
The following defines enable the tracing module and its interface.
GOAL_CONFIG_TGT_TRACE
0: tracing is switched off for the complete GOAL system (default)
1: tracing is switched on for the complete GOAL system
GOAL_CONFIG_TGT_TRACE_PIN
0: tracing the data via board specific pins is switched off (default)
1: tracing the data via board specific pins is switched on. The number and choice of pins is configured the board.
Please read section 5.14.2 Tracing via pin before enabling this feature.
GOAL_CONFIG_TGT_TRACE_ITM:
0: tracing the data via ITM is switched off (default)
1: tracing the data via ITM is switched on.
GOAL_CONFIG_TGT_TRACE_ITM_WITHOUT_PC:
0: tracing the data via ITM with no additional information about the program counter (default)
1: tracing the data via ITM next to the program counter when tracing