logo slogan

ARM RT-Kernel and RT-Library

keil_kit

The RTX Real-Time Kernel is a real-time kernel for ARM7, ARM9, and Cortex-M3 devices. It allows you to create programs that simultaneously perform multiple functions or tasks. This is often required in an embedded application.

 

The RealView Real-Time Library is a collection of tightly-coupled libraries that are designed to solve the real-time and communication challenges of embedded systems based on ARM powered MCU devices.

 

RTX Real-Time Kernel

The RTX Real-Time Kernel is a real-time kernel for ARM7, ARM9, and Cortex-M3 devices. It allows you to create programs that simultaneously perform multiple functions or tasks. This is often required in an embedded application.

 

RTX Kernel
Mutex
Memory
Pool
Mailbox
Delay &
Interval
Event &
Semaphore
Scheduler

 

While it is certainly possible to create real-time programs without an RTOS (by executing one or more functions or tasks in a loop), there are numerous scheduling, maintenance, and timing issues that an RTOS like the RTX Real-Time Kernel solves for you.

 

The RTX Real-Time Kernel allows flexible scheduling of system resources like CPU and memory and offers several ways to communicate between tasks. It is a powerful RTOS that is easy to use and that works with a wide-variety of ARM derivatives.

 

Programs written for the RTX Real-Time Kernel use standard C constructs and are compiled with the RealView Compilation Tools provided in the MDK-ARM Development Kit. Additions to the C language allow you to easily declare task functions without the need for complex stack and variable frame configuration. Real-time programs written using the RTX Real-Time Kernel require only that you include a special header file and link the RTX library into your program.

 

 

Real-Time Library

 

The RealView Real-Time Library is designed to solve several common challenges for embedded developers including:

 

 

  • Real-Time Library
    Flash
    File
    System
    TCP/IP
    Networking
    CAN
    Interface
    USB
    Device
    Interface
    RTX Kernel

  • Multitasking (which allows you to manage several jobs or tasks on a single CPU).

  • Real-Time Control (which allows you to configure tasks so that operations execute within a defined period of time).

  • Inter-Task Communication (which allows tasks in your system to communicate with each other).

  • Internet Connection via Ethernet or Serial (Modem).

  • Embedded Web Server including CGI scripting.

  • E-mail Notification via SMTP.

 

In addition, the RealView Real-Time Library includes several drivers that interface the RTX Real-Time Kernel to various communication interfaces:

 

  • CAN Interface
    CAN Interface Hardware Layer Drivers are available for STMicroelectronics STR71x, STR73x, STR75x, and STR91x devices.

  • USB Device Interface
    A USB Device Interface for standard Windows device classes is available for Philips LPC2000 devices.

 

While it is possible to implement an embedded program without using a real-time kernel, a proven kernel like RL-ARM saves time and makes software development easier.

 

The RealView MDK-ARM. includes the RTX Real-Time Kernel but not the RTX Real-Time Kernel Source Code, Flash File System, TCP/IP Protocol Suite, or USB/CAN Drivers.

 

Specifications

Feature

Product

RL-ARM
Real-Time Library

MDK-ARM
Real-Time Kernel

Features

RTX Real-Time Kernel

t

t

Kernel Source Code

t

t

Flash File System

t

t

TCP/IP Protocol Suite

t

t

CAN Interface

t

t

USB Device Interface

t

t

Multitasking

Round-Robin

t

t

Preemptive

t

t

Cooperative

t

t

Task Specifications

Priority Levels

255

255

Defined Tasks (max)

Unlimited

Unlimited

Active Tasks (max)

256

256

Context Switch Time

< 5 µsec (At 60MHz)

< 5 µsec (At 60MHz)

Interrupt Lock-Out Time

1.8 µsec (At 60MHz)

1.8 µsec (At 60MHz)

Memory Requirements

CODE Space

< 5K Bytes

< 5K Bytes

RAM Space

≈500 Bytes min

≈500 Bytes min

Timers/Signals

Timeouts

t

t

Intervals

t

t

User Timers (max)

Unlimited

Unlimited

Signals

t

t

Signals (max)

16 per task

16 per task

Inter-Task Communication

Semaphores (counting)

t

t

Semaphores (max)

Unlimited

Unlimited

Mailboxes

t

t

Mailboxes (max)

Unlimited

Unlimited

Mailbox Size

Unlimited (Default 20)

Unlimited (Default 20)