General Commands Reference Guide S TRACE32 Online Help TRACE32 Directory TRACE32 Index TRACE32 Documents ......................................................................................................................
General Commands ......................................................................................................................
General Commands Reference Guide S ..................................................................................
1
History ......................................................................................................................................
13
SELFTEST ................................................................................................................................
14
SELFTEST
Execute selftest operation
14
SETUP ......................................................................................................................................
14
SETUP
Setup commands (part 2 of 2)
14
SETUP.ALIST
Default analyzer display
15
SETUP.BREAKDEF
Default breakpoint types
15
SETUP.BreakTransfer
Breakpoint synchronization
16
SETUP.COLORCORE
Enable coloring for core-specific info in SMP systems
16
Disassembler configuration
17
Defaults for hex-dumps
18
Emulation softkeys configuration
19
SETUP.DIS SETUP.DUMP SETUP.EMUPATH SETUP.FLIST
Default flag list display
19
Mask interrupts during assembler step
20
SETUP.IMASKHLL
Mask interrupts during HLL step
20
SETUP.LISTCLICK
Double-click source line symbol to run this action
21
SETUP.IMASKASM
SETUP.PreFetch
Define prefetch
21
SETUP.REFERR
DRAM refresh monitoring
21
SETUP.StepAllCores
Force single stepping on all cores
22
SETUP.StepAutoAsm
HLL steps stops at assembler code
23
SETUP.StepBeforeGo
Single step before go
23
Single step to skip breakpoint
23
Single step HLL lines
24
Stepping HLL lines with disabled breakpoints
24
Show stepping trail in list window
25
Task selective stepping
25
Length of symbols
25
Define emulation monitor time-out
26
SETUP.StepBreak SETUP.StepByStep SETUP.StepNoBreak SETUP.StepTrace SETUP.StepWithinTask SETUP.sYmbol SETUP.TIMEOUT SETUP.Var SETUP.VarCall SETUP.VarPtr ©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
1
Defaults for the Var commands
27
Define call dummy routine
28
Limit pointer access
29
SETUP.VerifyBreakSet
Additional verification for software breakpoints
29
SHADOW ..................................................................................................................................
29
SHADOW
ICE-166 with a shadow memory 256K
30
Select the SHADOW area
30
Initialize the SHADOW RAM on every program start
30
Define a SHADOW area
30
SHADOW.Area SHADOW.AutoDelete SHADOW.Define SHADOW.Init
Initialize all SHADOW areas
32
Define the initialization value for the SHADOW areas
32
SHADOW.OFF
Switch SHADOW RAM off
32
SHADOW.ON
Switch SHADOW RAM on
32
Reset settings for the SHADOW RAM
33
Display SHADOW RAM settings
33
SIM ............................................................................................................................................
35
SHADOW.Mode
SHADOW.RESet SHADOW.state
SIM
TRACE32 instruction set simulators
35
Selects area for simulation output
35
SIM.AREA SIM.CACHE
Cache/MMU simulation and more
36
Define the cache allocation technique
36
Specify base address for tightly-coupled memory
37
Define memory coherency strategy
37
SIM.CACHE.Allocation SIM.CACHE.BaseAddress SIM.CACHE.Mode
Specify MPU regions
38
SIM.CACHE.OFF
SIM.CACHE.MPURegions
Disable cache and MMU simulation
38
SIM.CACHE.ON
Enable cache and MMU simulation
38
Define the replacement strategy
39
SIM.CACHE.Replacement SIM.CACHE.SETS
Define the number of cache/TLB sets
40
SIM.CACHE.SIZE
Specify size of tightly-coupled memory
40
SIM.CACHE.state
Display cache and MMU settings
41
SIM.CACHE.Tags
Define address mode for cache lines
42
SIM.CACHE.TRACE SIM.CACHE.View
Select simulator trace method
43
Analysis of memory accesses for cache simulation
43
Analysis of TLB accesses for MMU simulation
44
Define number of cache ways
44
SIM.CACHE.ViewTLB SIM.CACHE.WAYS SIM.CACHE.Width
Define width of cache line
45
SIM.command
Issue command to simulation model
46
SIM.INTerrupt
Trigger interrupt
46
List loaded simulator models
47
SIM.List SIM.LOAD
Load simulator module
47
SIM.RESet
Reset instruction set simulator
47
Unload simulator module
48
SNOOPer ..................................................................................................................................
49
SIM.UNLOAD
Function
49
SNOOPer Trace Commands ................................................................................................... SNOOPer.Arm
Arm the trace ©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
2
51 51
SNOOPer.AutoArm
Arm automatically
SNOOPer.AutoInit SNOOPer.BookMark SNOOPer.Chart SNOOPer.Chart.DistriB SNOOPer.Chart.Func SNOOPer.Chart.GROUP SNOOPer.Chart.Line SNOOPer.Chart.sYmbol SNOOPer.Chart.TASK
51
Automatic initialization
51
Set a bookmark in trace listing
51
Display trace contents graphically
51
Distribution display
51
Function activity chart
52
Group activity chart
52
Graphical HLL lines analysis
52
Symbol analysis
52
Task activity chart
52
SNOOPer.Chart.TASKFunc
Task related function run-time analysis (legacy)
52
SNOOPer.Chart.TASKSRV
Service routine run-time analysis
52
SNOOPer.Chart.TASKState
Task state analysis
53
SNOOPer.Chart.VarState SNOOPer.ComPare SNOOPer.DISable SNOOPer.DRAW SNOOPer.EXPORT
Variable activity chart
53
Compare trace contents
53
Disable the trace
53
Visualization of trace data
53
Export trace data for processing in other applications
53
SNOOPer.FILE
Load a file into the file trace buffer
53
SNOOPer.Find
Find specified entry in trace
53
SNOOPer.FindAll
Find all specified entries in trace
54
SNOOPer.FindChange
Search for changes in trace flow
54
Display input level
54
Move cursor to specified trace record
54
Initialize trace
54
SNOOPer.Get SNOOPer.GOTO SNOOPer.Init SNOOPer.List
List trace contents
54
SNOOPer.LOAD
Load trace file for off-line processing
54
SNOOPer.Mode
Set the trace operation mode
54
Switch off
55
SNOOPer.OFF SNOOPer.PROfileChart
Profile charts
55
SNOOPer.PROfileChart.DIStance
Time interval for a single event
55
SNOOPer.PROfileChart.DURation
Time between two events
55
Group profile chart
55
SNOOPer.PROfileChart.GROUP SNOOPer.PROfileChart.Rate SNOOPer.PROfileSTATistic
Event frequency
55
Statistical analysis in a table versus time
55
Protocol analysis
56
Graphic display for user-defined protocol
56
SNOOPer.PROTOcol SNOOPer.PROTOcol.Chart SNOOPer.PROTOcol.Draw
Graphic display for user-defined protocol
56
SNOOPer.PROTOcol.EXPORT
Export trace buffer for user-defined protocol
56
SNOOPer.PROTOcol.Find
Find in trace buffer for user-defined protocol
56
SNOOPer.PROTOcol.List
Display trace buffer for user-defined protocol
56
SNOOPer.PROTOcol.STATistic
Display statistics for user-defined protocol
56
Select sampling rate
57
SNOOPer.Rate ©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
3
SNOOPer.REF
Set reference point
57
SNOOPer.RESet
Reset command
57
SNOOPer.SAVE
Save trace for postprocessing in TRACE32
57
Define addresses for monitoring
57
Automatic restart of trace recording
57
SNOOPer.SELect SNOOPer.SelfArm SNOOPer.SIZE
Define buffer size
57
Restart trace capturing once
57
Display trace configuration window
58
Statistic analysis
58
Time interval for a single event
58
Distribution analysis
58
Time between two events
58
Nesting function runtime analysis
58
SNOOPer.SnapShot SNOOPer.state SNOOPer.STATistic SNOOPer.STATistic.DIStance SNOOPer.STATistic.DistriB SNOOPer.STATistic.DURation SNOOPer.STATistic.Func SNOOPer.STATistic.GROUP
Group run-time analysis
58
Ignore false records in statistic
59
Define statistics interrupt processing
59
HLL-Line analysis
59
SNOOPer.STATistic.LINKage
Per caller statistic of function
59
SNOOPer.STATistic.Measure
Analyze the performance of a single signal
59
SNOOPer.STATistic.PreFetch
Prefetch detection
59
Specify sorting criterion for statistic commands
59
SNOOPer.STATistic.Ignore SNOOPer.STATistic.InterruptIsFunction SNOOPer.STATistic.Line
SNOOPer.STATistic.Sort SNOOPer.STATistic.sYmbol
Flat run-time analysis
60
Task activity statistic
60
SNOOPer.STATistic.TASKFunc
Task specific function run-time analysis
60
SNOOPer.STATistic.TASKKernel
Task analysis with kernel markers (flat)
60
SNOOPer.STATistic.TASKSRV
Analysis of time in OS service routines
60
SNOOPer.STATistic.TASKState
Performance analysis
60
Tree display of task specific functions
60
Tree display of nesting function run-time analysis
61
SNOOPer.STATistic.TASK
SNOOPer.STATistic.TASKTREE SNOOPer.STATistic.TREE
Use records
61
SNOOPer.TDelay
SNOOPer.STATistic.Use
Trigger delay
61
SNOOPer.Timing
Waveform of trace buffer
61
Define trigger destination (SNOOPer)
61
SNOOPer.TOut SNOOPer.TRACK
Set tracking record
61
SNOOPer.TValue
Define data value for trigger
61
Display single record
61
tbd.
62
SPE ...........................................................................................................................................
63
SNOOPer.View SNOOPer.ZERO
SPE
Signal Processing eXtension (SPE)
63
SPE.Init
Initialize SPE registers
63
SPE.Set
Modify SPE registers
63
Display SPE register window
64
SPot ..........................................................................................................................................
65
SPE.view
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
4
Function
65
Operation Modes (TRACE32-ICE)
65
Performance
65
SPot.Analyzer
Analyzer spot points
66
SPot.Data
Write/read accesses
66
SPot.OFF
Switch off
66
SPot.ON
Switch on
67
Program spot points
67
Reset command
67
SPot.Program SPot.RESet SPot.state
State display
68
SPot.Test
Set spot point
69
SSE ...........................................................................................................................................
70
SSE
SSE registers (Streaming SIMD Extension)
70
Initialize SSE registers
70
SSE.OFF
Inhibit SSE accesses by the debugger
70
SSE.ON
Permit SSE accesses by the debugger
71
SSE.Set
Modify SSE registers
71
SSE.view
Display SSE registers
71
Step ...........................................................................................................................................
72
SSE.Init
Step
Steps through the program
72
Step.Asm
Assembler single-stepping
72
Step.Back
Step back
72
Step back till expression changes
73
Step.BackChange Step.BackOver
Step back
73
Step.BackTill
Step back till expression true
74
Step.Change
Step till expression changes
74
Single cycle
75
Step.CycleReq Step.CycleWait Step.Diverge Step.Hll Step.Mix Step.Over
Single cycle
75
Step till next unreached line
76
HLL single-stepping
78
Mixed single-stepping
78
Step over call
79
Single-stepping
79
Step till expression true
80
STOre ........................................................................................................................................
81
Step.single Step.Till
STOre
Create script for TRACE32 settings
81
sYmbol .....................................................................................................................................
84
sYmbol
Debug symbols
PRACTICE Functions
84 85
sYmbol.AddInfo sYmbol.AddInfo.Address
Provide additional symbolic information
87
Add symbol information to fixed address
89
Delete information
90
sYmbol.AddInfo.Delete ©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
5
sYmbol.AddInfo.LINK
Define information for “sYmbol.AddInfo” commands
91
sYmbol.AddInfo.List sYmbol.AddInfo.LOADASAP2 sYmbol.AddInfo.Member
List additional information
92
Load scaling information from ASAP2 file
92
Add information to member of struct
93
Remove all additional information
95
sYmbol.AddInfo.RESet sYmbol.AddInfo.Type
Add information for a data type
96
sYmbol.AddInfo.Var
Add information for a variable
97
sYmbol.AutoLOAD
Automated loading of symbols
98
Update autoloader table
99
sYmbol.AutoLOAD.CHECK sYmbol.AutoLOAD.CHECKCoMmanD
Configure dynamic autoloader
99
Configure automatic DLL file loader
100
sYmbol.AutoLOAD.CHECKEPOC
Configure dynamic autoloader for Symbian
100
sYmbol.AutoLOAD.CHECKLINUX
Configure autoloader for Linux debugging
101
sYmbol.AutoLOAD.CHECKUEFI
Configure autoloader for UEFI debugging
101
Remove symbol information
102
Configure symbol autoloader
103
Create entry for autoloader table
103
sYmbol.AutoLOAD.CHECKDLL
sYmbol.AutoLOAD.CLEAR sYmbol.AutoLOAD.config sYmbol.AutoLOAD.Create sYmbol.AutoLOAD.List sYmbol.AutoLOAD.LOADEPOC
List autoloader table
104
Definition for static autoloader for Symbian
105
Reset autoloader
106
Mark symbol information manually as loaded
106
sYmbol.AutoLOAD.RESet sYmbol.AutoLOAD.SET sYmbol.AutoLOAD.TOUCH
Initiate automatic loading by command
107
Browse symbols
108
sYmbol.Browse.Class
Browse classes
108
sYmbol.Browse.Enum
Browse enumeration types
108
sYmbol.Browse.Function
Browse functions
109
sYmbol.Browse.Module
Browse modules
110
sYmbol.Browse.SFunction
Browse functions
111
sYmbol.Browse.SModule
Browse modules
112
sYmbol.Browse
sYmbol.Browse.SOURCE sYmbol.Browse.Struct
Browse source
113
Browse containers for different variable types
113
Browse symbols
114
Browse HLL types
115
sYmbol.Browse.sYmbol sYmbol.Browse.Type sYmbol.Browse.Var sYmbol.CASE sYmbol.CHECK sYmbol.Class sYmbol.CLEANUP
Browse variables
116
Set symbol search mode
117
Check database
117
View class hierarchy
118
Remove redundant symbol information
119
Make ambiguous symbols unique
119
Enable color coding
119
sYmbol.ColorDef
Specify color display for keywords
120
sYmbol.CREATE
Create and modify user-defined symbols
121
Finish symbol creation
121
sYmbol.CLEANUP.DOUBLES sYmbol.ColorCode
sYmbol.CREATE.Done ©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
6
sYmbol.CREATE.Function sYmbol.CREATE.Label
Create user-defined function
121
Create user-defined symbol
122
sYmbol.CREATE.MACRO
Create user-defined macro
122
sYmbol.CREATE.Module
Create user-defined module
123
Erase all user-defined symbols
123
sYmbol.CREATE.RESet sYmbol.CREATE.Var sYmbol.CUTLINE sYmbol.Delete sYmbol.DEMangle sYmbol.ForEach sYmbol.INFO
Create user-defined variable
124
Limit size of text blocks
124
Delete symbols of one program
125
C++ demangler
125
Symbol wildcard command
125
Display detailed information about debug symbol
127
Select language
130
Display list of all symbols
131
sYmbol.LANGUAGE sYmbol.List sYmbol.List.ATTRibute
Display memory attributes
131
sYmbol.List.BUILTIN
List built-in data types
131
sYmbol.List.ColorDef
List the keyword color definitions
132
sYmbol.List.Function
Display functions
133
sYmbol.List.IMPORT
List imported symbols
133
sYmbol.List.LINE
Display source lines
134
sYmbol.List.Local
Display local symbols
135
List all C macros
135
sYmbol.List.MACRO sYmbol.List.MAP
Display memory load map
136
sYmbol.List.Module
Display modules
136
sYmbol.List.Program
Display programs
137
sYmbol.List.SECtion
Display physical sections
137
sYmbol.List.SOURCE
Display source file names
138
Display virtual stack
140
sYmbol.List.Static
Display static symbols
140
sYmbol.List.TREE
Display symbols in tree form
141
sYmbol.List.STACK
sYmbol.List.Type
Display data types
141
Load assembler source file
142
sYmbol.LSTLOAD.GHILLS
Load GHILLS assembler source file
142
sYmbol.LSTLOAD.HPASM
Load HP assembler source file
142
sYmbol.LSTLOAD
sYmbol.LSTLOAD.IAR sYmbol.LSTLOAD.INT68K
Load IAR assembler source file
144
Load Intermetrics assembler source file
145
Load INTEL assembler source file
145
Load Keil assembler source file
146
Load MICROWARE assembler source file
146
Load MICROTEC assembler source file
146
Load OAK assembler source file
147
Fine-tune the nested function run-time analysis
148
sYmbol.LSTLOAD.INTEL sYmbol.LSTLOAD.KEIL sYmbol.LSTLOAD.MicroWare sYmbol.LSTLOAD.MRI68K sYmbol.LSTLOAD.OAK sYmbol.MARKER sYmbol.MARKER.Create
Create marker for nesting function run-time analysis
149
sYmbol.MARKER.Delete
Delete a marker
153
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
7
sYmbol.MARKER.List sYmbol.MARKER.RESet
Displays the marker list
154
Erase all markers
154
sYmbol.MATCH
Symbol search mode
155
sYmbol.MEMory
Display memory usage
155
Modify symbols
156
sYmbol.Modify sYmbol.Modify.Access
Modify access of symbols
156
Modify address of symbols
157
Reduce function address information
157
sYmbol.Modify.NAME
Rename symbols
157
sYmbol.Modify.SOURCE
Define source file
158
Display symbols
159
Search symbol in C++ namespace
161
Create new symbol
162
Create user-defined memory attribute
162
Create user-defined function
165
Create user-defined symbol
165
Create user-defined macro
166
sYmbol.Modify.ADDRess sYmbol.Modify.CutFunction
sYmbol.name sYmbol.NAMESPACES sYmbol.NEW sYmbol.NEW.ATTRibute sYmbol.NEW.Function sYmbol.NEW.Label sYmbol.NEW.MACRO sYmbol.NEW.Module
Create user-defined module
166
sYmbol.NEW.Var
Create user-defined variable
167
Code overlay
168
Automatically determine overlay IDs
168
sYmbol.OVERLAY sYmbol.OVERLAY.AutoID sYmbol.OVERLAY.Create
Declare code overlay section
169
sYmbol.OVERLAY.DETECT
Detect the current overlay status
172
sYmbol.OVERLAY.FRIEND
Declare a friend overlay segment
172
Show declared code overlay sections
174
sYmbol.OVERLAY.List sYmbol.OVERLAY.RESet
Reset overlay declarations
174
sYmbol.POINTER
Define special register
175
sYmbol.POSTFIX
Set symbol postfix
175
Set symbol prefix
175
sYmbol.PREFIX sYmbol.RELOCate
Relocate symbols
176
sYmbol.RELOCate.Auto
Control automatic relocation
176
sYmbol.RELOCate.Base
Define base address
176
List relocation info
177
sYmbol.RELOCate.List sYmbol.RELOCate.Magic sYmbol.RELOCate.Passive sYmbol.RELOCate.shift sYmbol.RESet sYmbol.SourceCONVert
Define program magic
177
Define passive base address
177
Relocate symbols
178
Clear symbol table
179
Conversion for Japanese font
179
sYmbol.SourceLOAD
Initiate the loading of an hll source file
179
sYmbol.SourcePATH
Source search path
180
sYmbol.SourcePATH.Delete
Delete path from search list
180
sYmbol.SourcePATH.DOWN
Make directory last in search order
181
List source search paths
181
sYmbol.SourcePATH.List ©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
8
sYmbol.SourcePATH.RESet
Reset search path configuration
sYmbol.SourcePATH.Set sYmbol.SourcePATH.SetBaseDir
Define search path
184
Define directory as base for relative paths
185
Internal use only
186
Cache direct search path directory
186
sYmbol.SourcePATH.SetCache sYmbol.SourcePATH.SetCachedDir sYmbol.SourcePATH.SetCachedDirCache sYmbol.SourcePATH.SetDir
Internal use only
187
Define directory as direct search path
187
Adjust search order at hit
189
Store cached files only relative
190
sYmbol.SourcePATH.SetDynamicDir sYmbol.SourcePATH.SetMasterDir sYmbol.SourcePATH.SetRecurseDir
183
Define recursive direct search path
191
Internal use only
191
Replace part of the source path
192
Move path up in the search order
193
Display search details in message AREA
194
Reload source files
195
sYmbol.STATE
Display statistic
195
sYmbol.STRIP
Set max. symbol length
196
Show symbol info
196
SYnch .......................................................................................................................................
197
sYmbol.SourcePATH.SetRecurseDirCache sYmbol.SourcePATH.Translate sYmbol.SourcePATH.UP sYmbol.SourcePATH.Verbose sYmbol.SourceRELOAD
sYmbol.View
Function
197
SYnch.Connect SYnch.MasterBrk SYnch.MasterGo
Connect to other TRACE32 instances
198
Invite other TRACE32 to stop synchronously
198
Invite other TRACE32 to start synchronously
199
Invite other TRACE32 to asm step synchronously
200
Invite other TRACE32 to follow mode change
200
SYnch.OFF
Disable connection mechanism
201
SYnch.ON
Disable connection mechanism
201
Reset SYnch mechanism
201
SYnch.SlaveBrk
Synchronize with stop in connected TRACE32
202
SYnch.SlaveGo
Synchronize with start in connected TRACE32
203
Synchronize with asm step in connected TRACE32
203
Synch. with mode changes in other TRACE32
204
Display current SYnch settings
204
Establish time synchronization to another TRACE32 instance
205
SYStem .....................................................................................................................................
206
SYnch.MasterStep SYnch.MasterSystemMode
SYnch.RESet
SYnch.SlaveStep SYnch.SlaveSystemMode SYnch.state SYnch.XTrack
SYStem.Access
Dual-port access mode
206
Define the bank switch program
208
SYStem.BankMode
Define the bank switch mode
208
SYStem.BdmClock
Select BDM clock
209
SYStem.BankFile
SYStem.CADIconfig
CADI-specific setups
210
Define connection to CADI server
210
Define network settings to CADI trace
212
Select clock
213
SYStem.CADIconfig.RemoteServer SYStem.CADIconfig.Traceconfig SYStem.Clock ©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
9
SYStem.CONFIG
214
SYStem.CONFIG
Configure debugger according to target topology
214
Assign core to TRACE32 instance
222
Set up number of hardware threads
228
Extend debug driver timeouts
228
SYStem.CONFIG.CORE SYStem.CONFIG.CoreNumber SYStem.CONFIG.DEBUGTIMESCALE SYStem.CONFIG.ListCORE SYStem.CONFIG.ListSIMulation
Display the cores of a virtual target
229
Display the simulations of a virtual target
230
Display target configuration
230
Set up pipe name
231
SYStem.CONFIG.state SYStem.CONFIG.TRANSACTORPIPENAME SYStem.CPU SYStem.CpuAccess
Select CPU
232
Run-time memory access (intrusive)
235
Detect target system resources
237
SYStem.DETECT The System Detection Wizard
239
Daisy-Chain Detection via the TRACE32 AREA Window SYStem.DLLCommand SYStem.Down SYStem.GTL SYStem.GTL.CONNECT
241 Custom DLL connection to target
241
Standby mode
242
Configure GTL debug port
243
Connect to emulation or simulation
243
Disconnect from emulation or simulation
244
SYStem.GTL.DMANAME
Name of DMA transactor
245
SYStem.GTL.GPIONAME
Name of GPIO transactor
245
SYStem.GTL.DISCONNECT
SYStem.GTL.JTAGPROBENAME
Name of JTAG probe transactor
245
SYStem.GTL.LIBname
Name of 3rd-party plug-in library
246
SYStem.GTL.MODELCOMMAND
Execute command in plug-in
246
SYStem.GTL.MODELCONFIG
Configure emulation options
246
SYStem.GTL.MODELNAME
Select emulation
247
SYStem.GTL.SERVERCONFIG
Configure server options
247
SYStem.GTL.SHAREDMODEL
Connect debug port to existing connection
247
Name of trace transactor
248
Preconfigure a certain transactor
249
Define JTAG frequency
250
CPU signal control
251
Tristate the JTAG port
252
SYStem.GTL.TRACENAME SYStem.GTL.TransactorConfig SYStem.JtagClock SYStem.Line SYStem.LOCK
Log read and write accesses to the target
255
SYStem.LOG.CLEAR
SYStem.LOG
Clear the ‘SYStem.LOG.List’ window
256
SYStem.LOG.CLOSE
Close the system log file
256
SYStem.LOG.Init
Clear the ‘SYStem.LOG.List’ window
257
SYStem.LOG.List
Display the accesses made by TRACE32
258
Set logging mode
259
Pause logging
260
Resume logging
260
SYStem.LOG.Mode SYStem.LOG.OFF SYStem.LOG.ON SYStem.LOG.OPEN
Open a system log file
261
SYStem.LOG.RESet
Reset configuration of system log to defaults
261
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
10
SYStem.LOG.Set
Select the read and write accesses to be logged
262
SYStem.LOG.SIZE
Define number of lines in the ‘SYStem.LOG.List’ window
263
SYStem.LOG.state
Open configuration window of system log
264
Stop logging on error
265
Run-time memory access (non-intrusive)
266
SYStem.LOG.StopOnError SYStem.MemAccess SYStem.Mode SYStem.MonFile SYStem.MONITOR SYStem.Option SYStem.Option AMBA
Select mode
268
Monitor extension
272
tbd.
272
Special setup
273
Select AMBA bus mode
274
SYStem.Option BigEndian
Define byte order (endianess)
274
SYStem.Option HOOK
Compare PC to hook address
275
Disable interrupts while single stepping
276
SYStem.Option IMASKASM SYStem.Option IMASKHLL
Disable interrupts while HLL single stepping
279
Selection of little endian mode
282
Enable space IDs
283
Speed up memory access
285
SYStem.Option LittleEnd SYStem.Option MMUSPACES SYStem.Option TURBO SYStem.POLLING
Polling mode of CPU
285
SYStem.PORT
Configure external communication interface
287
SYStem.RESet
Reset configuration
288
Reset peripherals
289
SYStem.RESetOut
Release target reset
290
SYStem.state
SYStem.RESetTarget
Display SYStem.state window
291
SYStem.TARGET
Set target IP name or address
292
SYStem.TimeOut
Time-out for target access
293
SYStem.TimeoutDebug SYStem.TimeReq SYStem.Up SYStem.VirtualTiming SYStem.VirtualTiming.HardwareTimeout SYStem.VirtualTiming.HardwareTimeoutScale SYStem.VirtualTiming.InternalClock SYStem.VirtualTiming.MaxPause SYStem.VirtualTiming.MaxTimeout SYStem.VirtualTiming.OperationPause
tbd.
294
Time-out dualport access
295
Active mode
296
Modify timing constraints
297
Disable/enable hardware timeout
298
Multiply hardware timeout
298
Base for artificial time calculation
299
Limit pause
299
Override time-outs
300
Insert a pause after each operation
300
Set up pause time-base
301
Multiply pause with a factor
301
SYStem.VirtualTiming.PauseinTargetTime SYStem.VirtualTiming.PauseScale SYStem.VirtualTiming.TimeinTargetTime
Set up general time-base
302
Multiply time-base with a factor
302
SystemTrace ............................................................................................................................
303
SYStem.VirtualTiming.TimeScale
SystemTrace.state
Display system-trace configuration window
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
11
303
Usage: (B) command only available for ICD (E) command only available for ICE (F) command only available for FIRE
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
12
General Commands Reference Guide S Version 26-Oct-2016
History 24-Aug-16
Added descriptions and illustrations for the commands SYStem.CADIconfig.RemoteServer and SYStem.CADIconfig.Traceconfig.
27-Jul-16
Added description for new GTL configuration commands SYStem.GTL.GPIONAME, SYStem.GTL.SHAREDMODEL, SYStem.GTL.SHAREDMODEL and SYStem.GTL.TransactorConfig.
10-May-16
The command SETUP.BreakTransfer is now deprecated.
11-Nov-15
Replaced all occurrences of the term “virtual address” with the term “logical address”. See also “Logical Address” in glossary.pdf.
10-Jul-15
Update of command group sYmbol.SourcePATH.
13-Apr-15
Updated SYStem.CONFIG.CORE regarding the CADI and MCD interfaces. Described the purpose of the new STanDard button in the SETUP.Var dialog window. Added description for SETUP.StepAllCores.
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
13
History
SELFTEST
SELFTEST
Format:
Execute selftest operation
SELFTEST
Execute SELFTEST operation. Error results are shown in the selected AREA window.
SETUP
SETUP
Setup commands (part 2 of 2)
Using the SETUP command group, many parameters of the window system or emulator/debugger can be changed. For additional SETUP commands, refer to the SETUP command in “IDE Reference Guide” (ide_ref.pdf).
See also ■ ■ ■ ■ ■ ■ ■
SETUP.ALIST SETUP.DIS SETUP.IMASKASM SETUP.REFERR SETUP.StepBreak SETUP.StepWithinTask SETUP.VarCall
■ ■ ■ ■ ■ ■ ■
■ ■ ■ ■ ■ ■ ■
SETUP.BREAKDEF SETUP.DUMP SETUP.IMASKHLL SETUP.StepAllCores SETUP.StepByStep SETUP.sYmbol SETUP.VarPtr
SETUP.BreakTransfer SETUP.EMUPATH SETUP.LISTCLICK SETUP.StepAutoAsm SETUP.StepNoBreak SETUP.TIMEOUT SETUP.VerifyBreakSet
■ ■ ■ ■ ■ ■
SETUP.COLORCORE SETUP.FLIST SETUP.PreFetch SETUP.StepBeforeGo SETUP.StepTrace SETUP.Var
▲ ’SETUP’ in ’IDE Reference Guide’
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
14
SELFTEST
SETUP.ALIST
Format:
Default analyzer display
SETUP.ALIST … [/BT | /FT]
The syntax of the command is the same as the channel selection for the command Analyzer.List. The option defines if the Flowtrace or the Bustrace analyzer should be used as default by all analyzer display commands. SETUP.ALIST t.a cpu ti.ref
; display external trace, cpu and time
See also ■ SETUP
SETUP.BREAKDEF
Default breakpoint types
ICE only
Format:
SETUP.BREAKDEF [DEFault | Program]
Defines which breakpoints are set by the breakpoint commands (e.g. Break.Set). The default is to set Read, Write and Program breakpoints. Changing this to set only the Program type can be useful, if the Read and Write breakpoints are not usable or used as address qualifier. It is also recommended when software breakpoints are enabled, as the combination of Read/Write and Program breakpoints is not allowed in this case. The Program is also default for all BDM/EPROM debuggers.
See also ■ SETUP
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
15
SETUP
SETUP.BreakTransfer
Format:
Breakpoint synchronization
SETUP.BreakTransfer [ON | OFF] (deprecated)
This command is deprecated because the TRACE32 TCF integration provides a synchronization between TRACE32 PowerView and Eclipse. For example, setting a breakpoint or executing a single step at the TRACE32 side will be reported to Eclipse and vice versa. For more information, see “TRACE32 as TCF Agent” (app_tcf_setup.pdf).
See also ■ SETUP
SETUP.COLORCORE
Format:
Enable coloring for core-specific info in SMP systems
SETUP.COLORCORE [ON | OFF]
ON (default)
Core-specific information is displayed on a colored background (SMP debugging and tracing only).
OFF
Coloring of core-specific information is disabled.
See also ■ SETUP ▲ ’Screen Display’ in ’IDE User’s Guide’
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
16
SETUP
SETUP.DIS
Disassembler configuration
Format:
SETUP.DIS [] [] [] []
:
[] [] [] []
:
[] []
:
[Hex | Decimal] [Signed | Unsigned] [Absolut | sYmbol]
The command sets default values for configuring the disassembler output of newly created windows (e.g. Data.List). The command does not affect existing windows containing disassembler output. Among other things the size of columns and the format of for constants (signed, unsigned, ...) can be configured. The first four parameters for this command configure the size of the columns in disassembler output:
Number of displayed code bytes. Set to zero is possible.
Size of the label field.
Size of the mnemonic field.
Size of the comment field.
The next two arguments limit the movement of the PC bar within the window:
Size of reserved area on the top of the window (in percent).
Size of reserved area in bottom of window.
With the last three arguments the display of constants and symbols can be configured: Hex
In the mnemonic field the constants are displayed in hex.
Decimal
In the mnemonic field the constants are displayed in decimal.
Signed
The constants are displayed as signed numbers.
Unsigned
The constants are displayed as unsigned numbers.
Absolut
In the mnemonic field the constants are displayed absolute, with the comment field they are displayed symbolically.
sYmbol
The constants are displayed symbolically within the mnemonic field. ©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
17
SETUP
The additional parameters are target processor specific. For the 68K family it is the number of bytes to be used as argument after trap commands (for OS-9). For PowerPC it can be selected to use Simple or Generic mnemonics. The default is to use simplified mnemonics. SETUP.DIS Unsigned
; display constants as unsigned values
SETUP.DIS ,,,,,,,,y
; Switch to symbolic display of constants
See also ■ List.auto
■ SETUP
▲ ’Program and Data Memory’ in ’ICE User’s Guide’
SETUP.DUMP
Format:
Defaults for hex-dumps
SETUP.DUMP [/ …]
The options correspond to the command Data.dump. SETUP.DUMP /b
; display width is byte
See also ■ Data.dump
■ SETUP
▲ ’Program and Data Memory’ in ’ICE User’s Guide’
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
18
SETUP
SETUP.EMUPATH
Format:
Emulation softkeys configuration
SETUP.EMUPATH "" …
The most left softkey selects emulation softkeys. These softkeys will be defined by this command. SETUP.EMUPATH "s." "g.n" "r." "fpu." "d.s 0x0ff000 0x0" "r.res"
gives the following softkeys: [s.]
[g.n]
[r.]
[fpu.]
[d.s 0ff]
[r.res]
previous
See also ■ SETUP ▲ ’Realtime Emulation’ in ’ICE User’s Guide’
SETUP.FLIST
Default flag list display
ICE only
Format:
SETUP.FLIST …
The syntax of the command is the same as the item selection for the commands FLAG.ListModul, FLAG.ListFunc and FLAG.ListVar. SETUP.FLIST %b r %p rnw
; display read information as bar, ; readonly information in percent
See also ■ Data.dump
■ List.auto
■ SETUP
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
19
SETUP
SETUP.IMASKASM
Format:
Mask interrupts during assembler step
SETUP.IMASKASM [ON | OFF]
If enabled, the interrupt enable bit of the microcontroller will be disabled during single-step operations. The interrupt routine is not executed during single-step operations. After single step the interrupt enable bit is restored to the value before the step. This command is not implemented within all emulation probes.
NOTE:
On some processors this modification is also seen by the user program. So this option can affect the flow of the target program. Accesses to the interrupt-enable bit can see the wrong values. Operations to modify the interrupt enable bit may not work as expected. See also eXception.Delay.
See also ■ SETUP
■ Step.single
▲ ’Release Information’ in ’Release History’
SETUP.IMASKHLL
Format:
Mask interrupts during HLL step
SETUP.IMASKHLL [ON | OFF]
If enabled, the interrupt enable bit of the microcontroller will be disabled during HLL single-step operation. The interrupt routine is not executed during single-step operations. After single step the interrupt enable bit is restored to the value before the step. This command is not implemented within all emulation probes.
NOTE:
By changing the register through target software, this option can affect the flow of the target program. Accesses to the interrupt-enable bit will see the wrong values. Operations to modify the interrupt enable bit will not work as expected. When the HLL line enables the interrupts (e.g. in an RTOS function call) then pending interrupts will be executed. See also eXception.Delay.
See also ■ SETUP
■ Step.single
▲ ’Release Information’ in ’Release History’
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
20
SETUP
SETUP.LISTCLICK
Format:
Double-click source line symbol to run this action
SETUP.LISTCLICK ""
The defined is executed when a variable or function in HLL-source is double-clicked (with the left mouse key). The name of the variable/function is appended to the command. The characters '?' or '*' can be used to mark the position of the variable/function name in the command. Lines with '*' will be executed without further input query. Default action when you double-click a function in a TRACE32 window, e.g. in the List.Mix window: ; display a listing for the double-clicked function in a new List ; window that is superimposed on the previous List window SETUP.LISTCLICK "WinOverlay.List `*`"
Default action when you double-click a variable in a TRACE32 window, e.g. in the List.Mix window: SETUP.LISTCLICK "v ?"
; lets you modify the variable in the ; TRACE32 command line
Example of a user-defined action: SETUP.LISTCLICK "v.v %m *"
; open a temporary window with variable
See also ■ List.auto
■ SETUP
■ WinOverlay
SETUP.PreFetch
Format:
Define prefetch
SETUP.PreFetch [] []
Defines the size of the prefetch queue of the processor. This value is used by analyzer statistic and flag memory commands that must discard cycles caused by prefetches. The alignment parameter defines the minimum number of bytes the processor is fetching at once.
See also ■ SETUP
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
21
SETUP
SETUP.REFERR
DRAM refresh monitoring
ICE only
Format:
SETUP.REFERR [ON | OFF]
The refresh of dynamic emulation memory is done by dual-port access. The number of refresh cycles is monitored to check proper refresh operation. Slow target cycles also slow down the refresh cycles to the DRAM. If the refresh cannot be made according to the RAM specifications the system will go down with the error message 'emulation memory refresh error'. This can be prevented by using a short time-out value (SYStem.TimeOut). If a longer time-out value is not possible the refresh error message can be turned off. If the refresh is not missing too long, the data will still be consistent. As a default the refresh monitoring is turned on.
See also ■ SETUP
SETUP.StepAllCores
Format:
Force single stepping on all cores
SETUP.StepAllCores [ON | OFF]
Default: OFF Forces assembler single stepping on all cores of an SMP system. If you debug a multicore system in SMP configuration a single step on HLL code affects all cores while single stepping on ASM code does affect only the active core. By switching SETUP.StepAllCores to ON also single steps on assembler level will affect all cores. Lauterbach recommends to keep SETUP.StepAllCores OFF Support of this feature depends on your CPU. Setting SETUP.StepAllCores to ON might have no effect. The setting is supported for MPC5xxx PowerPCs. It is not yet supported for ARM or TriCore. Please contact Lauterbach, if you need this feature for your target architecture. By just typing the command and appending a blank, you can view the current setting in the TRACE32 message line. By executing the command without arguments, SETUP.StepAllCores toggles the current setting.
See also ■ SETUP
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
22
SETUP
SETUP.StepAutoAsm
Format:
HLL steps stops at assembler code
SETUP.AutoAsm [ON | OFF]
When a single step is performed in HLL debug mode and the target address of the step is code without HLL information (e.g. a module compiled without HLL debug symbols), the debugger will per default continue single stepping in the background until the next HLL line is reached (i.e. step from HLL line to HLL line). If the setting it turned ON, the debugger will stop at the address without debug symbols. Use this setting to debug modules without HLL debug information or compiler generated code sections.
See also ■ SETUP ▲ ’Release Information’ in ’Release History’
SETUP.StepBeforeGo
Format:
Single step before go
SETUP.StepBeforeGo [ON | OFF]
Perform an ASM single step before each Go. In contrast to the SETUP.StepBreak this option steps always regardless the emulation is started on a breakpoint or not.
See also ■ SETUP
SETUP.StepBreak
Format:
Single step to skip breakpoint
SETUP.StepBreak [ON | OFF]
When interrupts are pending and the emulation is started on a breakpoint, it is possible that the target executes the interrupt routine and returns to the same breakpoint location after. The debugging 'hangs' on the breakpoints. To avoid this, this option will first execute a single step when the program would start on a breakpoint. On some processors with internal interrupt sources, the SETUP.IMASKASM option must also be turned on. This option is usually the default for ICD and FIRE.
See also ■ SETUP
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
23
SETUP
SETUP.StepByStep
Format:
Single step HLL lines
SETUP.StepByStep [ON | OFF]
Single steps HLL when executing a HLL step. On some processors with internal interrupt sources, the SETUP.IMASKASM option must also be turned on to avoid stepping through the interrupt program.
See also ■ SETUP
SETUP.StepNoBreak
Format:
Stepping HLL lines with disabled breakpoints
SETUP.StepNoBreak [ON | OFF]
OFF
User-defined breakpoints are active while single stepping in HLL.
ON
User-defined breakpoints are not active while single stepping in HLL.
See also ■ SETUP
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
24
SETUP
SETUP.StepTrace
Format:
Show stepping trail in list window
SETUP.StepTrace [ON | OFF]
If this option is enabled, list windows will show stepping trails.
See also ■ SETUP
SETUP.StepWithinTask
Format:
Task selective stepping
SETUP.StepWithinTask [ON | OFF]
When enabled all HLL stepping and temporary breakpoints will be task selective (on the currently active task). This allows to step and debug shared code without stopping in another task.
See also ■ SETUP
SETUP.sYmbol
Format:
Length of symbols
SETUP.sYmbol [ON | OFF]
Configuration of the width of the columns for the symbol display commands. The first argument is used for columns which hold a complete symbol path, including program and module names. The second argument is for single symbol names. The last argument enables or disables the display of the program name in symbol paths. This command only affects the display of symbols, not the number of significant characters during symbol entry.
See also ■ List.auto
■ SETUP
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
25
SETUP
SETUP.TIMEOUT
Format:
Define emulation monitor time-out
SETUP.TIMEOUT
Values larger than 1 stretch the time-out delay within the emulation monitor. This value determines, how long a window waits for becoming inactive. Short values will result in a fast screen update, but may result in flickering windows when a spot point or the multitask debugger is active. Large values will cause a slower update on the screen when realtime emulation is running.
See also ■ Data.dump
■ Data.Test
■ List.auto
■ SETUP
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
26
SETUP
SETUP.Var
Defaults for the Var commands
Format:
SETUP.Var [% …]
Without parameters, the SETUP.Var command opens the SETUP.Var dialog window, where you can define your defaults for the Var commands. Your defaults are used during a TRACE32 session, or until you change the defaults again during the same TRACE32 session. Settings that you make in the SETUP.Var dialog window have no effect on windows that are already open. TRACE32 applies your settings only to windows that you open afterwards. For a description of the %, see section “Display Formats” of the Var command group.
B A
C
A Applies your settings and closes the dialog window. B Selects only the check boxes that belong to the built-in standard settings. All other check boxes are cleared. To apply the built-in standard settings, click OK or Apply. C Applies the settings, and the dialog window remains open. Alternatively, you can make your format settings via the TRACE32 command line: SETUP.Var %Decimal.on %Hex.on %SpotLight.on
; settings highlighted in ; the above screenshot
SETUP.Var %STanDard
; restores the built-in ; standard
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
27
SETUP
To keep your user-defined settings for future TRACE32 sessions, add them to your start-up script or to the TRACE32 start-up script t32.cmm. It is located in the system directory of TRACE32, by default C:\T32.
See also ■ SETUP ▲ ’Var’ in ’General Commands Reference Guide V’ ▲ ’Format Variable’ in ’Training HLL Debugging’
SETUP.VarCall
Format:
Define call dummy routine
SETUP.VarCall []
If a function is called from the Var commands, a dummy routine is placed in memory to catch the processor after the called function has terminated. Under normal circumstances this code is never reached, as the HLL debugger breaks, when the end of the function is reached. If the command Var.Call is used, a Go command may start the function without any breakpoints set to the return point. In this cases, the processor will loop endless in the 'dummy' routine. Processors with linear addressing usually require no fixed address, the routine is kept on the stack. Processors with special addressing, like 8051 cannot keep a function on the stack. For this processors the command SETUP.VarCall can define a free location in code memory to hold the endless loop of the dummy function. The required space is usually two bytes. setup.vc p:0x0fff0 v func2()
; place the dummy routine at p:0fff0 ; call a function of the target program
See also ■ SETUP
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
28
SETUP
SETUP.VarPtr
Format:
Limit pointer access
SETUP.VarPtr []
Defines the address ranges for valid memory pointers. This range is checked whenever an automatic access to the contents of a pointer is made. Pointer referenced by an HLL expression are not checked against this range. setup.vp 0x0--0x0ffff v vpchar = 0x123456
; set pointer to character to ; 123456
v *vpchar
; manual access to pointer, not ; checked
displays: *vpchar = 0 v %r vpchar displays: vpchar = 0x123456 -> INVALID
; automatic pointer access is ; checked
setup.vp 0x0--0x0ffffff
; enlarge the address space for ; pointers
v %r vpchar displays: vpchar = 0x123456 -> 0x0
; automatic pointer access is ; checked
setup.vp 0x0--0x1ffff||0x800000--0x80ffff
See also ■ SETUP
SETUP.VerifyBreakSet
Format:
Additional verification for software breakpoints
SETUP.VerifyBreakSet [ON | OFF]
Default: OFF Setting SETUP.VerifyBreakSet to ON forces the debugger to perform an additional verification whenever a software breakpoint become active or inactive.
See also ■ SETUP
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
29
SETUP
SHADOW ICE only
SHADOW
ICE-166 with a shadow memory 256K
The commands of the command group SHADOW can only be used for the ICE-166 with a Shadow Memory 256K.
See also ■ SHADOW.Area ■ SHADOW.Mode ■ SHADOW.state
■ SHADOW.AutoDelete ■ SHADOW.OFF
■ SHADOW.Define ■ SHADOW.ON
SHADOW.Area
■ SHADOW.Init ■ SHADOW.RESet
Select the SHADOW area
ICE only .
Format:
SHADOW.Area 1. | 2. | 3. | 4.
Select one of the possible four SHADOW areas.
See also ■ SHADOW
■ SHADOW.state
SHADOW.AutoDelete
Initialize the SHADOW RAM on every program start
ICE only .
Format:
SHADOW.AutoDelete ON | OFF
(ON) The SHADOW RAM is initialized whenever the program execution is started with the value defined with the SHADOW.Mode command.
See also ■ SHADOW
■ SHADOW.state
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
30
SHADOW
SHADOW.Define
Define a SHADOW area
ICE only
Format:
SHADOW.Define
:
1. | 2. | 3. | 4.
Define a SHADOW area. SHADOW.Define 2. 0x0--0xFFFF
; define SHADOW area
See also ■ SHADOW
■ SHADOW.state
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
31
SHADOW
SHADOW.Init
Format:
Initialize all SHADOW areas
SHADOW.Init
Initialize all SHADOW areas.
See also ■ SHADOW
SHADOW.Mode
■ SHADOW.state
Define the initialization value for the SHADOW areas
ICE only
Format:
SHADOW.Mode ZERO | FF | FLOATING | ERROR
As long as no write access occurred to an address, the contents of this address is 0x00 (ZERO), 0xFF(FF), ?? (FLOATING) or an error message is displayed (ERROR).
See also ■ SHADOW
■ SHADOW.state
SHADOW.OFF
Switch SHADOW RAM off
ICE only
Format:
SHADOW.OFF
Switch the SHADOW RAM to OFF.
See also ■ SHADOW
■ SHADOW.state
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
32
SHADOW
SHADOW.ON
Switch SHADOW RAM on
ICE only
Format:
SHADOW.ON
Switch the SHADOW RAM to ON.
See also ■ SHADOW
■ SHADOW.state
SHADOW.RESet
Reset settings for the SHADOW RAM
ICE only
Format:
SHADOW.RESet
Reset settings for the SHADOW RAM to default.
See also ■ SHADOW
■ SHADOW.state
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
33
SHADOW
SHADOW.state
Display SHADOW RAM settings
ICE only
Format:
SHADOW.state
Display SHADOW RAM settings.
See also ■ SHADOW ■ SHADOW.Init ■ SHADOW.RESet
■ SHADOW.Area ■ SHADOW.Mode
■ SHADOW.AutoDelete ■ SHADOW.OFF
■ SHADOW.Define ■ SHADOW.ON
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
34
SHADOW
SIM
SIM
TRACE32 instruction set simulators
The SIM command group covers the following features for the TRACE32 Instruction Set Simulators: •
Cache/MMU/MPU simulation: configuration, enabling and basic analysis Cache simulation is currently only fully implemented for the ARM architecture. It can be implemented for other architectures on request. Please be aware that enabling the cache/MMU simulation slows down the simulator performance.
•
Trace generation: configuration
•
Peripheral Simulation Models: load and unload For more information on the PSM refer to “API for TRACE32 Instruction Set Simulator” (simulator_api.pdf) and “Library for Peripheral Simulation” (simulator_api_lib.pdf).
See also ■ SIM.AREA ■ SIM.List
■ SIM.CACHE ■ SIM.LOAD
■ SIM.command ■ SIM.RESet
SIM.AREA
■ SIM.INTerrupt ■ SIM.UNLOAD
Selects area for simulation output
.
Format:
SIM.AREA
Specify output AREA for API function SIMUL_Printf(simulProcessor processor, const char *format, ...). AREA.Create SimulOut
; create a new AREA
AREA.View SimulOut
; display created AREA
SIM.AREA SimulOut
; assign AREA to SIMUL_Printf ; function
See also ■ SIM
■ SIM.command
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
35
SIM
SIM.CACHE
Cache/MMU simulation and more
.
Command group for cache/MMU simulation, simulation of tightly-coupled memory, simulator trace generation and more. For configuration, use the command line or the SIM.CACHE.state window.
See also ■ ■ ■ ■ ■
SIM SIM.CACHE.MPURegions SIM.CACHE.SETS SIM.CACHE.TRACE SIM.CACHE.Width
■ ■ ■ ■ ■
■ ■ ■ ■
SIM.CACHE.Allocation SIM.CACHE.OFF SIM.CACHE.SIZE SIM.CACHE.View SIM.command
SIM.CACHE.BaseAddress SIM.CACHE.ON SIM.CACHE.state SIM.CACHE.ViewTLB
■ ■ ■ ■
SIM.CACHE.Mode SIM.CACHE.Replacement SIM.CACHE.Tags SIM.CACHE.WAYS
▲ ’Release Information’ in ’Release History’
SIM.CACHE.Allocation
Define the cache allocation technique
Format:
SIM.CACHE.Allocation ReadAlloc | WriteAlloc
DC | L2 | L3 | …
The command SIM.CACHE.Allocation describes how the CPU deals with a cache miss on a data store/ write access. ReadAlloc
The data from a memory address is only loaded to the cache on read/ load accesses.
WriteAlloc
The data from a memory address is loaded to the cache on a store/write access and the new data is written in the cache line. If it is also stored/ written to memory depends on the cache mode (write-through or copyback).
The allocation technique is taken from the MMU if SIM.CACHE.Mode is set to MMU. CTS.CACHE.Allocation IC ReadAlloc
; the instruction cache is a ; read allocate cache
This field shows the cache properties of the selected CPU. If these properties do not fit, they should be changed before a SYStem.Up.
See also ■ SIM.CACHE
■ SIM.CACHE.state
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
36
SIM
SIM.CACHE.BaseAddress
Specify base address for tightly-coupled memory
Format:
SIM.CACHE.BaseAddress
:
ITCM | DTCM
Inform TRACE32 Instruction Set simulator about the base address of the tightly-coupled memory. SIM.CACHE.BaseAddress ITCM 0x0
This field shows the cache properties of the selected CPU. If these properties do not fit, they should be changed before a SYStem.Up.
See also ■ SIM.CACHE
■ SIM.CACHE.state
SIM.CACHE.Mode
Define memory coherency strategy
Format:
SIM.CACHE.Mode ITCM | DTCM
:
CopyBack WriteThrough MMU
This command defines the strategy used for the memory coherency. CopyBack
Copy back strategy guarantees memory coherency. When a cache hit occurred for a data store/write, the cache contents is updated and the corresponding cache line is marked as dirty. The data value is copied back to memory when the contents of the cache line is evicted.
WriteThrough
Write Through strategy guarantees memory coherency. When a cache hit occurs for a data store/write, the cache contents is updated and the data is also stored/written to memory.
MMU
The strategy for memory coherency is taken from the MMU.
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
37
SIM
It is recommended to perform this setup before SYStem.Up.
See also ■ SIM.CACHE
■ SIM.CACHE.state
SIM.CACHE.MPURegions
Format:
Specify MPU regions
SIM.CACHE.MPURegions
Define the number of MPU regions implemented on your Cortex-R4 core.
See also ■ SIM.CACHE
■ SIM.CACHE.state
SIM.CACHE.OFF
Format:
Disable cache and MMU simulation
SIM.CACHE.OFF
Disable cache and MMU simulation.
See also ■ SIM.CACHE
■ SIM.CACHE.state
SIM.CACHE.ON
Format:
Enable cache and MMU simulation
SIM.CACHE.ON
Enable cache and MMU simulation.
See also ■ SIM.CACHE
■ SIM.CACHE.state
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
38
SIM
SIM.CACHE.Replacement
Define the replacement strategy
Format:
SIM.CACHE.Replacement
:
ITLB | DTLB | TLB0 | TLB1
:
NONE Random FreeRandom LRU MMU
This command defines the replacement strategy for each cache. Cyclic
Cyclic (round-robin) replacement strategy is used. One round robin counter for each cache set.
Random
Random replacement strategy is used.
LRU
Last recently used replacement strategy is used.
MMU
The replacement strategy is defined by the CPU. Please use SIM.CACHE.Replacement MMU if your CPU uses a not listed replacement strategy.
This field shows the cache properties of the selected CPU. If these properties do not fit, they should be changed before a SYStem.Up.
See also ■ SIM.CACHE
■ SIM.CACHE.state
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
39
SIM
SIM.CACHE.SETS
Define the number of cache/TLB sets
Format:
SIM.CACHE.SETS
:
TLB0 | TLB1
This command defines the number of cache/TLB sets. This field shows the cache properties of the selected CPU. If these properties do not fit, they should be changed before a SYStem.Up.
See also ■ SIM.CACHE
■ SIM.CACHE.state
SIM.CACHE.SIZE
Format:
Specify size of tightly-coupled memory
SIM.CACHE.SIZE ITCM | DTCM
It is recommended to perform this setup before SYStem.Up.
See also ■ SIM.CACHE
■ SIM.CACHE.state
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
40
SIM
SIM.CACHE.state
Format:
Display cache and MMU settings
SIM.CACHE.state
Display simulator setting for cache and MMU.
See also ■ ■ ■ ■
SIM.CACHE SIM.CACHE.MPURegions SIM.CACHE.SETS SIM.CACHE.View
■ ■ ■ ■
■ ■ ■ ■
SIM.CACHE.Allocation SIM.CACHE.OFF SIM.CACHE.SIZE SIM.CACHE.ViewTLB
SIM.CACHE.BaseAddress SIM.CACHE.ON SIM.CACHE.Tags SIM.CACHE.WAYS
■ ■ ■ ■
SIM.CACHE.Mode SIM.CACHE.Replacement SIM.CACHE.TRACE SIM.CACHE.Width
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
41
SIM
SIM.CACHE.Tags
Define address mode for cache lines
Format:
SIM.CACHE.Tags
:
VIVT PIPT VIPT AVIVT
VIVT
Virtual Index, Virtual Tag The logical address is used as tag for a cache line.
PIPT
Physical Index, Physical Tag The physical address is used as tag for a cache line.
VIPT
Virtual Index, Physical Tag
AVIVT
Address Space ID + Virtual Index, Virtual Tag
The address mode for the cache lines is taken from the MMU if SIM.CACHE.Mode is set to MMU. It is recommended to perform this setup before SYStem.Up.
See also ■ SIM.CACHE
■ SIM.CACHE.state
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
42
SIM
SIM.CACHE.TRACE
Format:
BusTrace
Select simulator trace method
SIM.CACHE.TRACE BusTrace | CoreTrace
Trace information is generated for all bus transfers. E.g. if the cache is simulated trace information is generated for the burst cycles that filled the cache lines.
CoreTrace (default)
Trace information is generated for all executed instructions and performed load/store operations. Cache accesses are included.
See also ■ SIM.CACHE
SIM.CACHE.View
Format:
■ SIM.CACHE.state
Analysis of memory accesses for cache simulation
SIM.CACHE.View
Displays an analysis of the simulated memory accesses if cache simulation is used. Analysis results can be displayed while program execution is running. For detailed information on the interpretation of the results refer to the CTS.CACHE.View command.
See also ■ SIM.CACHE
■ SIM.CACHE.state
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
43
SIM
SIM.CACHE.ViewTLB
Format:
Analysis of TLB accesses for MMU simulation
SIM.CACHE.ViewTLB
Displays an analysis of the simulated TLB accesses if MMU simulation is used. Analysis results can be displayed while program execution is running.
See also ■ SIM.CACHE
■ SIM.CACHE.state
SIM.CACHE.WAYS
Define number of cache ways
Format:
SIM.CACHE.WAYS
:
IC | DC | L2 | L3 | ITLB | DTLB | TLB0 | TLB1
This command defines the number of cache ways (blocks) for each cache. SIM.CACHE.WAYS IC 4.
; The instruction CACHE has 4 blocks
This field shows the cache properties of the selected CPU. If these properties do not fit, they should be changed before a SYStem.Up.
See also ■ SIM.CACHE
■ SIM.CACHE.state
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
44
SIM
SIM.CACHE.Width
Format:
Define width of cache line
SIM.CACHE.Width IC | DC | L2 | L3
This command define the width of a single cache line in bytes. CTS.CACHE.Width IC 32.
; A cache line for the instruction cache ; is 32. byte
This field shows the cache properties of the selected CPU. If these properties do not fit, they should be changed before a SYStem.Up.
See also ■ SIM.CACHE
■ SIM.CACHE.state
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
45
SIM
SIM.command
Format:
Issue command to simulation model
SIM.command [] [] [] []
Issues a command to all loaded simulation models. The parameters are interpreted by the loaded models.
See also ■ SIM ■ SIM.List
■ SIM.AREA ■ SIM.LOAD
■ SIM.CACHE ■ SIM.RESet
SIM.INTerrupt
Format:
■ SIM.INTerrupt ■ SIM.UNLOAD
Trigger interrupt
SIM.INTerrupt
Triggers the specified interrupt. Not all arguments are supported or required by all architectures. Example for MPC55xx: SIM.INTerrupt , 0x20
; no priority required that is ; why "," is used ; interrupt vector 0x0 is triggered
Example for TriCore: SIM.INTerrupt 15.
; the interrupt is triggered by its ; corresponding level ; is not supported, ; instead the vector is calculated ; from the BIV register value
See also ■ SIM
■ SIM.command
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
46
SIM
SIM.List
List loaded simulator models
.
Format:
SIM.List
See also ■ SIM
■ SIM.command
SIM.LOAD
Format:
Load simulator module
SIM.LOAD [ …]
Loads simulator DLL. The parameters are specific for the loaded DLL. SIM.RESet SIM.LOAD demoport.dll 20000 0
; reset simulator ; loads dll with your parameters
See also ■ SIM
■ SIM.command
▲ ’Release Information’ in ’Release History’
SIM.RESet
Reset instruction set simulator
.
Format:
SIM.RESet
Unloads all loaded DLL and resets all time base.
See also ■ SIM
■ SIM.command
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
47
SIM
SIM.UNLOAD
Format:
Unload simulator module
SIM.UNLOAD []
Unloads a simulator dll. SIM.UNLOAD demoport.dll
; unload specified dll
SIM.UNLOAD
; unload all dlls
See also ■ SIM
■ SIM.command
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
48
SIM
SNOOPer
Function The intention of the SNOOPer is to provide a trace that sample data information over the time. The SNOOPer is mainly used for TRACE32-ICD if: •
No trace is available (e.g. MCS12).
•
The trace port doesn´t provide data information (e.g. most TRICOREs).
The SNOOPer can only be used if the on-chip debugging logic of the CPU supports memory read while the CPU is executing the program (e.g. MCS12, C166CBC, TRICORE, ColdFire). It also works for all ARM cores via the ARM Debug Communication Channel (DCC) or via the Debug Access Port (DAP) and for the 56800E DSP from Freescale Semiconductor. In general the SNOOPer can be used, if SYStem.MemAccess CPU can be set in the SYStem window.
To set up the SNOOPer the following steps are required:
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
49
SNOOPer
1.
Define the size of the SNOOPer trace memory. The trace memory is reserved on the host and can be up to 1 MByte.
2.
Define the sampling rate for the SNOOPer. The smallest sampling rate is 20 - 100 us. The SNOOPer reads out the requested data information in the sampling rate and transfers it to the trace.
3.
Define the data information you want to monitor. SNOOPer.SIZE 10000.
; The size of the trace for the ; snooper is 10000.
SNOOPer.Rate 1000.
; The sampling rate for the snooper ; is 1000/sec
SNOOPer.SELelct %Byte flags+3
; The data information of interest ; is the contents of flags+3
The SNOOPer is one of the trace methods provided by TRACE32. Beside the command group SNOOPer the more general command group Trace can be used to set up and handle the information provided by the SNOOPer. Precondition is that the trace method SNOOPer is selected.
Trace.METHOD SNOOPer
All SNOOPer commands that offer features identical to the corresponding Trace commands are described together with the command group Trace. Here only the SNOOPer specific commands are listed.
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
50
SNOOPer
SNOOPer Trace Commands
SNOOPer.Arm
Arm the trace
see command .Arm in 'General Commands Reference Guide T' (general_ref_t.pdf, page 95)
SNOOPer.AutoArm
Arm automatically
see command .AutoArm in 'General Commands Reference Guide T' (general_ref_t.pdf, page 97)
SNOOPer.AutoInit
Automatic initialization
see command .AutoInit in 'General Commands Reference Guide T' (general_ref_t.pdf, page 101)
SNOOPer.BookMark
Set a bookmark in trace listing
see command .BookMark in 'General Commands Reference Guide T' (general_ref_t.pdf, page 104)
SNOOPer.Chart
Display trace contents graphically
see command .Chart in 'General Commands Reference Guide T' (general_ref_t.pdf, page 108)
SNOOPer.Chart.DistriB
Distribution display
see command .Chart.DistriB in 'General Commands Reference Guide T' (general_ref_t.pdf, page 113)
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
51
SNOOPer Trace Commands
SNOOPer.Chart.Func
Function activity chart
see command .Chart.Func in 'General Commands Reference Guide T' (general_ref_t.pdf, page 115)
SNOOPer.Chart.GROUP
Group activity chart
see command .Chart.GROUP in 'General Commands Reference Guide T' (general_ref_t.pdf, page 116)
SNOOPer.Chart.Line
Graphical HLL lines analysis
see command .Chart.Line in 'General Commands Reference Guide T' (general_ref_t.pdf, page 117)
SNOOPer.Chart.sYmbol
Symbol analysis
see command .Chart.sYmbol in 'General Commands Reference Guide T' (general_ref_t.pdf, page 119)
SNOOPer.Chart.TASK
Task activity chart
see command .Chart.TASK in 'General Commands Reference Guide T' (general_ref_t.pdf, page 123)
SNOOPer.Chart.TASKFunc
Task related function run-time analysis (legacy)
see command .Chart.TASKFunc in 'General Commands Reference Guide T' (general_ref_t.pdf, page 124)
SNOOPer.Chart.TASKSRV
Service routine run-time analysis
see command .Chart.TASKSRV in 'General Commands Reference Guide T' (general_ref_t.pdf, page 125)
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
52
SNOOPer Trace Commands
SNOOPer.Chart.TASKState
Task state analysis
see command .Chart.TASKState in 'General Commands Reference Guide T' (general_ref_t.pdf, page 126)
SNOOPer.Chart.VarState
Variable activity chart
see command .Chart.VarState in 'General Commands Reference Guide T' (general_ref_t.pdf, page 127)
SNOOPer.ComPare
Compare trace contents
see command .ComPare in 'General Commands Reference Guide T' (general_ref_t.pdf, page 131)
SNOOPer.DISable
Disable the trace
see command .DISable in 'General Commands Reference Guide T' (general_ref_t.pdf, page 133)
SNOOPer.DRAW
Visualization of trace data
see command .DRAW in 'General Commands Reference Guide T' (general_ref_t.pdf, page 137)
SNOOPer.EXPORT
Export trace data for processing in other applications
see command .EXPORT in 'General Commands Reference Guide T' (general_ref_t.pdf, page 156)
SNOOPer.FILE
Load a file into the file trace buffer
see command .FILE in 'General Commands Reference Guide T' (general_ref_t.pdf, page 168)
SNOOPer.Find
Find specified entry in trace
see command .Find in 'General Commands Reference Guide T' (general_ref_t.pdf, page 170) ©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
53
SNOOPer Trace Commands
SNOOPer.FindAll
Find all specified entries in trace
see command .FindAll in 'General Commands Reference Guide T' (general_ref_t.pdf, page 173)
SNOOPer.FindChange
Search for changes in trace flow
see command .FindChange in 'General Commands Reference Guide T' (general_ref_t.pdf, page 175)
SNOOPer.Get
Display input level
see command .Get in 'General Commands Reference Guide T' (general_ref_t.pdf, page 177)
SNOOPer.GOTO
Move cursor to specified trace record
see command .GOTO in 'General Commands Reference Guide T' (general_ref_t.pdf, page 179)
SNOOPer.Init
Initialize trace
see command .Init in 'General Commands Reference Guide T' (general_ref_t.pdf, page 189)
SNOOPer.List
List trace contents
see command .List in 'General Commands Reference Guide T' (general_ref_t.pdf, page 193)
SNOOPer.LOAD
Load trace file for off-line processing
see command .LOAD in 'General Commands Reference Guide T' (general_ref_t.pdf, page 207)
SNOOPer.Mode
Set the trace operation mode
see command .Mode in 'General Commands Reference Guide T' (general_ref_t.pdf, page 213)
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
54
SNOOPer Trace Commands
SNOOPer.OFF
Switch off
see command .OFF in 'General Commands Reference Guide T' (general_ref_t.pdf, page 217)
SNOOPer.PROfileChart
Profile charts
see command .PROfileChart in 'General Commands Reference Guide T' (general_ref_t.pdf, page 223)
SNOOPer.PROfileChart.DIStance
Time interval for a single event
see command .PROfileChart.DIStance in 'General Commands Reference Guide T' (general_ref_t.pdf, page 224)
SNOOPer.PROfileChart.DURation
Time between two events
see command .PROfileChart.DURation in 'General Commands Reference Guide T' (general_ref_t.pdf, page 225)
SNOOPer.PROfileChart.GROUP
Group profile chart
see command .PROfileChart.GROUP in 'General Commands Reference Guide T' (general_ref_t.pdf, page 230)
SNOOPer.PROfileChart.Rate
Event frequency
see command .PROfileChart.Rate in 'General Commands Reference Guide T' (general_ref_t.pdf, page 231)
SNOOPer.PROfileSTATistic
Statistical analysis in a table versus time
see command .PROfileSTATistic in 'General Commands Reference Guide T' (general_ref_t.pdf, page 237)
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
55
SNOOPer Trace Commands
SNOOPer.PROTOcol
Protocol analysis
see command .PROTOcol in 'General Commands Reference Guide T' (general_ref_t.pdf, page 239)
SNOOPer.PROTOcol.Chart
Graphic display for user-defined protocol
see command .PROTOcol.Chart in 'General Commands Reference Guide T' (general_ref_t.pdf, page 239)
SNOOPer.PROTOcol.Draw
Graphic display for user-defined protocol
see command .PROTOcol.Draw in 'General Commands Reference Guide T' (general_ref_t.pdf, page 241)
SNOOPer.PROTOcol.EXPORT
Export trace buffer for user-defined protocol
see command .PROTOcol.EXPORT in 'General Commands Reference Guide T' (general_ref_t.pdf, page 242)
SNOOPer.PROTOcol.Find
Find in trace buffer for user-defined protocol
see command .PROTOcol.Find in 'General Commands Reference Guide T' (general_ref_t.pdf, page 243)
SNOOPer.PROTOcol.List
Display trace buffer for user-defined protocol
see command .PROTOcol.List in 'General Commands Reference Guide T' (general_ref_t.pdf, page 244)
SNOOPer.PROTOcol.STATistic
Display statistics for user-defined protocol
see command .PROTOcol.STATistic in 'General Commands Reference Guide T' (general_ref_t.pdf, page 247)
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
56
SNOOPer Trace Commands
SNOOPer.Rate
Select sampling rate
see command .Rate in 'General Commands Reference Guide T' (general_ref_t.pdf, page 252)
SNOOPer.REF
Set reference point
see command .REF in 'General Commands Reference Guide T' (general_ref_t.pdf, page 253)
SNOOPer.RESet
Reset command
see command .RESet in 'General Commands Reference Guide T' (general_ref_t.pdf, page 254)
SNOOPer.SAVE
Save trace for postprocessing in TRACE32
see command .SAVE in 'General Commands Reference Guide T' (general_ref_t.pdf, page 255)
SNOOPer.SELect
Define addresses for monitoring
see command .SELect in 'General Commands Reference Guide T' (general_ref_t.pdf, page 260)
SNOOPer.SelfArm
Automatic restart of trace recording
see command .SelfArm in 'General Commands Reference Guide T' (general_ref_t.pdf, page 260)
SNOOPer.SIZE
Define buffer size
see command .SIZE in 'General Commands Reference Guide T' (general_ref_t.pdf, page 270)
SNOOPer.SnapShot
Restart trace capturing once
see command .SnapShot in 'General Commands Reference Guide T' (general_ref_t.pdf, page 272)
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
57
SNOOPer Trace Commands
SNOOPer.state
Display trace configuration window
see command .state in 'General Commands Reference Guide T' (general_ref_t.pdf, page 275)
SNOOPer.STATistic
Statistic analysis
see command .STATistic in 'General Commands Reference Guide T' (general_ref_t.pdf, page 278)
SNOOPer.STATistic.DIStance
Time interval for a single event
see command .STATistic.DIStance in 'General Commands Reference Guide T' (general_ref_t.pdf, page 289)
SNOOPer.STATistic.DistriB
Distribution analysis
see command .STATistic.DistriB in 'General Commands Reference Guide T' (general_ref_t.pdf, page 292)
SNOOPer.STATistic.DURation
Time between two events
see command .STATistic.DURation in 'General Commands Reference Guide T' (general_ref_t.pdf, page 295)
SNOOPer.STATistic.Func
Nesting function runtime analysis
see command .STATistic.Func in 'General Commands Reference Guide T' (general_ref_t.pdf, page 300)
SNOOPer.STATistic.GROUP
Group run-time analysis
see command .STATistic.GROUP in 'General Commands Reference Guide T' (general_ref_t.pdf, page 324)
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
58
SNOOPer Trace Commands
SNOOPer.STATistic.Ignore
Ignore false records in statistic
see command .STATistic.Ignore in 'General Commands Reference Guide T' (general_ref_t.pdf, page 325)
SNOOPer.STATistic.InterruptIsFunction Define statistics interrupt processing see command .STATistic.InterruptIsFunction in 'General Commands Reference Guide T' (general_ref_t.pdf, page 327)
SNOOPer.STATistic.Line
HLL-Line analysis
see command .STATistic.Line in 'General Commands Reference Guide T' (general_ref_t.pdf, page 331)
SNOOPer.STATistic.LINKage
Per caller statistic of function
see command .STATistic.LINKage in 'General Commands Reference Guide T' (general_ref_t.pdf, page 334)
SNOOPer.STATistic.Measure
Analyze the performance of a single signal
see command .STATistic.Measure in 'General Commands Reference Guide T' (general_ref_t.pdf, page 336)
SNOOPer.STATistic.PreFetch
Prefetch detection
see command .STATistic.PreFetch in 'General Commands Reference Guide T' (general_ref_t.pdf, page 341)
SNOOPer.STATistic.Sort
Specify sorting criterion for statistic commands
see command .STATistic.Sort in 'General Commands Reference Guide T' (general_ref_t.pdf, page 344)
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
59
SNOOPer Trace Commands
SNOOPer.STATistic.sYmbol
Flat run-time analysis
see command .STATistic.sYmbol in 'General Commands Reference Guide T' (general_ref_t.pdf, page 352)
SNOOPer.STATistic.TASK
Task activity statistic
see command .STATistic.TASK in 'General Commands Reference Guide T' (general_ref_t.pdf, page 358)
SNOOPer.STATistic.TASKFunc
Task specific function run-time analysis
see command .STATistic.TASKFunc in 'General Commands Reference Guide T' (general_ref_t.pdf, page 365)
SNOOPer.STATistic.TASKKernel
Task analysis with kernel markers (flat)
see command .STATistic.TASKKernel in 'General Commands Reference Guide T' (general_ref_t.pdf, page 373)
SNOOPer.STATistic.TASKSRV
Analysis of time in OS service routines
see command .STATistic.TASKSRV in 'General Commands Reference Guide T' (general_ref_t.pdf, page 376)
SNOOPer.STATistic.TASKState
Performance analysis
see command .STATistic.TASKState in 'General Commands Reference Guide T' (general_ref_t.pdf, page 377)
SNOOPer.STATistic.TASKTREE
Tree display of task specific functions
see command .STATistic.TASKTREE in 'General Commands Reference Guide T' (general_ref_t.pdf, page 381)
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
60
SNOOPer Trace Commands
SNOOPer.STATistic.TREE
Tree display of nesting function run-time analysis
see command .STATistic.TREE in 'General Commands Reference Guide T' (general_ref_t.pdf, page 383)
SNOOPer.STATistic.Use
Use records
see command .STATistic.Use in 'General Commands Reference Guide T' (general_ref_t.pdf, page 384)
SNOOPer.TDelay
Trigger delay
see command .TDelay in 'General Commands Reference Guide T' (general_ref_t.pdf, page 390)
SNOOPer.Timing
Waveform of trace buffer
see command .Timing in 'General Commands Reference Guide T' (general_ref_t.pdf, page 399)
SNOOPer.TOut
Define trigger destination (SNOOPer)
see command .TOut in 'General Commands Reference Guide T' (general_ref_t.pdf, page 402)
SNOOPer.TRACK
Set tracking record
see command .TRACK in 'General Commands Reference Guide T' (general_ref_t.pdf, page 405)
SNOOPer.TValue
Define data value for trigger
see command .TValue in 'General Commands Reference Guide T' (general_ref_t.pdf, page 408)
SNOOPer.View
Display single record
see command .View in 'General Commands Reference Guide T' (general_ref_t.pdf, page 410)
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
61
SNOOPer Trace Commands
SNOOPer.ZERO
tbd.
see command .ZERO in 'General Commands Reference Guide T' (general_ref_t.pdf, page 412)
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
62
SNOOPer Trace Commands
SPE
SPE
Signal Processing eXtension (SPE)
PowerPC 55xx/85xx only
See also ■ SPE.Init
■ SPE.Set
■ SPE.view
SPE.Init
❏ SPE()
Initialize SPE registers
PowerPC 55xx/85xx only
Format:
SPE.Init SPE.RESet (deprecated)
Initializes all SPE registers to zero.
See also ■ SPE
■ SPE.view
SPE.Set
Modify SPE registers
PowerPC 55xx/85xx only
Format:
SPE.Set [/]
:
R0..R31 ACC SPEFSCR
Writes the given value to the specified SPE register. R0..R31 and ACC are 64-bit values that are entered as 16-digits hex values: SPE.Set R15 0x123456789ABCDEF0 SPE.Set ACC 0xFFFFFFFFFFFFFFFF
See also ■ SPE
■ SPE.view ©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
63
SPE
SPE.view
Display SPE register window
PowerPC 55xx/85xx only
Format:
SPE.view [/]
Opens a window displaying the SPE vector registers R0..R31, ACC and SPEFSCR. For a description of the , see Register.view.
See also ■ SPE
■ SPE.Init
■ SPE.Set
❏ SPE()
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
64
SPE
SPot
Function Operation Modes (TRACE32-ICE) The spot system is used for temporary break of the real-time program execution in order get control over the CPU to display memory or internal CPU registers. Spot breakpoints can be defined in both, program and data areas. The analyzer can also be used to trigger short breaks. Spot breakpoints are defined using the Break.Set /Spot command and are erased by means of the Break.Delete /S command. The three spot point sources, Program, Data, Analyzer can be enabled or disabled. If the switch is set to the ALways position the program is halted each time a spot breakpoint is encountered and restarted after all windows are refreshed.
Performance
ON
The program will be interrupted only if there is a job to do for the emulation CPU, e.g. read or write memory. Emulation speed (performance) with the system switched to ON is about 5%-10% slower than without spot points. Each program stop takes approx. 100 … 500 µs. On each spot only one memory area can be read. With slower CPU types or CPU types with background-debug interface (like MC68332) the performance degrade is higher. This mode can be used, when variables must be constantly monitored and the spot points are reached very often (each few milliseconds) in the program.
ALways
The emulation is stopped, all windows are updated and after this the emulation is started again. This will normally take about 10 … 200 ms, depending on the number and the complexity of the windows. The performance in this mode will go down by some orders of magnitude, depending on the time between two spot points. This mode is useful, if a complete consistent snapshot of the system is required at a very occasionally reached location.
The advantage of the SPOT function - compared to the general break function (Break.Enable Foreground) - is that the break takes place at a exact defined point within the program. For example, if a spot breakpoint is set to data area it will be assured that the program window shows this partition of the program where the data transfer is executed. Spot points set to program lines will allow displaying local variables in a running target program.
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
65
SPot
SPot.Analyzer
Format:
Analyzer spot points
SPot.Analyzer OFF | ON | ALways
Enables the spot function forced by the analyzer trigger unit.
See also ■ SPot.state ▲ ’Spot System’ in ’ICE User’s Guide’
SPot.Data
Format:
Write/read accesses
SPot.Data OFF | ON | ALways
Activates the spot function generated by spot breakpoints which will be set to data areas.
See also ■ SPot.state ▲ ’Spot System’ in ’ICE User’s Guide’
SPot.OFF
Format:
Switch off
SPot.OFF
Disables the whole spot system. This allows the use of the Spot breakpoint for other purposes. When the performance analyzer is activated, the SPot system is always turned off, because the breakpoints are used to classify address partitions.
See also ■ SPot.state ▲ ’Spot System’ in ’ICE User’s Guide’
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
66
SPot
SPot.ON
Format:
Switch on
SPot.ON
Enables the spot point system. The spot point system will be locked, if the performance analyzer is active.
See also ■ SPot.state ▲ ’Spot System’ in ’ICE User’s Guide’
SPot.Program
Format:
Program spot points
SPot.Program OFF | ON | ALways
Enables the program spot points. Program spot points are synchronous, i.e. the program is breaked before the instruction is executed.
See also ■ SPot.state ▲ ’Spot System’ in ’ICE User’s Guide’
SPot.RESet
Format:
Reset command
SPot.RESet
Resets the command to the default state. As default all three spot types are switched to ON.
See also ■ SPot.state ▲ ’Spot System’ in ’ICE User’s Guide’
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
67
SPot
SPot.state
Format:
State display
SPot.state
Displays the configuration of the SPot system. E68::w.spot spot RESet ON OFF
Program OFF ON ALways
Analyzer OFF ON ALways
Data OFF ON ALways
See also ■ SPot.Analyzer ■ SPot.Program
■ SPot.Data ■ SPot.RESet
■ SPot.OFF ■ SPot.Test
■ SPot.ON
▲ ’Spot System’ in ’ICE User’s Guide’ ▲ ’Breakpoint Control’ in ’Training ICE Basics’
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
68
SPot
SPot.Test
Format:
Set spot point
SPot.Test |
This command makes it possible for you to set individual spot breakpoints very quickly and to configure the spot system correctly. The function is as follows: 1.
Erase all spot breakpoints.
2.
Set the spot system to Data.ON and Program.ON mode.
3.
Set spot breakpoints to the specified address. ; Start program and display register contents at a specified point. Register.view Go.direct SPot.Test sieve … SPot.Test sieve2 … SPot.OFF … SPot.ON
; Open register window ; Start program ; Set spot breakpoint at address 'sieve' ; Convert spot breakpoint ; Switch spot-system off ; Spot breakpoint at 'sieve2'
See also ■ SPot.state ▲ ’Spot System’ in ’ICE User’s Guide’
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
69
SPot
SSE
SSE
SSE registers (Streaming SIMD Extension)
Intel x86
The SSE command group is used to display and modify the SSE (Streaming SIMD Extensions) registers for Intel x86.
See also ■ SSE.Init ■ SSE.view
■ SSE.OFF ❏ SSE()
■ SSE.ON
SSE.Init
■ SSE.Set
Initialize SSE registers
Intel x86
Format:
SSE.Init
Sets the SSE registers to their default values.
See also ■ SSE
SSE.OFF
Inhibit SSE accesses by the debugger
Intel x86
Format:
SSE.OFF
Inhibits accesses to the SSE by the debugger. Usually required until the SSE is on.
See also ■ SSE
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
70
SSE
SSE.ON
Permit SSE accesses by the debugger
Intel x86
Format:
SSE.ON
Permits accesses to the SSE by the debugger (default).
See also ■ SSE
SSE.Set
Modify SSE registers
Intel x86
Format:
SSE.Set … [/]
Modifies the SSE registers. For a description of the , see Register.view.
See also ■ SSE
SSE.view
Display SSE registers
Intel x86
Format:
SSE.view [/]
Displays the SSE registers. For a description of the , see Register.view.
See also ■ SSE ▲ ’Release Information’ in ’Release History’
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
71
SSE
Step
Step
Steps through the program
Steps through the program in controlled way executing an assembly opcode, a source line or a function at a time.
See also ■ ■ ■ ■
Step.Asm Step.BackTill Step.Diverge Step.single
■ ■ ■ ■
■ Step.BackChange ■ Step.CycleReq ■ Step.Mix
Step.Back Step.Change Step.Hll Step.Till
■ Step.BackOver ■ Step.CycleWait ■ Step.Over
▲ ’Data Access’ in ’EPROM/FLASH Simulator’ ▲ ’Realtime Emulation’ in ’ICE User’s Guide’ ▲ ’Release Information’ in ’Release History’
Step.Asm
Format:
Assembler single-stepping
Step.Asm []
Switches to assembler mode before performing the required single steps via the Step command. The performed steps are assembly steps.
See also ■ Step
■ Step.single
▲ ’Realtime Emulation’ in ’ICE User’s Guide’
Step.Back
Format:
Step back
Step.Back
This command can only be used together with the Context Tracking System (CTS). The command steps back one assembler instruction or one HLL line.
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
72
Step
Under certain conditions, the command automatically activates CTS when it is turned off.
See also ■ Step
■ Step.single
Step.BackChange
Format:
Step back till expression changes
Step.BackChange
Steps back till the expression changes. The command will stop also, if the expression cannot be evaluated. s.bc r(a7)
; steps till register A7 changes
s.bc d.l(sd:0x100)
; steps till the longword at location 100 ; changes
See also ■ Step
■ Step.single
▲ ’Release Information’ in ’Release History’
Step.BackOver
Format:
Step back
Step.BackOver
This command can only be used together with the Context Tracking System (CTS). The command steps back one assembler instruction or one HLL line. Under certain conditions, the command automatically activates CTS when it is turned off.
See also ■ Step
■ Step.single
▲ ’Release Information’ in ’Release History’
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
73
Step
Step.BackTill
Format:
Step back till expression true
Step.BackTill []
Steps back till the boolean expression becomes true. The command will stop also, if the expression cannot be evaluated. sb.t r(a7)>0x1000
; steps till register A7 is larger than ; 1000
sb.t d.l(sd:0x100)==0x0
; steps till the longword at location 100 ; gets the value 0
See also ■ Step
■ Step.single
Step.Change
Format:
Step till expression changes
Step.Change []
Steps till the expression changes. The command will stop also, if the expression cannot be evaluated. s.c r(a7)
; steps till register A7 changes
s.c d.l(sd:0x100)
; steps till the longword at location ; 100 changes
See also ■ Step
■ Step.single
▲ ’Realtime Emulation’ in ’ICE User’s Guide’
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
74
Step
Step.CycleReq
Format:
Single cycle
Step.CycleReq
Single cycle execution using BUSREQ. The single cycle function is interrupted by using Break. The break takes place at the end of the next assembler command. Single cycle stepping can be done only, when the dual-port access is in Denied mode.
NOTE:
Not supported on all emulation probes.
See also ■ Step
■ Step.single
▲ ’Realtime Emulation’ in ’ICE User’s Guide’
Step.CycleWait
Format:
Single cycle
Step.CycleWait
Single cycle execution using WAIT. The single cycle function is aborted using Break. The break takes place at the end of the next assembler command. Single cycle stepping can be done only, when the dual-port access is Denied mode.
NOTE:
Not supported on all emulation probes.
See also ■ Step
■ Step.single
▲ ’Realtime Emulation’ in ’ICE User’s Guide’
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
75
Step
Step.Diverge
Format:
Step till next unreached line
Step.Diverge
The Step.Diverge command can be used to exit loops or to fast forward to not yet reached HLL lines. It performs Step.Over repeatedly until a HLL line is reached which has not been reached in the previous steps. TRACE32 maintains a list of all HLL lines which were already reached. These reached lines are marked with a slim grey line in the List window (see picture below). In ASM/MIX mode, Step.Diverge applies to assembler code lines instead of HLL lines.
The reached lines list is cleared when you use the Go.direct command without address or the Break command while the program execution is stopped. The reached lines list is not cleared at the following commands: •
Step.single, Step.Over, Step.Change , Step.Till
•
Var.Step.Change , Var.Step.Till
•
Go.Return, Go.Up, Go.direct
•
Var.Go.direct
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
76
Step
The debugger did not reach the else branch yet
See also ■ Step
■ Step.single
▲ ’Release Information’ in ’Release History’
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
77
Step
Step.Hll
Format:
HLL single-stepping
Step.Hll []
Similar to the Step command, except that simultaneous switching into high-level language mode occurs.
See also ■ Step
■ Step.Mix
■ Step.single
▲ ’Realtime Emulation’ in ’ICE User’s Guide’ ▲ ’Release Information’ in ’Release History’
Step.Mix
Format:
Mixed single-stepping
Step.Mix []
Similar to the Step command, except that simultaneous switching into mixed mode takes place.
See also ■ Step
■ Step.Hll
■ Step.single
▲ ’Realtime Emulation’ in ’ICE User’s Guide’
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
78
Step
Step.Over
Format:
Step over call
Step.Over
The command is used to step within a function and runs called functions in real-time. The method for this command is depends, whether the operation-mode is HLL or assembler (ASM/MIX). ASM
In assembler mode the emulator reads the instruction at the current PC. On a CALL instruction a Go.Next command is executed. All other instructions will cause a regular single-step command.
HLL
In HLL mode the system first executes a HLL single-step. After this step it checks, whether the PC is still in the same function. If the PC has left the function it will check the value addressed by the SP. With that value being within the original function, the program is continued to that point. If this address contains no HLL breakpoint the above procedure will be repeated (HLL step …).
See also ■ Step
■ Step.single
▲ ’Realtime Emulation’ in ’ICE User’s Guide’ ▲ ’Release Information’ in ’Release History’
Step.single
Format:
Single-stepping
Step.single []
The command executes one program step until the next assembler instruction or HLL line, depending on the current debug mode, is reached. Count is the number of command executions (default is 1). s
; single step
s 10.
; 10 steps
See also ■ ■ ■ ■ ■
SETUP.IMASKASM Step.Back Step.Change Step.Hll Var.Step
■ ■ ■ ■
■ ■ ■ ■
SETUP.IMASKHLL Step.BackChange Step.CycleReq Step.Mix
Step Step.BackOver Step.CycleWait Step.Over
■ ■ ■ ■
Step.Asm Step.BackTill Step.Diverge Step.Till
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
79
Step
Step.Till
Format:
Step till expression true
Step.Till []
Steps till the boolean expression becomes true. The command will stop also, if the expression cannot be evaluated. s.t r(a7)>0x1000
; steps till register A7 is larger than 1000
s.t d.l(sd:0x100)==0x0
; steps till the longword at location 100 ; gets the value 0
See also ■ Step
■ Step.single
▲ ’Realtime Emulation’ in ’ICE User’s Guide’
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
80
Step
STOre
STOre
Create script for TRACE32 settings
Format:
STOre [ …]
:
default ALL Win | WinPAGE Symbolic | HEX SYStem …
Stores settings in the format of a PRACTICE script. They can be executed by using the DO command.
Description
no item specified
If no item is specified, then the default setting is used; see default below.
ALL
Store all settings excepting the Break and Flag information.
AnalyzerFocus
Save the current AUTOFOCUS configuration to a file.
ART
See ART command.
BookMark
Store the settings of trace bookmarks and address bookmarks - see BookMark command. To export bookmarks as an XML file, see BookMark.EXPORT.
Break
Store breakpoints - see Break command.
BSDL
Store the boundary scan settings. See BSDL command.
Count
See Count command.
default
Some settings are stored by default, except for the window setting.
eXeption
See eXeption command.
FDX
See FDX command.
Flag
See Flag command.
FLASH
(For diagnostic purposes only.) Store the FLASH declaration displayed in the FLASH.List window and the settings made with the FLASH.TARGET command. ©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
81
STOre
Description
GLOBAL
Stores global PRACTICE macros with the current values - see GLOBAL command.
GROUP
See GROUP command.
HELP
Stores help settings and bookmarks - see HELP command
HISTory
See HISTory command.
LA
Logic Analyzer - see LA command.
LOGGER
See LOGGER command.
MAP
See MAP command.
NAME
See NAME command.
NoDate
No date entry at the beginning of the PRACTICE script file (*.cmm).
On-chip
See Onchip command.
PBREAK
Stores the breakpoints created for PRACTICE scripts (*.cmm). See PBREAK command group.
PERF
Performance Analyzer - see PERF command.
POD
See POD command.
PULSE
Pulse Generator - see PULSE command.
PULSE2
Pulse Generator 2 - see PULSE2 command.
PULSEP
PulseProbe - see PULSE command.
Register, RegSet
See Register command.
SNOOP
See SNOOP command.
SPATH
Source search path - see sYmbol.SPATH command.
SPATHCACHE
Stores cached directories from the sYmbol.SPATH command.
Symbolic, HEX
Addresses (e.g. for the commands MAP or Flag) are stored symbolic or plain hex. With this option breakpoints can be stored and recalled for a newer version of the program with different addresses. The keyword must be entered before the item which shall be stored. The default is to store symbolic.
SYnch
See SYnch command. ©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
82
STOre
Description
SYStem
See SYS command.
TRANSlation
Store all static address TRANSlations as well as all common, transparent and protected address ranges as displayed by command TRANSlation.List.
TrOnchip
Trigger Onchip - see TrOnchip command.
TrPod
Trigger Probe - see TP command.
VCO
See VCO command.
Win
Store entire window configuration.
WinPAGE
Store the current window page. See WinPAGE command.
The command STOre test SYStem
for example produces the following file: E:: SYSTEM.ACCESS WAIT SYSTEM.CLOCK VCO SYSTEM.TIMEREQ 100.000us SYSTEM.TIMEOUT 100.000us SYSTEM.LINE BUSREQ OFF SYSTEM.LINE ECS OFF SYSTEM.OPTION CACHE OFF SYSTEM.OPTION FPU OFF SYSTEM.OPTION RAMWAIT OFF SYSTEM.OPTION TRACEWAIT OFF SYSTEM.OPTION BRKVECTOR 0. SYSTEM.LINE FCODE UD: SYSTEM.MODE RESET ENDDO
See also ■ AutoSTOre
■ BookMark.List
■ ClipSTOre
▲ ’Store Settings’ in ’EPROM/FLASH Simulator’ ▲ ’Release Information’ in ’Release History’
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
83
STOre
sYmbol
sYmbol
Debug symbols
Using the sYmbol command group, you can list, browse, or modify existing symbols and create new symbols. Symbolic information is stored in several tables combined with one another. For details about the syntax of symbols, search paths and C++ support, refer to the description of the Var command. Statics
Contains all static symbols, i.e. symbols with a fixed address. The symbol may be local related to a function, a module or a program.
Functions
Contains all function blocks and additional information about functions, i.e. virtual frame pointers, register usage, stack frame layout.
Locals
All local symbols of a function. The ranges of validity are also contained in this table.
Modules
A module is one separately compiled program unit, i.e. one source file.
Types
High level language types and the physical description. Only named types are included in this table.
Sources
Contains a list of all HLL source files and the path names to the sources.
SPATH
List of directories of the source search path.
Lines
High level language source lines, respectively blocks. On one address can be one high level language block only.
Sections
Logical and physical program address ranges. According to the compiler a differentiation between 'CODE', 'DATA', 'BSS', 'ROMABLE' etc. is made. For each section special access rights are valid.
Programs
Usually only one program is loaded. If more than one has been loaded, the option NoClear must be used together with the Data.LOAD command.
Stacks
Contains information about the stack frame. Usually this is the offset between a register in the processor and a “virtual frame pointer”. This information is needed when there is no real frame pointer register used by highly optimizing compilers.
Attributes
This table is target dependent. It may contain information about different processor executing environments (e.g. ARM/Thumb) or special code constructs (e.g. jump tables or literal data in code).
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
84
sYmbol
Macros
Contains the contents of preprocessor macros. This information is not available for all compilers. However it may be generated manually with the sYmbol.CREATE.MACRO command.
Map
Holds a log of all memory operations during download. Only maintained when the option MAP was set with the load command.
Compilers
This listing contains compiler specific information. It cannot be displayed and is determined on internal use by the HLL debugger
PRACTICE Functions sYmbol.EXIST() Boolean function. Returns true when the symbol exists. sYmbol.RANGE() Returns the address range occupied by symbol. sYmbol.END() Returns the last address occupied by the symbol. sYmbol.SIZEOF() Returns the size occupied by the symbol in memory. sYmbol.SECRANGE() Return the logical address range occupied by the named section. sYmbol.SECPRANGE() Return the physical address range occupied by the named section. sYmbol.SIZEOF() Returns the size occupied by the variable in memory. sYmbol.NAME() Return the name of the closest symbol for the specified address (as a string). sYmbol.FUNCTION() Return the name of the function for the specified address (as a string). sYmbol.SOURCEFILE() Return the name of the source file for the specified address (as a string). sYmbol.SOURCELINE() Return the line number for the specified address (as a integer).
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
85
sYmbol
; command extension to call external editor (~~/demo/practice/edit.cmm) ON CMD EDT GOSUB ( LOCAL &file &line &cmdline ENTRY &file IF "&file"=="" ( &file=sYmbol.SOURCEFILE(p:Register(pc)) &line=sYmbol.SOURCELINE(p:Register(pc)) ) &cmdline="os edit &file "+STRing.CUT("&line",-1) &cmdline RETURN )
See also ❏ ❏ ❏ ❏ ❏ ❏
sYmbol.BEGIN() sYmbol.EXIST() sYmbol.MATCHES() sYmbol.SEARCHFILE() sYmbol.SECRANGE() sYmbol.SOURCEPATH()
❏ ❏ ❏ ❏ ❏ ❏
sYmbol.COUNT() sYmbol.EXIT() sYmbol.NAME() sYmbol.SECADDRESS() sYmbol.SIZEOF() sYmbol.STATE()
❏ ❏ ❏ ❏ ❏ ❏
sYmbol.END() sYmbol.FUNCTION() sYmbol.PRANGE() sYmbol.SECEND() sYmbol.SOURCEFILE() sYmbol.TYPE()
❏ ❏ ❏ ❏ ❏ ❏
sYmbol.EPILOG() sYmbol.IMPORT() sYmbol.RANGE() sYmbol.SECPRANGE() sYmbol.SOURCELINE() sYmbol.VARNAME()
▲ ’sYmbol Functions’ in ’General Functions’
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
86
sYmbol
sYmbol.AddInfo
Format:
Provide additional symbolic information
sYmbol.AddInfo
The command can provide additional information about structures, pointers or variables. The information can scale the display, make typecasts or provide application specific interpretation of information (e.g. C++ descriptor displays). Here is a list of additional symbolic information types that can be set (not all symbolic information types are available depending on what the information is assigned to):
Scaled [right is a value, whose lower 17 bits are the part of an address. The target address is calculated using the lower 17 bits and adding 0x22200000 as base address. The pointer in this example is declared using the command sYmbol.AddInfo.Member strtype1 right MaskedPointer 0x0001FFFF 0x22200000
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
93
sYmbol
Example 2 C Code: struct example{ uint32 mode : 2; } instance; enum values { on = 0, off, flicker };
PRACTICE script example: ; ENUM sYmbol.AddInfo.Member example mode ENUM 0 "on" sYmbol.AddInfo.Member example mode ENUM 1 "off" sYmbol.AddInfo.Member example mode ENUM 2 "flicker" sYmbol.CREATE.Macro on sYmbol.CREATE.Macro off sYmbol.CREATE.Macro flicker sYmbol.CREATE.Done
0 1 2
Var.Set instance.mode=flicker
See also ■ sYmbol.AddInfo
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
94
sYmbol
sYmbol.AddInfo.RESet
Format:
Remove all additional information
sYmbol.AddInfo.RESet
Removes all additional information.
See also ■ sYmbol.AddInfo
■ sYmbol.AddInfo.Delete
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
95
sYmbol
sYmbol.AddInfo.Type
Add information for a data type
Format:
sYmbol.AddInfo.Type []
:
NSTRING JSTRING ZSTRING MostDerived DESCRIPTOR
Add information to a specific data type. All symbolic information types are described in sYmbol.AddInfo. sYmbol.AddInfo.Type tdef2 ZSTRING
; the data type tdef2 is a zero; terminated string
The following shows examples to display Symbian OS descriptors and strings correctly in the debugger window. sYmbol.AddInfo.Type "TDesC16" DESCRIPTOR 0x1xxxxxxx "TPtrC16" sYmbol.AddInfo.Type "TPtrC8" NSTRING 0x0xxxxxxx
sYmbol.AddInfo.Type nextx MostDerived "TreeMFPtr"
See also ■ sYmbol.AddInfo
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
96
sYmbol
sYmbol.AddInfo.Var
Add information for a variable
Format:
sYmbol.AddInfo.Var []
:
Scaled [ []] RScaled [ []] ZSTRING MaskedPointer MostDerived
Adds type information to a variable. All symbolic information types are described in sYmbol.AddInfo. sYmbol.AddInfo.Var cstr1 ZSTRING
;The contents of cstr1 is a zero;terminated string
sYmbol.AddInfo.List
;Display definition list
See also ■ sYmbol.AddInfo
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
97
sYmbol
sYmbol.AutoLOAD
Format:
Automated loading of symbols
sYmbol.AutoLOAD
The command sYmbol.AutoLOAD allows to automate the loading of symbol files. This is helpful if a boot loader or an RTOS downloads code to the target. To debug this downloaded code loading of the appropriate symbol information is required. The sYmbol.AutoLOAD command maintains a list for automatic loading of symbol information. This list contains: •
A list of address ranges
•
For each address range a program name and an appropriate load command
Whenever the user wants to display an address within a specified address range, and TRACE32 also needs symbol information for the display, the appropriate load command is automatically started.
See also ■ ■ ■ ■ ■ ■ ■
■ ■ ■ ■ ■ ■ ■
sYmbol.AutoLOAD.CHECK sYmbol.AutoLOAD.CHECKDLL sYmbol.AutoLOAD.CHECKLINUX sYmbol.AutoLOAD.CLEAR sYmbol.AutoLOAD.Create sYmbol.AutoLOAD.LOADEPOC sYmbol.AutoLOAD.SET
sYmbol.AutoLOAD.CHECKCoMmanD sYmbol.AutoLOAD.CHECKEPOC sYmbol.AutoLOAD.CHECKUEFI sYmbol.AutoLOAD.config sYmbol.AutoLOAD.List sYmbol.AutoLOAD.RESet sYmbol.AutoLOAD.TOUCH
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
98
sYmbol
sYmbol.AutoLOAD.CHECK
Format:
Update autoloader table
sYmbol.AutoLOAD.CHECK [now | ON | OFF | ONGO]
A single sYmbol.AutoLOAD.CHECK command triggers the refresh of the Autoloader table (sYmbol.AutoLOAD.List).
now
Update the Autoloader table now.
ON
If set to ON, TRACE32 updates the autoloader table after every single step and whenever the program execution is stopped. This significantly slows down the speed of TRACE32.
OFF
If set to OFF, no automatic update of the autoloader table is done.
ONGO
TRACE32 updates the autoloader table whenever the program execution is stopped.
See also ■ sYmbol.AutoLOAD ▲ ’Features’ in ’RTOS Debugger for Linux - Stop Mode’
sYmbol.AutoLOAD.CHECKCoMmanD
Format:
Configure dynamic autoloader
sYmbol.AutoLOAD.CHECKCoMmanD
The dynamic autoloader reads the target’s process table and fills the autoloader list with the modules found on the target. All necessary information, such as load addresses and space IDs, are retrieved from kernel internal information. The dynamic autoloader is activated by the command sYmbol.AutoLOAD.CHECK. If an address is accessed, that is covered by the autoloader list, the autoloader calls and appends the load addresses and the space ID of the module to the action. Usually, is a call to a PRACTICE script that handles the parameters and loads the symbols. Please see the example scripts in the demo directory. sYmbol.AutoLOAD.CHECKCoMmanD "DO autoload" sYmbol.AutoLOAD.CHECK sYmbol.AutoLOAD.List
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
99
sYmbol
This command needs a kernel awareness configured for the OS running on the target. Please see the RTOS Debugger manuals for further information
NOTE:
The dynamic autoloader covers only modules, that are already started. Modules that are not in the current process/library table are not covered.
See also ■ sYmbol.AutoLOAD
sYmbol.AutoLOAD.CHECKDLL
Format:
Configure automatic DLL file loader
sYmbol.AutoLOAD.CHECKDLL [] []
This command can only be used with Texas Instruments DSPs. If the symbol __DLModules is not available, please specify the for the automatic DLL file loader. If no is specified DO autoload is used. The automatic DLL file loader is activated by the command sYmbol.AutoLOAD.CHECK. Please refer also to the examples in ~~\files\demo\c55x\etc\dll.
See also ■ sYmbol.AutoLOAD
sYmbol.AutoLOAD.CHECKEPOC Configure dynamic autoloader for Symbian
Format:
sYmbol.AutoLOAD.CHECKEPOC
The dynamic autoloader reads the target’s process table and fills the autoloader list with the modules found on the target. All necessary information, such as load addresses and space IDs, are retrieved from kernel internal information. The dynamic autoloader also covers dynamically loaded modules. The dynamic autoloader is activated by the command sYmbol.AutoLOAD.CHECK.
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
100
sYmbol
If an address is accessed, that is covered by the autoloader list, the autoloader calls and appends the load addresses and the space ID of the module to the action. Usually, is a call to a PRACTICE script that handles the parameters and loads the symbols. Please see the example scripts in the demo directory. sYmbol.AutoLOAD.CHECKEPOC "DO autoload"
NOTE:
• •
The dynamic autoloader covers only modules, that are already started. Modules that are not in the current process/library table are not covered. If a process symbol file is loaded, the dynamic autoloader adds the space ID, which may be used to load the symbols to the appropriate space.
See also ■ sYmbol.AutoLOAD
sYmbol.AutoLOAD.CHECKLINUX
Format:
Configure autoloader for Linux debugging
sYmbol.AutoLOAD.CHECKLINUX
Specifies the command that is automatically used by the Autoloader to load the symbol information. Usually a script called autoload.cmm provided by Lauterbach is used.
See also ■ sYmbol.AutoLOAD ▲ ’Features’ in ’RTOS Debugger for Linux - Stop Mode’
sYmbol.AutoLOAD.CHECKUEFI
Format:
Configure autoloader for UEFI debugging
sYmbol.AutoLOAD.CHECKUEFI
The UEFI code is provided by the boot FLASH, but debugging becomes more comfortable when debug symbols are available. TRACE32 uses the so-called Autoloader to realize the automatic loading of debug symbols whenever they are required. The command sYmbol.AutoLOAD.CHECKUEFI specifies the command that is automatically used by the Autoloader to load the symbol information. Usually a script called autoload.cmm provided by Lauterbach is used. ©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
101
sYmbol
The command sYmbol.AutoLOAD.CHECKUEFI implicitly also defines the parameters that TRACE32 uses internally for the Autoloader. When the Autoloader is configured, the command sYmbol.AutoLoad.CHECK can be used to scan the UEFI module table and to activate the Autoloader. The command sYmbol.AutoLOAD.List allows to inspect the scanned module information. Since the UEFI module table is updated by UEFI, a re-scan might be necessary. sYmbol.AutoLOAD.CHECKUEFI "DO demo/~~/x86/uefi/h2o/autoload.cmm" sYmbol.AutoLOAD.CHECK sYmbol.AutoLOAD.List
See also ■ sYmbol.AutoLOAD ▲ ’Features’ in ’UEFI BLDK Debugger’ ▲ ’Features’ in ’UEFI H2O Debugger’ ▲ ’Features’ in ’UEFI TianoCore Debugger’
sYmbol.AutoLOAD.CLEAR
Format:
Remove symbol information
sYmbol.AutoLOAD.CLEAR |
Remove symbol information for the specified or . sYmbol.AutoLOAD.CLEAR C:0x5009B420 sYmbol.AutoLOAD.CLEAR "*trkengine*"
See also ■ sYmbol.AutoLOAD
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
102
sYmbol
sYmbol.AutoLOAD.config
Format:
Configure symbol autoloader
sYmbol.AutoLOAD.config
Opens a configuration dialog for the symbol autoloader.
See also ■ sYmbol.AutoLOAD
sYmbol.AutoLOAD.Create
Format:
Create entry for autoloader table
sYmbol.AutoLOAD.Create
Specify an entry for the Autoloader table. The complete Autoloader table can be displayed with the sYmbol.AutoLOAD.List command.
Is the TRACE32 internal name for the symbol file. Please use the command sYmbol.List.Program to get this name.
Can be either a command of the Data.LOAD command group or a PRACTICE script.
sYmbol.AutoLOAD.Create 0x1000--0x2fff "thumble" \ "Data.LOAD.Elf thumble.axf /NoClear /NoCODE" sYmbol.AutoLOAD.Create 0x10000--0x1ffff "can" "DO Load_CAN"
See also ■ sYmbol.AutoLOAD
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
103
sYmbol
sYmbol.AutoLOAD.List
List autoloader table
+
Format:
sYmbol.AutoLOAD.List
List the Autoloader table.
See also ■ sYmbol.AutoLOAD
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
104
sYmbol
sYmbol.AutoLOAD.LOADEPOC
Definition for static autoloader for Symbian
Format:
sYmbol.AutoLOAD.LOADEPOC [/]
:
StripPATH | CutPATH | LowerPATH StripPART |
When generating a Symbian OS ROM image (e.g. with “buildrom”), the builder generates a log file as well (usually “rombuild.log”). This log file contains the section addresses of all modules included in the image. The static autoloader reads this log file and fills the autoloader list with the modules found in the log file with it’s appropriate load addresses. If an address is accessed, that is covered by the autoloader list, the autoloader calls and appends the load addresses of the module to the action. Usually, is a call to a PRACTICE script that handles the parameters and loads the symbols. Please see the example scripts in the demo directory.
NOTE:
• •
The static autoloader addresses only modules, that are linked into the ROM image. Modules loaded to the target dynamically are not covered. The log file does not include the process ID, that a process will get when started. Thus, the static autoloader loads the symbols of a process to space ID zero.
sYmbol.AutoLOAD.LOADEPOC "G:KERNELS\\symbian\eka1\la_001.techview.log" "DO autoload" sYmbol.AutoLOAD.LOADEPOC "G:KERNELS\\symbian\eka1\la_001.techview.log" "DO autoload" /STRIPPART "\bin"
See also ■ sYmbol.AutoLOAD
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
105
sYmbol
sYmbol.AutoLOAD.RESet
Format:
Reset autoloader
sYmbol.AutoLOAD.RESet
Clears the autoloader table.
See also ■ sYmbol.AutoLOAD
sYmbol.AutoLOAD.SET
Format:
Mark symbol information manually as loaded
sYmbol.AutoLOAD.SET |
The command sYmbol.AutoLOAD.Set allows to manually mark symbol information as loaded. This is helpful to suppress an error message when no symbol information was generated for a specified address range. sYmbol.AutoLOAD.Set 0x5015E030 sYmbol.AutoLOAD.Set "*efsrv*"
See also ■ sYmbol.AutoLOAD
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
106
sYmbol
sYmbol.AutoLOAD.TOUCH
Format:
Initiate automatic loading by command
sYmbol.AutoLOAD.TOUCH |
Initiate the loading of symbol information via the command line or within a script.
Module name, wildcards possible.
Any address within the address range used by a module.
sYmbol.AutoLOAD.TOUCH "*efsrv*" sYmbol.AutoLOAD.TOUCH 0x50011f9c
See also ■ sYmbol.AutoLOAD
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
107
sYmbol
sYmbol.Browse
Browse symbols
See sYmbol.Browse.sYmbol
See also ■ sYmbol.Browse.Class ■ sYmbol.Browse.SFunction ■ sYmbol.Browse.sYmbol
■ sYmbol.Browse.Enum ■ sYmbol.Browse.SModule ■ sYmbol.Browse.Type
■ sYmbol.Browse.Function ■ sYmbol.Browse.SOURCE ■ sYmbol.Browse.Var
■ sYmbol.Browse.Module ■ sYmbol.Browse.Struct ■ sYmbol.INFO
▲ ’Release Information’ in ’Release History’ ▲ ’The Symbol Database’ in ’Training HLL Debugging’
sYmbol.Browse.Class
Format:
Browse classes
sYmbol.Browse.Class []
Lets you browse through the list of classes that have been loaded to the internal TRACE32 symbol database with Data.LOAD.
See also ■ sYmbol.Browse
sYmbol.Browse.Enum
Format:
Browse enumeration types
sYmbol.Browse.Enum []
Lets you browse through the list of enumeration types that have been loaded to the internal TRACE32 symbol database with Data.LOAD.
See also ■ sYmbol.Browse
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
108
sYmbol
sYmbol.Browse.Function
Browse functions
Format:
sYmbol.Browse.Function [ [] [/]
:
Click Delete
Lets you browse through the list of functions that have been loaded to the internal TRACE32 symbol database with Data.LOAD.
Alternatively, you can browse through the function list by selecting Functions from the drop-down list in the sYmbol.Browse.sYmbol window. For a description of the command line arguments, see sYmbol.Browse.sYmbol. In addition, the browser command is automatically executed when: •
A symbol is entered that ends with a wildcard or
•
The symbol is not unique and the sYmbol.MATCH command is set to Choose. List.auto func*
;First, the symbol browser opens, where you can select ;the desired function with a double-click. ;Then the selected function is displayed in the ;List.auto window.
See also ■ sYmbol.Browse
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
109
sYmbol
sYmbol.Browse.Module
Browse modules
Format:
sYmbol.Browse.Module [ [] [/]
:
Click Delete
Lets you browse through the list of modules that have been loaded to the internal TRACE32 symbol database with Data.LOAD.
Alternatively, you can browse through the module list by selecting Modules from the drop-down list in the sYmbol.Browse.sYmbol window. For a description of the command line arguments, see sYmbol.Browse.sYmbol.
See also ■ sYmbol.Browse
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
110
sYmbol
sYmbol.Browse.SFunction
Browse functions
Format:
sYmbol.Browse.SFunction [ [] [/]
:
Click Delete
Lets you browse through the list of functions that have been loaded to the internal TRACE32 symbol database with the Data.LOAD command. The S in SFunction selects the Source check box. With the Source check box selected, the names of the source files are displayed instead of the module names.
Alternatively, you can browse through the function list by selecting Functions from the drop-down list in the sYmbol.Browse.sYmbol window. For a description of the command line arguments, see sYmbol.Browse.sYmbol.
See also ■ sYmbol.Browse
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
111
sYmbol
sYmbol.Browse.SModule
Browse modules
Format:
sYmbol.Browse.SModule [ [] [/]
:
Click Delete
Lets you browse through the modules that have been loaded to the internal TRACE32 symbol database with Data.LOAD. The S in SModule selects the Source check box. With the Source check box selected, the names of the source files are displayed instead of the module names.
Alternatively, you can browse through the module list by selecting Modules from the drop-down list in the sYmbol.Browse.sYmbol window. For a description of the command line arguments, see sYmbol.Browse.sYmbol.
See also ■ sYmbol.Browse
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
112
sYmbol
sYmbol.Browse.SOURCE
Browse source
Format:
sYmbol.Browse.SOURCE [ [] [/]
:
Click Delete
Lets you browse through the list of source files that have been loaded to the internal TRACE32 symbol database with the Data.LOAD command.
For a description of the command line arguments, see sYmbol.Browse.sYmbol.
See also ■ sYmbol.Browse
sYmbol.Browse.Struct
Format:
Browse containers for different variable types
sYmbol.Browse.Struct []
Lets you browse through the containers for different variable types that have been loaded to the internal TRACE32 symbol database with the Data.LOAD command. : You can use the wildcards ? and * to filter the list.
See also ■ sYmbol.Browse
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
113
sYmbol
sYmbol.Browse.sYmbol
Browse symbols
Format:
sYmbol.Browse.sYmbol [ [] [/]
:
Click Delete
Lets you browse through the symbol and debug information that has been loaded to the internal TRACE32 symbol database with the Data.LOAD command. Entering an ASCII string searches for symbols beginning with this string. The Up and Down buttons can be used to navigate up and down in the symbol tree. Double-clicking a symbol in a sYmbol.Browse.sYmbol window opens the symbol in its default window. Alternatively, you can customize TRACE32’s response to the double-click by using the Click option. An example is shown in the screenshots below.
Path and symbol name, or just the symbol name.
HLL types.
The patterns support the wildcards ? and * for filtering the display in the sYmbol.Browse.* windows. Click
Command will be executed after you double-click a symbol entry. Without the Click option, the double-clicked symbol opens in its default window.
Delete
Dialog will be closed after you double-click a symbol entry.
See also ■ sYmbol.Browse
■ sYmbol.STATE
▲ ’The Symbol Database’ in ’Training HLL Debugging’
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
114
sYmbol
sYmbol.Browse.Type
Format:
Browse HLL types
sYmbol.Browse.Type []
Lets you browse through the list of HLL types that have been loaded to the internal TRACE32 symbol database with the Data.LOAD command. : You can use the wildcards ? and * to filter the list.
HLL types include int, char, unsigned int, int*, struct , enum , etc.
See also ■ sYmbol.Browse ▲ ’Release Information’ in ’Release History’
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
115
sYmbol
sYmbol.Browse.Var
Browse variables
Format:
sYmbol.Browse.Var[ [] [/]
:
Click Delete
Lets you browse through the list of variables that have been loaded to the internal TRACE32 symbol database. Alternatively, you can browse through the variables list by selecting Variables from the drop-down list in the sYmbol.Browse.sYmbol window. Double-clicking a symbol in a sYmbol.Browse.sYmbol window opens the symbol in its default window. Alternatively, you can customize TRACE32’s response to the double-click by using the Click option. An example is shown in the figure below.
Double-clicking displays the selected variable in a Data.View window.
For a description of the command line arguments and another example for the Click option, see sYmbol.Browse.sYmbol. In addition, the browser command is automatically executed when: •
A symbol that ends with a wildcard is entered at the TRACE32 command line or
•
The symbol is not unique and the sYmbol.MATCH command is set to Choose. Var.Watch vd*
;First, the symbol browser opens, where you can select ;the desired variable with a double-click. ;Then the selected variable is displayed in the ;Var.Watch window.
See also ■ sYmbol.Browse ©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
116
sYmbol
sYmbol.CASE
Format:
Set symbol search mode
sYmbol.CASE [ON | OFF]
If the option will be set (default), there is a differentiation between small and capital letters.
sYmbol.CHECK
Format:
Check database
sYmbol.CHECK
Checks the internal symbol database for errors. Can be used when the compiler output format is questionable.
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
117
sYmbol
sYmbol.Class
Format:
View class hierarchy
sYmbol.Class [/Nested]
Displays the base classes inherited by the class as a tree. As a default the inherited classes for C++ are displayed. With the Nested option regular included structures and pointers to structures are displayed also. This allows the usage of this command for non C++ applications. E::w.y.class fstream fstream fstreambase ios iostream istream ios ostream ios
display C++ classes baseclass virtual baseclass
View the hierarchy of a specific class. E::w.y.class fstream /n fstream fstreambase ios union ios_user_union streambed struct __mptr ostream ios union ios_user_union streambuf ... ostream ... struct __mptr struct __mptr ios ... ios ... struct __mptr filebuf streambuf
baseclass regular 'C' pointer
regular 'C' member
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
118
sYmbol
sYmbol.CLEANUP
Format:
Remove redundant symbol information
sYmbol.CLEANUP
Remove all double symbols, all double type information, empty type information and redundant symbols for the common bank address range.
sYmbol.CLEANUP.DOUBLES
Format:
Make ambiguous symbols unique
sYmbol.CLEANUP.DOUBLES
Makes symbols loaded to the TRACE32 symbol database unique by appending two underscores and a serial number to ambiguous symbols: __ Ambiguous symbols
Unique symbols after using sYmbol.CLEANUP.DOUBLES
sYmbol.ColorCode
Format:
Enable color coding
sYmbol.ColorCode [ON | OFF]
Enables the source text color coding. Source color coding improves the readability of source files by using multiple colors. Enabled by default.
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
119
sYmbol
sYmbol.ColorDef
Format:
Specify color display for keywords
sYmbol.ColorDef
Specify a color used for the display of keywords in your hll code. sYmbol.ColorDef "printf" 2
; display all printf in green
All color definitions can be listed with the command sYmbol.List.ColorDef.
See also ■ SETUP.COLOR
■ sYmbol.List.ColorDef
▲ ’Screen Display’ in ’IDE User’s Guide’
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
120
sYmbol
sYmbol.CREATE
Create and modify user-defined symbols
The sYmbol.CREATE command group allows to create new symbols or modify existing used defined symbols. The created symbols will be made available to the debugger with the command sYmbol.CREATE.DONE.
See also ■ sYmbol.CREATE.Done ■ sYmbol.CREATE.Module
■ sYmbol.CREATE.Function ■ sYmbol.CREATE.RESet
■ sYmbol.CREATE.Label ■ sYmbol.CREATE.Var
■ sYmbol.CREATE.MACRO ■ sYmbol.NEW
▲ ’Release Information’ in ’Release History’
sYmbol.CREATE.Done
Format:
Finish symbol creation
sYmbol.CREATE.Done
Finishes the creation of new symbols and makes them available to the debugger. This command is only required for sYmbol.CREATE commands. sYmbol.NEW commands already contain this functionality, but will execute slower. sYmbol.CREATE.Label mylab1 0x1000 sYmbol.CREATE.Label mylab2 0x1010 sYmbol.CREATE.Done
; creates “mylab1” at 1000 ; creates “mylab2” at 1010 ; make labels available to program
See also ■ sYmbol.CREATE
sYmbol.CREATE.Function
Format:
Create user-defined function
sYmbol.CREATE.Function
Creates symbol information for a new function. The function has no parameters or local variables. It can only be used to define a range for a piece of code (e.g. for performance analysis). Note that functions created with sYmbol.CREATE.Function will only become visible (e.g. in the sYmbol.List window) after calling sYmbol.CREATE.Done.
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
121
sYmbol
This is not required for sYmbol.NEW.Function which immediately commits all changes to the symbol table and thus executes slower. ; function ends before mylabel2 sYmbol.NEW.Function myfunc mylabel1--(mylabel2-1)
See also ■ sYmbol.CREATE
■ sYmbol.NEW.Function
sYmbol.CREATE.Label
Format:
Create user-defined symbol
sYmbol.CREATE.Label
Creates a new label. A label is a symbol without type information that refers to a single memory location. sYmbol.CREATE.Label mylab1 0x1000 sYmbol.CREATE.Label mylab2 0x1010 sYmbol.CREATE.Done
; creates “mylab1” at 1000 ; creates “mylab2” at 1010 ; make labels available to program
sYmbol.NEW.Label mylab3 0x1020
; ”mylab3” is available immediately
See also ■ sYmbol.CREATE
■ sYmbol.NEW.Label
sYmbol.CREATE.MACRO
Format:
Create user-defined macro
sYmbol.CREATE.MACRO
Creates a new macro. The macro can be used like a C-preprocessor macro. Parameters can be supplied in the same way. y.new.macro MY_NEXT(p) ((p)->next) v.v MY_NEXT(myvar)
; macro is available immediately ; expands to ((myvar)->next)
See also ■ sYmbol.CREATE
■ sYmbol.NEW.MACRO
▲ ’Release Information’ in ’Release History’ ©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
122
sYmbol
sYmbol.CREATE.Module
Format:
Create user-defined module
sYmbol.CREATE.Module
Create a user-defined module. sYmbol.CREATE.Module test 50000--5ffff sYmbol.CREATE.Done sYmbol.Browse.Module
See also ■ sYmbol.CREATE
■ sYmbol.NEW.Module
sYmbol.CREATE.RESet
Format:
Erase all user-defined symbols
sYmbol.CREATE.RESet
Removes all symbols defined by sYmbol.CREATE or sYmbol.NEW commands.
See also ■ sYmbol.CREATE
■ sYmbol.NEW
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
123
sYmbol
sYmbol.CREATE.Var
Format:
Create user-defined variable
sYmbol.CREATE.Var |
Create a user-defined variable. sYmbol.List.Type /Unnamed
; list all types
sYmbol.Create.Var my_char 0x1000 char
; create variable
sYmbol.Create.Done
; finish creation
sYmbol.INFO my_char
; display all information ; about the created variable
sYmbol.List.Type /Unnamed sYmbol.Create.Var my_abc D:0xa000 struct abc sYmbol.Create.Done sYmbol.INFO my_abc
See also ■ sYmbol.CREATE
■ sYmbol.NEW.Var
sYmbol.CUTLINE
Format:
Limit size of text blocks
sYmbol.CUTLINE []
The number of source lines, displayed for one high-level line is limited. This prevents the display of large parts of source text in analyzer or data windows, if the source contains many definitions. The last lines are always displayed. Without arguments function is turned off, i.e. all lines are displayed again. sYmbol.CUTLINE 3.
; display max. 3 lines for each HLL line
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
124
sYmbol
sYmbol.Delete
Format:
Delete symbols of one program
sYmbol.Delete []
Deletes all symbols of one program. sYmbol.Delete \\mccp
; delete only symbols of program "mccp"
sYmbol.DEMangle
Format:
C++ demangler
sYmbol.DEMangle [ON | OFF]
The first argument activates the demangler, the second enables the demangling of function arguments. y.dem off y.dem on off y.dem on
-> -> -> ->
get_branches__6ForestFP4Tree (ANSI) @Forest@get_branches$qp4Tree (TURBO-C++) Forest::get_branches Forest::get_branches(Tree *)
sYmbol.ForEach
Format:
Symbol wildcard command
sYmbol.ForEach "" [ []]
The command sYmbol.ForEach executes a PRACTICE command for each symbol matching the specified name and type patterns. The command to be executed has to be specified with quotation marks. It may contain the characters '*' or '?' as placeholders that are replaced by the complete name of a matching symbol. The patterns are case-insensitive. Therefore lower and upper case characters are not distinguished. The following wildcards can be used in patterns expressions: '*'
Matches any string, including empty strings. For the type_pattern, only symbols with HLL type information match.
'?'
Matches one (non-empty) character.
'"'
Can be used to input special characters like '*' or '?'
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
125
sYmbol
Examples: sYmbol.ForEach "b.s" *func*
; will execute the command B.S ; for all symbols containing 'func'
y.fe "b.s v.end(""*"") /c" **
; ; ; ; ; ; ;
execute the command B.S v.end() /C which sets a “C breakpoint” to the last address of each HLL function or variable
(See command sYmbol.name for more examples on wildcards)
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
126
sYmbol
sYmbol.INFO
Format:
Display detailed information about debug symbol
sYmbol.INFO | [/Track]
Display symbolic address, location, scope and layout of the specified debug . If an is specified the details about the debug symbol located at are displayed. The option /Track enables the address tracking. See example 2. Example 1:
sYmbol.INFO func9
; display detailed debug information for ; the function func9
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
127
sYmbol
Example 2:
sYmbol.INFO , /Track
; display a sYmbol.INFO window with address ; tracking enabled ; you have to use a ",", if you do not want ; to specify the parameter
Data.dump 0x40004000
; display a hex dump starting at address ; 0x40004000
; address tracking works as follows: ; as soon as you select an address in the Data.dump window, details about ; the symbol located at selected address are displayed
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
128
sYmbol
List.auto
; Analogous, if a line is selected in the ; Source Listing all the details about the ; related function are displayed
See also ■ Data.dump ■ Var.INFO
■ MMU.INFO
■ sYmbol.Browse
■ sYmbol.STATE
▲ ’Symbol Management’ in ’ICE User’s Guide’ ▲ ’The Symbol Database’ in ’Training HLL Debugging’
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
129
sYmbol
sYmbol.LANGUAGE
Format:
Select language
sYmbol.LANGUAGE []
Selects the language and style, that is used for HLL expressions. sYmbol.LANGUAGE MCC68K
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
130
sYmbol
sYmbol.List
Format:
Display list of all symbols
sYmbol.List []
Displays a window with a list of all symbols. The list is ordered by the symbols’ addresses and scrolled so that is shown at the top of the window. The can be entered as a literal (e.g. P:0xFC004AB) or using a symbol path (e.g. \\sieve\page1\main). When using wildcards, the symbol path needs to evaluate to a single symbol.
See also ■ ■ ■ ■ ■
■ ■ ■ ■ ■
sYmbol.List.ATTRibute sYmbol.List.IMPORT sYmbol.List.MAP sYmbol.List.SOURCE sYmbol.List.Type
■ ■ ■ ■
sYmbol.List.BUILTIN sYmbol.List.LINE sYmbol.List.Module sYmbol.List.STACK sYmbol.STATE
sYmbol.List.ColorDef sYmbol.List.Local sYmbol.List.Program sYmbol.List.Static
sYmbol.List.ATTRibute
Format:
■ ■ ■ ■
sYmbol.List.Function sYmbol.List.MACRO sYmbol.List.SECtion sYmbol.List.TREE
Display memory attributes
sYmbol.List.ATTRibute []
Displays memory attributes. Memory attributes can classify the code or execution model at a specific address. This information is highly compiler dependent.
See also ■ sYmbol.List
sYmbol.List.BUILTIN
Format:
List built-in data types
sYmbol.List.BUILTIN
List all built-in data types of the used programming language.
See also ■ sYmbol.List
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
131
sYmbol
sYmbol.List.ColorDef
Format:
List the keyword color definitions
sYmbol.List.ColorDef
Lists the color definition for the keywords of the HLL code displayed in the Data.List window (if, else, while, etc.). The class column in the sYmbol.ListColorDef window shows the currently assigned formatting class (= style in a word processing application such as OpenOffice.Org Writer). By default, the keywords are assigned to the formatting class 1, and its default color is blue. By assigning keywords to class 2 or 3, you can format keywords green or purple. If you want to pick another color for the classes 2 and 3, then click the change button in the SETUP.COLOR window.
Change keyword color.
This example shows how to change the color of the for keyword. To try this script, copy it to a test.cmm file, and then step through it in TRACE32 (See “How to...”). sYmbol.List.ColorDef
;Display the keywords, their colors, and ;the classes to which the keywords are assigned
SETUP.COLOR
;Display the current color settings
sYmbol.ColorDef "for" 2.
;Assign the keyword 'for' to class 2 => ;'for' turns green
sYmbol.ColorDef "for" 3.
;Assign the keyword 'for' to class 3 => ;'for' turns purple
SETUP.COLOR 39. 255. 128. 0. ;Change the color of class 3 to orange SETUP.COLOR 39.
;Restore the default color of class 3 again
sYmbol.ColorDef "for" 1.
;Apply class 1 to the 'for' keyword again
A PRACTICE script that adds more keywords to the sYmbol.List.ColorDef window is included in your TRACE32 installation. To access the script, run this command: B::CD.PSTEP ~~\demo\practice\colors\syntaxcolor.cmm
See also ■ SETUP.COLOR
■ sYmbol.ColorDef
■ sYmbol.List
▲ ’Screen Display’ in ’IDE User’s Guide’ ©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
132
sYmbol
sYmbol.List.Function
Format:
Display functions
sYmbol.List.Function [ | ]
The location and further related information about the loaded functions are displayed.
See also ■ sYmbol.List ▲ ’Symbol Management’ in ’ICE User’s Guide’
sYmbol.List.IMPORT
Format:
List imported symbols
sYmbol.List.IMPORT
List the symbols that are loaded by imported DLLs (required e.g. for Symbian or Windows CE).
See also ■ sYmbol.List
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
133
sYmbol
sYmbol.List.LINE
Format:
Display source lines
sYmbol.List.LINE []
The location and further related information about the loaded lines are displayed.
See also ■ sYmbol.List ▲ ’Symbol Management’ in ’ICE User’s Guide’
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
134
sYmbol
sYmbol.List.Local
Format:
Display local symbols
sYmbol.List.Local [ | ]
Displays all symbols local to functions and blocks.
See also ■ sYmbol.List ▲ ’Symbol Management’ in ’ICE User’s Guide’
sYmbol.List.MACRO
Format:
List all C macros
sYmbol.List.MACRO
List all C macros. C macros can either be loaded with Data.LOAD /MACRO or they can be created with the command sYmbol.Create.MACRO.
See also ■ sYmbol.List
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
135
sYmbol
sYmbol.List.MAP
Format:
Display memory load map
sYmbol.List.MAP []
Displays address ranges where code was saved during download and the order in which the code was saved. Can be used to find out "where the code has gone".
See also ■ sYmbol.List
sYmbol.List.Module
Format:
Display modules
sYmbol.List.Module []
Information about the loaded models are displayed, e.g. the location or the loaded source file.
See also ■ sYmbol.List
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
136
sYmbol
sYmbol.List.Program
Format:
Display programs
sYmbol.List.Program
The location and further related information about the loaded programs are displayed.
See also ■ sYmbol.List ▲ ’Symbol Management’ in ’ICE User’s Guide’
sYmbol.List.SECtion
Format:
Display physical sections
sYmbol.List.SECtions []
The logical address range, physical address range and access rights for the sections are displayed.
See also ■ sYmbol.List ▲ ’Flag Memory’ in ’Training ICE Basics’
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
137
sYmbol
sYmbol.List.SOURCE
Format:
Display source file names
sYmbol.List.SOURCE [/ERRORS]
If a files with debug information is loaded (Data.LOAD.), this file also provides the paths for the hll (C/C++/JAVA etc.) source files. The command sYmbol.List.SOURCE lists the file names and paths in the source column.
Column description module
Path of the compiled file as it is maintained by TRACE32.
source
Source path for C/C++/JAVA source file after the completion of the Data.LOAD. command.
file
Source path from which the C/C++/JAVA source file was actually loaded. Required adjustments of the source path can be performed with the help of the sYmbol.SourcePATH command group.
size
Size information as provided by the loaded file.
time
Time information as provided by the loaded file.
state
The state loaded indicates that the C/C++/JAVA source file was loaded successfully. The state error indicates that the C/C++/JAVA source file could not be loaded. Modules tagged with error are printed in red.
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
138
sYmbol
Context Toolbar Clear
Invalidates the state column for all source files and invalidates the search results displayed in the file column (command sYmbol.SourceRELOAD).
Touch All
By default a hll source file is only loaded by TRACE32 when the contents of the hll source file is required during debugging. This button advises TRACE32 to load all source files (command sYmbol.SourceLOAD).
Search Path
Displays details on source search paths (command sYmbol.SourcePATH.List).
Errors…
Display only modules tagged with error.
sYmbol.List.SOURCE /ERRORS
// Advise TRACE32 PowerView to display // only modules tagged with error.
Resolve Path in the Source context menu opens a dialog where you can choose the correct path for the selected module/source. TRACE32 adds the result to the source search paths. The result can be inspected via the sYmbol.SourcePATH.List command. The procedure is as follows: •
Absolute paths are fixed with the help of the command sYmbol.SourcePATH.Translate.
•
Relative paths are fixed with the help of the command sYmbol.SourcePATH.SetBaseDir.
See also ■ sYmbol.List ▲ ’Symbol Management’ in ’ICE User’s Guide’ ▲ ’Release Information’ in ’Release History’
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
139
sYmbol
sYmbol.List.STACK
Format:
Display virtual stack
sYmbol.List.STACK []
Displays information about virtual stack pointers. This information is highly compiler dependent.
See also ■ sYmbol.List
sYmbol.List.Static
Format:
Display static symbols
sYmbol.List.Static [ | ]
Displays all symbols with a fixed address.
See also ■ sYmbol.List ▲ ’Symbol Management’ in ’ICE User’s Guide’
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
140
sYmbol
sYmbol.List.TREE
Format:
Display symbols in tree form
sYmbol.List.TREE
Displays modules, symbols and variables in tree from.
See also ■ sYmbol.List
sYmbol.List.Type
Format:
Display data types
sYmbol.List.Type [/Unnamed]
All data types used by the compiler are displayed. The Unnamed option displays also unnamed types, e.g. "char *".
See also ■ sYmbol.List ▲ ’Symbol Management’ in ’ICE User’s Guide’
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
141
sYmbol
sYmbol.LSTLOAD
Load assembler source file
Using the sYmbol.LSTLOAD command group, you can load various formats of assembler list files for source text debugging on assembler level.
See also ■ sYmbol.LSTLOAD.GHILLS ■ sYmbol.LSTLOAD.INTEL ■ sYmbol.LSTLOAD.OAK
■ sYmbol.LSTLOAD.HPASM ■ sYmbol.LSTLOAD.KEIL
sYmbol.LSTLOAD.GHILLS
Format:
■ sYmbol.LSTLOAD.IAR ■ sYmbol.LSTLOAD.INT68K ■ sYmbol.LSTLOAD.MicroWare ■ sYmbol.LSTLOAD.MRI68K
Load GHILLS assembler source file
sYmbol.LSTLOAD.GHILLS | []
Loading of a GHILLS assembler list file for source text debugging on assembler level. If the base address of the module doesn’t fit, the base address will be given as an argument.
See also ■ sYmbol.LSTLOAD
sYmbol.LSTLOAD.HPASM
Load HP assembler source file
Format:
sYmbol.LSTLOAD.HPASM | []
Format:
sYmbol.LSTLOAD.HPASM2 | []
Loading of an HP assembler list file for source text debugging on assembler level. If the base address of the module doesn't fit, the base address will be given as an argument. If a program name is given, the module entry will be generated from the file name of the list file. The different commands load different HP assembler list file formats. The debugging can be controlled by the following assembler comments: ; T32-ORG To mark lines including ORG statements. ; T32-OFF
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
142
sYmbol
To switch of the source text debugging. The debugging must be switched of for lines containing data statements or definitions (i.e. lines which address column not containing a program address). Include files, which shall not be displayed, must be switched off also.
NOTE:
The source line numbers will not match in this case, as the relation to the original source is lost.
;T32-ON Reactivation of the debugging function. d.load.hp sps y.lstload.hpasm \SPS1 sps1.lst y.lstload.hpasm \SPS2 sps2.lst
; load the module and symbols ; load the source lines for module 1 ; load the source lines for module 2
See also ■ sYmbol.LSTLOAD
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
143
sYmbol
sYmbol.LSTLOAD.IAR
Format:
Load IAR assembler source file
sYmbol.LSTLOAD.IAR | []
Loading of a IAR assembler list file for source text debugging on assembler level. If the base address of the module doesn't fit, the base address will be given as an argument. The first comment line of the file (beginning with '*') must start in the first column of the source text! The debugging can be controlled by the following assembler comments: *T32-ORG To mark lines including ORG statements. *T32-OFF To switch of the source text debugging. The debugging must be switched of for lines containing data statements or definitions (i.e. lines which address column not containing a program address). Include files, which shall not be displayed, must be switched off also.
NOTE:
The source line numbers will not match in this case, as the relation to the original source is lost.
*T32-ON Reactivation of the debugging function.
See also ■ sYmbol.LSTLOAD
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
144
sYmbol
sYmbol.LSTLOAD.INT68K
Format:
Load Intermetrics assembler source file
sYmbol.LSTLOAD.INT68K | []
Loading of a Intermetrics assembler list file for source text debugging on assembler level. If the base address of the module doesn't fit, the base address will be given as an argument. The debugging can be controlled by the following assembler comments: *T32-ORG To mark lines including ORG statements. *T32-OFF To switch of the source text debugging. The debugging must be switched of for lines containing data statements or definitions (i.e. lines which address column not containing a program address). *T32-ON Reactivation of the debugging function.
See also ■ sYmbol.LSTLOAD
sYmbol.LSTLOAD.INTEL
Format:
Load INTEL assembler source file
sYmbol.LSTLOAD.INTEL | []
Loading of a INTEL assembler list file for source text debugging on assembler level. If the base address of the module doesn't fit, the base address will be given as an argument.
See also ■ sYmbol.LSTLOAD
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
145
sYmbol
sYmbol.LSTLOAD.KEIL
Format:
Load Keil assembler source file
sYmbol.LSTLOAD.KEIL []
Loading of an KEIL (8051) assembler list file for source text debugging on assembler level. The base address is optional, it is used when the address sections are unknown.
See also ■ sYmbol.LSTLOAD
sYmbol.LSTLOAD.MicroWare
Format:
Load MICROWARE assembler source file
sYmbol.LSTLOAD.MicroWare | []
Loading of a MICROWARE assembler list file for source text debugging on assembler level. If the base address of the module doesn't fit, the base address will be given as an argument. If a program name is given, the module entry will be generated from the file name of the list file. d.load.rof sps /map y.LSTload.mw \\SPS sps1.lst 0x1000 y.LSTload.mw \\SPS sps2.lst 0x1200
; ; ; ; ;
load the module and symbols load the source lines for module 1 load the source lines for module 2
See also ■ sYmbol.LSTLOAD
sYmbol.LSTLOAD.MRI68K
Format:
Load MICROTEC assembler source file
sYmbol.LSTLOAD.MRI68K | []
Loading of a MICROTEC assembler list file for source text debugging on assembler level. If the base address of the module doesn't fit, the base address will be given as an argument. The first comment line of the file (beginning with '*') must start in the first column of the source text! The debugging can be controlled by the following assembler comments: *T32-ORG ©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
146
sYmbol
To mark lines including ORG statements. *T32-OFF To switch of the source text debugging. The debugging must be switched of for lines containing data statements or definitions (i.e. lines which address column not containing a program address). *T32-ON Reactivation of the debugging function.
See also ■ sYmbol.LSTLOAD
sYmbol.LSTLOAD.OAK
Format:
Load OAK assembler source file
sYmbol.LSTLOAD.OAK | []
Loading of a OAK assembler list file for source text debugging on assembler level.
See also ■ sYmbol.LSTLOAD
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
147
sYmbol
sYmbol.MARKER
Fine-tune the nested function run-time analysis
The sYmbol.MARKER commands are intended for very advanced users only. The commands are used for fine-tuning the nesting function run-time analysis, typically in conjunction with the Trace.STATistic.Func command. Markers can be used to handle special cases for nesting trace statistics. Please contact Lauterbach support before using the sYmbol.MARKER commands. The sYmbol.MARKER commands let you create markers for symbols, display them in a list window, delete individual markers, and reset all markers. The following example is just intended to illustrate these actions: ;Display the marker list window sYmbol.MARKER.List ;Create function entry markers for the functions func1, main sYmbol.MARKER.Create FENTRY func1 sYmbol.MARKER.Create FENTRY main ;Create function exit markers sYmbol.MARKER.Create FEXIT sYmbol.EXIT(func1) sYmbol.MARKER.Create FEXIT sYmbol.EXIT(main) ;Delete an individual function entry marker sYmbol.MARKER.Delete func1 ;Delete an individual function exit marker sYmbol.MARKER.Delete sYmbol.EXIT(main) ;Delete all markers sYmbol.MARKER.RESet
See also ■ sYmbol.MARKER.Create
■ sYmbol.MARKER.Delete
■ sYmbol.MARKER.List
■ sYmbol.MARKER.RESet
▲ ’Release Information’ in ’Release History’
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
148
sYmbol
sYmbol.MARKER.Create Create marker for nesting function run-time analysis
Format:
sYmbol.MARKER.Create sYmbol.CREATE.MARKER (deprecated) sYmbol.NEW.MARKER (deprecated)
:
KENTRY | KEXIT | KBACKDOOR | KBEGIN | KEND | KFROM | KTO | KLEAVE | FENTRY | KFENTRY | IFENTRY | ILEAVE | FEXIT | FEXITINIT | FEXITCLEANUP | FBACKDOOR | KFBACKDOOR | CLEANUP | CLEANUP2 | IGNORE | IGNOREFROM | IGNORETO | CALL | JUMP | BYJUMP | TASKSWITCH | CORRELATE
Nesting function run-time analysis commands likeTrace.STATistic.Func process the trace information to reconstruct the function call hierarchy. The focus is put on the transitions between functions. The following events are of interest: •
Function entries/exits
•
Task switches
•
Entries/exits of interrupt service routines
•
Entries/exits of TRAP handlers
Optimization of the OS and the compiler as well as the technology used for the trace generation may disturb the reconstruction of the call hierarchy. As a result nesting function run-time analysis fails. Markers are a mean to feed TRACE32 with additional information that help to pass blocking points in the analysis. sYmbol.MARKER.Create KENTRY os_prologue
; mark the address os_prologue ; as kernel entry point
sYmbol.MARKER.Create KEXIT os_epilogue
; mark the address os_epilogue ; as kernel exit point
sYmbol.MARKER.List
; list all markers
The command sYmbol.MARKER.List provides a list of all created markers. KENTRY/KEXIT/KBACKDOOR Marker
A detailed description of the usage of the markers is given at the command description of Trace.STATistic.TASKKernel and Trace.STATistic.TASKFunc.
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
149
sYmbol
sYmbol.MARKER.Create KENTRY os_prologue
; mark the address ; os_prologue ; as kernel entry point
sYmbol.MARKER.Create KEXIT os_epilogue
; mark the address ; os_epilogue ; as kernel exit point
sYmbol.MARKER.List
; list all markers
FENTRY/FEXIT/FBACKDOOR Marker
FENTRY
Mark as function entry.
FEXIT
Mark as function exit.
FBACKDOOR
Mark as function entry. TRACE32 ignores this function entry in the trace evaluation if a prior function entry was detected.
A detailed description of the usage of the markers is given at the command description of Trace.STATistic.Func.
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
150
sYmbol
CORRELATE Marker
Purpose: Solve issues of trace export technology. CORRELATE markers allows to assign read/write accesses to instructions. If trace information is exported for all executed instructions but only for selected read/write accesses, an exact assignment of an read/write access to the load/store operation is not possible in most cases. The read/write access is displayed in the Trace Listing in red before the next exported instruction information (ptrace). This behavior may disturb the reconstruction of the call hierarchy in the following case: A task switch occurs (write access to variable holding the task ID) and then a function is called, but in the Trace Listing the task switch is displayed after the function call. As a result the function is hooked into the wrong call tree. More the one CORRELATE marker is possible as long as its address is unique between two ptrace packets.
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
151
sYmbol
In the example below, the write access to the task identifier (TASK.CONFIG(magic)) and all instructions are exported via a Nexus port (MPC5646).
… NEXUS.BTM ON NEXUS.HTM ON Break.Set TASK.CONFIG(magic) /Write /TraceData …
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
152
sYmbol
For the reconstruction of the call hierarchy and an accurate timing the write access of the task ID has to be assigned exactly to the corresponding instruction. For this purpose a CORRELATE marker can be used. sYmbol.MARKER.Create CORRELATE V:4000105C
See also ■ sYmbol.MARKER ▲ ’Release Information’ in ’Release History’
sYmbol.MARKER.Delete
Format:
Delete a marker
sYmbol.MARKER.Delete
Deletes the specified marker. To delete all markers, use sYmbol.MARKER.RESet.
See also ■ sYmbol.MARKER
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
153
sYmbol
sYmbol.MARKER.List
Format:
Displays the marker list
sYmbol.MARKER.List [] sYmbol.List.MARKER [] (deprecated)
Opens the sYmbol.MARKER.List window, displaying the list of markers created with sYmbol.MARKER.Create. A detailed description of the usage of the markers is given at the command description of Trace.STATistic.TASKKernel and Trace.STATistic.TASKFunc.
See also ■ sYmbol.MARKER
sYmbol.MARKER.RESet
Format:
Erase all markers
sYmbol.MARKER.RESet
Removes all markers created with sYmbol.MARKER.Create.
See also ■ sYmbol.MARKER
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
154
sYmbol
sYmbol.MATCH
Format:
Symbol search mode
sYmbol.MATCH [Exact | Best | Choose]
Defines the behavior when a symbol is not unique. Exact
Refuses any symbols that are not unique. This adjustment is useful for regression test and automatic batch scripts.
Best
Takes the best matching symbol. This is the default.
Choose
Opens a symbol browser to choose from one of the symbols. This is useful for choosing between different overloaded methods in C++.
See also ■ Data.Find
sYmbol.MEMory
Format:
Display memory usage
sYmbol.MEMory
Displays a summary of memory used by the different components of the symbol table. The results are written to area 0 (display with AREA command).
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
155
sYmbol
sYmbol.Modify
Format:
Modify symbols
sYmbol.Modify
This command group allows to modify the symbol table or add additional information to existing symbols and types. See also sYmbol.RELOCate.
See also ■ sYmbol.Modify.Access ■ sYmbol.Modify.SOURCE
■ sYmbol.Modify.ADDRess
■ sYmbol.Modify.CutFunction
■ sYmbol.Modify.NAME
▲ ’Release Information’ in ’Release History’
sYmbol.Modify.Access
Format:
Modify access of symbols
sYmbol.Modify.Access : [|]
Modifies the memory access class of symbols. The symbol path limits the modification to special symbols of a module or a program. If an address range is given, only the symbols in this range will be modified. The command is useful in combination with the automatic symbol relocation feature, when constants are placed in ROM. y.m.a d:0x1000--0x1fff
; all symbols in the range get the memory ; access class d:
y.m.a p: y.secrange(const)
; all symbols in the 'const' section get ; the memory access class p:
See also ■ sYmbol.Modify ■ sYmbol.Modify.SOURCE
■ sYmbol.Modify.ADDRess
■ sYmbol.Modify.CutFunction
■ sYmbol.Modify.NAME
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
156
sYmbol
sYmbol.Modify.ADDRess
Format:
Modify address of symbols
sYmbol.Modify.ADDRess |
Modifies the start address or address range of a symbol, module, program or function. y.m.addr \mymodule 0x1000--0x1fff
; assign new range to module
See also ■ sYmbol.Modify ■ sYmbol.Modify.SOURCE
■ sYmbol.Modify.Access
■ sYmbol.Modify.CutFunction
sYmbol.Modify.CutFunction
Format:
■ sYmbol.Modify.NAME
Reduce function address information
sYmbol.Modify.CutFunction |
Reduces the address range information for the defined functions to a single address. This command is used only in very special cases. sYmbol.List.Function sYmbol.Modify.CutFunction 0x104c++0xff
See also ■ sYmbol.Modify
■ sYmbol.Modify.Access
■ sYmbol.Modify.ADDRess
■ sYmbol.Modify.SOURCE
▲ ’Release Information’ in ’Release History’
sYmbol.Modify.NAME
Format:
Rename symbols
sYmbol.Modify.NAME |
Renames symbols y.m.name vtripplearray tt
; renames vtriplearray to tt
See also ■ sYmbol.Modify
■ sYmbol.Modify.Access
■ sYmbol.Modify.ADDRess
■ sYmbol.Modify.SOURCE
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
157
sYmbol
sYmbol.Modify.SOURCE
Define source file
+
Format:
sYmbol.Modify.SOURCE
Defines the source file name for a given module. The command can be used, when the names or directories of source files have been changed after compilation. y.m.source \mod1 ..\src\mod2.c
; use source file mod2.c for module ; 'mod1'
See also ■ sYmbol.Modify ■ sYmbol.Modify.NAME
■ sYmbol.Modify.Access
■ sYmbol.Modify.ADDRess
■ sYmbol.Modify.CutFunction
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
158
sYmbol
sYmbol.name
Display symbols
Format:
sYmbol.name [ [] [/]
:
Click Delete
Displays symbols sorted alphabetically. Lower and upper case characters are not distinguished. For mangled C++ symbols the search order is based on the function signatures. A complex search function is implemented to find symbol name very fast, if the complete name will be not known. The search patterns are: '*'
Matches any string, empty strings too.
'?'
Matches any character, but not an empty character.
'"'
Can be used to input special characters like '*' or '?'
If the wildcard '*' is defined for the type_pattern, only symbols with HLL type information are extracted. The C++ demangler for the symbols is used, if the pattern contains the characters '(' or ':'. Examples: y
; displays all symbols
y *\*
; displays all local symbols
y \*\*
; displays all local symbols of global ; functions and module local symbols
y \mcc\*
; displays all symbols local to module 'mcc'
y func9\*
; displays all symbols local to function 'func9'
y i
; displays all symbols with the name 'i'
y \mcc\*\i
; displays all local symbols in module 'mcc' with ; the name 'i'
y \m*\f*\i*
; ; ; ;
y * *
; displays all symbols with HLL type information
y * *ptr
; displays all symbols, which have an HLL type ; that ends with 'ptr', e.g. 'intptr'
displays all local symbols with the symbol name beginning with 'i' in all functions with function names beginning with 'f' in all modules beginning with 'm'
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
159
sYmbol
y * char *
; displays all symbols, which have an HLL type ; that begins with the text 'char ', ; e.g. 'char *', 'char [10]', 'char &'
y * char "*"
; displays all symbols with HLL type of 'char *'
y * *"*"*
; displays all symbols with type names, that ; contain a '*'
y ops::operator*
; displays all operators defined for the ; C++ class 'ops'
y operator*
; ; ; ;
y *::operator*(int)
; display all operator of all classes, that ; have only one argument of type 'int'
will search for all symbols, beginning with the string 'operator' NOTE: the demangler is not active, so no operators of C++ classes are listed!
The Click option can define a command, that can be executed by a short click with the left mouse button. The characters '*' or '?' can be used as placeholder for the complete name of the symbol. Using the '*' will force the command to be executed without further interaction and without leaving the window. The character '?' will cause the cursor to leave the window and build a command line, that can be modified before entering. The option Delete deletes the window after the selection has been made. Examples (see also sYmbol.ForEach): y * /c "b.s"
; will execute the command B.S
y * /c "b.s * /a"
; will execute the command B.S /A
y * /c "v.v ?"
; will build a command line V.V and ; leave the symbol window
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
160
sYmbol
The address based softkeys are available by pressing the left mouse button. Short clicking the left button can execute the command defined by the option Click. The default is the command Data.List. Pressing one of the softkeys leaves the window, and builds a command line according to the softkey and symbol. E::w.y path C\_func13a\ CC\_func13\ \\MCC\ \\MCC\ \\MCC\ \\MCC\ MCC\_sieve\ background\ background\ \\MCC\ \\MCC\ \\MCC\ C\_func13a\ CC\_func13\ \\MCC\
symbol c c _chkstk_ close _close close_ count count1 count2 crt0 _crt0 crt0_ d d daddsub
type (auto short) (auto short) MODULE
(auto short) (auto long) (auto long) MODULE
(auto short) (auto short) MODULE
sYmbol.NAMESPACES
Format:
Search symbol in C++ namespace
sYmbol.NAMESPACES []
This command configures the debugger to search in the specified C++ namespaces for a debug symbol. If the debug symbol cannot be found in the global namespace and the debug symbol is referred without scope operator (e.g. inside a namespace {} section or after a using declaration, the debugger will search in the namespaces specified by this command. sYmbol.NAMESPACES std
;search debug symbols in namespace std if debug symbol not found in current context
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
161
sYmbol
sYmbol.NEW
Format:
Create new symbol
sYmbol.NEW |
The sYmbol.NEW command group allows to create new symbols or modify existing user-defined symbols. The command sYmbol.CREATE has the same functionality, but executes faster when multiple symbols are created.
See also ■ sYmbol.CREATE ■ sYmbol.NEW.Label
■ sYmbol.CREATE.RESet ■ sYmbol.NEW.MACRO
■ sYmbol.NEW.ATTRibute ■ sYmbol.NEW.Module
■ sYmbol.NEW.Function ■ sYmbol.NEW.Var
▲ ’Release Information’ in ’Release History’
sYmbol.NEW.ATTRibute
Create user-defined memory attribute
Format:
sYmbol.NEW.ATTRibute
:
DEFault
Creates a user-defined memory attribute, e.g. for program code, data code, access width, etc. Memory attributes tell TRACE32 how to interpret memory content. If attributes are missing in the debug information of your symbol file, e.g. an ELF file, you can create the attributes with sYmbol.NEW.ATTRibute. DEFault
Memory content is interpreted based on the current processor state.
The softkeys below the TRACE32 command line display the available memory attributes. • For a selection of memory attributes for various architectures, see below. • For more information about available memory attributes, refer to the design manual of the respective architecture.
;open window, displaying the memory attributes per address range sYmbol.List.ATTRibute ;create an attribute for a data address range without DATA attribute sYmbol.NEW.ATTRibute DATA D:10004138--10004193 ;display all available information about an address including its attr. sYmbol.INFO D:10004138 ;this code is now interpreted as data List.Mix D:10004138 ©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
162
sYmbol
Selection of Memory Attributes for Various Architectures Memory attributes for the ARM architecture: ARM
Code of A32, ARM 32-bit instruction set
THUMB
Code of T32, Thumb/Thumb-2/ThumbEE instruction set
AARCH64
Code of A64, ARM 64-bit instruction set
DATA
Data
Memory attributes for the ARC architecture: CODE
Program code
DATA.Byte
8-bit data
DATA.Word
16-bit data
DATA.Long
32-bit data
Memory attributes for the PowerPC architecture: FLE
Code of standard PowerPC instruction set
VLE
Code of Variable Length Encoding
DATA
Data
Memory attributes for the TI-TMS320C55x architecture: BYTE
Tells TRACE32 to interpret code in byte-pointer mode. Corresponds to SYStem.Option ByteMode BYTE for the specified .
WORD
Tells TRACE32 to interpret code in word-pointer mode.
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
163
sYmbol
Memory attributes for the Intel x86 architecture: USE16
16-bit mode
USE32
32-bit mode
USE64
64-bit mode
NOTE:
The Intel Processor Trace does not include any information whether it is in 16, 32, or 64 bit mode. Using the above memory attributes, you can tell TRACE32 how to disassemble correctly.
See also ■ sYmbol.NEW ▲ ’Release Information’ in ’Release History’
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
164
sYmbol
sYmbol.NEW.Function
Format:
Create user-defined function
sYmbol.NEW.Function
Creates a new function. The function has no parameters or local variables. It can only be used to define a range for a piece of code (e.g. for performance analysis). y.new.f myfunc mylabel1--(mylabel2-1)
; function ends before mylabel2
See also ■ sYmbol.CREATE.Function
■ sYmbol.NEW
sYmbol.NEW.Label
Format:
Create user-defined symbol
sYmbol.NEW.Label
Creates a new label. A label is a symbol without type information that refers to a single memory location. sYmbol.CREATE.Label mylab1 0x1000 sYmbol.CREATE.Label mylab2 0x1010 sYmbol.CREATE.Done
; creates “mylab1” at 1000 ; creates “mylab2” at 1010 ; make labels available to program
sYmbol.NEW.Label mylab3 0x1020
; ”mylab3” is available immediately
See also ■ sYmbol.CREATE.Label
■ sYmbol.NEW
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
165
sYmbol
sYmbol.NEW.MACRO
Format:
Create user-defined macro
sYmbol.NEW.MACRO
Creates a new macro. The macro can be used like a C-preprocessor macro. Parameters can be supplied in the same way. y.new.macro MY_NEXT(p) ((p)->next)
; macro is available immediately
v.v MY_NEXT(myvar)
; expands to ((myvar)->next)
See also ■ sYmbol.CREATE.MACRO
■ sYmbol.NEW
▲ ’Release Information’ in ’Release History’
sYmbol.NEW.Module
Format:
Create user-defined module
sYmbol.NEW.Module
Define a new module. sYmbol.NEW.Module \\new 0x2000--0x2fff sYmbol.Browse.Module
See also ■ sYmbol.CREATE.Module
■ sYmbol.NEW
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
166
sYmbol
sYmbol.NEW.Var
Format:
Create user-defined variable
sYmbol.NEW.Var |
Create a user-defined variable. sYmbol.List.Type /Unnamed
; list all types
sYmbol.NEW.Var my_char 0x1000 char
; create variable
sYmbol.INFO
; display all information ; about the created variable
my_char
sYmbol.List.Type /Unnamed sYmbol.NEW.Var my_abc
D:0xa000
sYmbol.INFO
// structure my_abc of type abc
my_abc
struct abc
sYmbol.NEW.Var MyCharArray
D:0x1200
sYmbol.INFO
// character array with 50 elements
MyCharArray
char[50]
sYmbol.NEW.Var MyPtrArray
D:0x1400
sYmbol.INFO
// unsigned short pointer array with 25 el.
MyPtrArray
unsigned short *[25]
See also ■ sYmbol.CREATE.Var
■ sYmbol.NEW
▲ ’Release Information’ in ’Release History’
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
167
sYmbol
sYmbol.OVERLAY
Code overlay
Using the sYmbol.OVERLAY command group, TRACE32 can be configured to debug targets that execute and switch between code overlays. To enable overlay support, use SYStem.Option.OVERLAY. Code overlays are characterized by utilizing the same address range in the target for executing different code at different times. This requires switching between different code segments in physical memory at runtime. As a result, multiple program symbols can refer to the same address range and may refer to program code that currently is not present in physical memory. This requires configuration of TRACE32.
See also ■ sYmbol.OVERLAY.AutoID ■ sYmbol.OVERLAY.List ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲
■ sYmbol.OVERLAY.Create ■ sYmbol.OVERLAY.RESet
■ sYmbol.OVERLAY.DETECT
■ sYmbol.OVERLAY.FRIEND
’CPU specific SYStem Commands’ in ’ARC Debugger’ ’ARM specific SYStem Commands’ in ’ARM Debugger’ ’ARM specific SYStem Commands’ in ’ARMv8-A/-R Debugger’ ’DSP specific SYStem Commands’ in ’TMS320C5X Debugger’ ’Cortex-M specific SYStem Commands’ in ’Cortex-M Debugger’ ’Command Reference: SYStem.Option Commands’ in ’Qorivva MPC5xxx/SPC5xx Debugger and NEXUS Trace’ ’CPU specific SYStem Commands’ in ’PPC400/PPC440 Debugger and Trace’ ’CPU specific System Commands’ in ’PPC600 Family Debugger’ ’CPU specific SYStem Commands’ in ’MPC5xx/8xx Debugger and Trace’ ’CPU specific SYStem Commands’ in ’PQIII Debugger’ ’CPU specific SYStem Commands’ in ’QorIQ Debugger and NEXUS Trace’ ’CPU specific SYStem Commands’ in ’MPC56x NEXUS Debugger and Trace’ ’ARM specific SYStem Commands’ in ’Simulator for ARM and XSCALE’ ’General SYStem Commands’ in ’Simulator for PowerPC’
sYmbol.OVERLAY.AutoID
Format:
Automatically determine overlay IDs
sYmbol.OVERLAY.AutoID [OVS: | VM:]
Calculates a unique identifier for each overlay currently present in the system.
OVS: (default)
Read the overlay code from the overlay storage area (OVS).
VM:
To increase detection speed, TRACE32 can read the overlay code from the debugger VM:. This requires that the code was loaded to the execution area (/codesec) inside the segmented (/overlay) debugger virtual memory (/vm) with a command like Data.LOAD.Elf /OVERLAY /CODESEC /NosYmbol /VM
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
168
sYmbol
To detect which overlay is currently active (i.e. present in the execution area), the debugger uses unique identifiers based on the overlays’ contents. The method sYmbol.OVERLAY.AutoID calculates these identifiers for all currently declared overlay section. Therefore before using it, all code overlay sections have to be known to TRACE32 (through debug information or by explicit declaration) and the application code has to be present in memory. The unique identifier is often called “magic ID” (making reference to the arbitrary value) and is comprised of a “magic” ID value present on a corresponding ID address. It is found by comparing the contents of the overlay sections and searching for a pair that uniquely identifies each of them. By default the algorithm reads the overlays from the storage areas. To speed up the process, copy the program to the debugger VM: and use the option VM: (see there for details). There are two ways for TRACE32 to know about the target program’s overlays: •
In case of “Relocation-based Code Overlay Support”, TRACE32 reads information about overlay sections from the ELF file. This requires special build settings and using the option /overlay with Data.LOAD.Elf /OVERLAY
•
When using “File-based Code Overlay Support”, you have to manually declare all sections and source files (more generally: all DWARF-modules) before loading your ELF file. The declaration is done with the command sYmbol.OVERLAY.Create.
NOTE:
To avoid problems with software breakpoints, sYmbol.OVERLAY.AutoID only uses ID addresses that do not correspond to HLL lines in the segment.
NOTE:
OVS stands for “OVerlay Storage area”. Besides being a parameter, OVS: is also a memory class specifier for accessing the overlay sections at their so-called storage area: the address it is stored at before being copied to an execution area (the address at which the overlay is executed).
See also ■ sYmbol.OVERLAY
sYmbol.OVERLAY.Create
Format:
Declare code overlay section
sYmbol.OVERLAY.Create , [], [], , [], []
Declares a code overlay section and its corresponding modules.
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
169
sYmbol
Typically this command is only used for “File-based Code Overlay Support” i.e. when the overlays are contained in different executable files (e.g. ELF files). In this case you have to declare all sections and source files (more generally: all DWARF-modules) before loading the executable files so that the load command (e.g. via Data.LOAD.Elf /OVERLAY) can copy the object code to the corresponding OVS: memory. In case of “Relocation-based Code Overlay Support”, manual declaration of the sections is not required, because they are declared automatically based on information contained in the ELF file when it is loaded using the option /overlay (Data.LOAD.Elf /OVERLAY). Despite this sYmbol.OVERLAY.Create can be useful e.g. in order to define an overlay segment ID for all code sections. For details regarding the parameters see the following table:
or
Address range where the code overlay section gets executed. You have to specifies also one unique segment ID for all sections which belong to one overlay page (overlay pages overlap each other). e.g. P:0x42:0x1000-1fff In most cases it is enough just to specify the segment ID (here 0x42), since the debugger can normally find the execution addresses in the ELF section table by using the .
,
The ( x ) pair specifies a “magic” ID that uniquely identifies the overlay section when it is present at its execution address. For details regarding the ID see sYmbol.OVERLAY.AutoID which allows autodetecting the ID.
Unique name for the overlay code section as used in your ELF file. e.g. ".page1" The section names are normally defined in your linker script used for building your ELF file. In TRACE32 you can view the sections of a loaded ELF with command sYmbol.List.SECtion. From a system shell (cmd.exe / bshell) you can view the available section names e.g. with the GNU command readelf -S When using overlay sections from different ELF files you can prefix the section name with the ELF file name e.g. "//myprog/.page1"
(source file)
Required only for “File-based Code Overlay Support” to tell the debugger which source files belong to which overlay section (this can only be detected from the ELF when it contains relocation information). is usually the name of a source file (e.g. a C-/C++ file). You can omit this parameter, if your ELF file was linked with compiler support for code overlays e.g. “-Wl,--emit-relocs” (GCC) or “--emit-debug-overlay-section” (ARM RealView).
Specifies the start of the address range where the code section is stored before it gets copied to its execution memory space. You can usually omit this parameter, as the is normally auto-detected when loading you ELF file.
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
170
sYmbol
Example “File-based Code Overlay Support (Single-ELF)”: sYmbol.RESet SYStem.Option OVERLAY ON sYmbol.OVERLAY.Create 1,,,".page1","task.c" sYmbol.OVERLAY.Create 1,,,".page1","funcasm.c" sYmbol.OVERLAY.Create 1,,,".page1","sieve.c" sYmbol.OVERLAY.Create 2,,,".page2","blubber.c" Data.LOAD.Elf myexample.elf /OVERLAY /NoClear /Include /NOFRAME sYmbol.OVERLAY.AutoID sYmbol.OVERLAY.List /STorage /Modules
Example “Relocation-based Code Overlay Support (Single-ELF)”: sYmbol.RESet SYStem.Option OVERLAY ON Data.LOAD.Elf myexample.elf /OVERLAY /Include sYmbol.OVERLAY.AutoID sYmbol.OVERLAY.List /STorage
Example “Relocation-based Multi-ELF Overlay Overlay Support” sYmbol.RESet SYStem.Option OVERLAY ON sYmbol.OVERLAY.Create 1,,,"\\page1\.text" sYmbol.OVERLAY.Create 2,,,"\\page2\.text" Data.LOAD.Elf page1.elf /NoClear /NoRegister /OVERLAY Data.LOAD.Elf page2.elf /NoClear /NoRegister /OVERLAY sYmbol.OVERLAY.List /STorage
See also ■ sYmbol.OVERLAY
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
171
sYmbol
sYmbol.OVERLAY.DETECT
Format:
Detect the current overlay status
symbol.OVERLAY.DETECT [ON | OFF]
Default: ON Executing sYmbol.OVERLAY.DETECT ON performs an immediate update of the status (active vs. not active) of all registered code overlays. The detection mechanism uses the ID address and ID value shown in sYmbol.OVERLAY.List. The optional parameter controls the automatic update of the status of overlay pages when the target executes code that may have changed it. To use the command, first enable overlays via SYStem.Option.OVERLAY.
See also ■ sYmbol.OVERLAY
sYmbol.OVERLAY.FRIEND
Declare a friend overlay segment [build no. 46380 - DVD 08/2013]
Format:
sYmbol.OVERLAY.FRIEND
NOTE:
Only relevant for decoding ARM ETM trace data in the context of overlays.
The command is relevant for tracing the switches between overlays using ARM ETM. For an original overlay segment, the command declares (or deletes) the so-called “friend” overlay segment. The friend overlay segment (a better term would be subsequent overlay) is a segment that usually is executed after the original segment. Declaring a friend overlay gives the debugger a hint which allows to improve the accuracy of decoding trace data corresponding to the switch between the segments. See the box “background” on the following page for more information. For each overlay one friend overlay can be declared. For deleting the friend overlay use the command with a friend ID of 0. In addition to “normal” overlay segments, friend overlays can also be declared for the “common area” of all (“permanent”) non-overlay code by using the segment id 0.
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
172
sYmbol
The configuration of overlays segments and their respective friend overlays is displayed by sYmbol.OVERLAY.List /FRiend..
ID of the original overlay segment (16-bit integer) If segment is zero, a friend segment will be assigned for the global memory space.
ID of the friend overlay segment i.e. typically the subsequent overlay segment (16-bit integer) If friend is zero, the friend will deleted.
NOTE:
To have an effect, the command needs to be executed before activating RTS via RTS.ON.
Background Information If the trace decoder encounters an opcode on an address not contained in the current overlay segment this causes a problem. Therefore - when a friend overlay is declared - the trace decoder also checks the friend overlay for this address. If the address is found, the opcode is considered to be part of the friend overlay otherwise as part of the “common area” and thus as not belonging to an overlay. The previous case can occur when the target switches to a new overlay segment. Switches between overlays are typically reported by an ownership trace message which is created by a special opcode writing to a dedicated register (ownership register). If additional opcodes are executed in the context of the old overlay segment (e.g. opcodes residing on an address of the old overlay segment) the ownership message appears “too early” causing problems decoding the trace data of subsequent opcodes (e.g. RTS return-from-subroutine). If the opcode is executed in the context of the new overlay segment, the message is sent “too late” because the opcode was executed before the ownership trace message was created. The special case where the subsequent overlay does include the address in question but contains a different opcode on the address cannot be handled correctly. It may cause a flow error which however in practice is rather infrequent.
See also ■ sYmbol.OVERLAY
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
173
sYmbol
sYmbol.OVERLAY.List
Format:
Show declared code overlay sections
sYmbol.OVERLAY.List [/Modules | /STorage | /FRriend]
Shows the declared code overlays and the corresponding symbol information set with sYmbol.OVERLAY.Create and/or sYmbol.OVERLAY.AutoID. The code overlays currently present in memory (“active code overlays”) are highlighted.
Modules
Show also the DWARF modules related to the overlay section. This is only useful in case of “File-based Code Overlay Support “, since the column is empty in case of “Relocation-based Code Overlay Support”.
STorage
Shows also the memory region from where the code overlays should be loaded.
FRiend
Show also the friends of each memory segment. See sYmbol.OVERLAY.FRIEND
See also ■ sYmbol.OVERLAY
sYmbol.OVERLAY.RESet
Format:
Reset overlay declarations
sYmbol.OVERLAY.RESet
Clears the complete table of declared overlay sections. The table of declared overlay sections can be shown with sYmbol.OVERLAY.List. Entries can be added with sYmbol.OVERLAY.Create.
See also ■ sYmbol.OVERLAY
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
174
sYmbol
sYmbol.POINTER
Format:
Define special register
sYmbol.POINTER [] []
Determination of frame pointer and static pointer registers. The frame pointer addresses the variables located on the stack, the static pointer addresses the static variables with position independent data only. During loading a HLL program the registers are automatically preset with the values according to the compilers.
sYmbol.POSTFIX
Format:
Set symbol postfix
sYmbol.POSTFIX []
Allows to define a postfix character. If for a symbol name used in a PRACTICE command no applicable symbol is found in the debug information, the postfix character is appended to the symbol name and the search is repeated. The use of a postfix makes sense when using a compiler, which appends a special sign behind every symbol (for example MarkWilliams C).
See also ■ sYmbol.PREFIX ▲ ’Symbol Management’ in ’ICE User’s Guide’
sYmbol.PREFIX
Format:
Set symbol prefix
sYmbol.PREFIX []
A sign may be defined as a prefix. If during entry of a symbol no applicable drag-in can be found, the prefix will be appended in front of the symbol and the search will begin once more. The use of a prefix makes useful when using a compiler, which adds a special sign in front of every symbol (for example Microtec Pascal/C).
See also ■ sYmbol.POSTFIX ▲ ’Symbol Management’ in ’ICE User’s Guide’
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
175
sYmbol
sYmbol.RELOCate
Format:
Relocate symbols
sYmbol.RELOCate :] [|]
The command group sYmbol.RELOCate is outdated (excluding the command sYmbol.RELOCate.shift) and is nowadays only used for OS9-aware debugging (“RTOS Debugger for OS-9” (rtos_os9.pdf)). The command Data.LOAD.Elf /RELOC … provides greater flexibility when symbols need to be relocated.
See also ■ sYmbol.RELOCate.Auto ■ sYmbol.RELOCate.Passive
■ sYmbol.RELOCate.Base ■ sYmbol.RELOCate.shift
■ sYmbol.RELOCate.List
■ sYmbol.RELOCate.Magic
▲ ’Symbol Management’ in ’ICE User’s Guide’ ▲ ’Release Information’ in ’Release History’
sYmbol.RELOCate.Auto
Format:
Control automatic relocation
sYmbol.RELOCate.Auto [ON | OFF]
The command sYmbol.RELOCate.Auto is outdated and is nowadays only used for OS9-aware debugging. Please refer to “RTOS Debugger for OS-9” (rtos_os9.pdf) for more information on this command.
See also ■ sYmbol.RELOCate ■ sYmbol.RELOCate.Passive
■ sYmbol.RELOCate.Base ■ sYmbol.RELOCate.shift
■ sYmbol.RELOCate.List
sYmbol.RELOCate.Base
Format:
■ sYmbol.RELOCate.Magic
Define base address
sYmbol.RELOCate.Base :] [|]
The command sYmbol.RELOCate.Base is outdated and is nowadays only used for OS9-aware debugging. Please refer to “RTOS Debugger for OS-9” (rtos_os9.pdf) for more information on this command.
See also ■ sYmbol.RELOCate ■ sYmbol.RELOCate.Passive
■ sYmbol.RELOCate.Auto ■ sYmbol.RELOCate.shift
■ sYmbol.RELOCate.List
■ sYmbol.RELOCate.Magic
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
176
sYmbol
sYmbol.RELOCate.List
Format:
List relocation info
sYmbol.RELOCate.List
The command sYmbol.RELOCate.List is outdated and is nowadays only used for OS9-aware debugging. Please refer to “RTOS Debugger for OS-9” (rtos_os9.pdf) for more information on this command.
See also ■ sYmbol.RELOCate ■ sYmbol.RELOCate.Passive
■ sYmbol.RELOCate.Auto ■ sYmbol.RELOCate.shift
■ sYmbol.RELOCate.Base
sYmbol.RELOCate.Magic
Format:
■ sYmbol.RELOCate.Magic
Define program magic
sYmbol.RELOCate.Magic ] [|]
The command sYmbol.RELOCate.Magic is outdated and is nowadays only used for OS9-aware debugging. Please refer to “RTOS Debugger for OS-9” (rtos_os9.pdf) for more information on this command.
See also ■ sYmbol.RELOCate ■ sYmbol.RELOCate.Passive
■ sYmbol.RELOCate.Auto ■ sYmbol.RELOCate.shift
■ sYmbol.RELOCate.Base
sYmbol.RELOCate.Passive
Format:
■ sYmbol.RELOCate.List
Define passive base address
sYmbol.RELOCate.Passive :
The command sYmbol.RELOCate.Passive is outdated and nowadays only used for OS9-aware debugging. Please refer to “RTOS Debugger for OS-9” (rtos_os9.pdf) for more information on this command.
See also ■ sYmbol.RELOCate ■ sYmbol.RELOCate.Magic
■ sYmbol.RELOCate.Auto ■ sYmbol.RELOCate.shift
■ sYmbol.RELOCate.Base
■ sYmbol.RELOCate.List
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
177
sYmbol
sYmbol.RELOCate.shift
Format:
Relocate symbols
sYmbol.RELOCate.shift : [|]
Manually relocates symbols. The symbol path limits the relocation to special symbols of a module or a program. If an address range is given, only the symbols in this range will be relocated. Relocation is always relative to the current address of the symbol. When the memory access classes of some symbols are wrong, they can be changed by the sYmbol.Modify.Access command. ; relocate all program symbols by 12240H sYmbol.RELOCate.shift P:0x12240 ; relocate all data symbols of module 'main' sYmbol.RELOCate.shift D:0x1000 \main ; relocate all data symbols in the given range sYmbol.RELOCate.shift D:0x1000 0x40000--0x4ffff
See also ■ sYmbol.RELOCate ■ sYmbol.RELOCate.Magic
■ sYmbol.RELOCate.Auto ■ sYmbol.RELOCate.Passive
■ sYmbol.RELOCate.Base
■ sYmbol.RELOCate.List
▲ ’Release Information’ in ’Release History’
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
178
sYmbol
sYmbol.RESet
Format:
Clear symbol table
sYmbol.RESet
All symbols and search paths for source files are cleared.
sYmbol.SourceCONVert
Conversion for Japanese font
Format:
sYmbol.SourceCONVert
:
OFF | EUC-JP
Converts the hll source information from EUC (Extended UNIX Code) to JP for Windows.
sYmbol.SourceLOAD
Format:
Initiate the loading of an hll source file
sYmbol.SourceLOAD [ []]
By default a hll source file is only loaded by TRACE32 when the contents of the hll source file is required during debugging. The command sYmbol.SourceLOAD loads the hll source file for the defined module on user request. The hll source line information from the absolute object file must be loaded before using this command. If the command sYmbol.SourceLOAD is used without any parameter, all hll source files are loaded. The command sYmbol.SourceLOAD allows also the specification of a new hll source file instead of the one listed in sYmbol.List.SOURCE. This can be useful, if the name or directory of the source file has been changed after compilation. ; load all source files Data.LOAD.COFF arm.abs sYmbol.SourceLOAD ; load the source file for the module \\thumble\arm Data.LOAD.COFF arm.abs sYmbol.List.SOURCE sYmbol.SourceLOAD \\thumble\arm ; load the source file NewArm.C for the module \\thumble\arm Data.LOAD.COFF arm.abs sYmbol.SourceLoad \\thumble\arm G:\ARM\etc\Test\NewArm.C ©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
179
sYmbol
sYmbol.SourcePATH
Format:
Source search path
sYmbol.SourcePATH [+ | - | -- | ] … (deprecated)
Adds or removes directories to the path used for searching the source files accessed by TRACE32. Use the '+' to add a directory to the path. Use the '-' sign to remove a path from the list. Two minus signs ’--’ clear the whole list like sYmbol.RESet. The current search order can be displayed by the command sYmbol.SourcePATH.List. The list can be saved with the STOre command and the SPATH item. sYmbol.SourcePATH + c:\source\proj_1 sYmbol.SourcePATH + c:\mike\source\proj_1 … sYmbol.SourcePATH - c:\source\proj_1
; add search directories
; remove search directory
See also ■ ■ ■ ■ ■ ■ ■ ■ ■
■ ■ ■ ■ ■ ■ ■ ■
sYmbol.SourcePATH.Delete sYmbol.SourcePATH.List sYmbol.SourcePATH.Set sYmbol.SourcePATH.SetCache sYmbol.SourcePATH.SetCachedDirCache sYmbol.SourcePATH.SetDynamicDir sYmbol.SourcePATH.SetRecurseDir sYmbol.SourcePATH.Translate sYmbol.SourcePATH.Verbose
sYmbol.SourcePATH.DOWN sYmbol.SourcePATH.RESet sYmbol.SourcePATH.SetBaseDir sYmbol.SourcePATH.SetCachedDir sYmbol.SourcePATH.SetDir sYmbol.SourcePATH.SetMasterDir sYmbol.SourcePATH.SetRecurseDirCache sYmbol.SourcePATH.UP
▲ ’Symbol Management’ in ’ICE User’s Guide’
sYmbol.SourcePATH.Delete
Format:
Delete path from search list
sYmbol.SourcePATH.Delete
Removes the specified directory from the search path.
See also ■ sYmbol.SourcePATH
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
180
sYmbol
sYmbol.SourcePATH.DOWN
Format:
Make directory last in search order
sYmbol.SourcePATH.DOWN
Internal TRACE32 command. The specified directory becomes the last in the defined search order.
See also ■ sYmbol.SourcePATH
sYmbol.SourcePATH.List
List source search paths [Examples]
Format:
sYmbol.SourcePATH.List sYmbol.List.SPATH (deprecated)
Lists defined search paths and their attributes. Local buttons
Delete All
Reset all source path settings. (command sYmbol.SourcePATH.RESet)
Reload
Reload all loaded source files. (command sYmbol.SourceRELOAD)
Verbose
Enable/disable search details in the TRACE32 Message Area. (command sYmbol.SourcePATH.Verbose ON | OFF)
Store…
Save source path search setting to . (command STOre SPATH)
Cache…
Save source path search setting plus list of all cached files to . (Command STOre SPATHCACHE)
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
181
sYmbol
Load…
Load source path settings from . (command DO )
AddDir
Add directory as base directory and as direct directory to search path list. (command sYmbol.SourcePATH )
Example for a base directory: ; Define directory as base for relative paths sYmbol.SourcePATH.SetBaseDir C:\T32_ARM\demo\sources
Example for direct directories: ; directory is direct search path sYmbol.SourcePATH.SetDir C:\T32_ARM\demo\arm\hardware\imx53\quickstartboard\demo_drivers ; directory is direct search path, all source files found in the defined ; directory are cached by TRACE32 sYmbol.SourcePATH.SetCachedDir C:\T32_ARM\demo\arm\hardware\imx53\quickstartboard\demo_net ; directory is direct search path, the directory and all its ; sub-directories are used as search path sYmbol.SourcePATH.SetRecurseDir C:\T32_ARM\demo\arm\hardware\imx53\quickstartboard\demo_ext ; directory is a direct search path, if the source file was found in ; this directory, this directory will become the first to be searched ; in sYmbol.SourcePATH.SetDynamicDir C:\T32_ARM\demo\arm\hardware\imx53\quickstartboard\demo_int
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
182
sYmbol
Example for translated paths: sYmbol.SourcePATH.Translate "Z:/Projects/own/trunk/V850/src/sieve" "C:/T32_V850/demo/20131129trainings_demo/demo/v850/compiler/iar" sYmbol.SourcePATH.Translate "C:/Programme/IAR Systems" "C:/T32_V850/demo" sYmbol.List.SourcePATH
See also ■ sYmbol.SourcePATH ▲ ’Release Information’ in ’Release History’
sYmbol.SourcePATH.RESet
Format:
Reset search path configuration
sYmbol.SourcePATH.RESet
Resets the search path configuration.
See also ■ sYmbol.SourcePATH
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
183
sYmbol
sYmbol.SourcePATH.Set
Format:
Define search path
sYmbol.SourcePATH.Set
This command combines the commands: •
sYmbol.SourcePATH.SetDir
•
sYmbol.SourcePATH.SetBaseDir
See also ■ sYmbol.SourcePATH
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
184
sYmbol
sYmbol.SourcePATH.SetBaseDir
Format:
Define directory as base for relative paths
sYmbol.SourcePATH.SetBaseDir
Defines directory as base for relative paths. ; load object file vmlinux and cut the following from the source paths: ; start of source path til end of "kernels-arm" Data.LOAD.Elf ~~~~/vmlinux /StripPART "kernels-arm" sYmbol.SourcePATH.SetBaseDir J:\AND\omap\sources sYmbol.SourcePATH.List sYmbol.List.SOURCE
source
Source path provided by executable.
file
Source path as modified by Data.LOAD command or source path from which the file was loaded.
See also ■ sYmbol.SourcePATH ▲ ’Release Information’ in ’Release History’
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
185
sYmbol
sYmbol.SourcePATH.SetCache
Format:
Internal use only
sYmbol.SourcePATH.SetCache
Internal TRACE32 software command, not of interest for TRACE32 users.
See also ■ sYmbol.SourcePATH
sYmbol.SourcePATH.SetCachedDir
Format:
Cache direct search path directory
sYmbol.SourcePATH.SetCachedDir {}
All source files found in the defined directory are cached by TRACE32. sYmbol.SourcePATH.SetCachedDir C:\T32_ARM\demo\arm\hardware\imx53\quickstartboard\demo_net
STOre CacheCon SPATHCACHE
; generate a script for fast recaching
See also ■ sYmbol.SourcePATH
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
186
sYmbol
sYmbol.SourcePATH.SetCachedDirCache
Format:
Internal use only
sYmbol.SourcePATH.SetCachedDirCache …
Internal TRACE32 software command, not of interest for TRACE32 users.
See also ■ sYmbol.SourcePATH
sYmbol.SourcePATH.SetDir
Format:
Define directory as direct search path
sYmbol.SourcePATH.SetDir
The source files are directly searched in the defined directories. Example: Data.LOAD.Elf armle.axf
; load elf file
sYmbol.List.SOURCE
; display path information for ; source files
Source path provided by Elf file
error indicates that the source file was not found under the provided path
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
187
sYmbol
; define directory as direct search path sYmbol.SourcePATH.SetDir C:\T32_ARM\demo\arm\compiler\arm sYmbol.SourcePATH.List
; display search path defined by ; user
sYmbol.List.SOURCE
; display path information for ; source files
Source path from which the file was loaded
See also ■ sYmbol.SourcePATH
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
188
sYmbol
sYmbol.SourcePATH.SetDynamicDir
Format:
Adjust search order at hit
sYmbol.SourcePATH.SetDynamicDir {}
The search order defined by this command is dynamically changed. The directory in which the last searched source file was found becomes the first directory the debugger searches for the next source file. sYmbol.SourcePATH.SetDynamicDir C:\T32_ARM\demo\arm\hardware\imx53\quickstartboard\demo_net sYmbol.SourcePATH.SetDynamicDir C:\T32_ARM\demo\arm\hardware\imx53\quickstartboard\demo_drivers sYmbol.SourcePATH.SetDynamicDir C:\T32_ARM\demo\arm\hardware\imx53\quickstartboard\demo_ext sYmbol.SourcePATH.SetDynamicDir C:\T32_ARM\demo\arm\hardware\imx53\quickstartboard\demo_int List
See also ■ sYmbol.SourcePATH
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
189
sYmbol
sYmbol.SourcePATH.SetMasterDir
Format:
Store cached files only relative
sYmbol.SourcePATH.SetMasterDir
If the command STOre SPATHCACHE is used, all file names are only saved relative to the defined directory. Data.LOAD G:\AND\compiler\xc\bt800ip.iee sYmbol.SourcePATH.SetCachedDir G:\AND\compiler\xc\System sYmbol.SourcePATH.SetMasterDir G:\AND\compiler STOre cache.cmm SPATHCACHE
// And Thu May 27 16:40:51 2004 B:: SYMBOL.SPATH.SETCACHEDDIRCACHE "xc\System" Y.SPATH.SETCACHE "xc\System" ( "ad_cond.c" "adsubs.c" "bt_27.c" "bt_27.h" "bt_28.c" "bt_flsh.c" ) ENDDO
See also ■ sYmbol.SourcePATH
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
190
sYmbol
sYmbol.SourcePATH.SetRecurseDir
Format:
Define recursive direct search path
sYmbol.SourcePATH.SetRecurseDir {}
Use the defined directory and all subdirectories as search path. sYmbol.SourcePATH.SetRecurseDir C:\T32_ARM\demo\arm\hardware\imx53\quickstartboard
See also ■ sYmbol.SourcePATH
sYmbol.SourcePATH.SetRecurseDirCache
Format:
Internal use only
sYmbol.SourcePATH.SetRecurseDirCache …
Internal TRACE32 software command, not of interest for TRACE32 users.
See also ■ sYmbol.SourcePATH
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
191
sYmbol
sYmbol.SourcePATH.Translate
Format:
Replace part of the source path
sYmbol.SourcePATH.Translate
Replace in source path by .
Data.LOAD.Elf sieve.elf sYmbol.List.SOURCE sYmbol.SourcePATH.Translate "Z:/Projects/own/trunk/V850/src/sieve" "C:/T32_V850/demo/20131129trainings_demo/demo/v850/compiler/iar" sYmbol.SourcePATH.Translate "C:/Programme/IAR Systems" "C:/T32_V850/demo" sYmbol.List.SourcePATH
Please note the following: If ends with a directory separator has also to end with a directory separator. If does not end with a directory separator has also not to end with a directory separator.
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
192
sYmbol
It is also possible to replace just a part of the source path.
sYmbol.SourcePATH.Translate "P5" "K8"
See also ■ sYmbol.SourcePATH ▲ ’Release Information’ in ’Release History’
sYmbol.SourcePATH.UP
Format:
Move path up in the search order
sYmbol.SourcePATH.UP
Internal TRACE32 command. The defined directory becomes the first in the search path order.
See also ■ sYmbol.SourcePATH
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
193
sYmbol
sYmbol.SourcePATH.Verbose
Format:
Display search details in message AREA
sYmbol.SourcePATH.Verbose ON | OFF
OFF (default)
No details about the source file search are given.
ON
Details about the source file search are displayed in the TRACE32 message AREA.view window, if a source file is loaded by TRACE32.
AREA.view
; open TRACE32 message AREA window ; to display source file search ; details
sYmbol.SourcePATH.Verbose ON List
; display source listing
Verbose ON is indicated in the sYmbol.SourcePATH.List window
See also ■ sYmbol.SourcePATH
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
194
sYmbol
sYmbol.SourceRELOAD
Format:
Reload source files
sYmbol.SourceRELOAD
Invalidates all loaded source files and marks them for reload. This can be useful when the source search path has been changed to reload the source modules that came from the old source path.
sYmbol.STATE
Format:
Display statistic
sYmbol.STATE
The size of the symbol tables and the global settings are displayed. See also the sYmbol.MEMory command.
See also ■ sYmbol.Browse.sYmbol
■ sYmbol.INFO
■ sYmbol.List
❏ sYmbol.STATE()
▲ ’The Symbol Database’ in ’Training HLL Debugging’
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
195
sYmbol
sYmbol.STRIP
Format:
Set max. symbol length
sYmbol.STRIP []
Cuts symbols to the specified length. This option is useful, when the compiler has a limited symbol length. sYmbol.STRIP 8. Data.List Main_Function
; will display 'Main_Fun'
sYmbol.View
Format:
Show symbol info
sYmbol.View [/Track]
Same as command sYmbol.Info.
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
196
sYmbol
SYnch
Function TRACE32 realizes AMP multi-core debugging and multi-processor debugging by starting two or more TRACE32 instances. The command group SYnch allow to establish a connection between different TRACE32 instances for the following purposes: •
To establish a start/stop synchronization between the cores/processors controlled by different TRACE32 instances.
•
To allow concurrent assembler single steps between the cores/processors controlled by different TRACE32 instances.
•
To allow synchronous system mode changes between the cores/processors controlled by different TRACE32 instances.
•
To get a time synchronization between trace information in different TRACE32 instances. This requires that the trace information uses a common time base e.g. global TRACE32 timestamp or global chip timestamps.
For configuration, use the TRACE32 command line or the SYnch.state window.
See also ■ ■ ■ ■
SYnch.Connect SYnch.MasterSystemMode SYnch.SlaveBrk SYnch.state
■ ■ ■ ■
■ SYnch.MasterGo ■ SYnch.ON ■ SYnch.SlaveStep
SYnch.MasterBrk SYnch.OFF SYnch.SlaveGo SYnch.XTrack
■ SYnch.MasterStep ■ SYnch.RESet ■ SYnch.SlaveSystemMode
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
197
SYnch
SYnch.Connect
Format:
Connect to other TRACE32 instances
SYnch.Connect [ …]
Establishes connections to other TRACE32 instances by using the InterCom system. SYnch.Connect localhost:20001 localhost:20002
SYnch.ON is automatically set, when the command SYnch.Connect establish the connections. If the command SYnch.Connect is used without parameters it disconnects the TRACE32 instances. SYnch.Connect
See also ■ SYnch.state
SYnch.MasterBrk
Format:
Invite other TRACE32 to stop synchronously
SYnch.MasterBrk [ON | OFF]
OFF
No invitation for a synchronous stop is broadcast to other TRACE32 instances (default).
ON
Invite other TRACE32 instances to stop synchronously. Cores in a multicore chip can be stopped instruction-accurate if the chip provides a break switch/cross trigger unit. Otherwise software-controlled stop synchronization is used. Softwarecontrolled synchronization stop the cores/processors one by one with a minimum delay of 1.ms.
SYnch.MasterBreak and SYnch.SlaveBreak can be freely programmed for the connected TRACE32 instances. But the break switch/cross trigger unit in the multicore chip might not provide resources to program all links. TRACE32 adjust the programming of the links to the available resources in this case.
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
198
SYnch
On TRACE32-ICE stop synchronization is software-controlled by default. To use the hardware-based start/ stop synchronization between two SCU units (connect the two SYNCH sockets of the SCU with synch cable) the connect command must be left empty.
See also ■ SYnch.state ▲ ’Master-Slave Synchronisation’ in ’ICE User’s Guide’
SYnch.MasterGo
Format:
Invite other TRACE32 to start synchronously
SYnch.MasterGo [ON | OFF]
OFF
No invitation for a synchronous start is broadcast to other TRACE32 instances (default).
ON
Invite other TRACE32 instances to start synchronously. Cores in a multicore chip can start synchronously if this is supported by the chip. Otherwise software-controlled start synchronization is used. softwarecontrolled synchronization starts the cores/processors one by one with a minimum delay of 1.ms.
On TRACE32-ICE start synchronization is software-controlled by default. To use the hardware-based start/ stop synchronization between two SCU units (connect the two SYNCH sockets of the SCU with synch cable) the connect command must be left empty.
See also ■ SYnch.state
■ TargetSystem.state
▲ ’Master-Slave Synchronisation’ in ’ICE User’s Guide’
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
199
SYnch
SYnch.MasterStep
Format:
Invite other TRACE32 to asm step synchronously
SYnch.MasterStep [ON | OFF]
OFF
No invitation for concurrent assembler single stepping is broadcast to other TRACE32 instances (default).
ON
Invite other TRACE32 instances to perform concurrent assembler single stepping.
Hll single stepping is regarded as a synchronous start.
See also ■ SYnch.state
■ TargetSystem.state
SYnch.MasterSystemMode
Format:
Invite other TRACE32 to follow mode change
SYnch.MasterSystemMode [ON | OFF]
OFF
No invitation for synchronous mode changing is broadcast to other TRACE32 instances (default).
ON
Invite other TRACE32 instances to perform system mode changes synchronously. System mode changes are typically performed by one of the following commands: SYStem.Up, SYStem.Mode commands and SYStem.RESetTarget.
See also ■ SYnch.state
■ TargetSystem.state
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
200
SYnch
SYnch.OFF
Format:
Disable connection mechanism
SYnch.OFF
Disable the software component that allows a TRACE32 instance to connect to other instances.
See also ■ SYnch.state ▲ ’Master-Slave Synchronisation’ in ’ICE User’s Guide’
SYnch.ON
Format:
Disable connection mechanism
SYnch.ON
Enable the software component that allows a TRACE32 instance to connect to other instances.
See also ■ SYnch.state ▲ ’Master-Slave Synchronisation’ in ’ICE User’s Guide’
SYnch.RESet
Format:
Reset SYnch mechanism
SYnch.RESet
Resets the SYnch mechanism to its default settings.
See also ■ SYnch.state ▲ ’Master-Slave Synchronisation’ in ’ICE User’s Guide’
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
201
SYnch
SYnch.SlaveBrk
Format:
Synchronize with stop in connected TRACE32
SYnch.SlaveBrk [ON | OFF]
OFF
Don't synchronize with the stop of the program execution in a connected TRACE32 instance.
ON
Synchronize with the stop of the program execution in a connected TRACE32 instance. Cores in a multicore chip can be stopped instruction-accurate if the chip provides a break switch/cross trigger unit. Otherwise software-controlled stop synchronization is used. Softwarecontrolled synchronization stop the cores/processors one by one with a minimum delay of 1.ms.
See also ■ SYnch.state
■ TargetSystem.state
▲ ’Master-Slave Synchronisation’ in ’ICE User’s Guide’
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
202
SYnch
SYnch.SlaveGo
Format:
Synchronize with start in connected TRACE32
SYnch.SlaveGo [ON | OFF]
OFF
Don't synchronize with the start of the program execution in a connected TRACE32 instance.
ON
Synchronize with the start of the program execution in a connected TRACE32 instance. Cores in a multicore chip can start synchronously if this is supported by the chip. Otherwise software-controlled start synchronization is used. softwarecontrolled synchronization starts the cores/processors one by one with a minimum delay of 1.ms.
See also ■ SYnch.state
■ TargetSystem.state
▲ ’Master-Slave Synchronisation’ in ’ICE User’s Guide’
SYnch.SlaveStep
Format:
Synchronize with asm step in connected TRACE32
SYnch.SlaveStep [ON | OFF]
OFF
Don't synchronize with assembler single steps in a connected TRACE32 instance.
ON
Synchronize with assembler single steps in a connected TRACE32 instance.
See also ■ SYnch.state
■ TargetSystem.state
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
203
SYnch
SYnch.SlaveSystemMode
Format:
Synch. with mode changes in other TRACE32
SYnch.SlaveSystemMode [ON | OFF]
OFF
Don’t synchronize with system mode changes in connected TRACE32 instances.
ON
Synchronize with system mode changes in connected TRACE32 instances.
See also ■ SYnch.state
■ TargetSystem.state
SYnch.state
Format:
Display current SYnch settings
SYnch.state
Displays the current setup of the SYnch mechanism.
See also ■ ■ ■ ■
SYnch.Connect SYnch.MasterSystemMode SYnch.SlaveBrk SYnch.XTrack
■ ■ ■ ■
■ SYnch.MasterGo ■ SYnch.ON ■ SYnch.SlaveStep
SYnch.MasterBrk SYnch.OFF SYnch.SlaveGo TargetSystem.state
■ SYnch.MasterStep ■ SYnch.RESet ■ SYnch.SlaveSystemMode
▲ ’Master-Slave Synchronisation’ in ’ICE User’s Guide’
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
204
SYnch
SYnch.XTrack
Format:
Establish time synchronization to another TRACE32 instance
SYnch.XTrack [ …]
Get a time synchronization between trace information in different TRACE32 instances. This requires that the trace information uses a common time base e.g. global TRACE32 time tamp or global chip timestamps. SYnch.XTrack localhost:20001 localhost:20002 ; trace commands in one TRACE32 instance Trace.List /Track Trace.Chart.sYmbol /ZoomTrack
See also ■ SYnch.state
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
205
SYnch
SYStem System commands are used for setting the operating modes of the system. In addition, they are used to define all those parameters which remain valid after stopping the emulation. The various subcommands of this command group are highly target-dependent, for details check the emulation probe manual for your target system too. In general, the configuration commands (e.g. SYStem.Option) should be used before the emulation system is activated by the SYStem.Mode or SYStem.Up command. Changing configuration options while the system is up may cause unpredictable behavior.
SYStem.Access
Dual-port access mode
Format 1:
SYStem.Access
(ICE)
Format 2:
SYStem.ACCESS
(deprecated for TRACE32 debuggers, use SYStem.MemAccess instead)
:
Denied Nodelay Request Wait Prefetch DUMMY REFresh
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
206
SYStem
Refer to emulation probe description for details of the access modes implemented within the specific emulation probe: Denied
In this mode dual-port access cannot occur during real-time emulation. Execution times are not affected by dual-port accesses. However, all commands are blocked requiring access to emulation memory, breakpoints or memory flags during real-time emulation.
Nodelay
Normal condition. Dual-port access does not alter real-time characteristics. This operating mode is possible in the case of slow CPUs or low clock frequency only. The critical frequency of the emulation system is reached at a cycle time of 200 ns typically (70 ns RAM speed). Dual-port emulation memory is accessed in time-multiplex. In the case of slow CPUs and fast memory, enough time to “hide” the dual-port access between the emulation CPU's memory accesses is available. In the case of fast CPUs and high speed emulation there is no time available between cycles.
Request
The CPU is stopped via the DMA request line prior to dual-port access (as long as a DMA access has not already occurred). This mode is not functional with the emulation CPU in constant reset or DMA mode. The advantage of this condition is that access cycles are not increased as a result of dual-port accesses.
Wait
Additional wait cycles are inserted. System performance deteriorates by less than one percent. However, some cycles are increased by additional wait cycles. This type of access is always possible, even with the emulation CPU in reset or DMA mode.
Prefetch, DUMMY, REFresh
This access modes are possible on special CPU types only which support some cycles to install a hidden dual-port mode.
See also ■ SYStem.state ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲
’CPU Type and Mode’ in ’FIRE Emulator for HC12/MCS12’ ’Basics’ in ’FIRE Emulator for C166S V2 Family’ ’Basics’ in ’ICE Emulator for 8051’ ’Basics’ in ’ICE Emulator for MC68020/30’ ’General SYStem Settings and Restrictions’ in ’ICE Emulator for MC6833X’ ’Basics’ in ’ICE Emulator for Motorola 68360/349’ ’Basics’ in ’ICE Emulator for C166/ST10’ ’Basics’ in ’ICE Emulator for Hitachi H8/300 and H8/500’ ’Basics’ in ’ICE Emulator for 68HC05 and 68HC08’ ’Basics’ in ’ICE Emulator for 68HC11’ ’Basics’ in ’ICE Emulator for MELPS 7700’ ’Emulation System’ in ’ICE User’s Guide’ ’Basics’ in ’ICE Emulator for Z80 and Z180’
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
207
SYStem
SYStem.BankFile
Format:
Define the bank switch program
SYStem.BankFile
Loads an extension for bank switched targets to the emulator control program. For details check the emulation probe manual for your processor. The bank definition file must be a pure binary file (can be generated by the Data.SAVE.Binary command).
See also ■ SYStem.state ▲ ’Banking’ in ’ICE Emulator for C166/ST10’ ▲ ’Emulation System’ in ’ICE User’s Guide’ ▲ ’Using the MMU for Banked Target Systems’ in ’ICE Emulator for Z80 and Z180’
SYStem.BankMode
Format:
Define the bank switch mode
SYStem.BankMode [INTern | EXTern | OFF]
Defines the operation mode of bank switched targets. For details check the emulation probe manual for your processor.
See also ■ SYStem.state ▲ ’Banking’ in ’ICE Emulator for C166/ST10’
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
208
SYStem
SYStem.BdmClock
Select BDM clock
Format:
SYStem.BdmClock
:
2 | 4 | 8 | 16 |
:
1000. … 5000000.
Either the divided CPU frequency is used as the BDM clock or a fixed clock rate. The fixed clock rate must be used if the operation frequency is very slow or if the clock line is not available. The default is a fixed rate of 1 MHz.
See also ■ SYStem.state ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲
’CPU specific SYStem Commands’ in ’XC2000/XC16x/C166CBC Debugger’ ’CPU specific SYStem Commands’ in ’CPU32/ColdFire Debugger and Trace’ ’CPU specific SYStem Commands’ in ’ARC Debugger’ ’DSP specific SYStem Commands’ in ’TMS320C2X Debugger’ ’DSP specific SYStem Commands’ in ’TMS320C5X Debugger’ ’DSP specific SYStem Commands’ in ’TMS320C6X Debugger’ ’Cortex-M specific SYStem Commands’ in ’Cortex-M Debugger’ ’General SYStem Settings and Restrictions’ in ’MCS08 Debugger’ ’General SYStem Settings and Restrictions’ in ’MCS12 Debugger’ ’General SYStem Settings and Restrictions’ in ’M32R Debugger and Trace’ ’General SYStem Settings and Restrictions’ in ’M8051EW Debugger’ ’General SYStem Settings for the Debugger’ in ’M-Core Debugger’ ’MIPS specific SYStem Commands’ in ’MIPS Debugger and Trace’ ’General SYStem Commands’ in ’MMDSP Debugger’ ’Command Reference: SYStem Commands’ in ’Qorivva MPC5xxx/SPC5xx Debugger and NEXUS Trace’ ’General SYStem Commands’ in ’MSP430 Debugger’ ’Commands’ in ’PCP Debugger Reference’ ’General SYStem Commands’ in ’PPC400/PPC440 Debugger and Trace’ ’General System Commands’ in ’PPC600 Family Debugger’ ’General SYStem Commands’ in ’MPC5xx/8xx Debugger and Trace’ ’General SYStem Commands’ in ’PQIII Debugger’ ’General SYStem Commands’ in ’QorIQ Debugger and NEXUS Trace’ ’General SYStem Commands’ in ’PWRficient Debugger’ ’General SYStem Settings and Restrictions’ in ’ICE Emulator for MC6833X’ ’General SYStem Settings and Restrictions’ in ’ICE Emulator for Motorola 68360/349’ ’ARM specific SYStem Commands’ in ’MAC71xx/72xx NEXUS Debugger and Trace’ ’General SYStem Commands’ in ’MMDSP NEXUS Debugger and Trace’ ’CPU specific SYStem Commands’ in ’Simulator for TriCore’
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
209
SYStem
SYStem.CADIconfig
CADI-specific setups
Virtual targets only: CADI
The SYStem.CADiconfig command group is used to define CADI-specific setups for debugging and tracing.
See also ■ SYStem.CADIconfig.RemoteServer ■ SYStem.state
■ SYStem.CADIconfig.Traceconfig
SYStem.CADIconfig.RemoteServer
Define connection to CADI server
Virtual targets only: CADI
Format:
SYStem.CADIconfig.RemoteServer [ ]
Informs TRACE32 how to connect to the CADI server for debugging purposes. If this command is omitted from your start-up script, then TRACE32 assumes that the virtual target (including the CADI server) and TRACE32 are running on the same machine. With arguments: Defines a connection to the CADI server on a remote computer. Ensure that your CADI server allows remote connections. Without arguments: Resets the connection to a configuration where TRACE32 and the virtual target are assumed to be running on the same machine (localhost).
IP address or host name of the remote computer where the virtual target is running.
TCP/IP port of the CADI server.
Figure 1 of 2: The red line illustrates the connection that is defined using the SYStem.CADIconfig. RemoteServer command. Host 1
TRACE32
Host 2
Debug Connection via CADI
Virtual target (incl. CADI server)
Optional Trace Connection via TCP/IP
t32caditrace.dll
t32cadi.dll
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
210
SYStem
Figure 2 of 2: The red line illustrates the connection that is defined using the SYStem.CADIconfig. RemoteServer command. localhost
TRACE32
Debug Connection via CADI
Virtual target (incl. CADI server)
Optional Trace Connection via TCP/IP
t32caditrace.dll
t32cadi.dll
See also ■ SYStem.CADIconfig
❏ SYStem.CADIconfig.RemoteServer()
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
211
SYStem
SYStem.CADIconfig.Traceconfig
Define network settings to CADI trace
Virtual targets only: CADI
Format:
SYStem.CADIconfig.Traceconfig [ ]
Without arguments: Defines a connection to the trace plug-in based on the default values. The file name of the trace plug-in is t32caditrace.dll / t32caditrace.so. With arguments: Defines a user-defined connection to the trace plug-in. (Default: 127.0.0.1)
IP address of the host machine where the virtual target is running. IPv4 only. Host names are not allowed.
(Default: 21000)
TCP/IP port of the trace plug-in.
The red line illustrates the connection that is defined using the SYStem.CADIconfig.Traceconfig command.
TRACE32
t32cadi.dll
Debug Connection via CADI
Virtual target (including CADI server)
Trace Connection via TCP/IP
t32caditrace.dll
See also ■ SYStem.CADIconfig
❏ SYStem.CADIconfig.Traceconfig()
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
212
SYStem
SYStem.Clock
Select clock
Format:
SYStem.Clock
:
VCO Low Mid High
Internal clock selection. In the case of NoProbe, AloneInt and EmulInt the internal clock generator is used. Three dedicated frequencies and VCO are available. These dedicated frequencies produce CPU clock rates of 2.5 … 10 MHz. Frequencies of up to 25 MHz can be achieved using the VCO (voltage controlled oscillation). The clock rate is the same as of the internal CPU clock. With CPUs having clock divider (e.g. when using integrated oscillators) the input frequencies are many times higher than that of the internal clock frequencies. In the case of fully static CPUs, clock rates can be switched during operation (not ECC8). Otherwise, the emulation CPU should be reinitialized by choosing a system operating mode after switching over. VCO
Select VCO. Clock frequencies are set using the VCO.Clock command.
Low
2.5 MHz clock frequency.
Mid
5 MHz clock frequency.
High
10 MHz clock frequency.
VCO.Clock 0x12000000. SYStem.Clock VCO
; System frequency 12 MHz
See also ■ SYStem.state ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲
’General SYStem Settings and Restrictions’ in ’StarCore Debugger and Trace’ ’Basics’ in ’ICE Emulator for INTEL 196K Family’ ’Basics’ in ’ICE Emulator for 8051’ ’General Settings and Restrictions’ in ’ICE Emulator for 68000’ ’Basics’ in ’ICE Emulator for MC68020/30’ ’Basics’ in ’ICE Emulator for MC68040/60’ ’Basics’ in ’ICE Emulator for MC68000 and MC6830X’ ’General SYStem Settings and Restrictions’ in ’ICE Emulator for MC6833X’ ’General SYStem Settings and Restrictions’ in ’ICE Emulator for Motorola 68360/349’ ’General SYStem Settings and Restrictions’ in ’ICE Emulator for C166/ST10’ ’Basics’ in ’ICE Emulator for Hitachi H8/300 and H8/500’ ’Basics’ in ’ICE Emulator for 68HC05 and 68HC08’ ’Basics’ in ’ICE Emulator for 68HC11’ ’Basics’ in ’ICE Emulator for 386/486’ ’Basics’ in ’ICE Emulator for MELPS 7700’ ’Basics’ in ’ICE Emulator for PowerPC’ ’Emulation System’ in ’ICE User’s Guide’ ’Basics’ in ’ICE Emulator for the 80186 and 80196’ ’Basics’ in ’ICE Emulator for Z80 and Z180’
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
213
SYStem
SYStem.CONFIG The SYStem.CONFIG commands describe the target configuration to the debugger.
SYStem.CONFIG
Configure debugger according to target topology
Format:
SYStem.CONFIG SYStem.MultiCore (deprecated)
(JTAG):
CORE DRPRE DRPOST IRPRE IRPOST TAPState TCKLevel TriState [ON | OFF] Slave [ON | OFF] state
(core sight):
COREBASE COREJTAGPORT DAPIRPRE DAPIRPOST DAPDRPRE DAPDRPOST DEBUGACCESSPORT DEBUGBASE ETBBASE ETBDRPRE ETBDRPOST ETBIRPRE ETBIRPOST ETMBASE ETMFUNNELPORT FUNNELBASE HTMBASE HTMFUNNELPORT ITMBASE ITMFUNNELPORT
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
214
SYStem
(core sight) cont’d:
JTAGACCESSPORT MEMORYACCESSPORT TPIUBASE TRACEBASE TRACEFUNNELPORT SWDP
(MultiTap):
DAPTAP DEBUGTAP ETBTAP MULTITAP SLAVETAP
(BugFix):
BYPASS FILLDRZERO
Commonly one TRACE32 instance is used to debug one core (core view). If the target provides a joint debug interface for several cores/chips it is necessary to inform the TRACE32 instance which core/chip it controls for debugging. The four parameter IRPRE, IRPOST, DRPRE, DRPOST are required to inform the debugger about the ARM TAP controller position in the JTAG chain, if there is more than one core in the JTAG chain (e.g. ARM + DSP). The information is required before the debugger can be activated e.g. by a SYStem.Up. See example below. In case there is additionally an DAP (Debug Access Port) TAP controller or in case the core will be debugged through this DAP, then you need to set the four parameter DAPIRPRE, DAPIRPOST, DAPDRPRE, DAPDRPOST to inform the debugger about the DAP TAP controller position in the JTAG scan chain. In case there is an ETB (Embedded Trace Buffer) available on the chip and in case it should be used, the settings ETBIRPRE, ETBIRPOST, ETBDRPRE, ETBDRPOST are additionally required. The ETB has its own TAP controller in the JTAG scan chain. On some CPU selections (SYStem.CPU) with known system configuration the above setting might be set automatically. TriState has to be used if more than one debugger are connected to the common JTAG port at the same time. TAPState and TCKLevel define the TAP state and TCK level which is selected when the debugger switches to tristate mode. Please note: nTRST must have a pull-up resistor on the target, EDBGRQ must have a pull-down resistor. Multicore debugging is not supported for the DEBUG INTERFACE (LA7701).
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
215
SYStem
CORE
For multicore debugging one TRACE32 GUI has to be started per core. To bundle several cores in one processor as required by the system this command has to be used to define core and processor coordinates within the system topology. Further information can be found in SYStem.CONFIG.CORE.
DRPRE
(default: 0) of TAPs in the JTAG chain between the core of interest and the TDO signal of the debugger. If each core in the system contributes only one TAP to the JTAG chain, DRPRE is the number of cores between the core of interest and the TDO signal of the debugger.
DRPOST
(default: 0) of TAPs in the JTAG chain between the TDI signal of the debugger and the core of interest. If each core in the system contributes only one TAP to the JTAG chain, DRPOST is the number of cores between the TDI signal of the debugger and the core of interest.
IRPRE
(default: 0) of instruction register bits in the JTAG chain between the core of interest and the TDO signal of the debugger. This is the sum of the instruction register length of all TAPs between the core of interest and the TDO signal of the debugger.
IRPOST
(default: 0) of instruction register bits in the JTAG chain between the TDI signal and the core of interest. This is the sum of the instruction register lengths of all TAPs between the TDI signal of the debugger and the core of interest. See also Daisy-Chain Example.
TAPState
(default: 7 = Select-DR-Scan) This is the state of the TAP controller when the debugger switches to tristate mode. All states of the JTAG TAP controller are selectable.
TCKLevel
(default: 0) Level of TCK signal when all debuggers are tristated.
TriState
(default: OFF) If more than one debugger share the same JTAG port, this option is required. The debugger switches to tristate mode after each JTAG access. Then other debuggers can access the port.
Slave
(default: OFF) If more than one debugger share the same JTAG port, all except one must have this option active. Only one debugger - the “master” - is allowed to control the signals nTRST and nSRST (nRESET).
DAPDRPRE
(default: 0) of cores in the JTAG chain between the DAP and the TDO signal (one data register bit per core which is in BYPASS mode).
DAPDRPOST
(default: 0) of cores in the JTAG chain between the TDI signal and the DAP (one data register bit per core which is in BYPASS mode).
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
216
SYStem
DAPIRPRE
(default: 0) of instruction register bits of all cores in the JTAG chain between the DAP and the TDO signal.
DAPIRPOST
(default: 0) of instruction register bits of all cores in the JTAG chain between TDI signal and the DAP.
DEBUGACCESSPORT
With a Debug Access Port (DAP) as debug interface (Cortex, CoreSight) you need to inform the debugger about the access port number in the DAP. The debugger needs the access port number to get access to the debug bus (APB, debug register).
ETBDRPOST
(default: 0) of cores in the JTAG chain between the TDI signal and the ETB (one data register bit per core which is in BYPASS mode).
ETBDRPRE
(default: 0) of cores in the JTAG chain between the ETB and the TDO signal (one data register bit per core which is in BYPASS mode).
ETBIRPOST
(default: 0) of instruction register bits of all cores in the JTAG chain between TDI signal and ETB.
ETBIRPRE
(default: 0) of instruction register bits of all cores in the JTAG chain between the ETB and the TDO signal.
MEMORYACCESSPORT
With a Debug Access Port (DAP) as debug interface (Cortex, CoreSight) you need to inform the debugger about the access port number in the DAP. The debugger needs the access port number to get access to the system bus (AHB, memory).
JTAGACCESSPORT COREJTAGPORT
With a Debug Access Port (DAP) as debug interface (Cortex, CoreSight) you need to inform the debugger about the access port number in the DAP. The debugger needs the access port number to get access to the JTAG access port of the core it shall debug. This is normally used if cores like ARM7, ARM9, ARM11, which are not intended for DAP debugging, are included in a DAP based system. COREJTAGPORT specifies to which of the 8 possible ports the core is connected to.
ETMBASE COREBASE DEBUGBASE HTMBASE ETBBASE TPIUBASE ITMBASE TRACEBASE FUNNELBASE ETMFUNNELPORT HTMFUNNELPORT ITMFUNNELPORT TRACEFUNNELPORT
The debugger needs the base address of the register block of the CoreSight module you intend to use. It is only valid with a Debug Access Port (DAP) as debug interface. TRACEBASE is the register block of nonETM trace register e.g. of a DSP. In case of ETM or HTM or ITM or non-ETM TRACE you additionally need to specify the port number of the funnel this trace facility is connected to. DEBUGBASE is an obsolete synonym for COREBASE.
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
217
SYStem
SWDP
With this option you can change from the normal JTAG interface to the serial wire debug mode (SWDP = Serial Wire Debug Port). SWDP uses just two signals instead of five. It is required that the target and the debugger hardware and software supports this interface.
DAPTAP DEBUGTAP ETBTAP MULTITAP SLAVETAP
Type of the control mechanism and number of TAPs should be known in MULTITAP type. It is used in case the system-on-chip provides a dynamic changing JTAG scan chain. In case of a subsystem SLAVETAP denotes the number of the control TAP for the subsystem.
BYPASS
With this option it is possible to change the bypass instruction pattern for other cores in a multicore environment. It only works for the IRPOST pattern and is limited to 64 Bit. The specified pattern (hexadecimal) will be shifted least significant bit first. If no BYPASS option is used, the default value is “1” for all bits. This is a workaround for a certain chip problem available on ARM9 debugger only.
FILLDRZERO
With this option it is possible to change the bypass data pattern for other cores in a multicore environment. It changes the pattern from all “1” to all “0”. This is a workaround for a certain chip problem available on ARM9 debugger only.
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
218
SYStem
Daisy-Chain Example IRPOST TAP1 TDI
TAP2
IRPRE TAP3
IR
4
IR
3
IR
5
DR
1
DR
1
DR
1
TAP4 Core
DRPOST
IR: Instruction register length
IR
6
DR
1
TDO
DRPRE
DR: Data register length
Core: The core you want to debug
Daisy chains can be configured using a PRACTICE script (*.cmm) or the SYStem.CONFIG.state window. The PRACTICE code example below explains how to obtain the individual IR and DR values for the above daisy chain.
PRACTICE code example: SYStem.CONFIG.state /Jtag
; optional: open the window
SYStem.CONFIG IRPRE
6.
; IRPRE: There is only one TAP. ; So type just the IR bits of TAP4, i.e. 6
SYStem.CONFIG IRPOST 12.
; IRPOST: Add up the IR bits of TAP1, TAP2 ; and TAP3, i.e. 4 + 3 + 5 = 12
SYStem.CONFIG DRPRE
1.
; DRPRE: There is only one TAP which is ; in BYPASS mode. ; So type just the DR of TAP4, i.e. 1
SYStem.CONFIG DRPOST
3.
; DRPOST: Add up one DR bit per TAP which ; is in BYPASS mode, i.e. 1 + 1 + 1 = 3 ; This completes the configuration.
NOTE:
In many cases, the number of TAPs equals the number of cores. But in many other cases, additional TAPs have to be taken into account; for example, the TAP of an FPGA or the TAP for boundary scan.
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
219
SYStem
TapStates 0
Exit2-DR
1
Exit1-DR
2
Shift-DR
3
Pause-DR
4
Select-IR-Scan
5
Update-DR
6
Capture-DR
7
Select-DR-Scan
8
Exit2-IR
9
Exit1-IR
10
Shift-IR
11
Pause-IR
12
Run-Test/Idle
13
Update-IR
14
Capture-IR
15
Test-Logic-Reset
See also ■ SYStem.state ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲
’General SYStem Commands’ in ’78K0R/RL78 Debugger’ ’AndesCore specific SYStem Commands’ in ’Andes Debugger’ ’CPU specific SYStem Commands’ in ’APEX Debugger’ ’General SYStem Settings’ in ’APS Debugger’ ’CPU specific SYStem Commands’ in ’ARC Debugger’ ’ARM specific SYStem Commands’ in ’ARM Debugger’ ’ARM specific SYStem Commands’ in ’ARMv8-A/-R Debugger’ ’DSP specific SYStem Commands’ in ’TMS320C2X Debugger’ ’DSP specific SYStem Commands’ in ’TMS320C5X Debugger’ ’DSP specific SYStem Commands’ in ’TMS320C6X Debugger’ ’General SYStem Settings’ in ’CEVA-X Debugger’ ’Cortex-M specific SYStem Commands’ in ’Cortex-M Debugger’ ’General SYStem Commands’ in ’eTPU Debugger and Trace’ ’General SYStem Commands’ in ’GTM Debugger and Trace’ ’General SYStem Settings’ in ’Hexagon Debugger’ ’General SYStem Settings and Restrictions’ in ’M32R Debugger and Trace’ ©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
220
SYStem
▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲
’MIPS specific SYStem Commands’ in ’MIPS Debugger and Trace’ ’Command Reference: SYStem Commands’ in ’Qorivva MPC5xxx/SPC5xx Debugger and NEXUS Trace’ ’General SYStem Commands’ in ’MSP430 Debugger’ ’General SYStem Settings and Restrictions’ in ’NIOS II Debugger and Trace’ ’General SYStem Settings’ in ’CEVA-Oak/Teak/TeakLite Debugger’ ’General SYStem Commands’ in ’MPC5xx/8xx Debugger and Trace’ ’General SYStem Commands’ in ’PQIII Debugger’ ’General SYStem Commands’ in ’QorIQ Debugger and NEXUS Trace’ ’General SYStem Commands’ in ’PWRficient Debugger’ ’CPU specific SYStem Commands’ in ’XTENSA Debugger’ ’General System Settings’ in ’ZSP Debugger’ ’General SYStem Commands’ in ’MPC56x NEXUS Debugger and Trace’ ’Release Information’ in ’Release History’ ’CPU specific SYStem Commands’ in ’Simulator for TriCore’ ’JTAG Implementation’ in ’Training JTAG Interface’
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
221
SYStem
SYStem.CONFIG.CORE
Assign core to TRACE32 instance
Format 1:
SYStem.CONFIG.CORE SYStem.MultiCore.CORE (deprecated)
Format 2:
SYStem.CONFIG.CORE |
Virtual targets only
If the target provides a joint debug interface for several cores/chips it is necessary to inform the TRACE32 instance which core/chip it controls for debugging. This means, SYStem.CONFIG.CORE tells TRACE32 to which specified and it has to connect when the SYStem.Up command is executed. Most architectures have 1 with several . Architectures with 2 or more are relatively rare. Next: •
Description of Format 1 for Physical Targets including example.
•
Description of Format 2 for Virtual Targets including examples.
Format 1 for Physical Targets
Specify the core within the chip that is controlled by the TRACE32 instance. The command SYStem.CONFIG.CORE is mainly used, if the cores within a chip are not daisy-chained, or daisy-chained and interrelated. The index is also used by the command CORE.NUMber as start value to set up an SMP system.
Specify which cores belong to the same chip if several chips are daisychained. This allows the debugger to coordinate chip-wide resources e.g. chip reset, cross trigger matrix, shared trace port etc. Key for this coordination is that TRACE32 is aware of the chip.
Next: •
Example for and
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
222
SYStem
Example for and - Format 1 of SYStem.CONFIG.CORE Example for the MPC5517 (one chip with 2 cores)
e200z1 Core TRACE32 Instance for e200z1 Core
CORE 2. e200z0 Core
MPC5517
CORE 1.
Joint JTAG Interface TRACE32 Instance for e200z0 Core
HOST
USB Interface
TARGET
Start-up commands for the e200z1 core: SYStem.RESet
; reset all SYStem settings
SYStem.CPU MPC5517
; select MPC5517 as target ; processor
; SYStem.CONFIG.CORE
1.
1.
SYStem.Up
; assign the TRACE32 instance to ; core 1 (e200z1), chip 1 ; establish the communication ; between the debugger and the ; e200z1 core
Start-up commands for the e200z0 core: SYStem.RESet
; reset all SYStem settings
SYStem.CPU MPC5517
; select MPC5517 as target ; processor
; SYStem.CONFIG.CORE
2.
1.
SYStem.Mode.Attach
; assign the TRACE32 instance to ; core 2 (e200z0), chip 1 ; establish the communication ; between the debugger and the ; e200z1 core
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
223
SYStem
Format 2 for Virtual Targets
Unique string identifying the core to which TRACE32 connects in a virtual target.
Core number identifying the core to which TRACE32 connects in a virtual target. Note that the same is displayed in the core # column of the SYStem.CONFIG.ListCORE window.
Next: •
The example for applies to the MCD and the CADI interface.
•
The syntax rules for differ for the MCD and the CADI interface:
•
-
For the MCD interface
-
For the CADI interface
Example for in an SMP system. This simple example applies to the MCD and the CADI interface.
MCD and CADI Interface - Example for - Format 2 of SYStem.CONFIG.CORE
SYStem.DOWN SYStem.CONFIG.ListCORE ;list the cores of a virtual target in the ;SYStem.CONFIG.ListCORE window ;the core are displayed in the ;'core #' column. TRACE32 connects to the core ;having the specified ; SYStem.CONFIG.CORE
2.
SYStem.Up
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
224
SYStem
MCD Interface - Syntax Rules for - Format 2 of SYStem.CONFIG.CORE To specify unique strings identifying cores, observe the following rules for and take the screenshot below into account for a better understanding of these rules: •
The is case-sensitive.
•
The starts at the first column to the left of the core # column:
4
3
2
1
; col.1 col.2 col.3 col.4 SYStem.CONFIG.CORE "|||"
•
In the , each column of the SYStem.CONFIG.ListCORE window is represented by a | character (vertical line). To ignore one or more columns, type one | per column to be ignored: SYStem.CONFIG.CORE "||4:1" ;ignore columns 1 and 2, and connect ;to the core having this unique ;sub-string ‘4:1’ in column 3
•
You can specify (a) an entire row or (b) the contents of one or more cells (cell = intersection of column and row) or (c) just a sub-string of a cell: ;(a) entire row - the ellipsis ... is used for space economy SYStem.CONFIG.CORE "HARDWARE.ARM0.cpu3|HARDWARE.ARM0|...|..." ;(b) content of one cell SYStem.CONFIG.CORE "HARDWARE.ARM0.cpu3" ;(c) sub-string from cell SYStem.CONFIG.CORE "cpu3"
•
Wildcards like ‘*’ and ‘?’ are not supported.
•
For SMP systems: To connect to two or more cores, separate their unique strings or sub-strings with a comma: ;connect to cpu1 and cpu2 SYStem.CONFIG.CORE "cpu1,cpu2" ;let’s take the sub-strings ‘4:0’ and 4:1’ from column 3 into ;account SYStem.CONFIG.CORE "cpu0||4:0,cpu3||4:1"
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
225
SYStem
CADI Interface - Syntax Rules for - Format 2 of SYStem.CONFIG.CORE To specify unique strings identifying cores, observe the following rules for and take the screenshot below into account for a better understanding of these rules: •
The is case-sensitive.
•
The always contains the instance or a part of it, and may contain the Simulation ID:
;connect to a core by just specifying the instance SYStem.CONFIG.CORE "cluster.cpu0" ;connect to a core by specifying the Simulation ID and the instance SYStem.CONFIG.CORE "7000|cluster.cpu0"
•
Information from columns other than Simulation ID and instance cannot be used to define a connection to a core.
•
Wildcards like ‘*’ and ‘?’ are not supported.
•
For SMP systems: To connect to two or more cores, separate their unique strings or sub-strings with a comma: ;connect to cpu0 and cpu3, see instance column SYStem.CONFIG.CORE "cpu0,cpu3" ;let’s take the Simulation ID into account SYStem.CONFIG.CORE "7000|cpu0,7000|cpu3"
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
226
SYStem
Example for in an SMP System - Format 2 of SYStem.CONFIG.CORE This simple example applies to the MCD and the CADI interface. Steps that are specific to SMP systems are flagged with ‘(SMP system)’ in the comments: SYStem.DOWN SYStem.CONFIG.ListCORE
;list the cores of a virtual target in ;the SYStem.CONFIG.ListCORE window.
SYStem.CPU CortexA9MPCore
;select a multicore CPU (SMP system)
SYStem.CONFIG.CoreNumber 2 CORE.NUMber 2
;set up the number of cores you want ;TRACE32 to connect to (SMP system)
SYStem.CONFIG.CORE "cpu1,cpu2" ;connect to cpu1 and cpu2 (SMP system) ;NOTE: In the ‘Cores’ pull-down list, ;cpu1 becomes core 0 and ;cpu2 becomes core 1. ;The ‘Cores’ pull-down list is accessible ;via the TRACE32 status line. SYStem.Up
See also ■ CORE.ASSIGN ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲
■ SYStem.CONFIG.ListCORE ■ TargetSystem.state
’CPU specific SYStem Commands’ in ’XC2000/XC16x/C166CBC Debugger’ ’General SYStem Settings and Restrictions’ in ’DSP56K Debugger’ ’CPU specific SYStem Commands’ in ’CPU32/ColdFire Debugger and Trace’ ’General System Settings’ in ’Blackfin Debugger’ ’General SYStem Commands’ in ’eTPU Debugger and Trace’ ’General SYStem Commands’ in ’GTM Debugger and Trace’ ’Multicore Debugging’ in ’H8S/23x9 Debugger’ ’General SYStem Settings and Restrictions’ in ’M8051EW Debugger’ ’General SYStem Settings for the Debugger’ in ’M-Core Debugger’ ’General SYStem Commands’ in ’MicroBlaze Debugger and Trace’ ’General SYStem Commands’ in ’MMDSP Debugger’ ’Commands’ in ’PCP Debugger Reference’ ’General SYStem Commands’ in ’PPC400/PPC440 Debugger and Trace’ ’General System Commands’ in ’PPC600 Family Debugger’ ’General SYStem Settings and Restrictions’ in ’R8051XC Debugger’ ’Command Reference: SYStem Commands’ in ’RH850 Debugger and Trace’ ’General System Settings’ in ’RX Debugger’ ’General System Settings’ in ’SH2, SH3 and SH4 Debugger’ ’General SYStem Settings and Restrictions’ in ’StarCore Debugger and Trace’ ’Command Reference’ in ’TriCore Debugger and Trace’ ’General System Settings’ in ’V850 Debugger and Trace’ ’General SYStem Commands’ in ’MMDSP NEXUS Debugger and Trace’
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
227
SYStem
SYStem.CONFIG.CoreNumber
Format:
Set up number of hardware threads
SYStem.CONFIG.CoreNumber
Sets up the number of hardware threads that are available inside the chip. The access to the particular hardware threads can be configured by architecture specific SYStem.CONFIG commands described in your Processor Architecture Manual. The defined hardware threads can be used by the CORE commands to set up an SMP system. An error message is displayed below the command line if the command is used for single-core CPUs.
SYStem.CONFIG.DEBUGTIMESCALE
Format:
Extend debug driver timeouts
SYStem.CONFIG.DEBUGTIMESCALE
Extends any timing behavior of the debug driver by the passed multiplier. The can take only values out of the power-of-two series e.g. 1, 2, 4, 8, 16 etc. The timing behavior should be adapted in case the debugger is connected to an emulator that runs with a much smaller clock compared to a silicon target. The original timeout settings may cause timeouts or bus errors in this scenario. A high multiplier can cause the software to hang for an extended period of time in case the debug driver waits for a certain condition.
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
228
SYStem
SYStem.CONFIG.ListCORE
Display the cores of a virtual target
Virtual targets only
Format:
SYStem.CONFIG.ListCORE
Retrieves the list of cores from a virtual target and displays the result as a snapshot in the SYStem.CONFIG.ListCORE window. To re-read the list from the virtual target, re-open the window. The following screenshot shows an example of a core list provided by a virtual target that is connected to TRACE32 via the CADI interface: A
B
The following screenshot shows an example of a core list provided by a virtual target that is connected to TRACE32 via the MCD interface: B
A
A Column headers in the SYStem.CONFIG.ListCORE window correspond to the column headers of the used interface. B The core # column displays the sequence of cores provided by the interface.
See also ■ SYStem.CONFIG.CORE ❏ SYStem.CONFIG.ListCORE()
■ SYStem.CONFIG.ListSIMulation ❏ SYStem.CONFIG.ListSIM()
▲ ’Connecting to Virtual Targets’ in ’Virtual Targets User’s Guide’
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
229
SYStem
SYStem.CONFIG.ListSIMulation
Display the simulations of a virtual target
Virtual targets only: CADI
Format:
SYStem.CONFIG.ListSIMulation
Retrieves the list of simulations from a virtual target and displays the result as a snapshot in the SYStem.CONFIG.ListSIMulation window. To re-read the list from the virtual target, re-open the window.
The sim # column displays the sequence of simulations provided by the interface.
See also ■ SYStem.CONFIG.ListCORE ❏ SYStem.CONFIG.ListCORE() ❏ SYStem.CONFIG.ListSIM() ▲ ’Connecting to Virtual Targets’ in ’Virtual Targets User’s Guide’
SYStem.CONFIG.state
Format:
Display target configuration
SYStem.CONFIG.state SYStem.MultiCore.view (deprecated)
Displays the target configuration as known to the debugger.
See also ❏ SYStem.CONFIG.DRPOST() ❏ SYStem.CONFIG.DRPRE()
❏ SYStem.CONFIG.IRPOST() ❏ SYStem.CONFIG.IRPRE()
▲ ’General SYStem Settings and Restrictions’ in ’NIOS II Debugger and Trace’ ▲ ’SYStem Functions’ in ’General Functions’
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
230
SYStem
SYStem.CONFIG.TRANSACTORPIPENAME
Format:
Set up pipe name
SYStem.CONFIG.TRANSACTORPIPENAME
This command defines the pipe name used to communicate with the Verilog Transactor in the RTL Simulation. Enter the transactor pipe name in TRACE32 PowerView. SYStem.CONFIG.DEBUGPORT VerilogTransactor0 SYStem.CONFIG.TRANSACTORPIPENAME "/tmp/t32verilog_actuator_user"
Linux: Define environment variable in the context of the RTL simulation and Verilog Transactor in the shell. > export T32VERILOGTRANSACTORPIPE=/tmp/t32verilog_actuator_user
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
231
SYStem
SYStem.CPU
Format:
Select CPU
SYStem.CPU
Tells TRACE32 the exact CPU type used on your target. This is required to get the matching PER file and other CPU specific settings (e.g. predefined settings for on-chip FLASH). Asterisks (*) can be used as wildcard characters to list all CPUs of an architecture or just the ones matching the filter criterion. SYStem.CPU ARM940T ;... SYStem.Up
NOTE:
;select the CPU type ARM940T your code ;start the debugger
SYStem.CPU used together with an asterisk in a PRACTICE script (*.cmm) causes the script to stop, and the SYStem.CPU window is displayed until you have made a selection.
SYStem.CPU *
;list the CPUs of an architecture
SYStem.CPU *ultra*
;list the CPUs of an architecture matching the ;filter criterion
See also ■ PER.view ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲
■ SYStem.state
❏ SYStem.CPU()
’CPU specific SYStem Commands’ in ’XC2000/XC16x/C166CBC Debugger’ ’General SYStem Settings and Restrictions’ in ’DSP56K Debugger’ ’CPU specific SYStem Commands’ in ’CPU32/ColdFire Debugger and Trace’ ’General SYStem Commands’ in ’78K0R/RL78 Debugger’ ’AndesCore specific SYStem Commands’ in ’Andes Debugger’ ’General SYStem Settings’ in ’APS Debugger’ ’CPU specific SYStem Commands’ in ’ARC Debugger’ ’ARM specific SYStem Commands’ in ’ARM Debugger’ ’ARM specific SYStem Commands’ in ’ARMv8-A/-R Debugger’ ’General SYStem Settings’ in ’AVR32 Debugger and NEXUS Trace’ ’Beyond specific SYStem Commands’ in ’Beyond Debugger and Trace’ ’General System Settings’ in ’Blackfin Debugger’ ’DSP specific SYStem Commands’ in ’TMS320C2X Debugger’ ©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
232
SYStem
▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲
’DSP specific SYStem Commands’ in ’TMS320C5X Debugger’ ’DSP specific SYStem Commands’ in ’TMS320C6X Debugger’ ’General SYStem Settings’ in ’CEVA-X Debugger’ ’Cortex-M specific SYStem Commands’ in ’Cortex-M Debugger’ ’General SYStem Commands’ in ’eTPU Debugger and Trace’ ’General SYStem Commands’ in ’GTM Debugger and Trace’ ’System Commands’ in ’H8S/23x9 Debugger’ ’General SYStem Settings and Restrictions’ in ’MCS08 Debugger’ ’General SYStem Settings and Restrictions’ in ’MCS12 Debugger’ ’General SYStem Settings’ in ’Hexagon Debugger’ ’General SYStem Settings and Restrictions’ in ’M32R Debugger and Trace’ ’General SYStem Settings and Restrictions’ in ’M8051EW Debugger’ ’General SYStem Settings for the Debugger’ in ’M-Core Debugger’ ’General SYStem Commands’ in ’MicroBlaze Debugger and Trace’ ’MIPS specific SYStem Commands’ in ’MIPS Debugger and Trace’ ’General SYStem Commands’ in ’MMDSP Debugger’ ’Command Reference: SYStem Commands’ in ’Qorivva MPC5xxx/SPC5xx Debugger and NEXUS Trace’ ’General SYStem Commands’ in ’MSP430 Debugger’ ’General SYStem Settings and Restrictions’ in ’NIOS II Debugger and Trace’ ’General SYStem Settings’ in ’CEVA-Oak/Teak/TeakLite Debugger’ ’Commands’ in ’PCP Debugger Reference’ ’General SYStem Commands’ in ’PPC400/PPC440 Debugger and Trace’ ’General System Commands’ in ’PPC600 Family Debugger’ ’General SYStem Commands’ in ’MPC5xx/8xx Debugger and Trace’ ’General SYStem Commands’ in ’PQIII Debugger’ ’General SYStem Commands’ in ’QorIQ Debugger and NEXUS Trace’ ’General SYStem Commands’ in ’PWRficient Debugger’ ’General SYStem Settings and Restrictions’ in ’R8051XC Debugger’ ’Command Reference: SYStem Commands’ in ’RH850 Debugger and Trace’ ’General System Settings’ in ’SH2, SH3 and SH4 Debugger’ ’General SYStem Settings and Restrictions’ in ’StarCore Debugger and Trace’ ’Command Reference’ in ’TriCore Debugger and Trace’ ’General System Settings’ in ’V850 Debugger and Trace’ ’SYStem Settings’ in ’Intel x86/x64 Debugger’ ’General SYStem Settings and Restrictions’ in ’XC800 Debugger’ ’General System Settings’ in ’ZSP Debugger’ ’General SYStem Settings and Restrictions’ in ’FIRE Emulator for C166 Cell-Based-Core’ ’General SYStem Settings and Restrictions’ in ’FIRE Emulator for C166 Family’ ’Special Settings and Restrictions H8S/222x/223x/262x/263x’ in ’FIRE Emulator for H8S and H8/300H’ ’Special Settings and Restrictions H8S/21xx’ in ’FIRE Emulator for H8S and H8/300H’ ’Special Settings and Restrictions H8S/224x/23xx/265x’ in ’FIRE Emulator for H8S and H8/300H’ ’Special Settings and Restrictions H8S/21xx’ in ’FIRE Emulator for H8S and H8/300H’ ’Special Settings and Restrictions H8S/222x/223x/262x/263x’ in ’FIRE Emulator for H8S and H8/300H’ ’Special Settings and Restrictions H8S/224x/23xx/265x’ in ’FIRE Emulator for H8S and H8/300H’ ’Special Settings and Restrictions H8S/222x/223x/262x/263x’ in ’FIRE Emulator for H8S and H8/300H’ ’CPU Type and Mode’ in ’FIRE Emulator for HC12/MCS12’ ’General SYStem Settings and Restrictions’ in ’FIRE Emulator for SH2’ ’General SYStem Settings and Restrictions’ in ’FIRE Emulator for SH2’ ’General SYStem Settings and Restrictions’ in ’FIRE Emulator for SH2’ ’General SYStem Settings and Restrictions’ in ’FIRE Emulator for C166S V2 Family’ ’Basics’ in ’ICE Emulator for 8051’ ’Special Settings 68331/332/334/335/336/339/376’ in ’ICE Emulator for MC6833X’ ’General SYStem Settings and Restrictions’ in ’ICE Emulator for MC6833X’ ’General SYStem Settings and Restrictions’ in ’ICE Emulator for C166/ST10’ ’Basics’ in ’ICE Emulator for Hitachi H8/300 and H8/500’ ’Basics’ in ’ICE Emulator for Hitachi H8/300 and H8/500’ ’Basics’ in ’ICE Emulator for MELPS 7700’ ’Special Settings 186ER/188ER and Restrictions’ in ’ICE Emulator for the 80186 and 80196’ ’Special Settings 186ES, 188ES, 186ED and Restrictions’ in ’ICE Emulator for the 80186 and 80196’ ’Basics’ in ’ICE Emulator for Z80 and Z180’ ’Basics’ in ’x196 Monitor’ ’General SYStem Commands’ in ’ARM and XSCALE Monitor’ ’General SYStem Settings and Restrictions’ in ’C166 Monitor’ ’Specific SYStem Commands’ in ’EPOC Target Server’ ’Specific SYStem Commands’ in ’H8S and H8/300H Monitor’ ©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
233
SYStem
▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲
’Specific System Commands’ in ’OSE Target Server’ ’Pdebug Front-end Specific Commands’ in ’TRACE32 pdebug Target Server for ARM’ ’Specific System Commands’ in ’SH2 Monitor’ ’General SYStem Settings and Restrictions’ in ’TriCore Monitor’ ’Emulation Modes’ in ’x186 Monitor’ ’General SYStem Commands’ in ’x386 and x486 Monitor’ ’General SYStem Settings and Restrictions’ in ’XA51 Monitor’ ’Emulation Modes’ in ’Z80 Monitor’ ’ARM specific SYStem Commands’ in ’MAC71xx/72xx NEXUS Debugger and Trace’ ’General SYStem Commands’ in ’MMDSP NEXUS Debugger and Trace’ ’General SYStem Commands’ in ’MPC56x NEXUS Debugger and Trace’ ’Release Information’ in ’Release History’ ’68K and HC16 specific SYStem Commands’ in ’Simulator for 68K/ColdFire’ ’ARM specific SYStem Commands’ in ’Simulator for ARM and XSCALE’ ’General SYStem Settings and Restrictions’ in ’Simulator for C166/ST10’ ’Specific SYStem Commands’ in ’Simulator for H8/300, H8/300H and H8S’ ’General SYStem Settings and Restrictions’ in ’Simulator for HC08/MSC08’ ’General SYStem Settings and Restrictions’ in ’Simulator for HC12/MCS12’ ’MIPS specific SYStem Commands’ in ’Simulator for MIPS’ ’General System Commands’ in ’Simulator for NIOS-II’ ’General SYStem Commands’ in ’Simulator for PowerPC’ ’CPU specific SYStem Commands’ in ’Simulator for SuperH’ ’CPU specific SYStem Commands’ in ’Simulator for TriCore’ ’Emulation Modes’ in ’Simulator for Intel® x86/x64’ ’Emulation Modes’ in ’Simulator for Z80+’ ’Starting-up the TRACE32-FIRE’ in ’Training FIRE Basics’
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
234
SYStem
SYStem.CpuAccess
Format:
Run-time memory access (intrusive)
SYStem.CpuAccess Enable | Denied | Nonstop
Default: Denied. Enable
Allow intrusive run-time memory access. In order to perform a memory read or write while the CPU is executing the program the debugger stops the program execution about 10 times/s. Each short stop takes 1 … 100 ms depending on the speed of the debug interface and on the number of the read/write accesses required. A red S in the state line of the TRACE32 screen indicates this intrusive behavior of the debugger.
Denied
Lock intrusive run-time memory access.
Nonstop
Nonstop only makes sense if the CPU supports memory read and write while the CPU is executing the program (See the command SYStem.MemAccess) Lock all features of the debugger, that affect the run-time behavior. Nonstop reduces the functionality of the debugger to: • run-time access to memory and variables • trace display The debugger inhibits the following: • to stop the program execution • all features of the debugger that are intrusive (e.g. action Spot for breakpoints, performance analysis via StopAndGo mode, conditional breakpoints etc.)
See also ■ SYStem.state ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲
’CPU specific SYStem Commands’ in ’XC2000/XC16x/C166CBC Debugger’ ’General SYStem Settings and Restrictions’ in ’DSP56K Debugger’ ’CPU specific SYStem Commands’ in ’CPU32/ColdFire Debugger and Trace’ ’General SYStem Commands’ in ’78K0R/RL78 Debugger’ ’AndesCore specific SYStem Commands’ in ’Andes Debugger’ ’General SYStem Settings’ in ’APS Debugger’ ’CPU specific SYStem Commands’ in ’ARC Debugger’ ’ARM specific SYStem Commands’ in ’ARM Debugger’ ’ARM specific SYStem Commands’ in ’ARMv8-A/-R Debugger’ ’General SYStem Settings’ in ’AVR32 Debugger and NEXUS Trace’ ’Beyond specific SYStem Commands’ in ’Beyond Debugger and Trace’ ’General System Settings’ in ’Blackfin Debugger’ ’DSP specific SYStem Commands’ in ’TMS320C2X Debugger’ ’DSP specific SYStem Commands’ in ’TMS320C5X Debugger’ ’DSP specific SYStem Commands’ in ’TMS320C6X Debugger’ ’General SYStem Settings’ in ’CEVA-X Debugger’ ’Cortex-M specific SYStem Commands’ in ’Cortex-M Debugger’ ’General SYStem Commands’ in ’eTPU Debugger and Trace’ ’General SYStem Commands’ in ’GTM Debugger and Trace’ ’System Commands’ in ’H8S/23x9 Debugger’ ’General SYStem Settings and Restrictions’ in ’MCS08 Debugger’ ©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
235
SYStem
▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲
’General SYStem Settings and Restrictions’ in ’MCS12 Debugger’ ’General SYStem Settings’ in ’Hexagon Debugger’ ’General SYStem Settings and Restrictions’ in ’M32R Debugger and Trace’ ’General SYStem Settings and Restrictions’ in ’M8051EW Debugger’ ’General SYStem Settings for the Debugger’ in ’M-Core Debugger’ ’General SYStem Commands’ in ’MicroBlaze Debugger and Trace’ ’MIPS specific SYStem Commands’ in ’MIPS Debugger and Trace’ ’General SYStem Commands’ in ’MMDSP Debugger’ ’Command Reference: SYStem Commands’ in ’Qorivva MPC5xxx/SPC5xx Debugger and NEXUS Trace’ ’General SYStem Commands’ in ’MSP430 Debugger’ ’General SYStem Settings and Restrictions’ in ’NIOS II Debugger and Trace’ ’General SYStem Settings’ in ’CEVA-Oak/Teak/TeakLite Debugger’ ’Commands’ in ’PCP Debugger Reference’ ’General SYStem Commands’ in ’PPC400/PPC440 Debugger and Trace’ ’General System Commands’ in ’PPC600 Family Debugger’ ’General SYStem Commands’ in ’MPC5xx/8xx Debugger and Trace’ ’General SYStem Commands’ in ’PQIII Debugger’ ’General SYStem Commands’ in ’QorIQ Debugger and NEXUS Trace’ ’General SYStem Commands’ in ’PWRficient Debugger’ ’General SYStem Settings and Restrictions’ in ’R8051XC Debugger’ ’Command Reference: SYStem Commands’ in ’RH850 Debugger and Trace’ ’General System Settings’ in ’RX Debugger’ ’General System Settings’ in ’SH2, SH3 and SH4 Debugger’ ’General SYStem Settings and Restrictions’ in ’StarCore Debugger and Trace’ ’Command Reference’ in ’TriCore Debugger and Trace’ ’General System Settings’ in ’V850 Debugger and Trace’ ’SYStem Settings’ in ’Intel x86/x64 Debugger’ ’General SYStem Settings and Restrictions’ in ’XC800 Debugger’ ’General System Settings’ in ’ZSP Debugger’ ’Basics’ in ’FIRE Emulator for C166 Cell-Based-Core’ ’Basics’ in ’FIRE Emulator for C166 Family’ ’Basics’ in ’FIRE Emulator for C166S V2 Family’ ’GDB Front-end Commands’ in ’TRACE32 as GDB Front-End’ ’General SYStem Settings and Restrictions’ in ’C166 Monitor’ ’Specific SYStem Commands’ in ’H8S and H8/300H Monitor’ ’Pdebug Front-end Specific Commands’ in ’TRACE32 pdebug Target Server for ARM’ ’Specific System Commands’ in ’SH2 Monitor’ ’General SYStem Settings and Restrictions’ in ’TriCore Monitor’ ’Emulation Modes’ in ’x186 Monitor’ ’General SYStem Commands’ in ’x386 and x486 Monitor’ ’ARM specific SYStem Commands’ in ’MAC71xx/72xx NEXUS Debugger and Trace’ ’General SYStem Commands’ in ’MMDSP NEXUS Debugger and Trace’ ’General SYStem Commands’ in ’MPC56x NEXUS Debugger and Trace’ ’68K and HC16 specific SYStem Commands’ in ’Simulator for 68K/ColdFire’ ’General SYStem Settings and Restrictions’ in ’Simulator for C166/ST10’ ’Specific SYStem Commands’ in ’Simulator for H8/300, H8/300H and H8S’ ’General SYStem Settings and Restrictions’ in ’Simulator for HC12/MCS12’ ’MIPS specific SYStem Commands’ in ’Simulator for MIPS’ ’General System Commands’ in ’Simulator for NIOS-II’ ’General SYStem Commands’ in ’Simulator for PowerPC’ ’CPU specific SYStem Commands’ in ’Simulator for SuperH’ ’CPU specific SYStem Commands’ in ’Simulator for TriCore’ ’Emulation Modes’ in ’Simulator for Intel® x86/x64’ ’Starting-up the TRACE32-FIRE’ in ’Training FIRE Basics’ ’Specific Commands’ in ’Native Process Debugger’
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
236
SYStem
SYStem.DETECT
Detect target system resources
Format:
SYStem.DETECT
:
state BASECPU CPU DaisyChain DAP IDCode JtagClock PortSHaRing
state
Opens the System Detection Wizard which allows a step-by-step investigation of the entire JTAG chain. It displays all found devices and suggests a CPU and the corresponding multi-core settings for each found device. The user can choose the desired core, any valid multi-core configuration will be applied.
BASECPU
Detects and selects the appropriate CPU and multi-core configuration for the first device in the JTAG chain. CPU detection is only based on the JTAG ID code, no further ID registers are read from the device.
CPU
Detects and selects the appropriate CPU and multi-core configuration for the first device in the JTAG chain. The command will investigate the entire device for an exact detection. If supported for your architecture, you can use SYStem.CPU AUTO instead.
DaisyChain
Scans your JTAG chain and prints details to the AREA window. See example.
DAP
Identifies the types of access ports of the DAP. In addition, the SYStem.DETECT.DAP command inspects the ROM tables, if available, to discover any CoreSight components and their access addresses. The result is displayed in the form of a list in the SYStem.DETECT.DAP window.
SHOWChain
Scans the JTAG chain and show details in a separate window. In this window (SYStem.DETECT SHOWChain) you can double-click on a CPU core to set the values IRPOST, IRPRE, DRPOST and DRPRE in window SYSTEM.CONFIG state /Jtag accordingly.
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
237
SYStem
IDCode
Detects the ID codes of all JTAG-TAP controllers in the JTAG chain and stores them internally. In order to access the result use the following functions: •
IDCODENUMBER() returns the number of detected TAP controllers.
•
IDCODE()returns the IDCODE of the n-th TAP controller
Example: PRINT IDCODE(0) prints 0x100034B1, if the first core in the JTAG chain is an ARC700. JtagClock
Determines the maximum JTAG Frequency by polling the BYPASS register. This only reflects the quality of the electrical connection and the speed the BYPASS register path. The function EVAL() retrieves the result of the command in Hertz. This command may heavily confuse all devices attached to the JTAG chain.
PortSHaRing
Determines if the debug port is shared with a 3rd party tool. In a PRACTICE script, the result can be obtained by the PORTSHARING() function.
NOTE:
The availability of the SYStem.DETECT types are dependent on the architecture and the debug port protocol, so they may not be available for all architectures and configurations.
NOTE:
SYStem.DETECT may apply a Power-on Reset to your system and always switches the debug system to Down-State (see SYStem.Mode Down).
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
238
SYStem
The System Detection Wizard The System Detection Wizard is still under construction. It currently supports only the following architectures: ARM/Cortex, MIPS, TriCore. Example for the ARM architecture: SYStem.DETECT.state
; open a System Detection Wizard
Before TRACE32 can check your target configuration it needs to know how the TRACE32 debugger is connected to the target (here for example via JTAG). Push Continue to confirm that the connection details are valid.
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
239
SYStem
TRACE32 runs the system detection and display the results.
If several cores are detected, you can choose which core should be controlled by the current TRACE32 instance be pushing the Set button. Here for example “Device 1: Set ARM9EJ”.
The Save Configuration button allows you to store the chosen settings to a file.
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
240
SYStem
Daisy-Chain Detection via the TRACE32 AREA Window AREA.view
; open a TRACE32 AREA window
SYStem.DETECT.DaisyChain
; run TRACE32 daisy-chain detection
The result of the daisy-chain detection is displayed in the AREA window. TRACE32 also displays the commands that are required for a correct daisy-chain set-up (see blue bar). Just copy these commands to your script, separate them by space and your are done. Please be aware that TRACE32 can only generate the commands for the daisy-chain set-up if it knows the ID codes for the cores on your target (see picture below).
See also ■ SYStem.state
❏ IDCODE()
SYStem.DLLCommand
Custom DLL connection to target
Debugger MIPS, V24 monitor with DLL
Format:
SYStem.DLLCommand
See also ■ SYStem.state
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
241
SYStem
SYStem.Down
Format:
Standby mode
SYStem.Down
(E)
The system is switched into standby mode. Normally this should be done before the target system is powered down.
RESet (E)
Probe is passive and connected, the system goes into tri-state mode.
ResetDown (E)
Probe is active, target system is not powered up, system goes into tristate.
ResetUp (E)
Probe is active, target system is powered up, all lines are inactive, but not in tri-state.
(B)
For the BDM debugger and the ROM monitor this command is highly target-dependent. Please refer to the Debugger/ROM Monitor manual for your CPU type - The corresponding command is SYStem.Mode Down.
See also ■ SYStem.state ▲ ▲ ▲ ▲ ▲
’SYStem Commands’ in ’EPROM/FLASH Simulator’ ’Emulation System’ in ’ICE User’s Guide’ ’General SYStem Settings and Restrictions’ in ’C166 Monitor’ ’General SYStem Settings and Restrictions’ in ’TriCore Monitor’ ’General SYStem Settings and Restrictions’ in ’Simulator for C166/ST10’
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
242
SYStem
SYStem.GTL
Configure GTL debug port
Using the SYStem.GTL command group, you can configure a GTL debug port (GTL, Generic Transactor Library). The command group is active after GTL has been selected as debug port. It allows to define and configure the used transactors and GTL 3rd-party library. The settings are shared among the TRACE32 instances connected to a certain MCI Server. ;optional step: open the SYStem.CONFIG dialog showing the DebugPort tab SYStem.CONFIG.state /DebugPort ;selecting the GTL back-end activates the SYStem.GTL commands SYStem.CONFIG.DEBUGPORT GTL0
See also ■ ■ ■ ■ ■ ■ ■ ❏ ❏
■ ■ ■ ■ ■ ■ ■ ❏ ❏
SYStem.GTL.CONNECT SYStem.GTL.DMANAME SYStem.GTL.JTAGPROBENAME SYStem.GTL.MODELCOMMAND SYStem.GTL.MODELNAME SYStem.GTL.SHAREDMODEL SYStem.GTL.TransactorConfig SYStem.GTL.LIBname() SYStem.GTL.VENDORID()
SYStem.GTL.DISCONNECT SYStem.GTL.GPIONAME SYStem.GTL.LIBname SYStem.GTL.MODELCONFIG SYStem.GTL.SERVERCONFIG SYStem.GTL.TRACENAME SYStem.state SYStem.GTL.PLUGINVERSION() SYStem.GTL.VERSION()
▲ ’Introduction’ in ’GTL Debug Back-End’
SYStem.GTL.CONNECT
Format:
Connect to emulation or simulation
SYStem.GTL.CONNECT [/TRY]
Uses the settings previously configured with the SYStem.GTL commands to load the GTL library and connect to the emulation or simulation. TRY
The parameter forces the command to continue quietly when the connection could not be established.
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
243
SYStem
;selecting the GTL back-end activates the SYStem.GTL commands SYStem.CONFIG.DEBUGPORT GTL0 ;configure GTL SYStem.GTL.JTAGPROBENAME "PROBE1" SYStem.GTL.LIBname "gtllib.so" ;connect to the emulation or simulation SYStem.GTL.CONNECT
See also ■ SYStem.GTL
SYStem.GTL.DISCONNECT
Format:
Disconnect from emulation or simulation
SYStem.GTL.DISCONNECT [""] [/UNUSED]
Disconnects from existing connection to the emulation or simulation and disables the periodic re-connection tries.
Disconnects a certain transactor with a certain name when it is not used anymore.
UNUSED
Disconnects from all transactors that are not used anymore.
See also ■ SYStem.GTL
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
244
SYStem
SYStem.GTL.DMANAME
Format:
Name of DMA transactor
SYStem.GTL.DMANAME ""
Configures name and usage of DMA transactor to have back-door memory access to the emulation or simulation. The back-door access can be used by Data.LOAD command with the parameter /DMALOAD.
See also ■ SYStem.GTL
SYStem.GTL.GPIONAME
Format:
Name of GPIO transactor
SYStem.GTL.GPIONAME ""
Configures name and usage of a GPIO transactor. A GPIO transactor can provide a set of signals to access the DUT, e.g. the Reset signal or the JTAG pins. A GPIO transactor can be used in case no JTAG probe transactor is available or when it doesn’t implement those signals.
See also ■ SYStem.GTL
SYStem.GTL.JTAGPROBENAME
Format:
Name of JTAG probe transactor
SYStem.GTL.JTAGPROBENAME ""
Configures name and usage of a JTAG probe transactor. A JTAG probe transactor can interact with a whole JTAG chain of the DUT.
See also ■ SYStem.GTL
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
245
SYStem
SYStem.GTL.LIBname
Format:
Name of 3rd-party plug-in library
SYStem.GTL.LIBname ""
Configures the 3rd-party GTL library that is used to access the emulation or simulation. This command should be issued as the last configuration command.
See also ■ SYStem.GTL
SYStem.GTL.MODELCOMMAND
Format:
Execute command in plug-in
SYStem.GTL.MODELCOMMAND ""
Executes a plug-in specific command. SYStem.GTL.MODELCOMMAND "do something important" LOCAL &result &result=EVAL.STRing() PRINT "Result was: &result"
See also ■ SYStem.GTL
SYStem.GTL.MODELCONFIG
Format:
Configure emulation options
SYStem.GTL.MODELCONFIG ""
Configures the options to connect to the emulation or simulator. The particular options are defined by the 3rd-party plug-in.
See also ■ SYStem.GTL
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
246
SYStem
SYStem.GTL.MODELNAME
Format:
Select emulation
SYStem.GTL.MODELNAME ""
Selects a certain emulation out of a set of emulations.
See also ■ SYStem.GTL
SYStem.GTL.SERVERCONFIG
Format:
Configure server options
SYStem.GTL.SERVERCONFIG ""
Configures options to connect to the server knowing all emulations. The particular options are defined by the 3rd-party plug-in.
See also ■ SYStem.GTL
SYStem.GTL.SHAREDMODEL
Format:
Connect debug port to existing connection
SYStem.GTL.SHAREDMODEL
The command links two GTL debug ports in order to share a connection to the DUT across multiple debug ports. More information about the scenario can be found in the backend manual.
Can be GTL0...GTL
See also ■ SYStem.GTL
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
247
SYStem
SYStem.GTL.TRACENAME
Format:
Name of trace transactor
SYStem.GTL.TRACENAME ""
Configures name and usage of a Trace transactor. A Trace transactor can record off-chip trace data. ;select name for Trace transactor SYStem.GTL.TRACENAME "TRACE0” ;connect to emulation or simulation SYStem.GTL.CONNECT ;select trace method, initialize the trace and show control the window Trace.Method Analyzer Analyzer.Init Analyzer.state
See also ■ SYStem.GTL
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
248
SYStem
SYStem.GTL.TransactorConfig
Format:
Preconfigure a certain transactor
SYStem.GTL.TransactorConfig "" ""
Sets up a configuration string that is passed to the GTL plug-in when the transactor is connected. When the configuration string for a certain transactor changes the transactor need to be disconnected. It is recommended to pass the configuration before the transactors are defined, because this avoids unnecessary reconnections.
name of the transactor that shall be configured.
specific configuration string passed to the GTL plug-in.
;pass TARGETSEL option to SWD transactor SYStem.GTL.TransactorConfig "SWD_DAP1" "TARGETSEL=1" ;use DAP level transactor by debugger SYStem.Config.DAPName "SWD_DAP1" ;connect to emulation or simulation SYStem.GTL.CONNECT
See also ■ SYStem.GTL
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
249
SYStem
SYStem.JtagClock
Format:
Define JTAG frequency
SYStem.JtagClock
Selects the JTAG port frequency (TCK) used by the debugger to communicate with the processor. This influences e.g. the download speed. It could be required to reduce the JTAG frequency if there are buffers, additional loads or high capacities on the JTAG lines or if VTREF is very low. A very high frequency will not work on all systems and will result in an erroneous data transfer. Therefore we recommend to use the default setting if possible.
See also ■ SYStem.state ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲
❏ SYStem.JtagClock()
’CPU specific SYStem Commands’ in ’XC2000/XC16x/C166CBC Debugger’ ’General SYStem Settings and Restrictions’ in ’DSP56K Debugger’ ’AndesCore specific SYStem Commands’ in ’Andes Debugger’ ’CPU specific SYStem Commands’ in ’ARC Debugger’ ’ARM specific SYStem Commands’ in ’ARM Debugger’ ’ARM specific SYStem Commands’ in ’ARMv8-A/-R Debugger’ ’Beyond specific SYStem Commands’ in ’Beyond Debugger and Trace’ ’General System Settings’ in ’Blackfin Debugger’ ’DSP specific SYStem Commands’ in ’TMS320C2X Debugger’ ’DSP specific SYStem Commands’ in ’TMS320C5X Debugger’ ’DSP specific SYStem Commands’ in ’TMS320C6X Debugger’ ’Cortex-M specific SYStem Commands’ in ’Cortex-M Debugger’ ’General SYStem Commands’ in ’eTPU Debugger and Trace’ ’General SYStem Commands’ in ’GTM Debugger and Trace’ ’System Commands’ in ’H8S/23x9 Debugger’ ’General SYStem Settings’ in ’Hexagon Debugger’ ’General SYStem Settings and Restrictions’ in ’M32R Debugger and Trace’ ’General SYStem Settings and Restrictions’ in ’M8051EW Debugger’ ’General SYStem Settings for the Debugger’ in ’M-Core Debugger’ ’General SYStem Commands’ in ’MicroBlaze Debugger and Trace’ ’MIPS specific SYStem Commands’ in ’MIPS Debugger and Trace’ ’General SYStem Commands’ in ’MMDSP Debugger’ ’General SYStem Commands’ in ’MSP430 Debugger’ ’General SYStem Settings and Restrictions’ in ’NIOS II Debugger and Trace’ ’Commands’ in ’PCP Debugger Reference’ ’General SYStem Settings and Restrictions’ in ’R8051XC Debugger’ ’Command Reference: SYStem Commands’ in ’RH850 Debugger and Trace’ ’General System Settings’ in ’SH2, SH3 and SH4 Debugger’ ’General SYStem Settings and Restrictions’ in ’StarCore Debugger and Trace’ ’Command Reference’ in ’TriCore Debugger and Trace’ ’General System Settings’ in ’V850 Debugger and Trace’ ’System Options’ in ’XC800 Debugger’ ’General System Settings’ in ’ZSP Debugger’ ’General SYStem Settings and Restrictions’ in ’FIRE Emulator for C166 Cell-Based-Core’ ’General SYStem Settings and Restrictions’ in ’FIRE Emulator for C166S V2 Family’ ’ARM specific SYStem Commands’ in ’MAC71xx/72xx NEXUS Debugger and Trace’ ’General SYStem Commands’ in ’MMDSP NEXUS Debugger and Trace’ ’Release Information’ in ’Release History’ ’CPU specific SYStem Commands’ in ’Simulator for TriCore’
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
250
SYStem
SYStem.Line
Format:
CPU signal control
SYStem.Line
This command controls some special lines of the CPU.
See also ■ SYStem.state ▲ ▲ ▲ ▲ ▲
’General SYStem Settings and Restrictions’ in ’ICE Emulator for 8051’ ’General SYStem Settings and Restrictions’ in ’ICE Emulator for 8051’ ’General Settings and Restrictions’ in ’ICE Emulator for 68000’ ’General SYStem Settings and Restrictions’ in ’ICE Emulator for MC68020/30’ ’Emulation System’ in ’ICE User’s Guide’
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
251
SYStem
SYStem.LOCK
Format:
Tristate the JTAG port
SYStem.LOCK [ON | OFF]
Default: OFF. If the system is locked no access to the JTAG port will be performed by the debugger. While locked the JTAG connector of the debugger is tristated. The intention of the lock command is for example to give JTAG access to another tool. The process can also be automated, see SYStem.CONFIG TriState. Ensure that the state of the ARM core JTAG state machine remains unchanged while the system is locked. To ensure correct hand over the options SYStem.CONFIG TAPState and SYStem.CONFIG TCKLevel must be set properly. They define the TAP state and TCK level which is selected when the debugger switches to tristate mode. Please note: nTRST must have a pull-up resistor on the target, EDBGRQ must have a pull-down resistor. There is a single cable contact on the casing of the debug cable which can be used to detect if the JTAG connector is tristated. If tristated also this signal is tristated, otherwise it is pulled low.
See also ■ SYStem.state ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲
’CPU specific SYStem Commands’ in ’XC2000/XC16x/C166CBC Debugger’ ’General SYStem Settings and Restrictions’ in ’DSP56K Debugger’ ’CPU specific SYStem Commands’ in ’CPU32/ColdFire Debugger and Trace’ ’General SYStem Commands’ in ’78K0R/RL78 Debugger’ ’AndesCore specific SYStem Commands’ in ’Andes Debugger’ ’General SYStem Settings’ in ’APS Debugger’ ’CPU specific SYStem Commands’ in ’ARC Debugger’ ’ARM specific SYStem Commands’ in ’ARM Debugger’ ’ARM specific SYStem Commands’ in ’ARMv8-A/-R Debugger’ ’General SYStem Settings’ in ’AVR32 Debugger and NEXUS Trace’ ’Beyond specific SYStem Commands’ in ’Beyond Debugger and Trace’ ’General System Settings’ in ’Blackfin Debugger’ ’DSP specific SYStem Commands’ in ’TMS320C2X Debugger’ ’DSP specific SYStem Commands’ in ’TMS320C6X Debugger’ ’General SYStem Settings’ in ’CEVA-X Debugger’ ’Cortex-M specific SYStem Commands’ in ’Cortex-M Debugger’ ’General SYStem Commands’ in ’eTPU Debugger and Trace’ ’General SYStem Commands’ in ’GTM Debugger and Trace’ ’Multicore Debugging’ in ’H8S/23x9 Debugger’ ’General SYStem Settings and Restrictions’ in ’MCS08 Debugger’ ’General SYStem Settings and Restrictions’ in ’MCS12 Debugger’ ’General SYStem Settings’ in ’Hexagon Debugger’ ’General SYStem Settings and Restrictions’ in ’M32R Debugger and Trace’ ’General SYStem Settings and Restrictions’ in ’M8051EW Debugger’ ’General SYStem Settings for the Debugger’ in ’M-Core Debugger’ ’General SYStem Commands’ in ’MicroBlaze Debugger and Trace’ ©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
252
SYStem
▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲
’MIPS specific SYStem Commands’ in ’MIPS Debugger and Trace’ ’General SYStem Commands’ in ’MMDSP Debugger’ ’Command Reference: SYStem Commands’ in ’Qorivva MPC5xxx/SPC5xx Debugger and NEXUS Trace’ ’General SYStem Commands’ in ’MSP430 Debugger’ ’General SYStem Settings and Restrictions’ in ’NIOS II Debugger and Trace’ ’General SYStem Settings’ in ’CEVA-Oak/Teak/TeakLite Debugger’ ’Commands’ in ’PCP Debugger Reference’ ’General SYStem Commands’ in ’PPC400/PPC440 Debugger and Trace’ ’General System Commands’ in ’PPC600 Family Debugger’ ’General SYStem Commands’ in ’PQIII Debugger’ ’General SYStem Commands’ in ’QorIQ Debugger and NEXUS Trace’ ’General SYStem Commands’ in ’PWRficient Debugger’ ’General SYStem Settings and Restrictions’ in ’R8051XC Debugger’ ’Command Reference: SYStem Commands’ in ’RH850 Debugger and Trace’ ’General System Settings’ in ’RX Debugger’ ’General System Settings’ in ’SH2, SH3 and SH4 Debugger’ ’General SYStem Settings and Restrictions’ in ’StarCore Debugger and Trace’ ’Command Reference’ in ’TriCore Debugger and Trace’ ’General System Settings’ in ’V850 Debugger and Trace’ ’General SYStem Settings and Restrictions’ in ’XC800 Debugger’ ’Multicore Debugging’ in ’ZSP Debugger’ ’General System Settings and Restrictions’ in ’FIRE Emulator for HC12/MCS12’ ’ARM specific SYStem Commands’ in ’MAC71xx/72xx NEXUS Debugger and Trace’ ’General SYStem Commands’ in ’MMDSP NEXUS Debugger and Trace’ ’68K and HC16 specific SYStem Commands’ in ’Simulator for 68K/ColdFire’ ’General SYStem Settings and Restrictions’ in ’Simulator for C166/ST10’ ’Specific SYStem Commands’ in ’Simulator for H8/300, H8/300H and H8S’ ’General SYStem Settings and Restrictions’ in ’Simulator for HC12/MCS12’ ’MIPS specific SYStem Commands’ in ’Simulator for MIPS’ ’General System Commands’ in ’Simulator for NIOS-II’ ’CPU specific SYStem Commands’ in ’Simulator for TriCore’ ’Emulation Modes’ in ’Simulator for Intel® x86/x64’
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
253
SYStem
SYStem.LOG
Log read and write accesses to the target
Using the SYStem.LOG command group, you can record the read and write accesses TRACE32 performs to the target hardware. For example, the SYStem.LOG command group can be used to diagnose why errors like “emulator debug port fail”, “emulator berr error”, “bus error”, etc. occurred. By default, logging stops after an error has occurred (see SYStem.LOG.StopOnError). The read and write accesses can be displayed in the SYStem.LOG.List window. In addition, they can be recorded in a system log file with an unlimited file size. The log entries are recorded in plain text format, and the read and write accesses are converted to Data.Set commands. This way it is possible to re-run the system log in a TRACE32 instruction set simulator. The system log records all TRACE32 debugger accesses to the target. Examples of accesses that cannot be logged include: •
Accesses via JTAG API
•
Accesses initiated by the TERM command
•
Accesses initiated by the SNOOPer command
For configuring a system log, use the TRACE32 command line or the SYStem.LOG.state window:
Example: SYStem.LOG.state SYStem.LOG.RESet SYStem.LOG.OPEN ~~\sys.log SYStem.LOG.List
;optional: open the configuration window ;use default configuration of system log ;open a system log file for writing ;display the accesses to the target
;log the read and write accesses to the target List.auto Step.single SYStem.LOG.CLOSE
;close the system log file for writing
See also ■ ■ ■ ■
LOG SYStem.LOG.List SYStem.LOG.OPEN SYStem.LOG.state
■ ■ ■ ■
SYStem.LOG.CLEAR SYStem.LOG.Mode SYStem.LOG.RESet SYStem.LOG.StopOnError
■ ■ ■ ■
SYStem.LOG.CLOSE SYStem.LOG.OFF SYStem.LOG.Set SYStem.state
■ SYStem.LOG.Init ■ SYStem.LOG.ON ■ SYStem.LOG.SIZE
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
254
SYStem
SYStem.LOG.CLEAR
Format:
Clear the ‘SYStem.LOG.List’ window
SYStem.LOG.CLEAR
Clears and immediately re-populates the list in the SYStem.LOG.List window with new system log entries same as if you are running commands SYStem.LOG.Init and SYStem.LOG.ON in rapid succession. SYStem.LOG.CLEAR is the command behind the Clear button in the SYStem.LOG.List window.
See also ■ SYStem.LOG
■ SYStem.LOG.Init
■ SYStem.LOG.state
SYStem.LOG.CLOSE
Format:
Close the system log file
SYStem.LOG.CLOSE
Closes the active system log file. Any further read and write accesses are not recorded in the system log file. You can now open the file in an EDIT or TYPE window or in another application. Using the DO command, you can also re-run the system log in a TRACE32 instruction set simulator. You do not need to rename the file extension to cmm, the extension for PRACTICE scripts; you can keep the file extension log. ... SYStem.LOG.CLOSE
;close the system log file for writing
PEDIT ~~\sys.log
;open log file as a PRACTICE script
See also ■ SYStem.LOG
■ SYStem.LOG.OPEN
■ SYStem.LOG.state
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
255
SYStem
SYStem.LOG.Init
Format:
Clear the ‘SYStem.LOG.List’ window
SYStem.LOG.Init
Clears the system log entries displayed in the SYStem.LOG.List window. The SYStem.LOG.Init command has no impact on the system log file. Since the SYStem.LOG.List window itself continues to log the target, the list in the window may be immediately re-populated after clearing. To prevent the list in the SYStem.LOG.List window from being re-populated, run these commands: SYStem.LOG.OFF SYStem.LOG.Init
See also ■ SYStem.LOG
■ SYStem.LOG.CLEAR
■ SYStem.LOG.state
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
256
SYStem
SYStem.LOG.List
Format:
Display the accesses made by TRACE32
SYStem.LOG.List Data.LOG (deprecated)
Displays all types of target accesses made by TRACE32.
Buttons on the SYStem.LOG.List window Setup
Opens the SYStem.LOG.state window.
On
Starts/resumes logging - same as SYStem.LOG.ON.
Off
Pauses logging - same as SYStem.LOG.OFF.
Clear
Clears and immediately re-populates the list with new system log entries - same as if you are running the commands SYStem.LOG.Init and SYStem.LOG.ON in rapid succession.
Description of Columns op
Type of target access.
address
Access class and address where TRACE32 has accessed the target.
width
The bus width used by TRACE32. Example: The value 4. indicates that TRACE32 performs 32 bit read or write accesses.
data
Data written or read. Only the first 8 bytes are displayed in the SYStem.LOG.List window.
time
Absolute timestamps in relation to ZERO.
xtime
Execution time.
See also ■ SYStem.LOG
■ SYStem.LOG.state
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
257
SYStem
SYStem.LOG.Mode
Set logging mode
Format:
SYStem.LOG.Mode
:
Compact ON | OFF Source ON | OFF NoTime ON | OFF
Sets the degree of detail with which the read and write accesses are recorded in the system log file. Compact (Default: OFF)
• •
Source (Default: OFF)
• •
NoTime (Default: OFF)
OFF: Access addresses and data are included in the system log file. ON: Access addresses are logged, but data is not logged. OFF: The source of accesses such as ETM, HTM, etc. is not logged. ON: Information about which component has accessed the target is included in the system log file.
•
OFF: Timing information is included in the system log file; see time and xtime columns of the SYStem.LOG.List window.
•
ON: Timing information is not logged. NoTime ON is useful, for example, if you want to compare two versions of a system log file.
See also ■ SYStem.LOG
■ SYStem.LOG.state
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
258
SYStem
SYStem.LOG.OFF
Format:
Pause logging
SYStem.LOG.OFF
Temporarily deactivates logging, i.e. the read and write accesses are no longer logged. However, the system log file remains operational. Logging can be resumed with SYStem.LOG.ON. SYStem.LOG.OPEN ~~\sys.log … … SYStem.LOG.OFF … SYStem.LOG.ON … … SYStem.LOG.CLOSE
;open a system log file for writing ;log read and write accesses ;temporarily deactivate logging ;accesses are no longer logged ;resume logging ;accesses are logged again ;close system log file and terminate logging
See also ■ SYStem.LOG
■ SYStem.LOG.ON
■ SYStem.LOG.state
SYStem.LOG.ON
Format:
Resume logging
SYStem.LOG.ON
Logs all read and write accesses you have selected with SYStem.LOG.Set. The SYStem.LOG.ON command can be used after the system log has been temporarily deactivated with the command SYStem.LOG.OFF.
See also ■ SYStem.LOG
■ SYStem.LOG.OFF
■ SYStem.LOG.state
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
259
SYStem
SYStem.LOG.OPEN
Format:
Open a system log file
SYStem.LOG.OPEN
Generates a new system log file for logging read and write accesses and opens it for writing. The number of logged read and write accesses is unlimited. If a file with the same name already exists, it will be overwritten. The default extension is .log. SYStem.LOG.OPEN ~~\sys.log … … SYStem.LOG.CLOSE
;open a system log file
;close file and terminate logging
The path prefix ~~ expands to the TRACE32 system directory, by default C:\t32.
See also ■ SYStem.LOG
■ SYStem.LOG.CLOSE
SYStem.LOG.RESet
Format:
■ SYStem.LOG.state
Reset configuration of system log to defaults
SYStem.LOG.RESet
Resets all commands of the SYStem.LOG command group to their defaults. You can view the result in the SYStem.LOG.state window.
See also ■ SYStem.LOG
■ SYStem.LOG.state
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
260
SYStem
SYStem.LOG.Set
Select the read and write accesses to be logged
Format:
SYStem.LOG.Set
:
Polling ON | OFF MemoryRead ON | OFF MemoryWrite ON | OFF RegisterRead ON | OFF RegisterWrite ON | OFF ComponentRead ON | OFF ComponentWrite ON | OFF VMaccess ON | OFF ERROR ON | OFF
Allows you to select the read and write accesses you want to record in the system log.
ComponentRead
Read accesses to a debug component.
ComponentWrite
Write accesses.
ERROR
ON: All errors are included in the system log file. OFF: Only errors of the read and write accesses that are set to ON are logged.
MemoryRead
Memory read accesses.
MemoryWrite
Memory write accesses.
OFF
This omitted from the system log file.
ON
This included in the system log file.
Polling
Polling of the CPU. The polling mode can be set with SYStem.POLLING.
RegisterRead
Register read accesses.
RegisterWrite
Register write accesses.
VMaccess
If the option is enabled, any read or write access to addresses with the access class VM: or AVM: will be recorded in the SYStem.LOG.List window.
See also ■ SYStem.LOG
■ SYStem.LOG.state
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
261
SYStem
SYStem.LOG.SIZE
Format:
Define number of lines in the ‘SYStem.LOG.List’ window
SYStem.LOG.SIZE
Default: 64. Defines the number of lines displayed in the SYStem.LOG.List window. The displayed lines reflect the most recent read and write accesses to the target hardware. The setting does not affect the file size.
See also ■ SYStem.LOG
■ SYStem.LOG.state
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
262
SYStem
SYStem.LOG.state
Format:
Open configuration window of system log
SYStem.LOG.state
Opens the SYStem.LOG.state window, where you can configure a system log for recording read and write accesses to the target hardware. A B
C
A Only the information of selected options is displayed in the SYStem.LOG.List window and recorded in the system log file. For descriptions of the individual options, see SYStem.LOG.Set. B To open a system log file, do one of the following: • Click the folder icon and navigate to the file you want to use. • Type path and file name into the OPEN text box. Then press Enter. The TRACE32 message line displays that the file is now open for recording log entries. To close the system log file: • Clear the content from the OPEN text box. Then press Enter. The TRACE32 message line displays that the file is now closed. C For descriptions of the commands in the SYStem.LOG.state window, refer to the SYStem.LOG.* commands in this section. Example: For information about the List button, see SYStem.LOG.List.
See also ■ ■ ■ ■
SYStem.LOG SYStem.LOG.List SYStem.LOG.OPEN SYStem.LOG.StopOnError
■ SYStem.LOG.CLEAR ■ SYStem.LOG.Mode ■ SYStem.LOG.RESet
■ SYStem.LOG.CLOSE ■ SYStem.LOG.OFF ■ SYStem.LOG.Set
■ SYStem.LOG.Init ■ SYStem.LOG.ON ■ SYStem.LOG.SIZE
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
263
SYStem
SYStem.LOG.StopOnError
Format:
Stop logging on error
SYStem.LOG.StopOnError ON | OFF
Defines the logging behavior after an error has occurred. ON (Default)
TRACE32 automatically runs the command SYStem.LOG.OFF to stop logging after an error, such as a bus error, has occurred.
OFF
Logging continues after an error has occurred.
NOTE:
The system log file remains open for writing. • To continue logging, click Start in the SYStem.LOG.List window or run SYStem.LOG.ON. • To close the system log file, run SYStem.LOG.CLOSE.
See also ■ SYStem.LOG
■ SYStem.LOG.state
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
264
SYStem
SYStem.MemAccess
Format:
Run-time memory access (non-intrusive)
SYStem.MemAccess CPU | NEXUS | Denied |
The debugger/FIRE can read and write the target memory while the CPU is executing the program. CPU
Real-time memory access during program execution to target is enabled.
NEXUS
The NEXUS module within the CPU allows the debugger to read and write target memory while the CPU is executing the code.
Denied
Real-time memory access during program execution to target is disabled.
See also ■ SYStem.state ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲
’CPU specific SYStem Commands’ in ’XC2000/XC16x/C166CBC Debugger’ ’General SYStem Settings and Restrictions’ in ’DSP56K Debugger’ ’CPU specific SYStem Commands’ in ’CPU32/ColdFire Debugger and Trace’ ’AndesCore specific SYStem Commands’ in ’Andes Debugger’ ’General SYStem Settings’ in ’APS Debugger’ ’CPU specific SYStem Commands’ in ’ARC Debugger’ ’ARM specific SYStem Commands’ in ’ARM Debugger’ ’ARM specific SYStem Commands’ in ’ARMv8-A/-R Debugger’ ’General SYStem Settings’ in ’AVR32 Debugger and NEXUS Trace’ ’Beyond specific SYStem Commands’ in ’Beyond Debugger and Trace’ ’General System Settings’ in ’Blackfin Debugger’ ’DSP specific SYStem Commands’ in ’TMS320C2X Debugger’ ’DSP specific SYStem Commands’ in ’TMS320C5X Debugger’ ’DSP specific SYStem Commands’ in ’TMS320C6X Debugger’ ’General SYStem Settings’ in ’CEVA-X Debugger’ ’Cortex-M specific SYStem Commands’ in ’Cortex-M Debugger’ ’General SYStem Commands’ in ’eTPU Debugger and Trace’ ’General SYStem Commands’ in ’GTM Debugger and Trace’ ’System Commands’ in ’H8S/23x9 Debugger’ ’General SYStem Settings and Restrictions’ in ’MCS08 Debugger’ ’General SYStem Settings and Restrictions’ in ’MCS12 Debugger’ ’General SYStem Settings’ in ’Hexagon Debugger’ ’General SYStem Settings and Restrictions’ in ’M32R Debugger and Trace’ ’General SYStem Settings and Restrictions’ in ’M8051EW Debugger’ ’General SYStem Settings for the Debugger’ in ’M-Core Debugger’ ’General SYStem Commands’ in ’MicroBlaze Debugger and Trace’ ’MIPS specific SYStem Commands’ in ’MIPS Debugger and Trace’ ’General SYStem Commands’ in ’MMDSP Debugger’ ’Command Reference: SYStem Commands’ in ’Qorivva MPC5xxx/SPC5xx Debugger and NEXUS Trace’ ’General SYStem Settings and Restrictions’ in ’NIOS II Debugger and Trace’ ’General SYStem Settings’ in ’CEVA-Oak/Teak/TeakLite Debugger’ ’Commands’ in ’PCP Debugger Reference’ ’General SYStem Commands’ in ’PPC400/PPC440 Debugger and Trace’ ’General System Commands’ in ’PPC600 Family Debugger’ ’General SYStem Commands’ in ’MPC5xx/8xx Debugger and Trace’ ’General SYStem Commands’ in ’PQIII Debugger’ ’General SYStem Commands’ in ’QorIQ Debugger and NEXUS Trace’ ’General SYStem Commands’ in ’PWRficient Debugger’ ’General SYStem Settings and Restrictions’ in ’R8051XC Debugger’ ’Command Reference: SYStem Commands’ in ’RH850 Debugger and Trace’ ©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
265
SYStem
▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲
’General System Settings’ in ’RX Debugger’ ’General System Settings’ in ’SH2, SH3 and SH4 Debugger’ ’General SYStem Settings and Restrictions’ in ’StarCore Debugger and Trace’ ’Command Reference’ in ’TriCore Debugger and Trace’ ’General System Settings’ in ’V850 Debugger and Trace’ ’SYStem Settings’ in ’Intel x86/x64 Debugger’ ’CPU specific SYStem Commands’ in ’XTENSA Debugger’ ’General System Settings’ in ’ZSP Debugger’ ’Basics’ in ’FIRE Emulator for C166 Cell-Based-Core’ ’Basics’ in ’FIRE Emulator for C166 Family’ ’General SYStem Settings and Restrictions’ in ’C166 Monitor’ ’Specific SYStem Commands’ in ’H8S and H8/300H Monitor’ ’Specific System Commands’ in ’OSE Target Server’ ’Specific System Commands’ in ’SH2 Monitor’ ’General SYStem Settings and Restrictions’ in ’TriCore Monitor’ ’Emulation Modes’ in ’x186 Monitor’ ’General SYStem Commands’ in ’x386 and x486 Monitor’ ’ARM specific SYStem Commands’ in ’MAC71xx/72xx NEXUS Debugger and Trace’ ’General SYStem Commands’ in ’MMDSP NEXUS Debugger and Trace’ ’General SYStem Commands’ in ’MPC56x NEXUS Debugger and Trace’ ’Release Information’ in ’Release History’ ’68K and HC16 specific SYStem Commands’ in ’Simulator for 68K/ColdFire’ ’ARM specific SYStem Commands’ in ’Simulator for ARM and XSCALE’ ’General SYStem Settings and Restrictions’ in ’Simulator for C166/ST10’ ’Specific SYStem Commands’ in ’Simulator for H8/300, H8/300H and H8S’ ’General SYStem Settings and Restrictions’ in ’Simulator for HC12/MCS12’ ’MIPS specific SYStem Commands’ in ’Simulator for MIPS’ ’General System Commands’ in ’Simulator for NIOS-II’ ’General SYStem Commands’ in ’Simulator for PowerPC’ ’CPU specific SYStem Commands’ in ’Simulator for SuperH’ ’CPU specific SYStem Commands’ in ’Simulator for TriCore’ ’Emulation Modes’ in ’Simulator for Intel® x86/x64’ ’Starting-up the TRACE32-FIRE’ in ’Training FIRE Basics’
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
266
SYStem
SYStem.Mode
Select mode
Format:
SYStem.Mode [] SYStem. (as an alternative)
:
RESet StandBy ResetDown ResetUp NoProbe AloneInt AloneExt EmulInt EmulExt Down Attach NoDebug Go Up
(E)
The operation of the development system can be selected only with the appropriate probe and the necessary signals from the target system. If a signal (VCC or clock) is missing, the appropriate mode will be set automatically. This is valid if a signal changes the state during execution. If a power down occurs in the target system, a reset of the emulation system will occur automatically. Also, if a clock signal is missing, an automatic reset will occur. If no target system is connected, the development system will execute like the target system powered-up. The emulator probe, however, should not be protected by means of a conductive foam rubber covering as this could lead to a short circuiting of the probe. If the emulation monitor is hanging-up, the emulation system may be restarted by selecting the correct emulation mode. NOTE: Some emulation adaptors (68000, 8086) requires a valid system stack in order to work correctly. If valid reset vectors are available in the target program then the stack pointers can be set using the Register.Set command. In all other cases, the stack pointer must be set explicitly before starting realtime emulation.
RESet (E)
Probe is passive or not attached, all lines to the probe are in tri-state.
StandBy (E)
The target processor waits for target power and clock. When both are active it starts as fast as possible. This functionality is not available on all targets.
ResetDown (E)
Probe is attached and active. The target system power supply has been switched off.
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
267
SYStem
ResetUp (E)
Probe is active, emulator is in RESET mode, and target system is powered on.
NoProbe (E)
This mode can be selected when no active emulation probe is attached. This is possible even when the system is used as an emulator. The internal clock generator is selected automatically.
AloneInt (E)
Emulator mode is in stand-alone mode. The internal clock (see SYStem.CLOCK) is used. All strobe lines are blocked. Therefore no functions can be triggered in the target system.
AloneExt (E)
Emulator mode is in stand-alone mode. The external clock is used. All strobe lines are blocked. Therefore no functions can be triggered in the target system.
EmulInt (E)
The emulator is in active mode and the internal clock is used (see SYStem.CLOCK). The target system can be accessed as strobes are generated.
EmulExt (E)
The emulator is in active mode and the external clock is used. The target system can be accessed.
Down (BDM)
Disables the debug mode. The state of the CPU remains unchanged.
Attach
User program remains running (no reset) and the debug mode is activated. After this command the user program can be stopped with the break command or if any break condition occurs. NOTE: If breakpoints are set within TRACE32 before attaching (check via Break.List), these are not written to the target at the moment of attaching. Therefore the target will not stop at any of these breakpoints. As a workaround, use the sequence: SYStem.Attach Break.DISable Break.ENable
Down (ROM Monitor)
Switches of the EPROM Simulator. Asserts the Reset Port.
Go (BDM only)
Resets the system with debug mode enabled. The system runs until any break condition occurs.
NoDebug (BDM only)
Resets the system with debug mode disabled.
Up (BDM)
Resets the system with debug mode enabled and breaks before the first OpFetch.
Up (ROM Monitor)
Activates the EPROM Simulator, then the Reset Port is negated.
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
268
SYStem
Example for SYStem.Mode EmulExt: sys.m ee
; Emulator operating mode selections
sys.m noprobe
; No probe operating mode selections
See also ■ SYStem.state ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲
’CPU specific SYStem Commands’ in ’XC2000/XC16x/C166CBC Debugger’ ’General SYStem Settings and Restrictions’ in ’DSP56K Debugger’ ’CPU specific SYStem Commands’ in ’CPU32/ColdFire Debugger and Trace’ ’AndesCore specific SYStem Commands’ in ’Andes Debugger’ ’General SYStem Settings’ in ’APS Debugger’ ’CPU specific SYStem Commands’ in ’ARC Debugger’ ’ARM specific SYStem Commands’ in ’ARM Debugger’ ’ARM specific SYStem Commands’ in ’ARMv8-A/-R Debugger’ ’General SYStem Settings’ in ’AVR32 Debugger and NEXUS Trace’ ’Beyond specific SYStem Commands’ in ’Beyond Debugger and Trace’ ’General System Settings’ in ’Blackfin Debugger’ ’DSP specific SYStem Commands’ in ’TMS320C2X Debugger’ ’DSP specific SYStem Commands’ in ’TMS320C5X Debugger’ ’DSP specific SYStem Commands’ in ’TMS320C6X Debugger’ ’General SYStem Settings’ in ’CEVA-X Debugger’ ’Cortex-M specific SYStem Commands’ in ’Cortex-M Debugger’ ’General SYStem Commands’ in ’eTPU Debugger and Trace’ ’General SYStem Commands’ in ’GTM Debugger and Trace’ ’System Commands’ in ’H8S/23x9 Debugger’ ’General SYStem Settings and Restrictions’ in ’MCS08 Debugger’ ’General SYStem Settings and Restrictions’ in ’MCS12 Debugger’ ’General SYStem Settings’ in ’Hexagon Debugger’ ’General SYStem Settings and Restrictions’ in ’M32R Debugger and Trace’ ’General SYStem Settings and Restrictions’ in ’M8051EW Debugger’ ’General SYStem Settings for the Debugger’ in ’M-Core Debugger’ ’General SYStem Commands’ in ’MicroBlaze Debugger and Trace’ ’MIPS specific SYStem Commands’ in ’MIPS Debugger and Trace’ ’General SYStem Commands’ in ’MMDSP Debugger’ ’Command Reference: SYStem Commands’ in ’Qorivva MPC5xxx/SPC5xx Debugger and NEXUS Trace’ ’General SYStem Settings and Restrictions’ in ’NIOS II Debugger and Trace’ ’General SYStem Settings’ in ’CEVA-Oak/Teak/TeakLite Debugger’ ’Commands’ in ’PCP Debugger Reference’ ’General SYStem Commands’ in ’PPC400/PPC440 Debugger and Trace’ ’General System Commands’ in ’PPC600 Family Debugger’ ’General SYStem Commands’ in ’MPC5xx/8xx Debugger and Trace’ ’General SYStem Commands’ in ’PQIII Debugger’ ’General SYStem Commands’ in ’QorIQ Debugger and NEXUS Trace’ ’General SYStem Commands’ in ’PWRficient Debugger’ ’General SYStem Settings and Restrictions’ in ’R8051XC Debugger’ ’Command Reference: SYStem Commands’ in ’RH850 Debugger and Trace’ ’General System Settings’ in ’RX Debugger’ ’General System Settings’ in ’SH2, SH3 and SH4 Debugger’ ’General SYStem Settings and Restrictions’ in ’StarCore Debugger and Trace’ ’Command Reference’ in ’TriCore Debugger and Trace’ ’General System Settings’ in ’V850 Debugger and Trace’ ’SYStem Settings’ in ’Intel x86/x64 Debugger’ ’General SYStem Settings and Restrictions’ in ’XC800 Debugger’ ’General System Settings’ in ’ZSP Debugger’ ’SYStem Commands’ in ’EPROM/FLASH Simulator’ ’Basics’ in ’FIRE Emulator for C166 Family’ ’Emulation Modes’ in ’FIRE Emulator for HC12/MCS12’ ’Basics’ in ’FIRE Emulator for C166S V2 Family’ ’General Settings and Restrictions’ in ’ICE Emulator for 68000’ ©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
269
SYStem
▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲
’Basics’ in ’ICE Emulator for MC68020/30’ ’General SYStem Settings and Restrictions’ in ’ICE Emulator for MC6833X’ ’Basics’ in ’ICE Emulator for Motorola 68360/349’ ’Basics’ in ’ICE Emulator for C166/ST10’ ’Basics’ in ’ICE Emulator for PowerPC’ ’Emulation System’ in ’ICE User’s Guide’ ’Basics’ in ’ICE Emulator for Z80 and Z180’ ’General SYStem Commands’ in ’ARM and XSCALE Monitor’ ’General SYStem Settings and Restrictions’ in ’C166 Monitor’ ’Specific SYStem Commands’ in ’EPOC Target Server’ ’Specific SYStem Commands’ in ’H8S and H8/300H Monitor’ ’Specific System Commands’ in ’OSE Target Server’ ’Pdebug Front-end Specific Commands’ in ’TRACE32 pdebug Target Server for ARM’ ’Specific System Commands’ in ’SH2 Monitor’ ’General SYStem Settings and Restrictions’ in ’TriCore Monitor’ ’Emulation Modes’ in ’x186 Monitor’ ’General SYStem Commands’ in ’x386 and x486 Monitor’ ’Emulation Modes’ in ’Z80 Monitor’ ’ARM specific SYStem Commands’ in ’MAC71xx/72xx NEXUS Debugger and Trace’ ’General SYStem Commands’ in ’MMDSP NEXUS Debugger and Trace’ ’General SYStem Commands’ in ’MPC56x NEXUS Debugger and Trace’ ’Release Information’ in ’Release History’ ’68K and HC16 specific SYStem Commands’ in ’Simulator for 68K/ColdFire’ ’ARM specific SYStem Commands’ in ’Simulator for ARM and XSCALE’ ’Specific SYStem Commands’ in ’Simulator for H8/300, H8/300H and H8S’ ’General SYStem Settings and Restrictions’ in ’Simulator for HC08/MSC08’ ’MIPS specific SYStem Commands’ in ’Simulator for MIPS’ ’General System Commands’ in ’Simulator for NIOS-II’ ’General SYStem Commands’ in ’Simulator for PowerPC’ ’CPU specific SYStem Commands’ in ’Simulator for TriCore’ ’Emulation Modes’ in ’Simulator for Intel® x86/x64’ ’Emulation Modes’ in ’Simulator for Z80+’ ’Starting-up the TRACE32-FIRE’ in ’Training FIRE Basics’ ’Specific Commands’ in ’Native Process Debugger’
©1989-2016 Lauterbach GmbH
General Commands Reference Guide S
270
SYStem
SYStem.MonFile
Format:
Monitor extension
SYStem.MonFile […]
Loads an extension for the monitor program. This extension can handle an user-specific start and stop code and an user-specific memory access class. The start- and stop-code can be used to stop timers in the target, when the emulation is stopped. The memory access class can access special memories like EEPROM's or FIFO's (access class USR:). On some probes other extensions (like FPU access) are supported. On some processors with MMU the extension provides the current task number for the debugger. The defined extension can be used after the next SYStem.Mode command. The arguments are passed to the monitor extension. See emulation probe manual for details about the extension of the target. Examples of monitor extensions can be found in the '/etc' directory for the target. E::sys.monfile monext.m68 E::sys.up E::w.d usr:0
; load extensions ; power up the target ; dump special memory
See also ■ SYStem.state ▲ ’Emulation System’ in ’ICE User’s Guide’
SYStem.MONITOR
tbd.
.
Format:
SYStem.MONITOR