Software & Tools
MQX® Software for ARC Processors
A standard platform for ARC software development integrated with the MetaWare tools.
MQX Software has helped leading companies bring embedded products to market for years. During this time, developers have come to rely on the way the MQX RTOS and other MQX software products work with their tools to help them keep on schedule. The MQX RTOS offers a highly optimized application development platform for ARC processors designed for speed and size efficiency. The MQX RTOS is at the center of a wide array of MQX software protocol stacks, file systems and other run-time components, all compatible with the MQX RTOS that enhance the capabilities of today's advanced embedded devices.
Content On This Page
| MQX RTOS | MQX-EP | Integration with ARC’s MetaWare® Tools | Flexible Licensing Options |
| MQX RTCS Internet Stack
| MQX MFS | MQX PEG | Downloads |
MQX® RTOS
The MQX RTOS is ARC’s real-time operating system for deeply embedded applications. It provides proven, real-time performance within a tiny footprint. The MQX RTOS is designed to be easy to configure to balance code size with performance requirements. Alternative settings can be selected, benchmarked and iterated to optimize cost and performance.

Depending on options chosen, the MQX RTOS can be configured to take as little as 6K bytes of ROM on ARC processors, including kernel, interrupts, semaphores, queues and memory manager. MQX RTOS delivers the performance that demanding customers have come to expect in leading RTOS solutions, on a 500 MHz ARC 700 configurable core, interrupt latency is estimated to be 0.30 µsec and context switch time estimated at 0.42 µsec.
Highlights
- Highly optimized for ARC processors
- Developed and supported by ARC engineers
- Reliable operation, fast real-time response
- Context switch times under 200 cycles
- Proven in thousands of systems over decades of development
- Compact, configurable and scalable microkernel architecture
- Code footprint can be configured to under 6 KB
- Comprehensive, easy to use API and features
- Powerful MQX Host Tools for Windows platforms included for debugging, performance analysis and prototyping
- Up and running right out of the box with MetaWareR IDE, compiler and debugger
- Integrated with ARCangel hardware platforms including BSP and drivers
- Runs on the MetaWare ISS with simulated UART capability
- Provided with full source to enable full user configuration control and optimization
MQX RTOS Processor and Board Support
The MQX RTOS is currently available for the full range of ARC
600 and ARC 700 configurable processors. The MQX RTOS can be easily configured to
> support any configuration.
Board Support Packages (BSPs) are available for the ARCangel 4 FPGA development system as well as the MetaWare Instruction Set Simulator. MQX RTOS BSPs can be modified easily to support changes in a customer’s ARC-based™ SoC configuration.
MQX Host Tools for Windows
The MQX RTOS also comes with the MQX Host Tools. This set of advanced Windows-hosted embedded development tools includes:
- MQX Task Aware Debugging (TAD) for MetaWare - provided as a plug-in to the MetaWare Debugger, TAD provides intimate details of the embedded system, including viewing data structures, getting task summaries, viewing contents of specific tasks, and working with queues, messages, semaphores, memory and memory partitions
- EDS client - allows many of the same task-aware-debugging features as TAD without a standalone debugger, using a TCP/IP or serial connection with a running target
- Performance Tool - analyzes application execution and performance from the perspective of the RTOS (and the MQX RTCS™ Internet stack, if present), generating detailed actionable performance information from kernel logs, with full visibility into state transitions, events, mutexes, messages, semaphores, clock, scheduler task creation/destruction, interrupts and RTCS calls
- Design Tool - graphic-based source-generation tool for rapid prototyping to quickly create applications using MQX RTOS and RTCS functionality
top
MQX-EP
MQX-EP is a version of ARC’s MQX RTOS that is specifically targeted at ARC’s Energy PRO cores. It is based on over 16 years of industry proven MQX RTOS technology. MQX-EP contains all of the features of ARC’s MQX RTOS, the most popular RTOS for ARC-based applications and adds new features that allow software developers to exploit the full power-saving capability of the Energy PRO cores. MQX-EP provides a software API that allows designers to program Energy PRO’s power management unit and optimize the power settings for a given application.
In additional to its power management features MQX-EP’s small memory footprint saves power by reducing the amount of system memory needed. With a code footprint that can be configured to under 10 KB and equally small data memory requirements, MQX-EP is the smallest power management RTOS for 32-bit processor cores. Even with such a small configuration, MQX-EP maintains a high level of features and functionality for the use of software developers. The low overhead of MQX-EP allows developers to take advantage of the benefits of using a RTOS without a significant performance or memory overhead.
Highlights
- Easy-to-use development environment for low power applications
- Provides software interface for Energy PRO power management features
- Allows control of power-down options and Dynamic Voltage and Frequency Scaling (DVFS)
- MQX-EP’s automatic DVFS mode intelligently controls features of the Energy PRO Power Management Unit (PMU)
- MQX-EP dynamically adjusts RTOS timer period to enable longer power down cycles
- MQX-EP software provided with examples of how the software can be used to save energy
- MetaWare MQX-aware debugging displays power management related information
- Logging and display of PMU events and energy usage can be used to fine tune PMU settings
MQX-EP Power Savings with Energy PRO
MQX-EP Energy PRO features can be used in a number ways. MQX-EP allows the programmer to control the Energy PRO power management unit with a set of APIs that can configure the power down options and Dynamic Voltage and Frequency Scaling (DVFS). Application idle time can be spent in power down mode to provide significant power savings over running in a scheduler idle loop. MQX-EP’s automatic DVFS mode can also be used to intelligently control power settings of the Energy PRO PMU. In this mode MQX-EP adjusts power settings based on thread profiles and run-time workload. Developers provide parameters and thresholds that determine when the RTOS will make power adjustments. MQX-EP also logs PMU events for power analysis with MQX profiling tools. Using these features developers can optimize the power setting to use the minimum amount of power for their applications.
Below is an example of MQX-EP used with an Energy PRO core for a data processing application. MQX-EP has been configured to switch DVFS mode based on data traffic. The resulting energy used in less than one sixth of the energy that would be used without Energy PRO and MQX-EP power management.

