This chapter describes how to profile data via the Analyzer.
Data trace can not be compressed well and therefore uses a lot of trace bandwidth. Due to this limitation only the specified data areas will be recorded.
Make sure that Profiler is checked in Analyzer Configuration / Recorder page.
1. Select View menu / Analyzer / Analyzer Configuration button.
2. Navigate to the App/MCU / Profiler page.
3. Enable Data.
Edit - Select a Profiler Data Area and click to edit it.
Description - Specify a meaningful name for the data area. Can be left empty and the Analyzer will automatically generate a name based on the data type.
Location - Specify the name of the variable or an address you wish to monitor.
Access Type - Specify access type you want to view in the Profiler Timeline:
Observed core - Filters out events that come from core that are different than the observed core. Drop-down shows all cores in current SMP configuration. If this option is left empty or option All cores is selected, then all cores are observed. You can also write core index in here or select the desired core name from the drop-down.
Example: Core 0 and Core 1 both write in variable MyVar. Profiler Data Area can be set to show activity only from one core instead of all.
All cores - By default only access from this core will be recorded (determined by winIDEA instance in which you start the analyzer). Enable this option to automatically configure the trace logic to record accesses from all cores.
Sampling interval (Data Sampling dialog) - Adjust the speed of Data Sampling:
Size - Auto size will select the appropriate size based on the data type you are recording. If the detected size is not correct or you wish to record a specific memory location, you can select the data size manually as well.
This is a sub-field in a variable, written in a single access - If you are only interested only in a part of a data area, you can use this option to specify the sub-field offset and size. Please pay attention to the endianness when specifying the sub-field.
This variable is written in multiple accesses - if the variable is too big to be written in one access, you can enable this option and the analyzer will wait until the last part of the variable has been written to, before it evaluates the value. Set the Access completes when setting based on the order in which the variable parts are being written to the memory.
Value display - Select the way the value will be displayed in the profiler results.
Value alias definition - Values written to the variable can have a symbolic equivalent. iSYSTEM Analyzer can map the literal values to the symbolic names found in an enum type or an include file containing #define statements.
Sample Pool (Data Sampling analysis) - Amount of samples used by Sampling analysis. If left blank (default) 1000 will be used.
Display options - Opens dialog Area display to display data various ways (by type, range, name the units etc). Refer to the image below.
Ignore writes of the same value - If the same state is entered multiple times in a row, only count it once.
In dialog you can configure how to display data and profiler area. To display the changes you have re-analyze last session.
Display data - As Hexadecimal, Binary or Decimal.
Type - Choose a type for the regular variable you are profiling (Unsigned, Signed, Float). This will overwrite the type detected in the debug information.
Range - Minimum and maximum range for regular variables can be specified here. The timeline view will scale the recorded values within this range. If no values are given, the result is scaled to minimum and maximum values detected in the current session.
Units - Specify units.
Fill space - Fill space or Regular variables.