Table of Contents
Preface
1 Introduction
1.1 Welcome to the World of eXpressDSP
1.2 Development Flow
2 Getting Started Quickly
2.1 Launching the Code Composer Studio Development Tools
2.1.1 Important Icons Used in Code Composer Studio
2.2 Creating a New Project
2.3 Building Your Program
2.4 Loading Your Program
2.5 Basic Debugging
2.5.1 Go to Main
2.5.2 Using Breakpoints
2.5.3 Source Stepping
2.5.4 Viewing Variables
2.5.5 Output Window
2.5.6 Symbol Browser
2.6 Introduction to Help
3 Target and Host Setup
3.1 Setting Up the Target
3.1.1 Code Composer Studio Setup Utility
3.1.1.1 Adding an Existing Configuration
3.1.1.2 Creating a New System Configuration
3.1.1.3 Creating Multiprocessor Configurations
3.1.1.4 Startup GEL Files
3.1.1.5 Device Drivers
3.1.2 Parallel Debug Manager
3.1.3 Connect/Disconnect
3.1.4 Status Bar
3.2 Host IDE Customization
3.2.1 Default Colors and Faults
3.2.2 Default Keyboard Shortcuts
3.2.3 Other IDE Customizations
4 Code Creation
4.1 Configuring Projects
4.1.1 Creating a Project
4.1.1.1 Adding Files to a Project
4.1.1.2 Removing a File
4.1.2 Project Configurations
4.1.2.1 Changing the Active Project Configuration
4.1.2.2 Adding a New Project Configuration
4.1.3 Project Dependencies
4.1.3.1 Creating Project Dependencies (Subprojects)
4.1.3.2 Project Dependencies Settings
4.1.3.3 Modifying Project Configurations
4.1.3.4 Sub-project configurations
4.1.4 Makefiles
4.1.5 Source Control Integration
4.2 Text Editor
4.2.1 Viewing and Editing Code
4.2.2 Customizing the Code Window
4.2.3 Using the Editor's Text Processing Functionality
4.2.4 Setting Auto-Save Defaults
4.2.5 Autocompletion, Tooltips and Variable Watching (CodeSense)
4.2.6 Using an External Editor
4.3 Code Generation Tools
4.3.1 Code Development Flow
4.3.2 Project Build Options
4.3.2.1 Setting Project-Level Build Options
4.3.2.2 Setting File-Specific Options
4.3.3 Compiler Overview
4.3.3.1 Interfacing with the Code Composer Studio IDE
4.3.4 Assembly Language Development Tools
4.3.5 Assembler Overview
4.3.6 Linker Overview
4.3.6.1 Text-Based Linker
4.3.7 C/C++ Development Tools
4.4 Building Your Code Composer Studio Project
4.4.1 From Code Composer Studio
4.4.2 External Make
4.4.3 Command Line
4.4.3.1 Using the Timake Utility From the Command Line
4.4.3.2 Makefiles
4.5 Available Foundation Software
4.5.1 DSP/BIOS
4.5.2 Chip Support Library (CSL)
4.5.2.1 Benefits of CSL
4.5.3 Board Support Library (BSL)
4.5.3.1 Benefits of BSL
4.5.4 DSP Library (DSPLIB)
4.5.4.1 Benefits of DSPLIB
4.5.4.2 DSPLIB Functions Overview
4.5.5 Image/Video Processing Library (IMGLIB)
4.5.5.1 Benefits of IMGLIB
4.5.5.2 IMGLIB Functions Overview
4.5.6 TMS320 DSP Algorithm Standard Components
4.5.6.1 Scope of XDAIS
4.5.6.2 Rules and Guidelines
4.5.6.3 Requirements of the Standard
4.5.6.4 Goals of the Standard
4.5.7 Reference Frameworks
4.6 Automation (for Project Management)
4.6.1 Using General Extension Language (GEL)
4.6.2 Scripting Utility
5 Debug
5.1 Setting Up Your Environment for Debug
5.1.1 Setting Custom Debug Options
5.1.1.1 Debug Properties Tab
5.1.1.2 Directories
5.1.1.3 Program/Project/CIO Load Options
5.1.1.4 Disassembly Style
5.1.2 Simulation
5.1.3 Memory Mapping
5.1.3.1 Memory Mapping with Simulation
5.1.3.2 Memory Mapping Using the Debugger
5.1.3.3 Defining Memory Map with GEL
5.1.4 Pin Connect
5.1.5 Port Connect
5.1.6 Program Load
5.1.6.1 Loading Symbols Only
5.1.6.2 Adding Symbols Only
5.2 Basic Debugging
5.2.1 Running/Stepping
5.2.1.1 Running
5.2.1.2 Stepping
5.2.1.3 Multiprocessor Broadcast Commands Using PDM
5.2.2 Breakpoints
5.2.2.1 Breakpoint Manager
5.2.2.2 Software Breakpoints
5.2.2.3 Hardware Breakpoints
5.2.2.4 C64x Simulator Watchpoints
5.2.3 Connecting Breakpoints to Files
5.2.3.1 Functions
5.2.3.2 Using Breakpoints to Transfer Data from a PC File to a Target
5.2.4 Watch Window
5.2.4.1 Using Watch Window to Track a Variable's Value
5.2.4.2 Using Watch Window to Watch Values of a Structure's Elements
5.2.5 Property Page Manager Window
5.2.6 Memory Window
5.2.7 Register Window
5.2.7.1 Customizing Register Groups
5.2.8 Disassembly/Mixed Mode
5.2.8.1 Disassembly Mode
5.2.8.2 Mixed Mode
5.2.9 Call Stack
5.2.10 Symbol Browser
5.2.11 Command Window
5.2.12 Memory Save/Load Utility
5.2.13 C6000 Functional Simulators Interrupt Latency Detection Feature
5.2.14 Cache Coherence
5.2.15 Cache Tag RAM Viewer
5.2.15.1 Cache Tag RAM Viewer Properties
5.2.16 Exception Reporting
5.2.17 Software Pipelined Loop (SPLOOP) Buffer
5.2.18 MMU Page Table Viewer
5.3 Advanced Debugging Features
5.3.1 Advanced Event Triggering (AET)
5.3.1.1 Event Analysis
5.3.1.2 Event Sequencer
5.4 Real-Time Debugging
5.4.1 Real-Time Mode
5.4.2 Rude Real-Time Mode
5.4.3 Real-Time Data Exchange (RTDX)
5.4.3.1 RTDX Data Flow
5.4.3.2 Configuring RTDX Graphically
5.4.3.3 Sending a Single Integer to the Host
5.4.3.4 Receiving Data from the Host
5.5 Automation (for Debug)
5.5.1 Using the General Extension Language (GEL)
5.5.2 Scripting Utility for Debug
5.6 Reset Options
5.6.1 Target Reset
5.6.2 Emulator Reset
5.6.3 Advanced Resets
5.6.4 Halt on Reset
6 Analyze/Tune
6.1 Application Code Analysis
6.1.1 Data Visualization
6.1.2 Simulator Analysis
6.1.3 Emulator Analysis
6.1.4 DSP/BIOS Real-Time Analysis (RTA) Tools
6.1.5 Code Coverage and Multi-Event Profiler Tool
6.2 Application Code Tuning (ACT)
6.2.1 Tuning Dashboard
6.2.1.1 Advice Window
6.2.1.2 Profile Setup
6.2.1.3 Goals Window
6.2.1.4 Profile Viewer
6.2.2 Compiler Consultant
6.2.3 Cache Tune
7 Additional Tools, Help, and Tips
7.1 Component Manager
7.1.1 Opening Component Manager
7.1.2 Multiple Versions of Code Composer Studio
7.2 Update Advisor
7.2.1 Registering Update Advisor
7.2.2 Checking for Tool Updates
7.2.3 Automatically Checking for Tool Updates
7.2.4 Uninstalling the Updates
7.3 Additional Help
7.3.1 Online Help
7.3.2 Online Tutorial