Click here to view larger image.
Complete Software Environment
When used with ARC MetaWare software development tools and the MQX Host Tools, MQX-EP is tightly integrated into a complete development environment. The powerful MetaWare debugger and instruction set simulator supports Energy PRO functionality to profile energy usage data so programmers can adjust their MQX-EP and application configurations. The MQX Host tools include Energy PRO aware features that allow tracking of PMU event and energy usage estimations.
MQX Performance Tool with Power Management Analysis

Click here to view larger image.
top
Integration with ARC’s MetaWare® Tools
MQX products are tightly integrated with the MetaWare Development Toolkit, providing a great out-of-box experience for high productivity. MQX RTOS libraries and examples work with ready-to run MetaWare IDE project files and make files installed with the MQX run time products. These include the MQX RTOS and MQX RTCS Embedded Internet Stack, which allow developers to quickly create their own MQX-based and RTCS-based applications within the MetaWare environment.
For example, the MQX RTOS's Task Aware Debugging, in conjunction with MetaWare® Debugger, provides developers with transparent visibility of tasks and key RTOS information. This includes task templates, task queues, semaphores, lightweight semaphores, mutexes, events, message queues, message pools, partitions, user memory blocks, system memory blocks, names, the kernel data structure, the MQX initialization structure, interrupt handlers, and the kernel log.
top
Flexible Licensing Options
The MQX RTOS is used by many different types of developers with different needs and objectives. To allow a large number of diverse organizations the flexibility they need ARC has multiple licensing models for the MQX RTOS, each tailored to different uses of the MQX RTOS and needs of the developers.
All MQX run-time software products are provided with complete source code, so customers have full visibility into the functionality of the products and can configure them for the specific needs of their applications.
MQX software products are licensed using product-based licensing, without run-time royalty fees. MQX software can be used in development and then deployed as part of a binary executable inside a specific customer product. In addition, the MQX RTOS product can be licensing using ARC's community source licensing option.
Learn more about MQX RTOS licensing >>
top
MQX RTCS™ Embedded Internet Stack
Proven in embedded networked products for over 10 years, MQX RTCS is a fast, efficient embedded Internet stack supporting a rich set of standard protocols.

