Overview
Description
This product was developed based on the RI600V4, which conforms to the latest version of µITRON4.0 Specification and with additional memory protection function of the µITRON 4.0 protection extension. Almost all service calls in it except Rendezvous are supported.
In addition, its high degree of compatibility with the CS+ IDE and the configurator which automatically generates startup files will help you greatly reduce development times and get your products to market more quickly.
Note: RI600PX is not generally promoted to U.S. and European customers.
Features
- Conformance with the µITRON4.0 Specification
The RI600PX was developed based on the RI600V4, which conforms to the latest version of µITRON4.0 Specification and with additional memory protection function of the µITRON 4.0 protection extension. - Increased processing speed
The memory protection function enables high-speed processing with minimum effect on the system since it is realized by controlling part MPU (Memory Protection Unit) of RX600 Series and RX200 Series. - ROM-based implementation
Since the system is a real-time/multi-tasking OS assumed to be used embedded in the execution environment, it was designed to be compact and ready for ROM-based implementations. Also, because the system can be configured linking only the service calls used in the system by the user (rather than all the service calls provided by the RI600PX), a real-time/multi-tasking OS can be configured which is compact and optimized for the user's needs. - Interlinking with the CS+ Integrated Development Environment from Renesas Electronics [Learn More]
The following features are available in CS+ IDE- Automatic settings for options required in building the OS
- Displaying the states of OS control objects such as tasks, semaphores, etc. (Resource Information)
- Sample Projects (CS+ edition) Provided for FIT [Learn More]
Sample projects (CS+ edition) for the use of Firmware Integration Technology (FIT) with the RI600PX real-time operating systems (Real-time OS) for the RX family are supplied. Download the sample project for FIT from Documentation & Downloads. - Memory Protection [Learn More]
This OS is free of memory data corruptions, the system can continue operating normally, and is therefore assured of high system reliability. This OS can detect a bug when an illegal memory access is committed, enabling the debugging efficiency to be greatly increased. - Supported compiler: CC-RX(C/C++ Compiler Package for RX Family)
- Learn More
Release Information
OS
Latest Ver.: V1.03.00
Released: Nov 27, 2018
Details of upgrade (See Tool News)
Operating Environment
Agreement Details
User's Manual ( Coding: RI600PX User's Manual: Coding (Real-time OS for RX Family with MPU) Rev.1.01
(PDF | English, 日本語) | All )
CS+ interface plug-ins (Real-time OS Common plug-in)
Latest Ver.: V3.03.00
Released: Jul 1, 2016
CS+ interface plug-ins (Plug-in for RI600PX)
Latest Ver.: V3.00.01
Released: Nov 27, 2018
Target Devices
Design & Development
Additional Details
Integrated Tools
Compiler :CC-RX
Integrated development environment: CS+
Memory Protection
- High-reliability system
To reduce a possibility of being unable to detect program glitches when debugging the program and causing a trouble in the market after the system has been shipped from the factory, this OS assures the system of high reliability.If memory data destruction occurs especially in a memory area in which the OS, etc. are stored, the system may produce a dangerous condition by, for example, operating erratically. However, since this OS is free of memory data corruptions, the system can continue operating normally, and is therefore assured of high system reliability - Debug assistance
In systems without memory protection, a corruption of memory content by an illegal pointer behavior, etc. generally is not noticed until it actually comes to the surface as a trouble symptom. The cause of a bug can only be identified by analyzing emulator's trace data, which requires a large amount of time. The RI600PX can detect a bug when an illegal memory access is committed, enabling the debugging efficiency to be greatly increased.
The memory protection which supports RI600PX is described below.
- Detection of illegal access by tasks.
Tasks belong to either of domain. Furthermore, a part of address space is allocated as some memory object. A domain can be set access permissions (read, write and execute) for each memory object. The Access Exception Handler will be called if a task accesses the area that has not been permitted. In addition, handlers can access all address space. - Protection of stack for task.
Task cannot access the stack for another task. The Access Exception Handler will be called if a task accesses a stack for another task. - Detection of illegal access by the kernel.
Because of the kernel as well as a handler can access to all address space. Therefore, if an invalid pointer parameter is specified to a service call, the kernel commands itself an illegal access. To avoid such a consequence, the kernel inspects whether the task that invoked a service call can access to the space referred to by the pointer area. When it detects an illegal access, the service call returns an error.
Functions
The RI600PX kernel consists of the following modules. Each module is provided by functions (service calls) .
- Scheduler
Manages execution sequence of multiple tasks based on their priority levels. - Task management
Manages task status such as RUNNING, READY, WAITING or SUSPENDED. - Task-dependent synchronization
Changes task status from other task, and synchronizes tasks. - Interrupt management function
Makes a return from the interrupt handler. - Time management
Sets system timer used by RI600PX kernel and starts user-defined alarm handler and cyclic handler. When using the time management function, it is necessary to specify RI600PX Timer template file (PDF | English, 日本語) in the system configuration file. - System configuration management
Reports information such as version number of RI600PX kernel. - Synchronization/communication
Carries out synchronization and communication between tasks. The following function modules are available:- Event flag
Tasks are synchronized by the status of flags managed by the kernel. - Semaphore
Tasks are synchronized by the semaphore counter value managed by the kernel. - Mail box
Tasks are synchronized by sending or receiving a message. - Data queue
- Event flag
Tasks are synchronized by communicating 4-byte data.
- Extended Synchronization/Communication
Carries out synchronization and communication between tasks. The following function modules are available:- Message buffer
Makes use of variable-length data communication to synchronize tasks. - Mutex
Makes use of priority ceiling protocol for avoiding priority inversion to synchronize tasks.
- Message buffer
- Memory pool management
Dynamically allocates/frees memory area used by tasks. Enables efficient use of memory. - Task exception handling function
Controls execution of task exceptions by, for example, defining or activating a task exception. - Cyclic handler function
Controls the execution of a handler activated periodically. - Alarm handler function
Controls the execution of a handler activated at the specified relative-time. - Memory protection function
The following functions are available:- Detection of illegal access by tasks
- Protection of stack for task.
- Detection of illegal access by the kernel
Specifications
Target device | RX700 Series, RX600 series and RX200 Series with MPU (Memory Protection Unit) |
---|---|
Maximum number of tasks | 255 |
Number of priority levels | 255 |
Service call number | 190 |
Performance (Time takes for a target task to be executed after the wup_tas is issued.) |
3.2 microseconds (RX630, 100MHz) |
Kernel code size | From 6.3K bytes to 33.5K bytes |
Kernel RAM usage per task | data : 20 bytes stack : 44 bytes |
Components
Provided items | Explanation | Note |
---|---|---|
Kernel source program | Source files for the kernel | Provided only with mass- production licenses which include source code. |
Kernel library | Kernel library for system building | — |
Standard header files | ITRON specification common definition files Kernel specification definition files Other definition files |
Header files are provided in C language. |
Command line configurator | Outputs all types of definition files from the cfg file that describes the structure parameters in text. | — |
Sample program | A simple program using ITRON. | — |
CS+ interface plug-ins - Real-time OS Common plug-in - Plug-in for RI600PX |
Function for easy kernel embedding Function for referencing the OS state during debug |
— |
Manual | User's manual | — |