Real-time OS suitable for multitasking operation of small embedded devices

Overview

Article header rtos for iot equipment (scorpius) 1 3

Scorpius is an ITRON-like real-time OS.
It achieves high-speed task scheduling operation with small code size, and is ideal for the needs shown below.

  • I want to use the multitasking function in embedded devices with strict code size and memory restrictions such as IoT devices.
  • Achieving high-speed task switching even with a weak CPU
  • Even if you do not have advanced knowledge, you want to easily introduce a multitasking environment while looking at the Japanese manual
  • I want to use the power saving function essential for IoT devices with a simple interface.
  • I want a security function as an IoT device
  • I want to check the internal operating status of the system, such as task transitions.
  • Support is also required depending on the situation such as expansion support and operation analysis

Features

  • task priority based scheduler
  • Kernel code size is 0.95KB in minimum configuration
  • Task switching is about 1us (Note 1)
  • Supports all essential service functions for applications
  • Easily portable to various processors
  • Providing technical materials in Japanese and providing an inquiry environment through a forum
  • Support for power saving and security functions will be available soon
  • Visualize the operating status inside the system with the trace log function
  • Basically provided free of charge (royalty not required)


Note 1: Measured time for dispatch processing (task context switching) when Cortex-M3/80MHz operation.

Features

specification
Kernel code size (Note 2) 0.95 Kbyte (task function only) to 2.5 Kbyte (all functions)
Memory area for each task management About 80 bytes (Note 3)
task dispatch time 4.2us (Note 4) at ARM7/40MHz, 1us at Cortex-M3/80MHz
Corresponding service call (Note 5) Tasks, semaphores, event flags, Box, trace logs, energy saving (*6), memory pools (*6), security (*6)
Trace log function Compatible with the TOPPERS project trace log viewer “TraceLogVisualizer” (Note 7)

Note 2: This is the result of compiling in our environment for ARM7 core.
Note 3: A memory area of the corresponding size is required for each additional task.
Note 4: For commercially available RTOS that support similar CPUs, the task dispatch time is 5 us when operating in a 60 MHz environment.
Note 5: You can create a kernel by selecting only the required functions.
Note 6: This will be supported in the near future.
Note 7: See http://www.toppers.jp/tlv.html.

corresponding device

  • ARM7
  • Cortex-M3/M4
  • Nios® II (Standard)

Offerings

  • Source code
  • User's Manual
  • Reference environment

Evaluation environment

  • Silicon Labs EFM32TM Pearl Gecko Starter Kit
  • Silicon Labs EFM32TM Giant Gecko Starter Kit
  • Analog Devices ADuCM320 Evaluation Board
  • Terasic MAX® 10 Nios® II Embedded Evaluation Kit

Example of task transition display by TraceLogVisualizer

Article header rtos for iot equipment (scorpius) 2 2

Note 8: The trace log function may change the processing order of the entire system.
Note 9: It is necessary to implement the timer tick function separately.
Note 10: The time including the code of the trace log function is displayed.

Inquiry