general ref r

Upload: chfakht

Post on 07-Jul-2018

217 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/18/2019 General Ref r

    1/48

    General Commands Reference Guide R   1 ©1989-2015 Lauterbach GmbH

    General Commands Reference Guide R

    TRACE32 Online Help

    TRACE32 Directory

    TRACE32 Index

    TRACE32 Documents ...................................................................................................................... 

    General Commands ...................................................................................................................... 

    General Commands Reference Guide R .................................................................................. 1

      REFresh .................................................................................................................................... 4

      Function 4

      REFresh.Address Refresh address range 5

      REFresh.CYcle Access mode 5

      REFresh.Inc Address distance 5  REFresh.OFF Switch off 6

      REFresh.RESet Reset command 6

      REFresh.StandBy Standby mode 7

      REFresh.state Status display 7

      REFresh.Time Refresh rate 8

      Register .................................................................................................................................... 9

      Register Processor registers 9

      Register.Init Initialize the processor registers 9

      Register.LOG Log registers 13

      Register.REFRESH Refresh register window 14

      Register.RELOAD Reload the compiler register settings 14

      Register.Set Modify register contents 15

      Register.StackTop Define stack top address 16

      Register.view Display registers 17

      RESet ........................................................................................................................................ 20

      RESet Reset all commands 20

      RTP ........................................................................................................................................... 21

      RTP.CLEAR Clear tracebuffer 21

      RTP.DirectDataMode tbd. 21

      RTP.DirectDataMode.Mode Direct data mode read/write 21

      RTP.HaltOnOverflow Halt system on RTP FIFO overflow 21

      RTP.Mode Selects the trace mode 21

      RTP.OFF Disables the RTP module 21

      RTP.ON Activates the RTP module 21

      RTP.PortClock Configure RTPCLK 22

      RTP.PortSize Size of RTP data port 22

    http://main.pdf/http://directory.pdf/http://index.pdf/http://directory.pdf/http://directory.pdf/http://directory.pdf/http://directory.pdf/http://index.pdf/http://directory.pdf/http://main.pdf/

  • 8/18/2019 General Ref r

    2/48

    General Commands Reference Guide R   2 ©1989-2015 Lauterbach GmbH

      RTP.Register Display the RTP register 22

      RTP.RESet Resets RTP settings 22

      RTP.state Display RTP setup 22

      RTP.TraceMode tbd. 22

      RTP.TraceMode.RAM.SECTion Configures a trace region 22

      RTP.TraceMode.TraceExclude Invert all trace regions 22

      RTS ........................................................................................................................................... 24

      RTS Real-time profiling (RTS) 24  RTS.COVerage Code coverage 25

      RTS.FILE Set the name for the RTS file 26

      RTS.FileCompression Set compression level for the RTS file 26

      RTS.FileLimit Set size limit for the RTS file 27

      RTS.FileMode Select the data to write to the RTS file 28

      RTS.Init Initialize RTS 29

      RTS.ISTATistic Statistics regarding instruction execution 29

      RTS.List List recorded trace data 31

      RTS.ListNesting Display function call nesting 32

      RTS.LOAD Mount a file as trace source 33

      RTS.NestingMode Set type of program flow analysis 34

      RTS.OFF Deactivate real-time profiling 35

      RTS.ON Activate real-time profiling 35

      RTS.PROfile Display performance characteristics charts 36

      RTS.RESet Restore default settings and initialize RTS 37

      RTS.state Open status and control window 37

      RTS.STATistic Statistics regarding function invocations 39  RTS.StopOnError Configure behavior regarding minor errors 40

      RTS.StopOnFifofull Configure behavior regarding FIFO overflows 40

      RTS.TASKMode Configure task analysis 41

      RTS.TImeMode Configure analysis of program execution timing 42

      RunTime ................................................................................................................................... 43

      RunTime Runtime measurement 43

      Runtime Measurements Using the Debugger 43

      Runtime Measurements Using TRACE32-ICE / TRACE32-FIRE 45  Functions related to RunTime 46

      RunTime.Init Clear timers 46

      RunTime.refA Set reference 47

      RunTime.refB Set reference 47

      RunTime.RESet Reset values to zero 47

      RunTime.state Display results 48

  • 8/18/2019 General Ref r

    3/48

    General Commands Reference Guide R   3 ©1989-2015 Lauterbach GmbH

    Usage:

    (B) command only available for ICD(E) command only available for ICE

    (F) command only available for FIRE

  • 8/18/2019 General Ref r

    4/48

    General Commands Reference Guide R   4 REFresh ©1989-2015 Lauterbach GmbH

    General Commands Reference Guide R

    Version 06-Nov-2015

    REFresh

    Function

    The refresh function has to be activated, when a dynamic RAM is on the target system and is refreshed bythe CPU. The refresh function uses burst read cycles for refreshing target memory. Address range andstorage class may be defined.

    StandBy

    On StandBy mode the refresh burst is forced while no emulation is running.

    NOTE: This command is for refreshing target DRAMs only, when having dynamicemulation memory, it is automatically refreshed by dual-port access.

    //////////////////

    ref.burst ref.burst realtime emulation ref.burst ref.burst

  • 8/18/2019 General Ref r

    5/48

    General Commands Reference Guide R   5 REFresh ©1989-2015 Lauterbach GmbH

    REFresh.Address Refresh address range

    Defines the address range, which is touched by refresh cycles.

    If the REF.Inc value is set to zero, the address range will be define the length of the refresh burst to a singlememory address.

    See also

    ■  REFresh.state 

    ▲  ’Refresh Generator’ in ’ICE User’s Guide’

    CE only

    REFresh.CYcle Access mode

    If on 16 bit CPUs the access type is LONG, refresh is made by 2 refresh cycles. If on 8 bit CPUs the optionWORD or LONG is selected, 2 or 4 cycles are used for one refresh cycle.

    See also

    ■  REFresh.state 

    ▲  ’Refresh Generator’ in ’ICE User’s Guide’

    Format: REFresh.Address  

    ref.inc 0x1ref.a ud:0x10000--0x100ff ; Refresh on USERDATA area

    ref.inc 0x0

    ref.c word

    ref.a sd:0x1000++0x0ff ; Refresh burst with 128 words on

    ; address 1000h

    Format: REFresh.CYcle  

     : ByteWordLong

    http://ice_user.pdf/http://ice_user.pdf/http://ice_user.pdf/http://ice_user.pdf/

  • 8/18/2019 General Ref r

    6/48

    General Commands Reference Guide R   6 REFresh ©1989-2015 Lauterbach GmbH

    CE only

    REFresh.Inc Address distance

    Defines the address increment used in the refresh access loop.

    See also

    ■  REFresh.state 

    ▲  ’Refresh Generator’ in ’ICE User’s Guide’

    CE only

    REFresh.OFF Switch off

    Refresh function is switched to OFF automatically, when the refresh parameters don't fit e.g. an odd addressrange together with word size.

    See also

    ■  REFresh.state 

    ▲  ’Refresh Generator’ in ’ICE User’s Guide’

    Format: REFresh.Inc  

     : 1. …

    ; force refresh with 256 cycles

    ref.t 4.ms

    ref.a ud:0x0--0x03ff

    ref.c long

    ref.i 0x4

    ref.on

    ; cycle time 4 ms

    ; address range 0 to 03ffh

    ; long word

    ; increment 4

    ; switch on refresh operation

    ; standby refresh on address 1000H

    ref.a ud:0x1000++0x0

    ref.c b

    ref.standby

    ; address 1000H

    ; byte access

    ; switch refresh on

    Format: REFresh.OFF

    http://ice_user.pdf/http://ice_user.pdf/http://ice_user.pdf/http://ice_user.pdf/

  • 8/18/2019 General Ref r

    7/48

    General Commands Reference Guide R   7 REFresh ©1989-2015 Lauterbach GmbH

    CE only

    REFresh.RESet Reset command

    The refresh system is switched to OFF and all refresh parameters are initialized.

    See also

    ■  REFresh.state 

    ▲  ’Refresh Generator’ in ’ICE User’s Guide’

    CE only

    REFresh.StandBy Standby mode

    Refresh cycles will be executed, if real-time emulation is not active. Refresh command may be activated onlywhen all refresh parameters are correct.

    See also

    ■  REFresh.state ▲  ’Refresh Generator’ in ’ICE User’s Guide’

    Format: REFresh.RESet

    Format: REFresh.StandBy

    http://ice_user.pdf/http://ice_user.pdf/http://ice_user.pdf/http://ice_user.pdf/

  • 8/18/2019 General Ref r

    8/48

    General Commands Reference Guide R   8 REFresh ©1989-2015 Lauterbach GmbH

    CE only

    REFresh.state Status display

    Displays the current setup of the refresh function.

    See also

    ■  REFresh.Address  ■  REFresh.CYcle  ■  REFresh.Inc  ■  REFresh.OFF 

    ■  REFresh.RESet  ■  REFresh.StandBy  ■  REFresh.Time 

    ▲  ’Refresh Generator’ in ’ICE User’s Guide’

    CE only

    REFresh.Time Refresh rate

    Will define the refresh time, if cyclic refresh is selected. This field has no effect on standby-refresh.

    See also

    ■  REFresh.state 

    ▲  ’Refresh Generator’ in ’ICE User’s Guide’

    Format: REFresh.state

    Format: REFresh.Time  

     : 1.0ms … 1.0s

    ref.t 4.0ms ; refresh burst every 4 ms

    E68::w.ref

     mode

    OFF

    ON 

    StandBy

     Address

    UD:

    000000

    0000FF

    Cycle

    BYTE

    Inc

    000001

    http://ice_user.pdf/http://ice_user.pdf/http://ice_user.pdf/http://ice_user.pdf/

  • 8/18/2019 General Ref r

    9/48

    General Commands Reference Guide R   9 Register ©1989-2015 Lauterbach GmbH

    Register

    Register Processor registers

    The Register command group is used to control the processor registers. In case of subprocessors (e.g.,

    FPU) extra commands are provided.

    Register values can be returned by the function Register()

    See also

    ■  Register.Init  ■  Register.LOG 

    ■  Register.REFRESH  ■  Register.RELOAD 

    ■  Register.Set  ■  Register.StackTop 

    ■  Register.view  ❏  PP() 

    ❏  Register()  ❏  Register.LIST() 

    ▲  ’Release Information’ in ’Release History’

    Register.Init Initialize the processor registers

    Sets the registers to the same state as after the processor reset. Registers which are undefined afterRESET are set to zero.

    PRINT Register(D0) ; print the contents of the

    ; register D0 in the message line

    Register.Set D1 Register(D0) ; set register D1 to the contents

    ; of register D0

    Format: Register.InitRegister.RESet (deprecated)

    B:: ; example for the debugger

    SYStem.Up ; establish the communication between the

    ; processor and the debugger

    Register.Init ; initialize the general purpose registers

    http://general_ref_f.pdf/http://general_func.pdf/http://general_func.pdf/http://general_func.pdf/http://release.pdf/http://release.pdf/http://general_func.pdf/http://general_func.pdf/http://general_func.pdf/http://general_ref_f.pdf/

  • 8/18/2019 General Ref r

    10/48

    General Commands Reference Guide R   10 Register ©1989-2015 Lauterbach GmbH

    CPU Behavior of Register.Init

    ARC STATUS

  • 8/18/2019 General Ref r

    11/48

    General Commands Reference Guide R   11 Register ©1989-2015 Lauterbach GmbH

    DSP56K Family 56000 and 56100The eight 16-bit modifier registers M[0-7] are set to 0xFFFF. Thisspecifies linear arithmetic as the default type for address registerupdate calculations.The Operating Mode Register (OMR) is set tothe initial value after SYStem.Up. Values of bits MA, MB and MC of

    the OMR register are preserved.The program counter is set to

    zero. All interrupts are masked by setting the Status Register (SR)to 0x300.

    Family 56300 and 56720 DualcoreThe eight 24-bit modifier registers M[0-7] are set to 0xFFFFFF.This specifies linear arithmetic as the default type for addressregister update calculations. The Operating Mode Register (OMR)is set to the initial value after SYStem.Up. Values of bits MA, MB,MC and MD of the OMR register are preserved. All interrupts aremasked by setting Status Register (SR) to 0x300. The programcounter is set to zero.

    Family 56800 and 56800EThe eight 16-bit modifier registers M[0-7] are set to 0xFFFF. Thisspecifies linear arithmetic as the default type for address registerupdate calculations. The Operating Mode Register (OMR) is set tothe initial value after SYStem.Up. Values of bits MA and MB of theOMR register are preserved. All interrupts are masked by settingStatus Register (SR) to 0x300. The program counter is set to zero.

    HCS08 The Program Counter is set to the value read at 0xFFFE. The

    Stack Pointer SP is set to 0xFF and the CCR is set to 0x68. Allother registers are set to zero.

    HC11 The Program Counter is set to the value read at 0xFFFE. TheStack Pointer SP is set to a default value dependent on thederivative. The CCR is set to 0xD8. All other registers are set tozero.

    HC12/S12/S12X The Program Counter is set to the value read at 0xFFFE. The CCRis set to 0xD8. All other registers are set to zero.

    MIPS32/MIPS64/NEC-VR Program Counter, Status register and Config register are set totheir initial values after reset (read during SYStem.Up). PRID andCause register are updated, all other registers are set to zero.

    MMDSP Sets all registers to their initial value after a reset. This is done via

    a soft reset of the core.

    NOTE: This may have effects besides updating the contents ofarchitectural registers.

    PowerPC Program counter and MSR are set to their initial values after reset

    (read during SYStem.Up). GPRs and SPR appearing in theRegister window are set to zero.

    CPU Behavior of Register.Init

    http://general_ref_s.pdf/http://general_ref_s.pdf/http://general_ref_s.pdf/http://general_ref_s.pdf/http://general_ref_s.pdf/http://general_ref_s.pdf/http://general_ref_s.pdf/http://general_ref_s.pdf/http://general_ref_s.pdf/http://general_ref_s.pdf/

  • 8/18/2019 General Ref r

    12/48

    General Commands Reference Guide R   12 Register ©1989-2015 Lauterbach GmbH

    Microblaze All registers are set to zero.

    PCP All registers are set to zero.

    Teak MOD0 and MOD0S registers SATA bit is set. MOD1 and MOD1Sregsiters CMD bit is set. MOD3 and MOD3S registers CREP, CPC

    and CCNTA bits are set.All other registers are set to zero.

    Teaklite/Teaklite-II/Oak All registers are set to zero.

    Teaklite-III MOD2 register SATA and SATP bits are set.All other registers are set to zero.

    x86 EDX is set to a cpu specific value defining the family/model/ stepping of the core if a SYStem.Up has been executed at some

    point before, otherwise EDX is set to 0.EAX,EBX,ECX,ESI,EDI,ESP,EBP are set to 0.EIP is set to 0xFFF0 and EFLAGS to 2.CR0 is set to 0x60000010 and CR2-4 to 0.DR0-3 are set to 0. DR6 to 0xFFFF0FF0 and DR7 to 0x400.IDT and GDT: Base = 0 and Limit = 0xFFFF.LDT and TR: Selector = 0, Base = 0, Limit = 0xFFFF, Access =0x82.CS: Selector = 0xF000, Base = 0xFFFF0000, Limit = 0xFFFF,

    Access = 0x93.DS,ES,FS,GS,SS: Selector = 0, Base = 0, Limit = 0xFFFF, Access

    = 0x93.NOTE: In a multicore system the above holds for the mainbootstrap processor. For the other processors the followingdifferences apply: EIP is set to 0x10000 and CR0 to 0x10.

    TMS320 All registers except SSR, IER and TSR are set to zero.

    TriCore All registers are set to zero with the following exceptions:The initial values for registers PC, PSW, ISP and BTV are readfrom the CPU at SYStem.Up.If this is not possible the following default values are assumed:

    PC=0xA0000020 (AURIX and later), 0xA0000000 (otherwise)PSW=0x00000B80BTV=0xA0000100ISP=0x00000100

    XTENSA All registers are set to zero.

    ZSP All registers are set to zero.

    CPU Behavior of Register.Init

    http://general_ref_s.pdf/http://general_ref_s.pdf/http://general_ref_s.pdf/http://general_ref_s.pdf/

  • 8/18/2019 General Ref r

    13/48

    General Commands Reference Guide R   13 Register ©1989-2015 Lauterbach GmbH

    See also

    ■  Register  ■  Register.view 

    ▲  ’Register and Peripherals’ in ’ICE User’s Guide’

    Register.LOG Log registers

    Writes the selected registers to the AREA window whenever the program execution stops. The output can

    be redirected to any named AREA window. The output of any AREA windows can also be redirected to afile.

    See also

    ■  Register  ■  Register.view 

    Format: Register.LOG [ ] …[ /  ]

     : ALL

     : AREA  

    AREA.Create REG_LOG ; set-up an AREA window named

    ; REG_LOG

    AREA.OPEN REG_LOG regfile.log ; write all outputs to the

    ; AREA window REG_LOG also to the

    ; file regfile.log

    AREA.view REG_LOG ; display the AREA window REG_LOG; in TRACE32

    Register.LOG ALL /AREA REG_LOG ; log the contents of all registers

    ; at every program stop to the

    ; AREA window REG_LOG

    Register.LOG ; end the register logging

    AREA.CLOSE REG_LOG ; close the file regfile.log

    http://ice_user.pdf/http://ide_ref.pdf/http://ice_user.pdf/http://ide_ref.pdf/

  • 8/18/2019 General Ref r

    14/48

    General Commands Reference Guide R   14 Register ©1989-2015 Lauterbach GmbH

    Register.REFRESH Refresh register window

    Forces the debugger to re-read all processor registers from the target and refresh the Register window.

    Use this command, if your registers might have changed. The timebase registers of the PowerPCprocessors for example change permanently even when the program execution is stopped.

    See also

    ■  Register  ■  Register.view 

    Register.RELOAD Reload the compiler register settings

    Re-write the initialization values of the last Data.LOAD command into the appropriate processor registers.

    See also

    ■  Register  ■  Register.view 

    ▲  ’Release Information’ in ’Release History’

    Format: Register.REFRESH

    NOTE: Whenever the program execution is stopped, the Register window gets refreshedautomatically.

    Format: Register.RELOAD

    http://general_ref_d.pdf/http://release.pdf/http://release.pdf/http://general_ref_d.pdf/

  • 8/18/2019 General Ref r

    15/48

    General Commands Reference Guide R   15 Register ©1989-2015 Lauterbach GmbH

    Register.Set Modify register contents

    Sets to the specified .

    The Register.Set command is also invoked by a double click to the register contents or by choosing Set …in the Register pull-down menu.

    See also

    ■  Register  ■  Register.view 

    ❏  Register() 

    ▲  ’Register and Peripherals’ in ’ICE User’s Guide’

    ▲  ’Release Information’ in ’Release History’

    ▲  ’Registers’ in ’Debugger Basics - Training’

    ▲  ’Registers’ in ’Training FIRE Basics’▲  ’Registers’ in ’Training ICE Basics’

    Format: Register.Set   [ ] [ /Task   ]

     : D0 | D1 | D2 | D3 | …

    Register.Set PC start ; set the Program Counter to the label

    ; start

    Register.Set D0 Register(D0)+1 ; increment register contents

    http://general_func.pdf/http://ice_user.pdf/http://release.pdf/http://training_debugger.pdf/http://training_fire.pdf/http://training_ice.pdf/http://training_ice.pdf/http://training_fire.pdf/http://training_debugger.pdf/http://release.pdf/http://ice_user.pdf/http://general_func.pdf/

  • 8/18/2019 General Ref r

    16/48

    General Commands Reference Guide R   16 Register ©1989-2015 Lauterbach GmbH

    Register.StackTop Define stack top address

    Limits the display of the stack in the register window. When the stack is below or equal to this address its

    contents will not be displayed.

    See also

    ■  Register  ■  Register.view 

    ❏  Register() 

    Format: Register.StackTop  

    Register.StackTop 0x14000 ; limit the stack display in the

    ; register window to address

    ; 0x14000

    http://general_func.pdf/http://general_func.pdf/

  • 8/18/2019 General Ref r

    17/48

    General Commands Reference Guide R   17 Register ©1989-2015 Lauterbach GmbH

    Register.view Display registers

    Display the general purpose registers. For some CPUs additional information is displayed if the

    Register.view window is dragged to its full size.

    Format: Register.view [ /  ]

     : SpotLightStack ForeGroundSet | BackGroundSet | SystemSet | TemporarySetCORE  

    REGSET   | Current | PreviousTASK   |  . | " "

    SpotLight Highlight changed registers.

    Registers changed by the last program run/single step are markedin dark red. Registers changed by the second to last program run/ 

    single step are marked a little bit lighter. This works up to a level of4.

    Register.view /SpotLight

    Default display

    Full display

  • 8/18/2019 General Ref r

    18/48

    General Commands Reference Guide R   18 Register ©1989-2015 Lauterbach GmbH

    Stack  With Stack : The stack display (A) is shown.

    Without Stack : The stack display is hidden.

    B. Toggle between:• S = Addresses relative to the stack pointer

    • F = Addresses relative to the frame pointer• C = Addresses relative to the canonical frame address

    C. Clicking the Stack  button in the Register.view window lets youshow/hide the stack display on the fly.

    ForeGroundSet (TRACE32-ICE only)Display the registers of the application program.

    TRACE32-ICE allows to run a background program. The

    background program is always executed, when the execution ofthe application program stopped. The purpose of the backgroundprogram can be to maintain interrupts, refresh memory or triggerwatchdogs in the target.

    BackGroundSet (TRACE32-ICE only)

    Display the registers of the background program.

    SystemSet The TRACE32-internal register set is a temporary buffer withinTRACE32. This buffer is used to hold a copy of the CPU registers.Commands like Register.Copy, Register.SWAP are using thisTRACE32-internal register set.

    TemporarySet (diagnosis purpose only)

    Register.COPY ; copy general purpose registers into the

    ; TRACE32-internal register set

    Go ; start program execution

    Break ; stop program execution

    Register.view /SystemSet ; display TRACE32-internal register set

    B

    C

    A

  • 8/18/2019 General Ref r

    19/48

    General Commands Reference Guide R   19 Register ©1989-2015 Lauterbach GmbH

    See also

    ■  Go.direct  ■  Register 

    ■  Register.Init  ■  Register.LOG 

    ■  Register.REFRESH  ■  Register.RELOAD 

    ■  Register.Set  ■  Register.StackTop 

      PP() ❏

      Register() ❏  Register.LIST() 

    ▲  ’CPU specific Implementations’ in ’MIPS Debugger and Trace’

    ▲  ’Register and Peripherals’ in ’ICE User’s Guide’

    ▲  ’Release Information’ in ’Release History’

    CORE   (SMP debugging only)The TRACE32 GUI displays the context (registers, cache,

    memory …) of the currently selected core if SMP debugging isperformed. The option CORE allows to display the register set ofanother core.

    CORE.select CORE 1 ; advise TRACE32 to display the; context of core 1

    Register.view ; display the registers of the

    ; current context

    Register.view /CORE 0 ; display the registers for core 0

    REGSET   (processor-specific)

    MIPS architecture: Display the specified shadow register set.

    SH2A architecture: Display the specified register bank.

    TASK   |  . | " " Display the register set of the specified task.

    Register.view /TASK 0x41498 ;

    ;

    Register.view /TASK "thread 0" ;

    http://general_ref_g.pdf/http://general_func.pdf/http://general_func.pdf/http://general_func.pdf/http://debugger_mips.pdf/http://ice_user.pdf/http://release.pdf/http://release.pdf/http://ice_user.pdf/http://debugger_mips.pdf/http://general_func.pdf/http://general_func.pdf/http://general_func.pdf/http://general_ref_g.pdf/

  • 8/18/2019 General Ref r

    20/48

    General Commands Reference Guide R   20 RESet ©1989-2015 Lauterbach GmbH

    RESet

    Resets all commands.

    RESet Reset all commands

    (E) All commands of the emulator are reset to their default state.

    (B) (BDM Debugger) All commands of the BDM-debugger are reset to their default state.

    (B) (ROM Monitor) Switches off the EPROM simulator and resets the mapping system to its default state.

    The target CPU is reset only if the RES pin of one adapter is connected and adapted to the target CPU.

    See also

    ■  SYStem.RESet 

    ▲  ’RESET’ in ’EPROM/FLASH Simulator’

    Format: RESet

    http://general_ref_s.pdf/http://eprom_simulator.pdf/http://eprom_simulator.pdf/http://general_ref_s.pdf/

  • 8/18/2019 General Ref r

    21/48

    General Commands Reference Guide R   21 RTP ©1989-2015 Lauterbach GmbH

    RTP

    RTP.CLEAR Clear tracebuffer

    see command RTP.CLEAR in 'RAM Trace Port' (trace_rtp.pdf, page 7)

    RTP.DirectDataMode tbd.

    see command RTP.DirectDataMode in 'RAM Trace Port' (trace_rtp.pdf, page 8)

    RTP.DirectDataMode.Mode Direct data mode read/write

    see command RTP.DirectDataMode.Mode in 'RAM Trace Port' (trace_rtp.pdf, page 8)

    RTP.HaltOnOverflow Halt system on RTP FIFO overflow

    see command RTP.HaltOnOverflow in 'RAM Trace Port' (trace_rtp.pdf, page 9)

    RTP.Mode Selects the trace mode

    see command RTP.Mode in 'RAM Trace Port' (trace_rtp.pdf, page 9)

    RTP.OFF Disables the RTP module

    see command RTP.OFF in 'RAM Trace Port' (trace_rtp.pdf, page 9)

    RTP.ON Activates the RTP module

    see command RTP.ON in 'RAM Trace Port' (trace_rtp.pdf, page 10)

    http://trace_rtp.pdf/http://trace_rtp.pdf/http://trace_rtp.pdf/http://trace_rtp.pdf/http://trace_rtp.pdf/http://trace_rtp.pdf/http://trace_rtp.pdf/http://trace_rtp.pdf/http://trace_rtp.pdf/http://trace_rtp.pdf/http://trace_rtp.pdf/http://trace_rtp.pdf/http://trace_rtp.pdf/http://trace_rtp.pdf/

  • 8/18/2019 General Ref r

    22/48

    General Commands Reference Guide R   22 RTP ©1989-2015 Lauterbach GmbH

    RTP.PortClock  Configure RTPCLK

    see command RTP.PortClock  in 'RAM Trace Port' (trace_rtp.pdf, page 11)

    RTP.PortSize Size of RTP data port

    see command RTP.PortSize in 'RAM Trace Port' (trace_rtp.pdf, page 10)

    RTP.Register Display the RTP register

    see command RTP.Register in 'RAM Trace Port' (trace_rtp.pdf, page 10)

    RTP.RESet Resets RTP settings

    see command RTP.RESet in 'RAM Trace Port' (trace_rtp.pdf, page 11)

    RTP.state Display RTP setup

    see command RTP.state in 'RAM Trace Port' (trace_rtp.pdf, page 12)

    RTP.TraceMode tbd.

    see command RTP.TraceMode in 'RAM Trace Port' (trace_rtp.pdf, page 13)

    RTP.TraceMode.RAM.SECTion Configures a trace region

    see command RTP.TraceMode.RAM.SECTion in 'RAM Trace Port' (trace_rtp.pdf, page 13)

    RTP.TraceMode.TraceExclude Invert all trace regions

    see command RTP.TraceMode.TraceExclude in 'RAM Trace Port' (trace_rtp.pdf, page 14)

    http://trace_rtp.pdf/http://trace_rtp.pdf/http://trace_rtp.pdf/http://trace_rtp.pdf/http://trace_rtp.pdf/http://trace_rtp.pdf/http://trace_rtp.pdf/http://trace_rtp.pdf/http://trace_rtp.pdf/http://trace_rtp.pdf/http://trace_rtp.pdf/http://trace_rtp.pdf/http://trace_rtp.pdf/http://trace_rtp.pdf/http://trace_rtp.pdf/http://trace_rtp.pdf/

  • 8/18/2019 General Ref r

    23/48

    General Commands Reference Guide R   23 RTP ©1989-2015 Lauterbach GmbH

  • 8/18/2019 General Ref r

    24/48

    General Commands Reference Guide R   24 RTS ©1989-2015 Lauterbach GmbH

    RTS

    RTS Real-time profiling (RTS)

    Real-time profiling (RTS) is a trace mode that processes the trace data being recorded from the target

    while the target is running. This is in contrast to the “classical flow trace” (accessed via the  command) which uploads and processes the trace data only after the target stopped.

    The operation mode of RTS is controlled by the commands RTS.ON (enabled), RTS.OFF (disabled), and

    RTS.LOAD. The states enabled  / disabled control which source of trace data is analyzed by the commands

    COVerage and ISTATistic.

    • If RTS is enabled , the trace data is taken from the RTS database.

    • If RTS is disabled , the trace data is taken from the FIFO memory of the POWER TRACE module.

    The following figure provides an overview of the sources of trace data accessed by various commands.

    * With a FIFO memory of up to 4GB.** The maximum database size depends on the disk size of the host computer.

    RTS.LOAD mounts an RTS file, so that the above commands operate on the file data instead of on live

    recorded data. To create an RTS file, enable one of the options of RTS.FileMode while recording trace datain mode RTS.ON.

    For more information on host system requirements, system setup and for a quick start guide, see ”ARM-ETM RTS User’s Guide” (rts_user.pdf).

    See also

    ■  COVerage  ■  RTS.COVerage  ■  RTS.FILE  ■  RTS.FileCompression 

    ■  RTS.FileLimit  ■  RTS.FileMode  ■  RTS.Init  ■  RTS.ISTATistic 

    ■  RTS.List  ■  RTS.ListNesting  ■  RTS.LOAD  ■  RTS.NestingMode 

    ■  RTS.OFF  ■  RTS.ON  ■  RTS.PROfile  ■  RTS.RESet 

    ■  RTS.state  ■  RTS.STATistic  ■  RTS.StopOnError  ■  RTS.StopOnFifofull 

    ■  RTS.TASKMode  ■  RTS.TImeMode  ❏  RTS.ERROR()  ❏  RTS.RECORDS() 

    ▲  ’Release Information’ in ’Release History’

    RTSenabled?

    NO

    RTSDatabase**

    POWER TRACEmodule*

    .List 

    .STATistic

    (...)

    RTS.List 

    RTS.ListNesting

    RTS.STATistic

    COVerageISTATistic

    YES

    http://general_ref_t.pdf/http://general_ref_c.pdf/http://general_ref_i.pdf/http://rts_user.pdf/http://rts_user.pdf/http://rts_user.pdf/http://general_ref_c.pdf/http://general_func.pdf/http://general_func.pdf/http://release.pdf/http://general_ref_c.pdf/http://general_ref_i.pdf/http://release.pdf/http://rts_user.pdf/http://rts_user.pdf/http://general_func.pdf/http://general_func.pdf/http://general_ref_c.pdf/http://general_ref_i.pdf/http://general_ref_c.pdf/http://general_ref_t.pdf/http://general_ref_i.pdf/http://general_ref_c.pdf/

  • 8/18/2019 General Ref r

    25/48

    General Commands Reference Guide R   25 RTS ©1989-2015 Lauterbach GmbH

    RTS.COVerage Code coverage

    The (deprecated) RTS.COVerage command is an alias for the command COVerage for code coverage

    analysis. RTS supports the subset of the COVerage commands listed below:

    See also

    ■  RTS  ■  RTS.state 

    Format: RTS.COVerage

    List obsolete - use COVerage.List instead.

    ListModule obsolete - use COVerage.ListModule instead.

    ListFunc obsolete - use COVerage.ListFunc instead.

    ListLine obsolete - use COVerage.ListLine instead.

    Set obsolete - use COVerage.Set instead.

    Delete obsolete - use COVerage.Delete instead.

    NOTE: Another option for displaying the coverage information is the command

    Data.List  /COV

    When using this command, it is necessary to have some RTS.COVerage windowopen to keep the contents of the Data.List window updated.

    http://general_ref_c.pdf/http://general_ref_c.pdf/http://general_ref_c.pdf/http://general_ref_c.pdf/http://general_ref_c.pdf/http://general_ref_c.pdf/http://general_ref_c.pdf/http://general_ref_l.pdf/http://general_ref_l.pdf/http://general_ref_c.pdf/http://general_ref_l.pdf/http://general_ref_l.pdf/http://general_ref_c.pdf/http://general_ref_c.pdf/http://general_ref_c.pdf/http://general_ref_c.pdf/http://general_ref_c.pdf/http://general_ref_c.pdf/

  • 8/18/2019 General Ref r

    26/48

    General Commands Reference Guide R   26 RTS ©1989-2015 Lauterbach GmbH

    RTS.FILE Set the name for the RTS file

    RTS.FILE sets the name of the RTS used in the modes RTS.ON and RTS.LOAD. The default

    name is t32.rts. The current file name is displayed in the RTS.state window.

    In mode RTS.ON, the file name is used for creating the file in which trace data and analysis results arestored. This feature is controlled by the options of RTS.FileMode. 

    In mode RTS.LOAD, the file is mounted as source of trace data and analysis results.

    See also

    ■  RTS  ■  RTS.state 

    RTS.FileCompression Set compression level for the RTS file

    RTS.FileCompression sets the compression level for writing the RTS file. When choosing thecompression level, consider that a higher level requires more processing resources and therefore may

    cause that processing on the host cannot keep up with the data recorded. You may want to experimentto find the best compression rate for your application.

    Refer to the ”ARM-ETM RTS User’s Guide” (rts_user.pdf) for additional performance considerations.

    See also

    ■  RTS  ■  RTS.state 

    Format: RTS.FILE 

    Format: RTS.FileCompression OFF | LOW | MID | HIGH

    OFF No compression

    LOW Uses a fast compression algorithm

    MID Uses an algorithm with a good trade-off between speed and space reduction.

    HIGH Uses an algorithm with a high best compression rate and high requirements

    regarding processing resources

    http://rts_user.pdf/http://rts_user.pdf/http://rts_user.pdf/

  • 8/18/2019 General Ref r

    27/48

    General Commands Reference Guide R   27 RTS ©1989-2015 Lauterbach GmbH

    RTS.FileLimit Set size limit for the RTS file

    The command sets the maximum size allowed for an RTS file. If the maximum size is reached, streaming is

    stopped. When setting the file limit consider that the file still can grow in size and thus exceed the set limit,

    when closing streaming with RTS.OFF because the streaming data base is written to the file.

    The limit value is given in bytes and can have a positive or negative sign:

    • Positive value: the maximum size of the RTS file in bytes

    • Negative value: specifies the amount of space to leave on the disk before stopping streaming.The maximum file size is calculated based on the amount of available disk space at the time of

    starting streaming.

    The default setting is -1.000.000.000 i.e. stops streaming when less than a GB of space is left on the mass

    storage medium.

    See also

    ■  RTS  ■  RTS.state 

    Format: RTS.FileLimit  

    NOTE: The file limit and the name of the RTS file must be set before starting streaming.Later changes are not taken into account.

  • 8/18/2019 General Ref r

    28/48

    General Commands Reference Guide R   28 RTS ©1989-2015 Lauterbach GmbH

    RTS.FileMode Select the data to write to the RTS file

    RTS is able to write the recorded trace data and processing results to an RTS file. RTS.FileMode

    specifies which types of data are written to the RTS file.

    The desired file mode must be set before invoking RTS.ON because at this point the RTS file is created. Thefile is closed by RTS.OFF after writing all pending data.

    The following table list the options in ascending order of saved detail and required space:

    The commands RTS.List and RTS.ListNesting only work with RTS.FileMode.FULL. Also othercommands depend on the level of detail in the RTS file. The following table lists the RTS command

    families and the respective RTS.FileMode option required.

    See also■  RTS  ■  RTS.state 

    Format: RTS.FileMode OFF | Summary | Tasks | FULL

    OFF No RTS file is created.

    Summary The results of the program flow analysis and the contents of the virtualmemory are saved after the analysis.

    Tasks Task switch information is saved in addition to the data saved for “summary”.

    FULL The complete trace data is saved in addition to the data stored for the previousmodes. With the option FULL, trace files can reach various GBs of size and are

    only limited by the space available on the hard disk.

    Command Group Required RTS.FileMode

    RTS.STAT.*,RTS.ISTAT.*,Data.List /ISTAT

    With RTS.ON  : always available, also with RTS.FileMode.OFF With RTS.LOAD  : requires RTS.FileMode.Summary or higher

    RTS.Chart With RTS.ON and RTS.LOAD : requires RTS.FileMode.Tasks or highertbd.

    RTS.List,RTS.ListNesting

    With RTS.ON and RTS.LOAD : requires RTS.FileMode.FULL

    NOTE: When writing trace data to the RTS file, the RTS session needs to be closed with

    RTS.OFF to flush pending data to disk.

    http://general_ref_l.pdf/http://general_ref_l.pdf/

  • 8/18/2019 General Ref r

    29/48

    General Commands Reference Guide R   29 RTS ©1989-2015 Lauterbach GmbH

    RTS.Init Initialize RTS

    Initializes RTS by clearing the result data base and internal data structures. In particular the command

    also clears the data bases for ISTATistic and COVerage.

    RTS.Init does not reset the processing options like RTS.RESet.

    See also

    ■  RTS  ■  RTS.state 

    RTS.ISTATistic Statistics regarding instruction execution

    RTS.ISTATistic implements the ISTATistic functionality for RTS.

    The .ISTATistic commands work on a data base of coverage information concerning individualmachine instructions. This is in contrast to the RTS.STATistic command working on the results of theanalysis of the function call patterns.

    While RTS is active (mode RTS.ON), the ISTAT result data base and all dependent ISTATistic viewsare updated when new trace data becomes available because the target is executing code.

    The command RTS.ISTATistic.List creates a view on the data base with the granularity of sequentiallyexecuted code blocks (the code blocks defined by waypoints) and is agnostic of symbols or lines of sourcecode. For each code block, a number of metrics like execution time, code coverage in percent, clock cyclesused are shown.

    Format: RTS.Init

    Format: RTS.ISTATistic   |   

     :

    ListListModuleListFuncListLine

     :

    DeleteSet

    http://general_ref_i.pdf/http://general_ref_c.pdf/http://general_ref_i.pdf/http://general_ref_i.pdf/http://general_ref_c.pdf/http://general_ref_i.pdf/

  • 8/18/2019 General Ref r

    30/48

    General Commands Reference Guide R   30 RTS ©1989-2015 Lauterbach GmbH

    The commands RTS.ISTATistic.ListModule, RTS.ISTATistic.ListFunc, RTS.ISTATistic.ListLine eachcreate a tree view on the data base accumulating the respective values for the following source codeentities:

    • Modules (usually a compilation unit like an object file or a library),

    • Functions or

    • Source lines.

    This forms a hierarchical structure that can be displayed in a tree because a source line is part of a functionwhich in turn is member of a module. Accordingly the only difference between these functions is, whichbranches of the tree are initially open.

    The following table lists the view options.

    The options Delete and Set allow to manually modify the contents of the ISTAT data base:

    For further information please refer to .ISTATistic.

    See also

    ■  RTS  ■  RTS.state 

    List Creates a view with the granularity of executed code blocks.

    ListModule Creates a view showing statistics data for modules, with the option to open thetree to inspect functions and source lines. The values shown for modules are

    those accumulated from all its functions (and consequently all its source lines).

    ListFunc Creates a view showing statistics data for functions

    ListLine Creates a view showing statistics data for source lines

    Delete Delete the coverage information for an address or address range from theISTAT data base, therefore essentially marking the area as not executed.

    Set Marks an address or address range as executed in the ISTAT data base.

    NOTE: Another option for displaying the coverage information is the command

    Data.List  /ISTAT

    When using this command, it is necessary to have some RTS.ISTAT window opento keep the contents of the Data.List window updated.

    http://general_ref_l.pdf/http://general_ref_l.pdf/

  • 8/18/2019 General Ref r

    31/48

    General Commands Reference Guide R   31 RTS ©1989-2015 Lauterbach GmbH

    RTS.List List recorded trace data

    RTS.List shows the recorded trace data.

    In contrast to the other trace modes, in mode RTS.ON, the contents is updated while the target is running.

    As well in mode RTS.ON as in mode RTS.LOAD, the command RTS.List works on the data read from anRTS file (rather than the analyzer buffer). As the size of the file is only limited by the hard disk, RTS.List works on virtually unlimited amounts of trace data.

    Therefore RTS.List requires the option RTS.FileMode.FULL.

    For a description of the options please refer to the command .List.

    See also

    ■  RTS  ■  RTS.state 

    Format: RTS.List   

     : formatsoptionsDEFaultALLcpulines

    ListMARKSPARESTREAMDIAG  

    CAVEAT: This feature is not yet supported with the PTM trace protocol.

    Note: The Trace.List command is available also in mode RTS.ON. However, it will onlydisplay data, when the target is stopped and after RTS has processed all pendingdata. The difference is that the command Trace.List shows the data available in

    the analyzer's buffer (a maximum of 4GB) while RTS.List works on the trace datain the RTS file.

    The command RTS.List is not designed to work with data that contains errors. Forlocalizing errors in the trace data stream use Trace.List instead. For details, seethe section “Avoiding and Fixing Processing Errors” in ”ARM-ETM RTSUser’s Guide” (rts_user.pdf).

    http://general_ref_t.pdf/http://general_ref_t.pdf/http://general_ref_t.pdf/http://general_ref_t.pdf/http://rts_user.pdf/http://rts_user.pdf/http://rts_user.pdf/http://rts_user.pdf/http://rts_user.pdf/http://general_ref_t.pdf/http://general_ref_t.pdf/http://general_ref_t.pdf/http://general_ref_t.pdf/

  • 8/18/2019 General Ref r

    32/48

    General Commands Reference Guide R   32 RTS ©1989-2015 Lauterbach GmbH

    RTS.ListNesting Display function call nesting

    Displays the recorded trace data in a way that the nesting of function calls is outlined.

    RTS.ListNesting requires the options RTS.FileMode.FULL and RTS.NestingMode.TREE.

    See .ListNesting for more details and a description of the options.

    See also

    ■  RTS  ■  RTS.state 

    Format: RTS.ListNesting   

     : formatsoptionsDEFaultALLcpulines

    ListMARKSPARESTREAMDIAG  

    CAVEAT: This feature is not yet supported with the PTM trace protocol.

  • 8/18/2019 General Ref r

    33/48

    General Commands Reference Guide R   33 RTS ©1989-2015 Lauterbach GmbH

    RTS.LOAD Mount a file as trace source

    Configures the debugger to use the trace data from a pre-recorded RTS file (rather than from the analyzer).Therefore all analysis commands (RTS.ISTATistic, RTS.STATistic, RTS.List, ... ) operate on the data fromthe file.

    Using a file for supplying trace data is possible because conceptually all trace commands work on so-called trace sources i.e. on entities providing trace data. Examples for trace sources are a POWERTRACEdevice providing “live” trace data, a RAM area (see RTP) or a file containing previously stored trace data.

    If RTS.LOAD is executed with a file name parameter, it is set as default file name (as with RTS.FILE) andthen mounted. Without a parameter, the current file name is used.

    In mode RTS.LOAD some or all of the analysis features are available, depending on the data stored in theRTS file (see RTS.FileMode for details). However note, that only the final result is shown e.g. the codecoverage at the end of program execution.

    The options like RTS.FunctionMode, RTS.TImeMode, ... are taken from the RTS file and cannot be setmanually. Also the radio button for RTS.ON is disabled while in “load mode” in order to prevent accidentallyoverwriting the existing RTS file. For leaving load mode, switch to RTS.OFF which will enable all options.

    For a usage example see the ”ARM-ETM RTS User’s Guide” (rts_user.pdf)

    See also

    ■  RTS  ■  RTS.state 

    Format: RTS.LOAD  [ ] 

    name of the file to mount as trace source and to set as default name 

    NOTE: For using RTS.LOAD it is necessary to load the program’s symbols (e.g. via

    Data.LOAD.ELF ... /NoCODE).

    http://trace_rtp.pdf/http://rts_user.pdf/http://rts_user.pdf/http://rts_user.pdf/http://trace_rtp.pdf/

  • 8/18/2019 General Ref r

    34/48

    General Commands Reference Guide R   34 RTS ©1989-2015 Lauterbach GmbH

    RTS.NestingMode Set type of program flow analysis

    Defines the type of program flow analysis the debugger performs:

    See also

    ■  RTS  ■  RTS.state 

    Format: RTS.NestingMode FLAT | TREE

    FLAT Only generates program coverage information regarding individual machineinstructions. As FLAT mode does not analyze the call graph it requires lessprocessing resources than nested mode.The results of the analysis are displayed via the RTS.ISTATistic command.

    TREE Analyzes the program’s call graph in addition to the coverage information asdone in mode FLAT.

    The results of the analysis are displayed via the RTS.STATistic command.

  • 8/18/2019 General Ref r

    35/48

    General Commands Reference Guide R   35 RTS ©1989-2015 Lauterbach GmbH

    RTS.OFF Deactivate real-time profiling

    Ends an RTS session and stops recording new data.

    If used with an RTS file (see RTS.FileMode), flushes pending data and processing results to disk. This mayrequire some time to complete.

    See also

    ■  RTS  ■  RTS.state 

    RTS.ON Activate real-time profiling

    Enables real-time profiling and prepares the debugger for processing trace data. The command RTS.ONshould be invoked before starting the target so the debugger can synchronize to the beginning of the tracedata stream.

    If the option RTS.FileMode is enable, the command creates the RTS file. The name of the RTS file is setusing RTS.FILE. By convention the file name should end with the extension “.RTS”.

    If necessary, RTS.ON creates a backup of a previous file with the same name by changing the extension to*.bak.

    Regarding information how to use the file, see RTS.LOAD and the”ARM-ETM RTS User’s Guide” (rts_user.pdf).

    See also

    ■  RTS  ■  RTS.state 

    Format: RTS.OFF

    NOTE: When the RTS file does not contain sensible data (e.g. in the case of an RTS.ON followed immediately by RTS.OFF without processing any data), RTS.OFF deletesthe superfluous RTS file. This avoids overwriting an older, potentially important*.bak file at the next RTS.ON.

    Generally for important data, it is advisable to make a copy of the last RTS file or

    rename it immediately after ending the RTS sessions.

    Format: RTS.ON

    http://rts_user.pdf/http://rts_user.pdf/http://rts_user.pdf/http://rts_user.pdf/http://rts_user.pdf/

  • 8/18/2019 General Ref r

    36/48

    General Commands Reference Guide R   36 RTS ©1989-2015 Lauterbach GmbH

    RTS.PROfile Display performance characteristics charts

    Displays a window charting the occurrence of events on the vertical axis versus the elapsed time on thehorizontal axis.

    Multiple events (up to three) can be displayed in a single window. In this case the events are displayed using

    the base colors red, green and blue, including “mixed” colors where ranges overlap. The events areassigned colors according to their position in the command line:

    • 1st parameter : red• 2nd parameter : green

    • 3rd parameter : blue

    The following table explains the event options:

    See also■  RTS  ■  RTS.state 

    Format: RTS.PROfile [{ }]  

     :

    MIPSREADSWRITESTaskSwitches

    MIPS Number of instructions executed; the term “MIPS” is slightly misleading.

    READS Number of memory read operations executed by the core

    WRITES Number of memory write operations executed by the core

    TaskSwitches Number of task switches performed.

    Use the parameter to define the update interval (e.g. 0.5s for two updatesper second).

  • 8/18/2019 General Ref r

    37/48

    General Commands Reference Guide R   37 RTS ©1989-2015 Lauterbach GmbH

    RTS.RESet Restore default settings and initialize RTS

    RTS.RESet restores the default settings (like RTS.TImeMode.OFF, RTS.FileMode.OFF, ...), and similar

    to RTS.Init clears the result data base and re-initializes RTS by resetting all internal data structures.

    See also

    ■  RTS  ■  RTS.state 

    RTS.state Open status and control window

    The command RTS.state (short form RTS) opens the RTS status and control window:

    This window displays the current status of the RTS system, allows to configure the most important

    options and gives access to various analysis options through the buttons at the left side. In the followingwe only describe the fields of the box “utilization”. For a description of the other elements please refer tothe documentation of the respective commands (e.g. for the box NestingMode refer to the command

    RTS.NestingMode).

    The fields under utilization have the following meaning:

    • The colored bar represents the “fill level” of the buffer holding of data awaiting processing. Whenthe buffer overflows, processing will fail. The number is the amount of pending data in MBs.

    • state: the state of RTS (yellow: waiting for synchronization pattern in the trace data stream;

    green: recording and analyzing trace data; red: an error occurred; blue: not tracing)

    • data size: the amount of processed trace data

    Format: RTS.RESet

    Format: RTSRTS.state

  • 8/18/2019 General Ref r

    38/48

    General Commands Reference Guide R   38 RTS ©1989-2015 Lauterbach GmbH

    The field errors displays type of the latest error in plain text and the total accumulated number oferrors of any type. The following errors are handled:

    • no access to code : the decoder failed to read the opcodes necessary for decoding the trace

    data. Usually this is caused by not copying a range of program code to the debugger’s VM.

    • out of memory 

    • stack overflow, stack underflow  : when tracking the program’s calling hierarchy (usingRTS.NestingMode.TREE), the debugger maintains information about invocations on an internal

    stack. The error message is output, when this stack overflows or underflows.

    • illegal cancel : a cancel message was found in the trace data stream that should not bethere. Applicable only for the ETMV3 protocol.

    • flow error : the trace data does not match the executed program. This can be caused byphysical transmission errors of the trace data (bad signal quality on the trace port) or becausesome executed code is missing in the debugger’s VM. Even a single missing or incorrect opcodecan cause this problem.

    • vtrace error :

    • fatal error :

    See also

    ■  RTS  ■  RTS.COVerage  ■  RTS.FILE  ■  RTS.FileCompression 

    ■  RTS.FileLimit  ■  RTS.FileMode  ■  RTS.Init  ■  RTS.ISTATistic 

    ■  RTS.List  ■  RTS.ListNesting  ■  RTS.LOAD  ■  RTS.NestingMode 

    ■  RTS.OFF  ■  RTS.ON  ■  RTS.PROfile  ■  RTS.RESet 

    ■  RTS.STATistic  ■  RTS.StopOnError  ■  RTS.StopOnFifofull  ■  RTS.TASKMode 

    ■  RTS.TImeMode  ❏  RTS.ERROR()  ❏  RTS.RECORDS() 

    http://general_func.pdf/http://general_func.pdf/http://general_func.pdf/http://general_func.pdf/

  • 8/18/2019 General Ref r

    39/48

  • 8/18/2019 General Ref r

    40/48

    General Commands Reference Guide R   40 RTS ©1989-2015 Lauterbach GmbH

    RTS.StopOnError Configure behavior regarding minor errors

    The option StopOnError (read “stop on minor errors”) controls the behavior of RTS in case of minor

    errors like Flow Errors or “no access to code” errors. For more serious errors (out of memory, ...) the RTS

    decoder always stops processing.

    See also

    ■  RTS  ■  RTS.state 

    RTS.StopOnFifofull Configure behavior regarding FIFO overflows

    The option StopOnFifoFull controls the behavior of RTS in case of overflows of the target’s FIFOs.

    See also

    ■  RTS  ■  RTS.state 

    Format: RTS.StopOnError [ON | OFF]

    NOTE: The analysis mode RTS.NestingMode.TREE is rather delicate regarding errorsin the trace data stream as missing calls or return-from-subroutine-operationscan disrupt the analysis of the program flow in a way that cannot be recoveredfrom. Therefore it is important to calibrate the preprocessor using the autofocus

    feature.

    Format: RTS.StopOnFifofull [ON | OFF]

    NOTE: The analysis mode RTS.NestingMode.TREE is rather delicate regarding gapsin the trace data stream as missing calls or return-from-subroutine-operationscan disrupt the analysis of the program flow in a way that cannot be recoveredfrom. Therefore it is important to calibrate the preprocessor using the autofocus

    feature.

  • 8/18/2019 General Ref r

    41/48

    General Commands Reference Guide R   41 RTS ©1989-2015 Lauterbach GmbH

    RTS.TASKMode Configure task analysis

    Defines if the analysis considers task information or not.

    In the modes STATIC and DYNAMIC, the task switch information in the trace data stream is used toattribute executed opcodes to the correct task.

    See also

    ■  RTS  ■  RTS.state 

    Format: RTS.TASKMode OFF | STATIC | DYNAMIC

    OFF The debugger ignores information about task switches in the trace stream.

    STATIC The information regarding (all relevant) tasks is retrieved at the beginning of theanalysis from the RTOS awareness. Tasks that are created later are notincluded in the analysis.

    The feature is under development.

    DYNAMIC The information regarding newly created and terminated tasks is retrieved

    dynamically from the RTOS awareness while the system runs.

    The feature is under development.

  • 8/18/2019 General Ref r

    42/48

    General Commands Reference Guide R   42 RTS ©1989-2015 Lauterbach GmbH

    RTS.TImeMode Configure analysis of program execution timing

    Defines the type of real-time (wall-clock time) information that is gathered and analyzed: 

    See also

    ■  RTS  ■  RTS.state 

    Format: RTS.TImeMode OFF | Sampling | CycleAccurate

    OFF no real-time information is generated. Use this for plain code coverage andtrace functions.

    Sampling Activates a coarse timestamp that is created by the Autofocus preprocessor.It generates very little overhead of trace data at the cost of a lower resolutionthan cycle-accurate tracing. The timestamp is created approximately every1000 cycles of the trace clock.

    CycleAccurate Uses the cycle-accurate mode of the chip (e.g. ETMV3 cycle accuratemode). If the amount of generated trace in cycle-accurate mode is too big,

    Sampling may be an alternative.

    For using cycle accurate mode, it is necessary to inform the debugger about thetargets CPU clock using the command .CLOCK.

    CAVEAT: Currently sampling mode is not supported for Coresight systems.

    http://general_ref_t.pdf/http://general_ref_t.pdf/

  • 8/18/2019 General Ref r

    43/48

    General Commands Reference Guide R   43 RunTime ©1989-2015 Lauterbach GmbH

    RunTime

    RunTime Runtime measurement

    The RunTime command group and the RunTime() functions allow to measure the time that the target

    executed code i.e. the so-called “runtime”. The runtime starts with the target reset and increments while thetarget executes program code. The target runtime is frozen, while the target is stopped.

    There are different methods of measuring the runtime with different accuracies. The available methods

    depend on the target hardware and the debug interface (debugger-based vs. trace-based or emulator-based).

    See also

    ■  RunTime.Init  ■  RunTime.refA  ■  RunTime.refB  ■  RunTime.RESet 

    ■  RunTime.state  ❏  RunTime.ACCURACY()  ❏  RunTime.ACTUAL()  ❏  RunTime.LAST() 

    ❏  RunTime.LASTRUN()  ❏  RunTime.REFA()  ❏  RunTime.REFB() 

    ▲  ’Release Information’ in ’Release History’

    Runtime Measurements Using the Debugger

    The RunTime counter allows to measure the program execution times between two breakpoints. Theaccuracy of the measurement depends on the features provided by the debug interface. The measurementerror is displayed as tooltip text.

    Or by the function

    RunTime.ACCURACY()

    http://general_func.pdf/http://general_func.pdf/http://general_func.pdf/http://general_func.pdf/http://general_func.pdf/http://general_func.pdf/http://release.pdf/http://general_func.pdf/http://release.pdf/http://general_func.pdf/http://general_func.pdf/http://general_func.pdf/http://general_func.pdf/http://general_func.pdf/http://general_func.pdf/http://general_func.pdf/

  • 8/18/2019 General Ref r

    44/48

    General Commands Reference Guide R   44 RunTime ©1989-2015 Lauterbach GmbH

    There is a number of different CPU and debugger features related to measuring runtime. The following tablegives an overview. For details, see further down.

    “CPU running” signal

    Some processor architectures provide a “CPU running” signal within the debug interface (e.g. DBACK forARM7/ARM9). This feature allows an exact measurement by the RunTime counter.

    Debug Status Messages

    Most NEXUS interfaces provide Debug Status Messages which indicate the start/stop of the program

    execution. The maximum measurement error is calculated as follows:

     clock cycles

    While MCKOFactor is the value entered via the command SYStem.Option MCKO  .

    Hardware signal indicating “CPU stopped”

    Some processor architectures provide a “CPU stopped” signal within the debug interface (e.g. DE for theDSP56K). This feature allows an exact stop of the RunTime counter, but the start of the RunTime countercan´t be synchronized exactly with the start of the program execution.

    Polling

    For most processor architectures the RunTime counter is started/stopped by TRACE32. Thus themeasurement can’t be exactly synchronized with the CPU start/stop.

    The polling rate can be set with the SYStem.POLLING command. Any polling interval smaller than 1 ms isignored.

    Feature RunTime counteris started...

    Runtime counter isstopped...

    Accuracy

    “CPU running”

    signal

    ...after detecting the

    “CPU running” signal

    ... after deassertion of the

    “CPU running” signal

    High

    NEXUS DebugStatus Message

    ... after receiving the“Debug Mode Left”message

    ... after receiving the“Debug Mode Entered”message

    High

    “CPU stopped”signal

    ...by TRACE32 afterstarting the CPU

    ...with the activation of the“CPU stopped” signal

    RunTime counterstart is imprecise

    Polling the PC ...by TRACE32 afterstarting the CPU

    ...by TRACE32 after CPU isstopped

    RunTime counterstart and stop areimprecise

    SizeOfMessageFifo   2   MCKOFactor    

    http://general_ref_s.pdf/http://general_ref_s.pdf/

  • 8/18/2019 General Ref r

    45/48

    General Commands Reference Guide R   45 RunTime ©1989-2015 Lauterbach GmbH

    Runtime Measurements Using TRACE32-ICE / TRACE32-FIRE

    The runtime analyzer allows to check program execution times between two breakpoints. Therefore aindependent timing analyzer is available to the user. The resolution of runtime measurement is 100 ns. Tworeference points may be set in order to evaluate time differences. Total time, as well as the previousemulation command execution time, is automatically recorded. The differences between the individualreference points are displayed in tabular form. Only the execution time of the foreground program is

    measured. The execution time of the background program is not taken into consideration (only TRACE32-

    ICE).

    Measurement errors due to break sequence

    As a result of the break sequence of each individual emulator an absolute timing error of approximately0.5 … 5 µs occurs. This timing error is dependent upon the CPU's clock frequency and the type of theemulation adapter used. The timing error can only precisely be determined by using time-stamp unit of thelogic analyzer. For complex CPUs, additional timing errors in single-step operation can occur during cache

    memory fill. The timing error can be determined to some extent once a program has been executed byexecuting first one, and then a set of NOP commands.

    Timing errors due to dual-port accessIn Wait mode, dual-port access requires up to 1% of total computing time; in Request mode, this can beincreased up to 3%. These values are valid for average clock frequencies and when using dynamic memory.By using static memory only, these values will be reduced to one-third. If operating in Denied or Nodelay (GAP, Refresh, Prefetch) mode, no computing will be needed for dual-port access.

    http://general_ref_s.pdf/http://general_ref_s.pdf/http://general_ref_s.pdf/http://general_ref_s.pdf/http://general_ref_s.pdf/http://general_ref_s.pdf/http://general_ref_s.pdf/http://general_ref_s.pdf/

  • 8/18/2019 General Ref r

    46/48

    General Commands Reference Guide R   46 RunTime ©1989-2015 Lauterbach GmbH

    Functions related to RunTime

    The following functions can be used to obtain various runtime-related values. All the functions return theabsolute time the target executed (the “runtime”) since the latest SYStem.Up or RunTime.Init command.

    • RunTime.ACTUAL() returns the runtime elapsed until the current moment.

    • RunTime.LAST() returns the time of the latest start  of program execution e.g. caused by a single

    Step or Go command.

    • RunTime.REFA() returns the reference value A. There is a homonymous command to set thevalue.

    • RunTime.REFB() returns the reference value B. There is a homonymous command to set thevalue.

    • RunTime.LASTRUN() returns the length of the last execution period (e.g. of a single step or thetime between a Go and a Break ). The value is calculated by:

    • RunTime.ACCURACY() returns a measure of the inaccuracy of the runtime values (depends onthe measurement method used).

    RunTime.Init Clear timers

    Sets all timers and reference values to zero.

    See also

    ■  RunTime  ■  RunTime.state 

    ▲  ’Emulator Functions’ in ’FIRE User’s Guide’

    ▲  ’Execution Time Measurement’ in ’ICE User’s Guide’

    &difftime=CONV.TIMEUSTOINT(RUNTIME.ACTUAL()-RUNTIME.LAST())

    Format: RunTime.Init

    http://general_ref_s.pdf/http://general_ref_s.pdf/http://general_ref_g.pdf/http://general_ref_g.pdf/http://general_ref_b.pdf/http://fire_user.pdf/http://ice_user.pdf/http://ice_user.pdf/http://fire_user.pdf/http://general_ref_b.pdf/http://general_ref_g.pdf/http://general_ref_g.pdf/http://general_ref_s.pdf/http://general_ref_s.pdf/

  • 8/18/2019 General Ref r

    47/48

  • 8/18/2019 General Ref r

    48/48

    RunTime.state Display results

    Displays the RunTime counter window with a matrix of values related to runtime measurements.

    Each cell of the matrix shows the difference between the value denoted by the column header and the valuedenoted by the row header . As the first line’s row header is “zero”, the line shows the effective values e.g.

    (refA - 0), (refB - 0), ... The cell at (column refB / row ref A) shows refB - refA i.e. the runtime between bothvalues.

    Reference values can be set to the current runtime (“actual”) by double-clicking the appropriate element.

    See also

    ■  RunTime  ■  RunTime.Init  ■  RunTime.refA  ■  RunTime.refB ■  RunTime.RESet  ❏  RunTime.ACCURACY()  ❏  RunTime.ACTUAL()  ❏  RunTime.LAST() 

    ❏  RunTime.LASTRUN()  ❏  RunTime.REFA()  ❏  RunTime.REFB() 

    ▲  ’Emulator Functions’ in ’FIRE User’s Guide’

    ▲  ’Execution Time Measurement’ in ’ICE User’s Guide’

    ▲  ’Release Information’ in ’Release History’

    Format: RunTime.stateRunTime.view (deprecated)

    Time since the latest program start

    Total time since the lastSYStem.Up or RunTime.Init

    http://general_func.pdf/http://general_func.pdf/http://general_func.pdf/http://general_func.pdf/http://general_func.pdf/http://general_func.pdf/http://fire_user.pdf/http://ice_user.pdf/http://release.pdf/http://general_ref_s.pdf/http://release.pdf/http://ice_user.pdf/http://fire_user.pdf/http://general_func.pdf/http://general_func.pdf/http://general_func.pdf/http://general_func.pdf/http://general_func.pdf/http://general_func.pdf/http://general_ref_s.pdf/