Design with field-proven tools
Arm-based embedded systems are everywhere, with real-time applications found across industrial, transportation, medical, home automation, the Internet of Things, and many other segments. Arm provides professional software tools specifically designed to help you develop the software in an embedded system containing one or more Arm-based processors. The breadth of applications in this segment leads to a broad range of technologies in use, with a multitude of silicon devices, real-time operating systems (RTOSs) and development platforms all targeting the embedded market. With DS-5 Development Studio we provide a core set of productivity-enhancing tools, with integrated support for devices and RTOS' across the ecosystem, giving you the best possible end-to-end tooling for a wide range of real-time systems.
The compilation toolchain you trust
The Arm Compiler in DS-5 Professional is the only commercial compiler co-developed alongside Arm processors and specifically designed to optimally support the Arm architecture. It is the result of 20 years of development and is recognized as the industry standard C and C++ compiler for building applications targeting the Arm, Thumb, Thumb-2, VFP and NEON instruction sets, having generated code for billions of products shipped to date. The Arm Compiler also includes the code-size optimized MicroLib C library to fit your application in the smallest memory footprint.
Supported by all leading real-time operating systems (RTOS) for the Arm architecture, the Arm Compiler also integrates with major code analysis tools to provide you with a complete code generation environment that enables the creation of robust real-time embedded systems. Here are just few of our ecosystem tools and RTOS partners: Parasoft® C/C++ test®, Coverity® Quality Advisor and Security Advisor, FreeRTOS, Express Logic ThreadX®, Micrium® uC/OS III®, NXP® MQX™ RTOS, and so many more. Learn more about Arm Compiler.
RTOS aware debug to save you time
Debugging your application running on a RTOS is much easier with DS-5 Debugger's OS awareness. With DS-5 Debugger, you benefit from:
- Pre-configured support for a large range of Arm-based devices
- Intuitive Debug Control view, making it extremely easy to identify the current task context, and switch between stack frames
- Full task-aware debug, offering individual run control and breakpoints for specific tasks or threads
- Visibility into RTOS internal data structures such as interrupts, semaphores and task queues
- Full multi-processor support, allowing you to simultaneously control of all the Arm-devices in your system
DS-5 Debugger has specialized support for a large range of popular RTOSs, typically developed in conjunction with the RTOS vendor to offer you the best possible support. To allow you to begin coding as soon as possible, we offer full support for:
- NXP MQX: the integrated support for NXP MQX includes full visibility of processor cores, tasks and call stack.
- Micrium uC/OS (II and III): DS-5 offers in-built task-aware debugging and visibility into internal data structures of the µC/OS-III RTOS, as well as integration with Micrium uC/Probe - Graphical Live WatchTM
- Keil RTX: DS-5 offers full task-aware visibility and debug of software developed on Keil RTX.
- ENEA OSE: high-performance JTAG-based debug and processor trace is provided through the integration between Arm DS-5 Debugger and Enea Optima for OSE (available from ENEA).
- FreeRTOS: DS-5 offers in-built task-aware debugging and visibility into internal data structures of FreeRTOS.
- Express Logic ThreadX: out-of-the-box support for visibility into ThreadX RTOS tasks, queues, timers and more.
- Segger embOS: DS-5 supports full task-aware debugging with access to semaphores, mailboxes and events in Segger's embOS high-performance RTOS.
- Mentor Graphics Nucleus: DS-5 provides RTOS aware debugging of Nucleus.
- Quadros RTXC: DS-5 supports task-aware debugging of kernel objects including tasks, semaphores, mutexes, queues, mailboxes, and time management objects.
Improve system predictability
Real-time embedded systems operate under strict performance and time constraints: it can be vitally important to achieve response deadlines. This means that you need to spend time optimizing and testing, so we created tools to make it easier for you.
For detailed execution analysis, DS-5 Debugger offers full Embedded Trace Macrocell (ETM) and Program Trace Macrocell (PTM) trace capability. This lets you trace execution across functions that have been executed and see exactly where time is being spent, down to individual instructions. However, sometimes visibility itself is not enough, and you need a tool to set up trigger conditions that will tell you whether you have met your deadline. The DS-5 Debugger scripting is designed to enable exactly this use case, by using the built in CoreSight timers to analyze real-time intervals between interrupts, for example, and break execution when a condition is not met. Learn more about DS-5 Debugger