ID 025C: An Introduction to the OSEK Operating System

Similar documents
ID B34L: HMI Development with QNX'S Momentics Toolchain and Connected Automotive Reference QNX CAR

ID 020C: Hardware-in-Loop: System Testing Without the System

ID 321L: KPIT GNU compiler plug-ins for HEW / KPIT Eclipse IDE

ID 024C: Auto Code Generation: The Shortest Distance From Idea to Implementation

Rapid RX600 System Development Using the RPDL and PDG

ID 730L: Getting Started with Multimedia Programming on Linux on SH7724

Driving the standard for optimized embedded systems

ID 220L: Hands-on Embedded Ethernet Design with an Open Source TCP/IP Stack

A11L: 78K0R Low Power MCU

ID 434L: Incorporating a Capacitive Touch Interface into Your Design

Model Based Development of Embedded Control Software

ID B30C: IP Video Surveillance Applications

Real-Time Operating Systems: Some Examples

Product Information Embedded Operating Systems

Low Power Design. Renesas Electronics America Inc Renesas Electronics America Inc. All rights reserved.

ID B33C: Developing Rich Graphical User Interfaces Optimized for Embedded Systems

Low Power Design Michael Thomas, Applications Engineer

CAN In A Day 2L01I. Renesas Electronics America Inc Renesas Electronics America Inc. All rights reserved.

Part I. Aknoledgement. Mauro Marinoni Objectives. Why an embedded O.S.?

RL78 Project Configuration Tips

Porting applications over the various conformance classes of Erika Enterprise

AUTOBEST: A United AUTOSAR-OS And ARINC 653 Kernel. Alexander Züpke, Marc Bommert, Daniel Lohmann

Software Development with an Open Source RTOS

ID 411C: Capacitive Touch User Interfaces and Hardwarebased

OSEK/VDX OSEK/VDX. Operating System. Operating System Specification 2.1r1. Version 2.1 revision November 2000

RL78 Ultra Low Power MCU Lab

Implementing Bootloaders on Renesas MCUs

RTA-OSEK Renesas SH2A with the WindRiver Compiler

SVENSK STANDARD SS-ISO :2005

RL78 Ultra Low Power MCU Lab

Research for OSEK/VDX-based Architecture of Vehicular Application Specific Operating System

An Introduction to e 2 studio

Growth outside Cell Phone Applications

RTA-OSEK Texas Instruments TMS570 with the TI Compiler