Click here to view larger image.
Highlights
- Small, configurable TCP/IP stack conserves memory space for application
- Includes FTP, TFTP, DNS, Telnet, DHCP, SNTP, SNMP, PPP another other key networking protocols
- Developed to be tightly integrated with MQX RTOS and MetaWare tools
- Integrated with MQX RTOS Ethernet drivers for ARCangel 4
- Supported by MQX Host Tools
- Allows developers to add web servers, e-mail, network management, security, and routing to their designs
top
MQX MFS FAT File System
The MQX Microsoft compatible File System (MFS) is a portable, compatible implementation of the Microsoft MS-DOS file system and provides a library of MS-DOS-compatible file-system functions for embedded applications. The library functions let users access the file system in a manner that is compatible with MS-DOS Interrupt 21 functions.
Since MQX MFS is compatible with MS-DOS, it can format, read, write, and exchange files with media from a computer that is running a Microsoft operating system FAT-12, FAT-16 or FAT-32 file system. MQX MFS is re-entrant and can be programmed into ROM. All the library functions guarantee the application tasks mutually exclusive access to the file system. Access to the actual storage device is done using function calls to the MQX RTOS file device driver. The file device driver is specific to the target file system that you are using. The portability and modularity of MQX MFS is increased because the file-system functions are separated from the device-driver functions.
Highlights
- MS-DOS Windows compatible file system that supports FAT-12, FAT-16 or FAT-32 formats
- Supports reading, writing, and formatting of files in a Windows compatible format
- Integrated with MQX RTOS, and RTCS Embedded Internet Stack for FTP access
- Supports ARCangel 4 IDE hard drive and RAM disk
- Supports RAM disk on MetaWare ISS
top
MQX PEG GUI
The MQX PEG (Portable Embedded GUI) library is a professional quality graphical user interface library created to meet the needs of embedded systems developers. MQX PEG is small, fast, and easily ported to virtually any hardware configuration capable of supporting graphical output. PEG delivers exceptional visual appeal and an intuitive and powerful API for application-level user interface development.

Click here to view larger image.
MQX PEG is integrated with the MQX RTOS and provides the tools, API, and class library that will allow users to quickly create an outstanding graphical presentation. MQX PEG is delivered with full source code, many example application programs, a complete set of supporting utility programs, hardware interface objects for several common screen configurations and input devices, and very thorough documentation to simplify the integration process.
Highlights
- Embedded Graphical User Interface, integrated with the MQX RTOS on ARCangel 4 platform
- Includes a full set of basic control types: buttons, menus, sliders, gauges, charts, icons, text fields, multi-line edit controls, windows
- GUI development tools that generate code for windows and dialogs, convert and encode bitmap images and generate custom fonts
- Anti-aliased fonts, alpha-blending, and Unicode character support
- Includes drivers for ARCangel 4 LCD/PGU and touch pad
- Mouse emulation support on ARCangel 4
top
MQX Software Evaluation Kit for ARC Processors
The MQX RTOS Evaluation Kit for ARC Processors lets users evaluate ARC’s proven MQX RTOS and the unique and powerful MQX Host Tools.
MQX Software evaluation kits for ARC processors are available for Windows hosts, and provide the following key components:
- MQX RTOS- pre-built binary libraries with full API
- MQX Host Tools
- MQX RTOS-aware plug-in for the MetaWare Debugger
- Source code for example applications
- Documentation
- Drivers
- Support for MetaWare ISS and ARCangel targets
- Tight integration with MetaWare Development Toolkit - works out of the box with full and evaluation versions of MWDT (installed separately)
- Available for Windows Hosts
MQX Software Evaluation Kit Downloads:
For all ARC 700 processor cores
Download the MQX Embedded MetaWare Evaluation Kit for ARC 700 Cores
For all ARC 600 and Energy PRO processor cores
Download the MQX Embedded MetaWare Evaluation Kit for ARC 600 and Energy PRO Cores
top
|