Real Time Operating System for SoC - PowerPoint PPT Presentation

1 / 45
About This Presentation
Title:

Real Time Operating System for SoC

Description:

Real Time Operating System for SoC Department of Computer and Information Science National Chiao Tung University Overview Motivation Characteristics of a ... – PowerPoint PPT presentation

Number of Views:268
Avg rating:3.0/5.0
Slides: 46
Provided by: rtlabCsN
Category:
Tags: soc | operating | real | system | time

less

Transcript and Presenter's Notes

Title: Real Time Operating System for SoC


1
Real Time Operating System for SoC
  • ???
  • Department of Computer and Information Science
  • National Chiao Tung University

2
Overview
  • Motivation
  • Characteristics of a Real Time Operating System
    (RTOS)
  • Components of an RTOS
  • Case Study VxWorks/pSOS, QNX, OSE, WinCE,
    Nucleus, eCos, Embedded Linux
  • Concluding Remarks

3
Motivation
  • SoC ? CPU ASIC Software

Monitoring, Control, Remote Management, Consumer
Devices
Applications
Middleware
Databases, Graphics, Java
Operating System
Linux, VxWorks, others...
PPC, 68k, MIPS, ARM, x86, etc.
CPU/ASIC
4
An Example Bluetooth Baseband
5
Software for Bluetooth
Host Application GSM/UMTS etc
WAP
Management SW
Bluetooth Adviser
WDP
API
SDP
RFCOMM
L2CAP
Link Control/HCI/UART
HCI Router

Link Manager
Lyra/Vega
Link Control
Baseband Controller
ARM 7TDMI
Radio Transceiver
6
Real Time OS
  • A RTOS is an abstraction from hardware and
    software programming
  • Shorter development time
  • Less porting efforts
  • Better reusability
  • Choosing a RTOS is important
  • High efforts when porting to a different OS
  • The chosen OS may have a high impact on the
    amount of resources needed

7
Characteristics of a RTOS
  • Single/Multi-platform OS
  • Lyra x86, ARM, MIPS
  • Multitasking
  • Priority
  • Real-time
  • Soft and hard real time requirements
  • Variants of RTOS

8
Real Time
  • Real-time does not mean speed, but keeping
    deadlines
  • Overall deterministic behavior
  • Guaranteed typically short response/reaction
    times

9
Soft and Hard Real Time Requirements
  • Soft real-time requirements
  • Breaking the time limit is unwanted, but is not
    immediately critical
  • Multimedia Streaming
  • Hard real-time requirements
  • Breaking the limit is always seen as a
    fundamental failure
  • Nuclear Power Plant Controller

10
Variants of RTOS
  • Pure real time OS

RT-Application
RTOS
Hardware
11
Pure Real Time OS
  • Especially designed for real-time requirements
  • Completely real-time compliant
  • Often usable for simple architecture
  • Advantage no or little overhead
  • Computing power, memory
  • Disadvantage limited functionality
  • Example eCos, Nucleus, pSOS, VxWork, QNX, OSE,
    Lyra

12
OS Real-Time Extensions
  • Extension of an OS by real-time components
  • Cooperation between RT- and non-RT parts
  • Advantages rich functionality
  • Disadvantage
  • No general real-time ability
  • Computing and memory resources
  • Example RT-Linux, Solaris, Windows NT

13
OS Real-Time Extensions
RT Applications
Applications
Standard OS
RT extension
Hardware
14
Components of a RTOS
  • Process(task) management
  • Scheduler
  • Synchronization mechanism
  • Interprocess communication (IPC)
  • Semaphores
  • Memory management
  • Interrupt service mechanism
  • I/O management
  • Hardware abstraction layer
  • Development Environments
  • Communication subsystems (Option)
  • Board Support Packages (BSP)

15
Situation of the RTOS Market
  • A vast of RTOS on the market
  • Nucleus Plus, OSE, Virtuoso, ThreadX, WinCE, AMX,
    RTX, LynxOS, VRTX, uC/OS II, OS-9, On Time,
    VxWork, pSOS, EPOC, eCos
  • Proprietary OSs
  • Lyra/Vega

16
VxWorks/pSOS
  • Manufacturer WindRiver System
  • Largest player on the market
  • Application examples HP laser printers, Mars
    Probe pathfinder, Sony Walkman, digital camera,
    Internet switch and routers,
  • Characteristics
  • Support many architectures
  • Tool Tornado
  • No memory protection by OS
  • OS ROM size scalable from 80KB to 500KB
  • RAM requirements at least 50KB
  • License royalty professional service

17
pSOS
18
QNX
  • Manufacturer QNX Software Systems Ltd (Canada)
  • Support many 32-bits architectures x86, MIPS,
    PPC, ARM,
  • Applications medical technology, automotive
    technology,
  • Characteristics
  • Microkernel architecture
  • Full MMU support
  • GUI support
  • License royalty
  • Free for non-commercial use

19
QNX
20
OSE
  • Manufacturer Enea Data (Sweden)
  • Enea has a long tradition in the embedded area
  • Climber of the last two years
  • Main applications Telecomm (Ericsson, Nokia)
  • Characteristics
  • Different kernels for different application areas
  • The smallest kernel needs only 6 functions
  • Principle of the kernel message-passing
  • Good connection to the SDL tool chain

21
Nucleus
  • Manufacturer Accelerated Technology
  • Application wireless equipments (handsets),
    internet access devices
  • Characteristics
  • Source code license no royalty
  • Small memory footprint and CPU overheads

22
eCos
  • Manufacturer redhat (Cygnus)
  • Applications wireless applications, internet
    access, embedded applications
  • Characteristics
  • Open source (GNU license)
  • Implemented in C
  • Embedded configurable RTOS
  • Memory footprint from 10s KB to 100s KB

