ARM® DS-5 Development Studio is the toolkit of choice for software developers who want to fully realize the benefits of the ARM Architecture. The DS-5 installation contains:
- ARM Compiler 6 for embedded and bare-metal code, providing best-in-class code generation for processors based on architectures ARMv6-M, ARMv7-A/R/M, ARMv8-A/R'M (ARMv8 architectures require DS-5 Ultimate Edition)
- ARM Compiler 5 for embedded and bare-metal code for architectures up to ARMv7 (ARMv8 is not supported)
- Linaro GCC Toolchain for Linux applications and Linux kernel development targeting the AArch32 architecture
- DS-5 Debugger, covering all stages of product development
- ARM Streamline Performance Analyzer for Linux and Android
- Single and multi-core simulation models for architectures ARMv7-A and ARMv8-A (64-bit installation only).
- Eclipse IDE, source code editor and project manager
- Example projects and documentation
This is a summary of the new features and other major changes in this release:
- ARM Compiler
- Updated to ARM Compiler 6.4. For further information on changes see http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.100585_0604_00_en/index.html.
- Updated to ARM Compiler 5.06u2. For further information on changes see http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.arn0005y/index.html.
- DS-5 Debugger
- Substantial changes to the graphical user interface, for improved performance and usability:
- Showing operating system threads or tasks in the Debug Control view is now optional, and is turned off by default.
- Display of the program call stack has moved from the Debug Control view to the new Stack view.
- The Memory view no longer pre-reads more than visible on screen.
- The Registers view is now populated with all registers by default, with new search capability and the option to create custom registers sets.
- A new toggle button on the Variables, Registers and Expressions views changes the format of all numerical values to hexadecimal at once.
- Added support for reverse debugging AArch64 Linux applications.
- Latest bug fixes and improvements for all supported debug probes (DSTREAM units require updating with firmware version 4.26.30 as shipped with this version of DS-5).
- Added support for Cortex-A35, Cortex-A32 and Cortex-R8.
- Initial debug support for ARMv8-M and ARMv8-R architectures.
- Improved performance for parsing and display of CMSIS-SVD defined register sets.
- Improved debug performance for ULINKpro and ULINKpro(D) connections
- Use case script functionality integrated with the Scripts view.
- Various improvements to the Platform Configuration Editor.
- New device support for:
- Applied Micro 883208 (X-Gene™ core)
- Marvell 88FR101
- Marvell 88FR111
- ARM Fixed Virtual Platforms:
- Base Cortex-A32
- Base Cortex-A35
- Base Cortex-A57/Cortex-A32
- Base Cortex-A57/Cortex-A35
- Versatile™ Express Cortex-R8
Full set of target platforms supported by DS-5 can be found on http://ds.arm.com/developer-resources/supported-devices/.
- Note the following has been removed:
- gdbserver executable. Linux application debug via gdbserver is still supported, however you must now supply your own gdbserver executable for the target (typically provided as part of the target toolchain).
- Debugging of Android native applications or libraries is no longer supported, and corresponding target configuration database entries and resources have been removed.
- Substantial changes to the graphical user interface, for improved performance and usability:
- ARM Streamline Performance Analyzer
- Added Cortex-A32 support.
- Improved template support, allowing them to work with dynamic charts and big.LITTLE systems.
- When collecting from an energy meter, we now provide an energy chart in addition to the power, voltage, and current charts we've always provided.
- Simulation models
- Updated to Fixed Virtual Platforms 9.6 release (64-bit installation only).
- Added new ARMv8-A Foundation Platform model (64-bit installation only).
- Note that on 32-bit host platforms, the Versatile™ Express AEMv8-A model has been removed.
- Eclipse IDE
- Integrated an evaluation version of the leading MISRA conformance tool LDRAlite™. More information can be found at http://www.ldra.com/en/company/technology-partners/toolintegration/27
- Added EGit plug-ins, providing support for the Git version control system.
- Added new bare-metal startup code for Cortex-R8, named "startup_Cortex-R8".
- Added Timer + GICv3 support to ARMv8 Fireworks examples, to demonstrate timed interrupts.
- Added new single-core examples that run on the Foundation Platform model, named "calendar_ARMv8", "fireworks_ARMv8x1" and "startup_ARMv8x1"
- Updated the ARMv8 bare-metal startup code "startup_Cortex-A53-A57-A72" to support Cortex-A72 in addition to the existing Cortex-A53 and Cortex-A57
- Refreshed the Streamline examples with latest streamline_annotate.c/.h and recaptured the corresponding .apc's
- Updated RTX with support for Cortex-A5x1 and Cortex-A7x1, in addition to the existing Cortex-A9x1
The list of changes in this and previous releases can be found on http://ds.arm.com/developer-resources/ds-5-development-studio-changelog/.
The following features are deprecated and might be removed in a future release
- Linaro GCC Toolchain 4.8-2014.04
- 32-bit host platforms
- Support for 32-bit host platforms is deprecated and will be removed in a future DS-5 release
Visit the DS-5 web resources at http://ds.arm.com to find to tutorials, knowledgebase articles, and any software updates that are available.
Technical support for DS-5 should be obtained from your supplier. Support issues can be raised directly with ARM at https://silver.arm.com/ (requires registration). Where appropriate, please mention the build of DS-5 that you are using, which can be found at the top of these release notes beneath the title. Refer to http://ds.arm.com/developer-resources/ds-5-technical-support/ for further information on obtaining support.
Queries and support issues relating to DS-5 can also be raised on ARM's public forums at: http://community.arm.com/groups/tools/.
DS-5 requires a minimum specification of computer with a dual core 2GHz processor (or equivalent) and 2GB of RAM. 4GB or more of RAM is recommended to improve performance when debugging large images, or when using the simulation models. A full installation requires approximately 3GB of hard disk space. A minimum screen resolution of 1024x768 is required.
DS-5 is supported on the following host platforms and service packs:
- Windows 7 Professional Service Pack 1
- Windows 7 Enterprise Service Pack 1
- Red Hat Enterprise Linux 6 Workstation
- Ubuntu Desktop Edition 12.04 LTS
- Ubuntu Desktop Edition 14.04 LTS (64-bit only)
In addition, ARM Compiler toolchains are supported on the following host platforms:
- Windows 8.1, 64-bit (ARM Compiler 5 and 6 toolchains only)
- Windows 10, 64-bit (ARM Compiler 6 toolchain only)
- Windows Server 2012, 64-bit (ARM Compiler 5 and 6 toolchains only)
- Red Hat Enterprise Linux 7 Workstation, 64-bit (ARM Compiler 6 toolchain only)
Support for 32-bit host platforms is deprecated and will be removed in a future DS-5 release. DS-5 Ultimate Edition is supported on 64-bit host platforms only.
ARM Compiler 6 is only supplied in the 64-bit installation of DS-5. For 32-bit installations of DS-5, you can download ARM Compiler 6 from http://ds.arm.com/downloads/compilers/. To register this toolchain with DS-5, follow instructions from http://ds.arm.com/developer-resources/tutorials/adding-new-compiler-toolchains-to-ds-5/
Linux application debug requires gdbserver on your target. The recommended version of gdbserver is 7.0 or later. DS-5 Debugger is unable to provide reliable multi-threaded debug support with gdbserver versions prior to 6.8.
Linux application rewind requires undodb-server on your target. DS-5 Debugger copies undodb-server to the target for you in the Download and Debug connection type, but for all other connection types, you must copy it yourself. The undodb-server binary is located in arm\undodb\linux under the DS-5 installation directory. Application rewind does not follow forked processes. When debugging backwards, you can only view the contents of recorded memory, registers, or variables. You cannot edit or change them.
DS-5 support for Linux application debug depends on infrastructure and features that are introduced in specific kernel versions:
- DS-5 Debugger supports debugging ARM Linux kernel versions 2.6.28 and later.
- Application debug on Symmetric MultiProcessing (SMP) systems requires ARM Linux kernel version 2.6.36 or later.
- Access to VFP and NEON registers requires ARM Linux kernel version 2.6.30 or later and gdbserver version 7.0 or later.
- ARM Streamline Performance Analyzer supports ARM Linux kernel versions 3.4 and later.
ARM Linux kernel and bare-metal debugging require the use of additional tools (not supplied with DS-5) to connect to your target system. DSTREAM, RVI, ULINKpro and ULINKpro D debug units allow connection to physical hardware targets. VSTREAM allows connection to RTL simulators and hardware emulators. ARMv8 bare-metal debugging is only supported when using DSTREAM and VSTREAM with a DS-5 Ultimate Edition license.
The minimum supported firmware version for DSTREAM, RVI and VSTREAM is 4.26.30. For DSTREAM and RVI it is recommended that you use the supplied debug hardware update tool to check that you are using the latest firmware and to update it if necessary. Updated firmware is available in the <installdir>/sw/debughw/firmware directory. The firmware for VSTREAM is delivered as part of the VSTREAM software, so you must obtain and install a newer version of this product if the firmware version is too old.
Separate installable products are provided for 32-bit and 64-bit Linux. Although you can install the 32-bit product on 64-bit Linux, it is recommended to install the 64-bit product instead. The 64-bit product is for use on 64-bit Linux only, and is capable of processing larger data sets and suffers from fewer operating system compatibility issues than the 32-bit product.
To install DS-5 on Linux, run (not source) install.sh and follow the on-screen instructions. The installer unpacks DS-5 into your chosen directory, adds desktop shortcuts, and optionally installs support for hardware debug units.
The tools installed by both 32-bit and 64-bit installers have dependencies on 32-bit system libraries. You must ensure that 32-bit compatibility libraries are installed when using DS-5 on 64-bit Linux host platforms. DS-5 tools might fail to run or report errors about missing libraries if 32-bit compatibility libraries are not installed. The ARM Knowledgebase contains further information about the required DS-5 dependencies: http://infocenter.arm.com/help/topic/com.arm.doc.faqs/ka14522.html.
The installer includes configuration files to allow USB connection to DSTREAM, RVI, ULINKpro and ULINKpro D hardware debug units. It is recommended to install these files if you intend to use these features. Installation of these files requires that you run the installer with root privileges. If you do not run the installer with root privileges or choose not to install these files, then you can still install them after installation by running the <installdir>/run_post_install_for_ARM_DS-5.sh script with root privileges. The installer creates a desktop menu using the freedesktop.org menu system on supported Linux platforms.
Separate installable products are provided for 32-bit and 64-bit Windows. Although you can install the 32-bit product on 64-bit Windows, it is recommended to install the 64-bit product instead. The 64-bit product is for use on 64-bit Windows only, and is capable of processing larger data sets than the 32-bit product.
To install DS-5 on Windows, run setup.exe and follow the on-screen instructions. If you have an earlier version of DS-5 already installed, this one will be installed alongside, without uninstalling your previous installation.
During installation you might be prompted to install device drivers. These drivers are to allow USB connections to DSTREAM, RVI, ULINKpro, ULINKpro D and Energy Probe hardware units. It is recommended to install these drivers if you intend to use these features. You might receive warnings such as "Windows can't verify the publisher of this driver software" or "The software you are installing has not passed Windows Logo testing". You can safely ignore these warnings and continue with installation.
Command-line installation and uninstallation are possible on Windows by opening a command prompt, with administrative privileges, and running Microsoft's installer, msiexec.exe. You must provide the location of the .msi file as an argument to msiexec. You can get a full list of options for using msiexec by running msiexec /? on the command-line. An example of how to install DS-5 using msiexec is:
msiexec.exe /i <installer location>\data\install.msi EULA=1 /qn /l*v install.log
- /i: this option is to perform the installation.
- <installer location>\data\install.msi: this specifies the full pathname of the .msi file to install.
- EULA=1: this is an ARM specific option. Setting EULA to 1 means you accept the End User License Agreement (EULA). You must read the EULA in the GUI installer before accepting it on the command-line.
- /qn: this option specifies quiet mode, so that the installation does not require user interaction. Note device driver installation still requires user interaction. If you do not require USB drivers or if you want the installation to avoid user interaction for USB drivers, you can use SKIP_DRIVERS=1 option on the command-line.
- /l*v install.log: this option specifies the log file to log all output from the installation.
After installation, you can start Eclipse for DS-5 from the ARM DS-5 v5.24.0 -> Eclipse for DS-5 v5.24.0 entry in your desktop menu. Be aware that any existing "Eclipse for DS-5" entry in the desktop menu will point to the previous version of DS-5 that is still available for use on your host. Eclipse for DS-5 and other supplied tools can also be found within the <installdir>/bin directory.
Portions of DS-5 are license managed and you must install a license before using them. See the Obtaining and Installing Your License section of these release notes below for further information about this.
The installer does not modify any environment variables on your system. To run the tools more easily from a console you can manually add the <installdir>/bin directory to your PATH environment variable. You should be aware that DS-5 includes copies of gcc and make that might behave differently from any copies that are installed elsewhere on your system. For this reason, if you modify your PATH environment variable, it is recommended that you do this locally within a console rather than globally for your entire system. See your operating system documentation for further information on setting environment variables.
On Linux you can run <installdir>/bin/suite_exec <shell> to open a shell with the PATH environment variable correctly configured. Run this tool with no arguments for more help.
On Windows the Start menu contains DS-5 Command Prompt. This console is preconfigured with the bin directory added to the PATH environment variable.
On both Linux and Windows the command prompts do not provide a compiler toolchain by default, but you can select one using the select_toolchain or select_default_toolchain commands.
Further information on using DS-5 can be found in the on-line help within Eclipse for DS-5. To access the on-line help, start Eclipse for DS-5 and select Help -> Help Contents. The main documentation for DS-5 can be found under the DS-5 Documentation section in the contents.
Separate documentation is provided for the supplied examples in the <installdir>/examples/docs/index.html document, which is also linked to from the Examples Index menu entry in the ARM DS-5 v5.24.0 Windows Start menu.
You can find further instructions on installation, licensing and tutorials on-line at: http://ds.arm.com/developer-resources/tutorials/working-with-arm-ds-5/.
You must obtain a valid license before using DS-5.
You can use the License Manager dialog in Eclipse for DS-5 to obtain and install node-locked licenses on both Windows and Linux. You can open this dialog by selecting ARM License Manager in the Eclipse for DS-5 Help menu.
Alternatively, floating and commercial (paid-for) node-locked licenses can be obtained and installed manually. Further instructions on this can be found in the ARM DS-5 License Management Guide document in the <installdir>/documents directory and on our website:
When the license and toolkit are configured within Eclipse then all license managed components will pick up the license and toolkit settings correctly, both within Eclipse and within the provided DS-5 Command Prompt (Windows) or suite_exec shell (Linux). If you use a different console then you must configure the tools manually. To do this, please refer to the tools documentation.
If you are using floating licenses, then the version of the FlexNet license server software must be greater or equal to the version of FlexNet used within the DS-5 tools. This release of DS-5 contains tools based on FlexNet 18.104.22.168, along with FlexNet server binaries version 22.214.171.124.
Note: In November 2015, Flexera published notification of security vulnerabilities that were discovered in the lmgrd and vendor daemon components of FlexNet Publisher. Flexera have no reason to believe that the vulnerabilities have been exploited but have nevertheless provided a security update in FlexNet Publisher version 126.96.36.199. It is recommended to upgrade license servers to at least this version. You can find FlexNet Publisher binaries in the DS-5 installation directory at <installdir>/sw/FLEXnet_188.8.131.52
Consult the License Management FAQ at http://infocenter.arm.com/help/topic/com.arm.doc.faqs/kiLwjCHu92xQmR.html for more assistance with the installation of your license.
Contact firstname.lastname@example.org if you need additional help with registering or obtaining your license. Please provide your serial number and a detailed description of the problem.
To uninstall DS-5 on Windows, use Add or Remove Programs in Control Panel, select ARM DS-5 v5.24.0 and click the Remove button.
To uninstall DS-5 on Linux, run remove_menus_for_ARM_DS-5_v5.24.0.sh in the root directory of your installation to remove desktop menu entries, and then simply delete the installation directory.
On both Windows and Linux, some per-user configuration is stored outside of the installation directory, which you might optionally choose to delete. For Windows these files are stored in %APPDATA%\ARM. For Linux these files are stored in $HOME/.arm.
The following known issues and limitations exist in this release:
Eclipse for DS-5
Problem: Eclipse fails to start and reports "cannot restore segment prot after reloc: Permission denied" [SDDEBUG-13327]
Workaround: This error occurs because some of the shared libraries used by the applications require text relocation, but the Security-enhanced Linux (SELinux) policy on your machine prohibits this. To work around this, change the SELinux policy for your DS-5 applications and shared libraries to allow text relocation. This can be achieved with the following command, run under a super user account:
chcon -R -t texrel_shlib_t "<installdir>"
Problem: Eclipse fails to start and reports "JVM terminated" or outputs a stack backtrace. [SDDEBUG-4443]
Workaround: This problem is often caused by heap settings for Eclipse that are not suitable for the computer that you are running it on. To fix this you must edit <installdir>/sw/eclipse/eclipse.ini to supply alternative heap settings. The following knowledgebase article provides detailed instructions on making this change: http://infocenter.arm.com/help/topic/com.arm.doc.faqs/ka14185.html.