RealView ® DeveloperKit Extensions User Guide

Version 2.2

Table of Contents

About this book
Intended audience
Using this book
Typographical conventions
Further reading
Feedback on RealView Debugger
Feedback on this book
1. Introduction to RealView Debugger Extensions
1.1. About RealView Debugger extensions
1.1.1. Chapter 2 Tracing with RealView Debugger
1.1.2. Chapter 3 RTOS Support
1.2. Licensing
1.3. Supported platforms
1.4. Supported hardware
1.4.1. Hardware for tracing
1.4.2. Hardware for RTOS support
2. Tracing with RealView Debugger
2.1. About tracing with RealView Debugger
2.1.1. Requirements for tracing
2.1.2. Features for setting up the conditionsfor trace capture
2.1.3. About Profiling
2.1.4. Tracing with RealView Debugger commands
2.1.5. Available resources
2.2. Getting started
2.2.1. Using the examples
2.2.2. About the trace hardwaresetup
2.2.3. About the Analysis window
2.2.4. RealView Debugger tracingprocedure
2.2.5. Automatically connecting to an analyzeron target connection
2.2.6. Setting up new trace conditions ona running core
2.3. Configuring the ETM
2.3.1. Displaying the Configure ETM dialogbox
2.3.2. Configure ETM dialogbox interface components
2.3.3. Equivalent CLI command qualifiers
2.4. Tracepoints in RealView Debugger
2.4.1. Unconditional and conditional tracepoints
2.4.2. Tracepoint types
2.4.3. Setting trace ranges in conjunctionwith trace start and end points
2.5. Configuring trace capture
2.5.1. Setting up the global conditions fortrace capture
2.5.2. Automatic tracing without tracepoints
2.5.3. About tracing with tracepoints
2.5.4. Setting tracepoints
2.5.5. Setting tracepoints on exception vectors
2.6. Setting unconditional tracepoints
2.6.1. Capturing instructions and data
2.6.2. Using the Set/Toggle Tracepoint ListSelection dialog box
2.6.3. Setting a trace range for selectedsource lines or disassembly
2.6.4. Setting unconditional tracepointswith the Set/Edit Tracepoint dialog box
2.7. Setting conditional tracepoints
2.7.1. Methods for setting conditional tracepoints
2.7.2. Capturing instructions and data
2.7.3. Common parameters for setting conditionaltracepoints
2.7.4. Using the Set/Edit Tracepoint dialogbox
2.7.5. Using the Trace on X after Y [and/orZ] dialog box
2.7.6. Using the Trace on X after Y executedN times dialog box
2.7.7. Using the Trace on X after A==B dialogbox
2.7.8. Using the Trace if A==B in X dialogbox
2.7.9. Chaining tracepoints
2.8. Managing tracepoints
2.8.1. Editing tracepoints
2.8.2. Copying tracepoints
2.8.3. Disabling tracepoints
2.8.4. Clearing tracepoints
2.8.5. Using tracepoint favorites
2.8.6. Finding source code correspondingto a tracepoint
2.9. Capturing trace output
2.9.1. Configuring trace capture requirements
2.9.2. Starting trace capture
2.10. Using the Analysis window
2.10.1. Displaying the Analysis window
2.10.2. Components of the Analysis window
2.10.3. Viewing trace information
2.10.4. Viewing source
2.10.5. Viewing profiling information
2.10.6. Configuring trace options
2.10.7. Configuring view options
2.10.8. Finding information
2.10.9. Filtering captured information
2.10.10. Saving and loading trace information
2.11. Mapping Analysis window options toCLI commands and qualifiers
2.11.1. File menu options
2.11.2. Edit menu options
2.11.3. View menu options
2.11.4. Find menu options
2.11.5. Filter menu options
2.12. Examples of using trace in RealView Debugger
2.12.1. About the examples
2.12.2. Finding the cause of a data abort
2.12.3. Capturing profilinginformation
2.12.4. Setting up a conditional tracepoint
3. RTOS Support
3.1. About Real Time Operating Systems
3.1.1. Debugging an RTOS application with RealView Debugger
3.2. Using RealView Debugger RTOS extensions
3.2.1. Enabling RTOS support
3.2.2. Creating a new RTOS-enabled connection
3.2.3. Configuring an RTOS-enabled connectionto reference a vendor-supplied .bcd file
3.2.4. Configuring an RTOS-enabled connectionwithout a vendor-supplied .bcd file
3.2.5. Managing configuration settings
3.3. Connecting to the target and loadingan image
3.3.1. Before connecting
3.3.2. Connecting from the Code window
3.3.3. Connecting to a running target
3.3.4. RTOS Exit Options
3.3.5. Interrupts when loading an image
3.3.6. Resetting OS state
3.3.7. Loading from the command line
3.4. Associating threads with views
3.4.1. Attaching and unattaching windows
3.4.2. The current thread
3.4.3. Using the Cycle Threads button
3.4.4. Working with the threadlist
3.5. Working with OS-aware images in theProcess Control pane
3.5.1. OS marker in the Process tab
3.5.2. Using the Thread tab
3.6. Using the Resource Viewer window
3.6.1. Displaying the Resource Viewer window
3.6.2. Working with RTOS resources
3.6.3. Resource Viewer window interface components
3.6.4. Using Action context menus
3.6.5. Interaction of RTOS resources and RealView Debugger
3.7. Debugging your RTOS application
3.7.1. About breakpoints
3.7.2. Setting breakpoints
3.7.3. Using the Set Address/Data Breakpointdialog box
3.7.4. Using the Break/Tracepoints pane
3.7.5. Stepping threads
3.7.6. Manipulating registers and variables
3.7.7. Updating your debug view
3.8. Using CLI commands
A. Setting up the Trace Hardware
A.1. ARM RealView Trace and RealView ICE
B. Setting up the Trace Software
B.1. ARM RealView Trace and RealView ICE
B.1.1. Installing and configuring RealViewTrace and RealView ICE
B.1.2. Adding a RealView ICE target vehicleand access-provider node