23
eCos configuration tool
24
Windows CE
  • Manufacturer Microsoft
  • Application areas PDA, Industrial embedded
    systems, game consoles
  • Characteristics
  • Win32 API
  • Own tool chain (Visual Studio)
  • For most well-known 32 bit platforms with MMU
  • Typical memory requirements a few MBs
  • Relative high royalty

25
Windows CE
Shells
Internet Explorer
Remote Connectivity
Microsoft Programming Interfaces Win32, COM, MFC,
ATL, ...
Communication Interfaces (Winsock, RAS, TAPI,
network)
Kernel OAL
GWE
Object Store (File Systems)
IrDA
TCP/IP
Unimodem
PPP/SLIP
IR Miniport
Ethernet Miniport
NDIS
Native Stream Interface Drivers
Other Drivers
Serial
26
Embedded Linux
  • Open Source
  • Almost Free
  • Community
  • Code Quality
  • Robust
  • Brand Name
  • Internet Platform
  • IBM will invest 1 Billion per year for Linux

27
Embedded and Real-Time Linux Solution Providers
  • Lynx -- Blue Cat Linux
  • MontaVista -- Hard Hat Linux
  • Lineo -- Embedix Linux
  • FSMLabs -- RTLinux
  • Zentropix -RealTime Linux
  • Coollogic -- On-Channel Linux
  • Redhat
  • IBM

28
A Typical Embedded Linux
Embedded Linux OS
29
Embedded Linux For Internet Appliances
? Browser (1M bytes)
GW32 (800 k bytes)
Embedded Linux OS(500 k bytes)
ICA (500 k bytes)
GW32 (800 k bytes)
Embedded Linux OS(500 k bytes)
30
FIC Aqua 3200 WebPAD
  • 7.4 DSTN LCD
  • Crusoe 3120 400MHz
  • 16M Flash
  • 64M RAM
  • Embedded Linux
  • Netscape Web Browser

31
Linux PDA - Samsung YOPY
  • 4.0 Color TFT LCD
  • 206 MHz ARM, 32M DRAM, 32M Flash
  • MP3 player, Voice recording, MPEG
  • ARMLinux
  • Digital Camera
  • TV (NTSC)

32
Lineo Embedix
  • Embedix Linux Installer
  • text based
  • The Shell
  • Ash (much smaller than Bash)
  • The Kernel Binary
  • Linux kernel with small number of device drivers
  • The C library ( 600K)
  • Reduced Glibc (with tool support)

33
The Size of Embedix 1.0
  • The minimum target size for Embedix Linux on x86
  • 4 MB of RAM and 1MB of ROM, Flash
  • A demo system with v2.0 Linux kernel, web server,
    shell, DHCP server, CGI scripts, web camera
    driver
  • 4 MB RAM and 1MB Floppy
  • Lineo Web Browser (HTML 3.2)
  • 5 MB of Flash and 16MB of RAM

34
Embedix Linux SDK
35
Two Classes of Embedded Linux
  • 500KB kernel
  • 2MB Flash vs. 16MB Flash
  • Microbrowser vs. Netscape
  • 4M DRAM vs. 32MB 64MB DRAM

36
Linux kernel
  • Design Focus Application throughput
  • Linux use interrupt off critical section
    management
  • Linux kernel is non-preemptable
  • Linux compromises the timely selection of
    real-time processes for throughput
  • Linux allow nested interrupts (depends on
    hardware)

37
Current Linux Solutions
  • Design application around the problems
  • Directly use interrupt service routines
  • Avoid known excessive interrupt off periods in
    Linux
  • If a process component is required in the
    real-time control path, then consider aggregate
    system loading
  • Use real-time scheduler instead

38
Hybrid Kernel
  • RTLiux
  • run Linux as the idle task
  • real-time threads are executing in real-time
    kernel
  • interrupt off/on operations by Linux are emulated
    by lower level kernel
  • complex and difficult for application development

39
RTLinux
40
Add real-time control to Linux directly
  • Preemptive points in Linux kernel
  • A rate monotonic scheduler (UC Irvine)
  • The KURT program at University of Kansas
  • Linux SRT (soft real-time) project

41
MontaVista
  • Measure the interrupt off periods
  • Provide a priority driven real-time process
    scheduler with fixed and low overhead for process
    creation and dispatch
  • Measure process preemption delays
  • Develop, access and provide preemptable Linux
    kernel

42
EL/IX Delivers The Vision for Embedded Computing
Development Environment Including GNU Tools (gcc,
gdb, etc.)
Manual or Auto Configuration
User Config
API Config
EL/IX API
eCos or Other RTOS
Kernel-level Config
LINUX
PDA
Deeply Embedded
43
Concluding Remarks
  • How to select a RTOS for your own SoC ?
  • What are the requirements of the applications?
  • Which OS features are really necessary?
  • How hard are the real time constraints?
  • Is the OS available for the chosen hardware
    platform?
  • What are the overall cost of using the OS
    including the license fee, tool cost, training
    and royalty?
  • Consider software issues from very beginning

44
Wireless Multimedia PDA SoC
45
Embedded Linux with Real Time Extension
  • Cadence Virtual Component Co-design
  • Hardware/Software Co-design
  • Mentor Graphics Seamless for WLAN MAC
    verification
  • Linux Driver(ISS) MAC (ModelSim)
  • Intel StrongARM development board /ARM ASIC
    Integrator board
  • Embedded Linux development
  • MPEG 4 Codec
Write a Comment
User Comments (0)
About PowerShow.com