Introduction Purpose This training course provides an overview of the High-performance Embedded Workshop (HEW), a key tool for developing software for embedded systems that use microcontrollers (MCUs) from Renesas Technology Corp. Objectives Review aspects of the development process for embedded programming. Learn about the basic characteristics of HEW and the management and debugging tools it provides. Gain a basic understanding of the components HEW contains and the toolchains and debuggers used with it. Discover the multiple-window design of the HEW user interface. Content 15 pages 2 questions Learning Time 20 minutes 1
Programs for Embedded Systems Are becoming very complex and can have a major impact on overall product development cycle Are produced by an iterative process: (create, run, and test; then modify if required and repeat) Are developed on different system than the platform on which the application will run Must be compact and efficient, due to limited MCU resources (RAM and ROM)* Require in-depth knowledge of MCU used* Mandate a concise definition of the system architecture* Generally run on specialized operating systems (typically RTOS types)* Must handle specific operating conditions (power-up, low-power modes, interrupt events, etc.)* May have dynamic requirements (initialization after a system reset, persistence of data through a reset, etc.)* CODE CODE BUILD BUILD RUN RUN DEBUG DEBUG 2
Embedded Platforms vs. PC Types Processor CPU Speed Processing Power System Hardware Resources Development Process Other Pentium TM or equivalent GHz range Very high Desktop PC Platforms Readily available: PC architecture Almost unlimited Code is written on a PC to run on a PC Generally bound to a common operating system standard, such as Microsoft Windows Embedded System Platforms 4 to 64-bit microcontroller 10 to 400MHz Much lower: 0.5 MIPs to few 100 MIPS Typically a proprietary, applicationdependent system design Can be very limited: As little as 256 bytes of RAM and 4KB of ROM Code is written on a PC to run on a target system with a different processor and operating system (cross development) Bound to MCU features and performance Many OS products can be used (T-engine, Win-CE, etc.) 3
Tools for Embedded Programming The Editor is used for firmware coding. The Assembler and Compiler are used for syntax checking of code and for generating relocatable machine code for system MCU. Editor Source code = C, asm Assembler, Compiler Machine Code = obj Debugger, Simulator mot, abs, map Linker The Debugger or Simulator is used for troubleshooting. The Linker is used to generate final machine code image. HEW enables coding, building, linking, and debugging embedded applications within an integrated development environment 4
Basic Characteristics of HEW Implements a powerful, yet easy-to-use software development solution that shortens system development time Has a familiar Graphical User Interface (GUI) that simplifies operations Allows users to select right tool for each process and fully exploit the tool s advanced capabilities Eliminates need to switch environments between coding and debugging operations or between target devices Provides as an Integrated Development Environment (IDE) many essential functions, including: - Graphical project file management and navigation - Graphical toolchain option management - A configurable build engine System Development Cycle Faster development time = quicker time to market! 5
Other Features of HEW Code and debugging support for Renesas MCUs devices in the SuperH, M32R, M16C, R8C, H8SX, H8S, H8, and 740 families Visual display of CPU hardware set-up Automatic generation of start-up code for every supported CPU Single environment for toolchain and debug component support Integration with third-party software development tools User-definable Custom Build Steps to integrate additional command-line based tools Choice of Network or Node-locked toolchain for Renesas and IAR compilers Integrated Editor with color keyword functionality Double-click capability for jumping into integrated Editor from Build Error and Warnings Full instruction-simulation capability Graphical display of Number of Execution Cycles per Function Display of Cache Hit Rate and Pipeline State Comprehensive Breakpoint functionality Visual Debug functions, including Picture and Waveform displays Support for advanced debugging features such as Code Profiling, Performance Analysis, Code Coverage, and Trace Single-session Save for Build and Debug AutoUpdate utility Runs on Windows 2000 / XP 6
Management and Debugging Advanced Project Management Tools Workspace and Project management Configurations and Sessions Version control Modular interface for third-party tool integration Intuitive GUI with toolbar, shortcuts, and virtual desktop Workspace Workspace Project Project Project Project Project Project Configuration Configuration Configuration Configuration Session Session Session Session Advanced Debugging Tools Map-viewer Call-walker Coverage Profiler Image Viewer / Waveform Viewer Profile Chart 7
PROPERTIES On passing, 'Finish' button: On failing, 'Finish' button: Allow user to leave quiz: User may view slides after quiz: User may attempt quiz: Goes to Next Slide Goes to Slide After user has completed quiz After passing quiz Unlimited times
HEW Components Editor Toolchain Debugger On-Line Help Project Generator C/C++ Compiler Memory Manual Navigator Version Tracking Assembler Register AutoUpdater Workspace Linkage Editor/ Optional Linker Trace Third-Party Tools Command-Line Librarian Break Simulator Visit www.renesas.com for documentation and other resources 9
Toolchain/Compiler Packages Toolchain C/C++ or C compiler package (Standard package) Must be purchased from an authorized Renesas dealer Full capabilities Optimized for specific MCU C/C++ or C compiler package (Evaluation version) A no-cost download at renesas.com Full capabilities for 60 days, then code-size limited Optimized for specific MCU Five Renesas toolchain versions are currently available for our MCU product lines. Product Line Toolchain SuperH family C/C++ compiler package M32R family C compiler package (CC32R) H8, H8S, and H8SX families C/C++ compiler package M16/70/80 and M32C families C compiler package (NC308WA) M16C family C compiler package (NC30WA) 10
Debugger (Target) Platforms Debugger Simulator Software component usually included in compiler packages/ toolchains Executes user program in a software engine that models instruction operation of target MCU Normally used to check logic flow of the embedded program being developed Emulator (Hardware Debug Target) Hardware component included in Renesas starter kits or purchased separately Could be a monitor-code based, JTAG-type or full In-Circuit Emulator (ICE) product Device-specific; can only be used to perform debugging for actual target MCU 11
Elements of Typical HEW Screen Project Manager Local Variable Watch Output Window C/C++ Variable Watch Stack Trace Built-in Editor Complex Break Conditions Full-trace Bus Virtual Desktop Memory View 12
HEW Screen Showing Data Types 13
PROPERTIES On passing, 'Finish' button: On failing, 'Finish' button: Allow user to leave quiz: User may view slides after quiz: User may attempt quiz: Goes to Next Slide Goes to Slide After user has completed quiz After passing quiz Unlimited times
Course Summary Embedded Programming Basic Characteristics of HEW Management and Debugging Tools HEW Components Toolchains and Debuggers HEW GUI Download a free evaluation copy of HEW at: www.renesas.com/hew 15