List of Figures

2.1. Trace hardware setup with trace capturehardware
2.2. Trace hardware setup with ETB
2.3. Analysis window
2.4. Prompt displayed on a running target(tracepoints)
2.5. Prompt displayed on a running target(global trace conditions)
2.6. The Configure ETM dialog box fornon-v3 architectures
2.7. The Configure ETM dialog box forETMv3
2.8. Trace start and end points with atrace range
2.9. List Selection dialog box for settingunconditional tracepoints
2.10. Set/Edit Tracepoint dialog box
2.11. Trace on X after Y [and/or Z] dialogbox
2.12. Trace on X after Y executed N timesdialog box
2.13. Trace on X after A==B dialog box
2.14. Trace if A==B in X dialog box
2.15. The Break/Tracepoints pane
2.16. Example of the Analysis window
2.17. Time measurement dialog box
2.18. Details view
2.19. Example of inferred registers
2.20. Profile tab
2.21. Example histogram
2.22. Example of call-graph information
2.23. Example call-graph data (Parent/Child%ages Relative to Whole Time)
2.24. Example call-graph data (Parent/Child%ages Relative to Function B=>E)
2.25. Example call-graph data (Parent/Child%ages Relative to Parent/Child B=>E)
2.26. Setting the size of the trace buffer
2.27. Defining processor speed
2.28. Finding a position match
2.29. Finding a time match
2.30. Finding a raw address match
2.31. Finding an address expression match
2.32. Finding a data value match
2.33. Finding a symbol name match
2.34. Filtering on a position match
2.35. Filtering on a time match
2.36. Filtering on a raw address match
2.37. Filtering on an address expressionmatch
2.38. Filtering on a data value match
2.39. Filtering on a symbol name match
2.40. Filtering on an access type match
2.41. Filtering on a percent time match
2.42. Setting a trigger point
2.43. Setting a trace range
2.44. Results displayed in the Trace tab
2.45. Interleaved source in Trace tab
2.46. Inferred registers in the Trace tab
2.47. Setting a trace start point
2.48. Results displayed in the Profiletab
2.49. Call-graph data displayed in theProfile tab
2.50. Call-graph data for Func_2
2.51. Summing profiling data over multipleruns
2.52. Trace on X after Y executed N timesdialog box
2.53. Completed conditional tracepointdialog box
2.54. Break/Tracepoints pane with conditionaltracepoints set
3.1. RealView Debugger and RTOS components
3.2. CONNECTION groups in the ConnectionProperties window
3.3. Specifying a new CONNECTION group
3.4. New connection in the ConnectionControl window
3.5. Referencing the RTOS .bcd file
3.6. RTOS group in the Connection Propertieswindow
3.7. ARM_config group in the ConnectionProperties window
3.8. Default group in the Connection Propertieswindow
3.9. RTOS Exit Options selection box
3.10. Example thread list
3.11. Example thread list in an attachedwindow
3.12. Thread selection box
3.13. OS marker initial state in the ProcessControl pane (HSD)
3.14. OS marker with loaded image in theProcess Control pane (HSD)
3.15. OS marker in the Process Controlpane (RSD)
3.16. Thread tab in the Process Controlpane
3.17. Resource Viewer showing thread details
3.18. Action argument prompt
3.19. RTOS Breakpoint Class selector
3.20. RTOS (RSD) breakpoints in the Break/Tracepointspane
3.21. RTOS (HSD) breakpoints in the Break/Tracepointspane
3.22. Stepping and stopping threads
A.1. Connections for RealView ICE andRealView Trace
B.1. Error when the configuration fileis not found
B.2. Selecting where to store the newconfiguration file
B.3. The RVConfig dialog box
B.4. Connection Properties window showLogic_Analyzer settings
B.5. Making a new group
B.6. Setting how to connect

Proprietary Notice

Words and logos marked with ® or ™ are registered trademarks or trademarksowned by ARM Limited. Other brands and names mentioned herein maybe the trademarks of their respective owners.

Neither the whole nor any part of the information containedin, or the product described in, this document may be adapted orreproduced in any material form except with the prior written permissionof the copyright holder.

The product described in this document is subject to continuousdevelopments and improvements. All particulars of the product andits use contained in this document are given by ARM in good faith.However, all warranties implied or expressed, including but notlimited to implied warranties of merchantability, or fitness forpurpose, are excluded.

This document is intended only to assist the reader in theuse of the product. ARM Limited shall not be liable for any lossor damage arising from the use of any information in this document,or any error or omission in such information, or any incorrect useof the product.


This document is Non-Confidential. The right to use, copyand disclose this document may be subject to license restrictionsin accordance with the terms of the agreement entered into by ARMand the party that ARM delivered this document to.

Product Status

The information in this document is final, that is for a developedproduct.

Revision History
Revision A January 2006 Releasefor RVDK v2.2 with Trace
Copyright © 2006 ARM Limited. All rights reserved. ARM DUI 0335A