General Commands Reference Guide S

General Commands Reference Guide S TRACE32 Online Help TRACE32 Directory TRACE32 Index TRACE32 Documents ................................................
Author: Chastity Ward
3 downloads 1 Views 4MB Size
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