Keil Logo Arm Logo

News News Item

27 Jul 2016

MDK-Professional supports heterogeneous systems

ARM today released DS-MDK, the software development solution for heterogeneous systems that combine an ARM® Cortex®-A based computer system and a Cortex-M microcontroller. DS-MDK is part of the MDK-Professional edition and provides support for the NXP i.MX6 and i.MX7 series. CMSIS-Pack technology is used for device support, which provides Software Packs for device awareness, software frameworks, board support, and example projects.

Heterogeneous systems combine computing power with fast, efficient I/O performance

A Cortex-A and Cortex-M processor-based heterogeneous computing system combines best-in-class technology for application software and deterministic real-time I/O. Cortex-A application processors run a feature-rich operating system, such as Linux, and provide enough computing power for demanding applications. The energy-efficient Cortex-M processor typically executes a bare-metal RTOS that is easy to use and tailored to meet real-time requirements for deterministic I/O operations. Such Cortex-M systems enable fast start-up times and can be permanently 'on' in battery-powered systems. The two processor systems typically exchange information via a fast, interrupt driven inter-process communication and shared memory.

Cortex-A / Cortex-M heterogeneous computing system
Cortex-A and Cortex-M processor-based heterogeneous computing system

MDK-Professional adds DS-MDK for Cortex-A/Cortex-M software development

The ARM Keil® MDK Microcontroller Development Kit is the most comprehensive software development solution for Cortex processor-based microcontrollers. The MDK-Professional edition contains the new DS-MDK based on Eclipse and ARM DS-5 Development Studio technology. Software Packs for NXP's i.MX6 and i.MX7 are available with support for other devices including classic Cortex-M based microcontrollers available in the future.

Keil MDK Professional Edition - Overview
Components of the MDK-Professional edition

DS-5 IDE with project management for Cortex-M and Linux application development

The project management is Eclipse CDT based and can be extended with third-party plug-ins. The DS-MDK specific extensions cover several image viewers and the CMSIS-Pack management that provides access to documentation, the CMSIS framework, and software components. Cortex-M software development is easier and faster when using CMSIS and related software components such as device drivers, board support, and middleware. The ARM Compiler 5 generates the smallest code for Cortex-M to achieve best performance when executing from resource limited TCM (Tightly Coupled Memory).

DS-MDK Middleware
Select in the DS-5 IDE software components for the Cortex-M application

DS-5 Debugger with multiple simultaneous debug connections for system visibility

The DS-5 Debugger connects via the ARM Keil ULINKpro and the gdbserver for verification of all software applications that execute in the heterogeneous computer system. Complete system visibility is essential for performance optimization and software validation.

DS-5 Debugger

The DS-5 Debugger offers all standard features expected from a professional debugger. This includes program execution with run control, breakpoints and data watchpoints, memory views, variable watch windows, and terminal windows for serial communication. Complete system visibility is enabled using multiple simultaneous debug connections:

  • The Cortex-M application is debugged via ARM CoreSight technology and ULINKpro. Users can analyze the microcontroller application using RTOS aware-debugging and peripheral views.
  • The Cortex-A Linux kernel is debugged via ARM CoreSight technology and ULINKpro. The debugger lists kernel threads and processes and shows pending breakpoints on loadable modules and shared libraries.
  • The Cortex-A Linux application is debugged via gdbserver. Connect to the running Linux system and access the file system using the Remote System Explorer that is integrated in DS-5. The debugger supports multi-threaded application debugging and shows pending breakpoints on loadable modules and shared libraries.

Learn more >


About NXP i.MX7

The NXP i.MX7 series utilizes a single or dual ultra-high efficient Cortex-A7 processor and a Cortex-M4 processor with floating-point unit. A ready-to-use Linux kernel is available for the Cortex-A7 system that incorporates OpenAMP for inter-process communication. For the Cortex-M4, a real-time operating system such as RTX or FreeRTOS and other software components are available. While the Cortex-M4 has complete access to the complete memory system, the best performance is achieved when executing from 64Kbytes on-chip TCM.

About NXP i.MX6

The NXP i.MX6SoloX is the first device utilizing both the ARM Cortex-A9 and ARM Cortex-M4 cores and has similar features as the i.MX7 series.

Keil logo

Arm logo
Important information

This site uses cookies to store information on your computer. By continuing to use our site, you consent to our cookies.

Change Settings

Privacy Policy Update

ARM’s Privacy Policy has been updated. By continuing to use our site, you consent to ARM’s Privacy Policy. Please review our Privacy Policy to learn more about our collection, use and transfers
of your data.