Sierra Technology
Real-Time Kernel in Hardware
What is Sierra
Sierra is a Real-Time Kernel (RTK) implemented in hardware. It can be used as a stand-alone RTK or an accelerator to a Real-Time Operating System (RTOS).
The kernel handles all clock tick administration, semaphores, flags, timers, external interrupts and scheduler. The result is a faster system, where the CPU can be used to execute task code instead of administrate the RTOS.

The only time the CPU get interrupted by the RTK is when a task with higher priority need to start. To make the system predictable all the external interrupts are handled as separate tasks with their own priorities.
The scheduler uses fixed preemptive scheduling to make sure that the task with the highest priority will execute first.
The kernel can easily be integrated in any kind of system that has a CPU.
The size of the Sierra kernel varies depending on how many task it supports. Some parts of the Sierra can be implemented in local RAM blocks.

Features
• SW task scheduling algorithm is implemented in hardware, working in parallel to the CPU.
• Accelerates the scheduling, time tick, queue sorting and all the service calls to RTK
• 100% deterministic, Sierra needs 2-10 clock cycles per service call
• Tasks, semaphores, flags, timers for delay and periodic tasks with deadline control etc. in hardware
• Handles smart and simple external interrupts as task with priorities (do not disturbed high priority tasks)
• Advanced hardware interface to start blocked task
• Small software API, about 2Kb in memory
• Sierra is a long Life HW Component (technology independent design), same function and time behavior in the future

