A Software Guide to Universal Debug Engine for C166, ST10, XC166, XE166 XC2000, Tricore, Powerpc ARM, Xscale, Superh
Total Page:16
File Type:pdf, Size:1020Kb
A Software Guide to Universal Debug Engine for C166, ST10, XC166, XE166 XC2000, TriCore, PowerPC ARM, XScale, SuperH Integrated Development Environment for 32-bit TriCore, PowerArchitecture, Cortex, ARM7, ARM9, ARM11, XScale, SuperH derivatives for 16-bit C166, ST10, XC166, XC2000, XE166, C166CBC derivatives PLS 1991-2013 V 4.00.02.02 This manual contains 167 pages. Contact us at: EMail: [email protected] [email protected] WWW: http://www.pls-mc.com PLS Programmierbare Logik & Systeme GmbH PLS Development Tools Technologiepark Lauta 1250 Oakmead Parkway, Suite#210 D - 02991 Lauta Sunnyvale CA, 94085 Germany U.S.A. Phone: + 49 35722 384 - 0 + 1 408 451 - 8408 Fax: + 49 35722 384 - 69 + 1 408 501 - 8808 Toll Free: + 1 877 - 77DEBUG All rights reserved. No part of this manual may be reproduced or may be transmitted in any form or by any means without prior written permission of PLS Programmierbare Logik & Systeme GmbH. The information in this manual is subject to change without notice, no responsibility is assumed for its use. Universal Debug Engine is a trademark of PLS Programmierbare Logik & Systeme GmbH. Adobe is a registered trademark of Adobe Systems Incorporated. TriCore™ is a trademark of Infineon AG. ARM7™, ARM9™, ARM11™, Cortex™ are trademarks of ARM . PowerPC is a registered trademark of IBM Corporation. Power Architecture™ is a trademark of Power.org. Windows XP, Windows Vista, Windows 7, Windows 8 are trademarks of Microsoft Corporation. Pentium and Core™ are trademarks of Intel Corporation. XScale , Celeron are registered trademarks of Intel Corporation. Athlon™ is a trademark of Advanced Micro Devices, Inc. SuperH™ is a trademark of Renesas Technology Corporation. All other names and trademarks are the property of their respective owners. Contents Introduction 7 Overview 7 Feedback 7 Versions of UDE 8 Delivery Contents 9 System Requirements 11 Installing of Universal Debug Engine 12 Installation Notes - before you install UDE 12 Installing Hardware 13 Static Electricity Precautions 13 Demo Version for Starterkits (via JTAG) 14 Demo Version for Starterkits (via ASC Bootstrap loader) 15 Demo Version for Easy Kits (via DAS/USB-JTAG adapter) 16 compact Standard Version UAD2 (via JTAG) 17 pro Standard Version UAD2 and UAD2 (via JTAG) 18 pro Standard Version UAD2 and UAD2 (via DAP) 19 pro Standard Version UAD2 and UAD2 (via SWD) 20 + Standard Version UAD2 (via JTAG) 21 + Standard Version UAD2 (via DAP) 22 + Standard Version UAD2 (via SWD) 23 + Standard Version UAD3 (via JTAG) 24 Standard Version UAD2 (via ASC, SSC, CAN) 25 + Standard Version UAD2 (via ASC, SSC, CAN) 26 + Standard Version UAD2 (via 3Pin) 27 Standard Version fast-PC6x / fast-PC276 (via ASC/SSC) 28 Standard Version fast-PC6x / fast-PC276 (via CAN) 29 + Standard Version UAD2 (with Trace Support) 30 + Standard Version UAD3 (with Trace support) 31 UAD2-JTAG Protector 2 for UAD2 32 + UAD-JTAG Protector 2 for UAD2 33 Simulator Version (TSim) 34 Installing UDE Software 35 Working with the CD browser 35 Start the Installation 36 Driver Installation for Universal Access Device 37 UAD via standard parallel port interface 37 + UAD2 via IEEE1394 38 + UAD3 via IEEE1394b 39 pro + + UAD2, UAD2 , UAD2 , UAD3 via USB port 40 + + UAD2 , UAD3 via Ethernet TCP/IP 41 Driver Installation for USB-JTAG-Port 44 USB-JTAG-Port via USB port 44 Driver Installation for USB-Key (Sentinel USB SuperPro) 45 USB-Key via USB port 45 Driver Installation for fast-PC6x Card 46 fast-PC67C/PCI via PCI Bus Host PC 46 Driver Installation for Starterkit Version 47 JTAG Parallel Port via Standard Parallel port 47 Serial Port via Standard Serial Port 47 Serial Port via USB-to-Serial Port 47 Introduction Overview 3 of 167 License Manager 48 Node-locked licensing 49 How to get the Host ID of UDE Installation 49 Setup of Node-Locked License File 51 Uninstalling or Reinstalling UDE 52 Trouble Shooting 53 Precautions 53 Latest Versions on World Wide Web 53 Known Issues with UDE 53 Getting Started 55 Examples delivered with UDE 55 A First Example with TriCore™ 56 Precautions 56 Starting Universal Debug Engine 56 Loading a TriCore Executable 58 Running and Stepping through the Application 59 Setting Breakpoints 59 CPU Registers 60 SFR Registers 61 Viewing Variables 61 Viewing Memory Locations 62 Leaving the Project 62 A Multi-Core Debugging Example with TriCore/PCP 63 Creating a New Workspace with changed configuration 63 Running the Program 64 HelloPCP Internals 64 A Multi-Core Debugging Example with TriCore2 AURIX 65 Creating a New Workspace 65 Preparing the debugger 65 Loading a multi-core Executable 66 Core selection 67 Single-core Breakpoints 67 Multi-core Breakpoints and Stepping 68 A Multi-Core GTM Debugging Example with PowerPC MPC5746M 69 Creating a New Workspace 69 Preparing the debugger 70 Loading a multi-core Executable 70 Core selection 71 Single-core Breakpoints 71 Multi-core Breakpoints and Stepping 72 Inspecting Multi-Channel-Sequencer (MCS) Channels 72 A TriCore MCDS Trace Example 74 Introduction 74 Target Configuration 74 Preparations 74 MCDS Trace 76 An Example with C166S V2 / XC16x via JTAG/OCDS L1 77 Starting with Universal Debug Engine 77 Loading and Starting of an Executable 77 Automatic Variables Refresh 77 Trigger Functions 78 An Example with MPC5567 via JTAG 79 Starting with Universal Debug Engine 79 Loading and Starting of an Executable 79 Automatic Variables Refresh 79 Trigger Functions 80 Hints for using the MPC55xx via JTAG 81 An example for Linux kernel and application debugging 82 Preparations 82 Create a new workspace 82 Load the kernel ELF file 83 4 of 167 Overview Introduction Substitute kernel path 83 Debug a syscall kernel function 84 An Example for C166 debugging via 3Pin 85 Hardware Requirements 85 Useful hints for 3Pin Debugging 85 Monitor preparations 86 Starting the Universal Debug Engine 86 Setup Target Interface 87 Using the Simulated I/O channel 89 Creating new Target Configurations 90 Creating a new workspace 90 Invoking the Wizard 90 Select the controller derivative 91 Selecting Target Interface 91 Setup the Target Interface 92 Configuring the FLASH memory 93 Finish the wizard 94 Using the OCDS L2 Trace Board with the TriCore 95 Preparations 95 Recording the first Samples 95 Looking what happens when the Function exits 95 Measuring the Interval a Function is called 96 Conclusion 96 User's Guide 97 Introduction 97 Architecture of Universal Debug Engine 98 Using On-line Help 99 Project Management 100 Working with Projects 100 Creating a New Project 100 Select Target Configuration 101 Loading a Project 101 Saving Project Settings 101 Closing a Project 101 Command line options of UDE 102 Preparing a binary File 102 Compiler Support 102 Downloading the binary File 104 Examples of Debug Communication Channels 104 Selection of a Hardware Communication Channel 105 Overview about the Monitor programs 106 Preparing the Communication 106 Connect the target system 108 Download the application 108 Viewing Program Code 108 Workspace 108 Program Window 109 Running a program 111 Inline Assembler 111 Viewing and Modifying Registers 112 Kinds of Register Views 112 CPU View 112 SFR View 113 HTML View based on the UDE Object Model 114 Watching Variables 115 Watch View 115 Watch Expressions 115 Adding Variables and Expressions using Select Watch Dialog 117 Locals View 119 Automatically variable content refresh 119 Stepping and Breakpoints 119 Introduction Overview 5 of 167 Overview 119 Following the program flow 119 Stop the program at a specified location 120 Breakpoint dialog 121 Breakpoint identifier 122 Viewing Memory Locations 123 Writing data to target 123 Updating data from target 123 Printing of memory locations 124 Viewing Data as Scientific Chart 124 Basic features of the Graphic Display Window 124 Using Expressions 124 Graphical Display Window Properties 125 Viewing Call Stack 125 Program Execution Time Measuring 126 Trace, Visualization and Analyzing 127 Trace Analyzing Features and Views 128 Trace Profiling as Statistical Chart 129 Trace Profiling as Flow Chart 132 Code Coverage 133 MCDS, Nexus, CoreSight, ETM, ETB, OCDS L2 Trace View 134 Signal Trace - Real-Time Graphical Monitoring 139 ITM Trace 141 Activating and Using Add-Ins 142 Activating an Add-In 142 Removing an Add-In 142 Triggered Transfer Recorder 143 FLASH / OTP Programming 144 Supported Functions 144 Basic Concept 144 Definition of external FLASH Memories 147 Definition of on-chip FLASH Memories 147 Definition of Memory Access Filters 148 Enabling the FLASH Programming 148 FLASH Programming 149 Setup FLASH Programming options 150 UDE CAN Recorder 151 Supported Functions 151 Enabling the CAN Recorder 151 Send and Record CAN Messages 151 UDE RTX Viewer 152 Supported Functions 152 Enabling the RTX Viewer 152 Using the RTX Viewer 152 UDE rcX Viewer 153 Supported Functions 153 Enabling the rcX Viewer 153 Using the rcX Viewer 153 Eclipse IDE for UDE 154 Prepare Eclipse IDE for UDE Integration Package 154 Launching UDE Debug Session in Eclipse IDE 156 Add UDE Sample Project to Eclipse Helios C/C++ IDE 158 UDE Object Model 160 Overview 160 Example for TriCore 160 User Definable Enhancements 161 Reference 163 Index 164 6 of 167 Overview Introduction Introduction Overview Thank you for choosing Universal Debug Engine (UDE) 4, one of the most powerful development workbenches available for the 16-bit architectures C166, ST10, XC166, XC2000, XE166, C166CBC, C166S V2 and the 32-bit TriCore™, PowerPC , Cortex™, ARM7™, ARM9™, ARM11™, XScale™ and SuperH™ derivatives. The software which you are about to install is the UDE Standard License software. Included with the full licensed version comes a high-speed communication hardware which speeds up downloading your application into the target system. It offers a flexible way of communication via various communication channels to the supported microcontroller. UDE offers Linux kernel and application debugging.