IAR Embedded Workbench Integrated Development Environment From Idea to Target
The IAR Embedded Workbench is a fully Integrated Development Environment for developing embedded applications. The workspace can contain different projects as well as files shared between the different projects, even for different targets. The source browser makes it easy to navigate through complex applications. Different Architectures. One Solution. The number of microcontrollers and microprocessors available for embedded systems increases every year. For the developer it is a constant choice of going with the new technology and accepting a longer time before the application reaches the market, or going with older technology and reusing designs, thus finishing earlier but with a less capable product. IAR has recognized this dilemma in a reality where both system performance and time to market is crucial. The IAR Embedded Workbench is the most complete development toolset for professional embedded applications available today. It offers the same intuitive user interface regardless of the microprocessor you have chosen to work with coupled with general and target-specific support for each chip. This solution requires no extra time for learning new tools when shifting to a new target processor, and due to the high code portability, a substantial part of the code can be reused. We believe that the most comprehensive and capable tools integrated in the same development environment for all chip families is the genius of embedded development. We call it: Different Architectures. One Solution. Seamless tool integration The IAR Embedded Workbench is a total integration of the IAR C/C++ optimizing compiler, assembler, linker, librarian, text editor, project manager and C-SPY debugger. It is a truly integrated development environment (IDE) where users can stay within the same familiar environment and benefit from an uninterrupted workflow. The powerful project manager displays both source and output files and gives an overview of their settings. The IAR Embedded Workbench keeps track of project and file status and recompiles, reassembles, and links files as necessary. Your workspace can contain multiple projects even for different targets and batch build allows you to build multiple configurations at once. Ready-made project templates and peripheral register definition files for supported devices help you to get off to a smooth start. The source browser provides quick access to functions and declarations. The flexible window management of the IDE helps you keep your workspace organized according to taste. Windows are dockable and can even be arranged in tab groups. C/C++ optimizing compiler The IAR C/C++ compilers offers the standard features of ANSI C as well as an extended implementation of Embedded C++ primarily aimed at improving the viability of objectoriented development and C++ programming in the embedded industry. The compiler technology includes important and even unique features that extend the benefits of object-oriented development using C++. While standard C++ is not primarily intended for embedded development and contains many size
The IAR C-SPY debugger is fully integrated in the IAR Embedded Workbench. The high integration allows setting breakpoints before starting the debugger and makes it possible to edit the source code whilst in the middle of a debugging session. and/or speed consuming features not relevant for embedded systems, Embedded C++ omits some important features such as C++ templates. IAR Systems fills the gap between C++ and EC++ with an extended version of Embedded C++ that adds essentially all the language features that do not carry an overhead in efficiency or size. Most importantly, the IAR compilers support C++ templates and include the Standard Windows showing information about program variables and complex expressions are grouped together for convenient and continual display of values changing during execution of the application. Template Library (STL) which provides convenient and efficient containers and algorithms. Our template implementation is even memory attribute aware, allowing you to write specialized template code for different memory types. IAR s state-of-the-art compilers and the optimized run-time library make C++ viable for embedded applications even on an 8-bit MCU. Each of the IAR C/C++ compilers contains C extensions designed to take advantage of the special facilities of a particular target. It includes advanced global and targetspecific optimizations on multiple speed and size levels that will help you produce very compact and efficient code. The C/C++ library can be customized to fit the needs of the application, keeping an optimal balance of required functionality and footprint/size. IAR C-SPY debugger The IAR C-SPY debugger is seamlessly integrated in the same IDE as the other components in the Embedded Workbench. This allows changes to be made in the source code while debugging, without having to switch back and forth between the editor and debugger. Another useful feature, made possible by tight integration, is the capability to set breakpoints directly in the source code, before starting the debugger. The breakpoints flow with the source code as it is being edited. The IAR C-SPY debugger takes advantage of the extensive debug information produced by the IAR compiler providing unique debugging precision. Compared to traditional
STL container awareness in the debugger makes it easy to debug C++ code. C-SPY displays STL collections as if they were simple sequences just like an array. debuggers where the lowest source level step is line by line, IAR C-SPY source code stepping provides a finer level of control identifying every function call as a step point. This means that function calls inside expressions can be single stepped, as well as function calls being part of parameter lists to other function calls. This is especially useful when debugging C++ code, where numerous extra function calls are made, for example, to object constructors. Another particularly convenient feature when debugging C++ code is the formatted display of STL containers. C-SPY displays STL collections as if they were simple sequences, just While navigating through the call stack, register values will be displayed as they were when the call was made. The user can configure different register subsets and choose which ones to be displayed. like an array, rather than forcing you to browse through the complex internal implementation details to find your data. The debug information also presents inlined functions as if a call was made, making the source code of the inlined function available. Furthermore, it allows the debugger to present all vital data about the user application after a stop without requiring any trace during program execution. This means that the application runs at full speed up to the breakpoint, providing correct real-time behavior. C-SPY can at any time and without runtime penalty show the complete call chain, thanks to the extensive backtrace information generated by the IAR C/C++ compiler. You can easily determine in what context the current function has been called and trace the origin of incorrect values in variables and parameters, thus locating in the call chain the function where the problem occurred. Hardware debugging The IAR Embedded Workbench supports hardware solutions such as JTAG interfaces, ROM-monitors and emulators for different targets. C-SPY handles communication with and control of the target system and also provides special menus, windows, and dialog boxes to the functions provided by the target system for example, code and hardware breakpoints, real-time execution, real interrupts and tracing.
IAR Embedded Workbench Professional lets you design, test and simulate your application in an advanced, yet easy-to-use graphical environment. RTOS-aware debugging RTOS-aware debugging is facilitated through a plug-in architecture that allows an RTOS module to extend the capabilities of the IAR C-SPY debugger. The RTOS module provides detailed information about the RTOS, like tasks and logged events, or other RTOS resources, like signals, buffers, memory pools and so on. It allows inspection of active as well as non-active tasks, meaning that contents of registers, program counter, stack, and other context parameters are fetched from the location where they are saved by the RTOS. Live breakpoints, which stop a single task while the system continues to execute the other tasks, are also supported. IAR Embedded Workbench Professional IAR Embedded Workbench Professional is a powerful, stateof-the-art design tool for embedded systems, supporting users through all the different phases of embedded application development. It gives you the benefits of the integrated development environment with its C compiler, assembler, linker, librarian, editor, project manager and debugger as well as tools for graphical system design, design simulation and automatic generation of design documentation, all in one package. Availability RTOS-aware debugging is provided through the extensible architecture and the open APIs. This allows the special characteristics of each RTOS to be fully recognized without built-in limitations. The IAR Embedded Workbench runs under Windows 98, ME, XP, 2000 or Windows NT 4. Transferable stand-alone and network licenses are available with software and hardware options. For detailed information about currently supported targets, please visit www.iar.com.
General Features Fully integrated tools on Windows 98/ME/XP, Windows 2000 or Windows NT 4. Transferable stand-alone and network licenses available with software and hardware options. Project Manager multiple projects in workspace, batch build and ready-made project templates. Editor programming syntax highlighted in color and style. IAR C/C++ compilers global and target-specific optimization on code size and execution speed. IAR Assembler versatile set of directives and operators. IAR XLINK Linker more than 30 industry standard output formats and full control over allocation of relocatable CODE and DATA segments. IAR XLIB Librarian manipulation of library modules. IAR C-SPY debugger setting breakpoints before debugging, function stepping, editing while debugging and plug-in RTOS-aware support. FREE EVALUATION DEMO For more product information and a free demo visit our website: www.iar.com From Idea to Target Sweden IAR Systems AB P.O. Box 23051 Strandbodgatan 1 SE-750 23 Uppsala Phone: +46 18 16 78 00 Fax: +46 18 16 78 38 Email: info@iar.se United States IAR Systems (US HQ West Coast) Century Plaza 1065 E. Hillsdale Blvd Foster City, CA 94404 Phone: +1 650 287-4250 Fax: +1 650 287-4253 Email: info@iar.com United States IAR Systems (East Coast) 2 Mount Royal Marlborough, MA 01752 Phone: +1 508 485 2692 Fax: +1 508 485 9126 E-mail: info@iar.com Germany IAR Systems AG Posthalterring 5 DE-85599 Parsdorf Phone: +49 89 88 98 90 80 Fax: +49 89 88 98 90 81 Email: info@iar.de United Kingdom IAR Systems Ltd. Gainsborough Business Centre Hamilton House, Mabledon Place Euston, London, WC1H 9BB Phone: +44 207 554 85 85 Fax: +44 207 554 85 86 Email: info@iarsys.co.uk Denmark IAR Systems A/S Lykkesholms Allé 100 DK-8260 Viby J Phone: +45 8734 1100 Fax: +45 8734 1190 E-mail: info@iar.dk Japan IAR Systems K.K. 1-22-17 Fuji-building 26 Hyakunin-cho, Shinjuku-ku Tokyo 169 0073 Phone: +81 3 5337 6436 Fax: +81 3 5337 6130 E-mail: info@iarsys.co.jp IAR is a trademark owned by IAR Systems. IAR Embedded Workbench, IAR visualstate, IAR MakeApp, XLINK, XLIB, XAR and C-SPY are trademarks owned by IAR Systems. Product features, availability, pricing and other terms and conditions are subject to change by IAR Systems without www.iar.com prior notice. Elanders Tofters 2004, 8260