RTA-OSEK. fåñáåéçå=qêá`çêé=ñ~ãáäó=ïáíü=íüé=q~ëâáåö=`çãéáäéê. cé~íìêéë=~í=~=dä~ååé. oq^jlpbh. `çãéáäéêl^ëëéãääéêliáåâéê.

ID 216C: Go Wireless with Redpine and Renesas Wi-Fi Solutions

Freescale Semiconductor, Inc. OSEKturbo OS/DSP v.2.2 Technical Reference Revised <01/28/2004> For More Information:

Capacitive Touch Based User Interfaces and Hardware-based Solutions

422L: Introduction to the.net Micro Framework

RT-Druid reference manual

oscan Embedded Real-time Operating Systems

RTA-OSEK Freescale MPC55xx/56xx with the WindRiver Compiler

Freescale Semiconductor, Inc. OSEKturbo OS/MPC5xx v Technical Reference Because of last-minute software changes, some information in this manual

AUTOSAR proofs to be THE automotive software platform for intelligent mobility

Incorporating a Capacitive Touch Interface into Your Design

Operating System Provides

Secure Firmware Update Lab Session

Freescale Semiconductor, Inc. OSEKturbo OS/ARM7 v.2.2. Technical Reference

RTA-OSEK Infineon TriCore with the Green Hills Software Compiler

Using Software Building Blocks for Faster Time to Market

OSEK/VDX. Time-Triggered Operating System. Version 1.0. July 24 th 2001

RTA-OSEK Texas Instruments TMS470R1x with the TI Compiler

Embedding Audio into your RX Application

OSEKturbo OS/C167 v.2.2

ID 810C: Renesas On-line Virtual Power Laboratory Renesas VP

TDDD07 Real-time Systems Lecture 10: Wrapping up & Real-time operating systems

Using the TASKING RTOS for TriCore

OSEK Standard and experiments on microcontroller devices. Paolo Gai Evidence Srl

A Reliable Gateway for In-vehicle Networks

Freescale, the Freescale logo, AltiVec, C-5, CodeTEST, CodeWarrior, ColdFire, C-Ware, the Energy Efficient Solutions logo, mobilegt, PowerQUICC,

Learning Module 9. Managing the Sensor: Embedded Computing. Paul Flikkema. Department of Electrical Engineering Northern Arizona University

Copyright Metrowerks Corp. ALL RIGHTS RESERVED. Metrowerks reserves the right to make changes without further notice to any products herein to

Approximately half the power consumption of earlier Renesas Technology products and multiple functions in a 14-pin package

Standardized Basic System Software for Automotive Embedded Applications

Dr. Andreas Both / Zhang Enqin Automotive Runtime Software

Copyright Metrowerks Corp. ALL RIGHTS RESERVED. Metrowerks reserves the right to make changes without further notice to any products herein to

Course Introduction. Purpose: Objectives: Content: Learning Time:

ISO INTERNATIONAL STANDARD. Road vehicles Open interface for embedded automotive applications Part 4: OSEK/VDX Communication (COM)

An application-based EDF scheduler for OSEK/VDX

RTA-BSW v3.0.0 RTA-BSW Getting Started Guide Status: Release

Freescale Semiconductor, Inc MOTOROLA, ALL RIGHTS RESERVED Motorola reserves the right to make changes without further notice to any products he

Renesas Synergy MCUs Build a Foundation for Groundbreaking Integrated Embedded Platform Development

LibUSB - Create a Solution Without the Class Struggle

OSEKturbo Design Tool for Deterministic Scheduling v.1.1

Microcontrollers. Claude Dardanne Executive Vice President, General Manager, Microcontrollers, Memory & Secure MCU Group.

Wrapping a Real-time Operating System with an OSEK Compliant Interface a Feasibility Study

ERIKA Enterprise API Tutorial

Software integration challenge multi-core experience from real world projects

Freescale Semiconductor, Inc MOTOROLA, ALL RIGHTS RESERVED Motorola reserves the right to make changes without further notice to any products he

ZiLOG Real-Time Kernel Version 1.2.0

AUTOBEST: A microkernel-based system (not only) for automotive applications. Marc Bommert, Alexander Züpke, Robert Kaiser.

Chapter 15 ARM Architecture, Programming and Development Tools

Architecture concepts in Body Control Modules

Strato and Strato OS. Justin Zhang Senior Applications Engineering Manager. Your new weapon for verification challenge. Nov 2017

Version 2.0. April 16th, 1999

Implementing AUTOSAR. Zhang Enqin Shanghai Automotive Lab. Aug 27-28, 2009

Software Setup for developing realtime application with LEGO mindstorms NXT

The MPC500 Family of 32-bit Embedded Controllers from Motorola. Rudan Bettelheim MCU Marketing Manager 32-bit Embedded Controller Division, SPS

AN3423 Application note

DesignWare IP for IoT SoC Designs

MICROSAR-OS. Embedded Real-time Multitasking Operating Systems

OSEK/VDX. Communication. Version January 29, 2003

TECS Components Providing Functionalities of OSEK Specifications for ITRON OS

STM32 Cortex-M3 STM32F STM32L STM32W

KSAR Support. for. ST s SPC5 32-bit Automotive MCUs

RTA-OS TriCore/WindRiver Port Guide

CC05B RX Project Configuration Tips

RTA-OS TriCore/GHS Port Guide

A Study on Embedded Operating Systems for Automotive Electronics

Zilog Real-Time Kernel

Transcription:

ID 025C: An Introduction to the OSEK Operating System Version 1.0 1

James Dickie Product Manager for Embedded Software Real-time operating systems AUTOSAR software components Software logic analyzer Experience: 10 years working in Automotive software engineering Previous experience of real-time and embedded software engineering in the Oil & Gas and Telecoms industries Education: Ph.D. in Digital Signal Processing, University of Strathclyde, Scotland B. Eng. in Electronic Engineering, University of Strathclyde, Scotland 2

Renesas Technology and Solution Portfolio Microcontrollers & Microprocessors #1 Market share worldwide * ASIC, ASSP & Memory Advanced and proven technologies Solutions for Innovation Analog and Power Devices #1 Market share in low-voltage MOSFET** * MCU: 31% revenue basis from Gartner "Semiconductor Applications Worldwide Annual Market Share: Database" 25 March 2010 ** Power MOSFET: 17.1% on unit basis from Marketing Eye 2009 (17.1% on unit basis). 3

Renesas Technology and Solution Portfolio Microcontrollers & Microprocessors #1 Market share worldwide * ASIC, ASSP & Memory Advanced and proven technologies Solutions for Innovation Analog and Power Devices #1 Market share in low-voltage MOSFET** * MCU: 31% revenue basis from Gartner "Semiconductor Applications Worldwide Annual Market Share: Database" 25 March 2010 ** Power MOSFET: 17.1% on unit basis from Marketing Eye 2009 (17.1% on unit basis). 4 4

Microcontroller and Microprocessor Line-up Superscalar, MMU, Multimedia Up to 1200 DMIPS, 45, 65 & 90nm process Video and audio processing on Linux Server, Industrial & Automotive High Performance CPU, Low Power Up to 500 DMIPS, 150 & 90nm process 600uA/MHz, 1.5 ua standby Medical, Automotive & Industrial High Performance CPU, FPU, DSC Up to 165 DMIPS, 90nm process 500uA/MHz, 2.5 ua standby Ethernet, CAN, USB, Motor Control, TFT Display Legacy Cores Next-generation migration to RX General Purpose Up to 10 DMIPS, 130nm process 350 ua/mhz, 1uA standby Capacitive touch Ultra Low Power Up to 25 DMIPS, 150nm process 190 ua/mhz, 0.3uA standby Application-specific integration Embedded Security Up to 25 DMIPS, 180, 90nm process 1mA/MHz, 100uA standby Crypto engine, Hardware security 5

Microcontroller and Microprocessor Line-up Superscalar, MMU, Multimedia Up to 1200 DMIPS, 45, 65 & 90nm process Video and audio processing on Linux Server, Industrial & Automotive High Performance CPU, Low Power Up to 500 DMIPS, 150 & 90nm process 600uA/MHz, 1.5 ua standby Medical, Automotive & Industrial High Performance CPU, FPU, DSC Up to 165 DMIPS, 90nm process 500uA/MHz, 2.5 ua standby Ethernet, CAN, USB, Motor Control, TFT Display Legacy Cores Next-generation migration to RX General Purpose Up to 10 DMIPS, 130nm process 350 ua/mhz, 1uA standby Capacitive touch Ultra Low Power Up to 25 DMIPS, 150nm process 190 ua/mhz, 0.3uA standby Application-specific integration Embedded Security Up to 25 DMIPS, 180, 90nm process 1mA/MHz, 100uA standby Crypto engine, Hardware security 6

Innovation Take control of embedded projects with an OS and tools designed for the job 7

An Introduction to the OSEK Operating System Agenda What is an OSEK operating system? Why use OSEK OS Overview of OSEK OS objects and configuration How to build applications with OSEK OS OSEK OS: The future 8

What is an OSEK Operating System? An operating system allows you to partition and control applications running on a CPU, whilst responding efficiently to interrupts OSEK OS gives A very efficient scheduler for tasks and interrupts Creation of critical code sections Time-based triggering of tasks Support for debugging It does not provide Drivers for graphics, file systems or networks The ability to spawn new tasks Memory protection Support for multicore processors 9

Why use an OSEK Operating System? Motivation Embedded software development is often very product or project focussed Reduce Costs New Features New Hardware Shorter Development Cycles Deadlines Code Reuse Maintenance resulting in a loss of control in software development and direction 10

Why use an OSEK Operating System? Benefits Specification of standard interfaces Savings in costs and development time Enhanced quality of control unit software Independence from individual implementations Efficient design architecture: configurable and scaleable Hardware and compiler abstraction Static configuration gives low overheads Better partitioning and maintenance of application software Mature standard Used in millions of ECUs worldwide Used in all classes of vehicle electronics Body controllers Powertrain Chassis Multimedia 11

OSEK Origins OSEK/VDX resulted from the joining of French and German standardization efforts OSEK = Offene Systeme und deren Schnittstellen für die Elektronik im Kraftfahrzeug Open Systems and the Corresponding Interfaces for Automotive Electronics VDX = Vehicle Distributed executive OSEK is a joint project of the automotive industry Industry standard for an open-ended architecture for distributed control units in vehicles The resulting specifications are open for anyone to use OSEK has been standardised by the ISO ISO 17356 Road vehicles -- Open interface for embedded automotive applications 12

The OSEK Specifications Overview OSEK is more than just the operating system! A number of complimentary specifications exist A Binding is used to identify sets of specifications that work together Certification is available See www.osek-vdx.org for full details 13

The OSEK Specifications Operating System There are three specifications around the OS OSEK OS An event-driven operating system OSEK Implementation Language (OIL) A text-based description of an OSEK configuration Portable between development tools OSEK Run Time Interface (ORTI) An interface that allows a suitable debugger to see the OS status 14

The OSEK Specifications Communications OSEK also provides specifications for communication OSEK COM Allows communication over a CAN bus OSEK Network Management (NM) Serves as the basis for distributed control functions OSEK Time Time-triggered environment for highly-dependable systems OSEK Fault Tolerant COM (FTCOM) Provides interfaces and protocols for the fault tolerant transfer of data within networks 15

OSEK OS Objects Overview Tasks Allow blocks of functionality to be called at runtime ISRs Handlers for interrupts Events Allow synchronisation of tasks Resources Create critical sections of code, giving atomic access to data or peripherals Counters & alarms Allow time-based triggering of tasks 16

OSEK Configuration OSEK OS is statically configured All objects are defined in advance Cannot be created at runtime Stored as text in OIL file Allows portability between tools Allows efficient implementation Fast execution Small memory footprint Typically around 2% of total application overhead Allows real-time analysis With suitable implementation and tools Some constraints may apply CPU rtk_cpu { OS RTKOS { STATUS = EXTENDED; STARTUPHOOK = TRUE; SHUTDOWNHOOK = FALSE; ERRORHOOK = FALSE; PRETASKHOOK = FALSE; POSTTASKHOOK = FALSE; USEGETSERVICEID = FALSE; USEPARAMETERACCESS = FALSE; }; APPMODE OSDEFAULTAPPMODE { }; TASK B { PRIORITY = 1; SCHEDULE = FULL; ACTIVATION = 1; AUTOSTART = FALSE; }; TASK A { PRIORITY = 2; SCHEDULE = FULL; ACTIVATION = 1; AUTOSTART = FALSE; }; TASK osek_idle_task { SCHEDULE = FULL; ACTIVATION = 1; AUTOSTART = TRUE; }; ISR isr1 { CATEGORY = 2; }; 17

OSEK Conformance Classes OSEK OS supports 4 conformance classes Allows scalability in application development and efficient OS implementations Overhead per task increases with the number of features Basic Conformance Class 1 - Aimed at deeply embedded applications Tasks have unique priorities Tasks cannot wait for events Overheads Single activations only Basic Conformance Class 2 Tasks can share priorities Tasks cannot wait for events Queued activations Extended Conformance Class 1 BCC2 Tasks have unique priorities BCC1 Tasks can wait for events Single activations only Extended Conformance Class 2 - Aimed at higher-end applications Tasks can share priorities Tasks can wait for events Single activations only ECC1 ECC2 Features 18

How to build applications with OSEK Preemptive Application ISR 1 ISR 2 Category 1 ISRs to handle interrupts as fast as possible outside the OS Category 2 ISR handling sporadic interrupts with task activation Category 2 ISR from timer with 1ms tick Counter registering ticks Alarms activating periodic tasks ISR 3 ISR 4 Counter Alarm 10ms Alarm 5ms High priority sporadic task 10ms periodic task 5ms periodic task Idle task Time (ms) 19

How to build applications with OSEK Cooperative Application Tasks may create scheduling points to allow higher priority tasks to run cooperatively Can be useful for porting legacy code to an OS environment Category 2 ISRs handling task activations High priority tasks do not run immediately when activated Task creates scheduling point to avoid hogging the CPU ISR 1 ISR 2 ISR 3 Low priority task Mid-priority task High priority task Idle task Time (ms) 20

How to build applications with OSEK Using Resources to create critical sections OSEK OS implements the Priority Ceiling Protocol to avoid task deadlock Priority boost during critical section avoids deadlock! Higher priority task sharing the resource cannot preempt Higher priority task not sharing the resource can preempt Low priority task locks resource to create critical section Critical section provides atomic access to data or peripherals Time (ms) 21

How to build applications with OSEK Debugging support OSEK OS has two build levels Standard build: minimal error checking in order to be as small and fast as possible in production units Extended build: full error checking and debug hooks It is possible to retrieve an error code, the API that caused it and the parameters passed in the call ORTI allows a suitable debugger to see the OS status at runtime Which task is running What states the other tasks are in Trace the execution profile of the system 22

OSEK The Future OSEK has been a stable standard for 10 years However, the world moves on More features, new hardware, better concepts AUTOSAR www.autosar.org Builds on OSEK OS to offer: The same set of features and APIs Support for memory and timing protection Support for multicore CPUs XML configuration Key concepts of scalability and efficiency are maintained 23

Summary OSEK defines a suite of open standards OSEK OS is the operating system component of OSEK Efficient implementation via static configuration and conformance classes Deadlock free operation via the Priority Ceiling Protocol Build a variety of applications using the OS objects and controls Extensive debugging support Roadmap to the future via AUTOSAR 24