DOWNLOAD COURSE PRESENTATIONS. Scan to download course presentations



Similar documents
Virtualization for Hard Real-Time Applications Partition where you can Virtualize where you have to

Virtualization: Hypervisors for Embedded and Safe Systems. Hanspeter Vogel Triadem Solutions AG

Sierraware Overview. Simply Secure

Notes and terms of conditions. Vendor shall note the following terms and conditions/ information before they submit their quote.

Flight Processor Virtualization

Embedded Development Tools

Building Embedded Systems

Attention. restricted to Avnet s X-Fest program and Avnet employees. Any use

Development Kit (MCSDK) Training

Comprehensive Security for Internet-of-Things Devices With ARM TrustZone

PikeOS: Multi-Core RTOS for IMA. Dr. Sergey Tverdyshev SYSGO AG , Moscow

CSE597a - Cell Phone OS Security. Cellphone Hardware. William Enck Prof. Patrick McDaniel

Android Virtualization from Sierraware. Simply Secure

ARINC 653. An Avionics Standard for Safe, Partitioned Systems

Mentor Embedded IVI Solutions

VxWorks Guest OS Programmer's Guide for Hypervisor 1.1, 6.8. VxWorks GUEST OS PROGRAMMER'S GUIDE FOR HYPERVISOR

Applying Multi-core and Virtualization to Industrial and Safety-Related Applications

Real-time Operating Systems. VO Embedded Systems Engineering Armin Wasicek

Michele Jr De Candia Curriculum Vitae

Java Environment for Parallel Realtime Development Platform Independent Software Development for Multicore Systems

Network connectivity controllers

Virtualization in the ARMv7 Architecture Lecture for the Embedded Systems Course CSD, University of Crete (May 20, 2014)

Android Development: a System Perspective. Javier Orensanz

Deeply Embedded Real-Time Hypervisors for the Automotive Domain Dr. Gary Morgan, ETAS/ESC

Hardware accelerated Virtualization in the ARM Cortex Processors

Virtual Machines.

Using Linux in Medical Devices: What Developers and

The evolving ARINC 653 standard and it s application to IMA

Developing reliable Multi-Core Embedded-Systems with NI Linux Real-Time

ARM TrustZone and KVM Coexistence with RTOS For Automotive

Security Security by Separation

Linux. Reverse Debugging. Target Communication Framework. Nexus. Intel Trace Hub GDB. PIL Simulation CONTENTS

Introduction to the NI Real-Time Hypervisor

Leveraging Thin Hypervisors for Security on Embedded Systems

WIND RIVER SECURE ANDROID CAPABILITY

KeyStone Multicore. Ecosystem

Mentor Embedded Automotive Solutions

Embedded Linux Platform Developer

<t base Trusted Application Development

A Review of Different Comparative Studies on Mobile Operating System

Reminders. Lab opens from today. Many students want to use the extra I/O pins on

Zynq-7000 Platform Software Development Using the ARM DS-5 Toolchain Authors: Simon George and Prushothaman Palanichamy

Security in SCADA solutions

High Performance or Cycle Accuracy?

Multi-core Programming System Overview

Model-based system-on-chip design on Altera and Xilinx platforms

VtRES Towards Hardware Embedded Virtualization Technology: Architectural Enhancements to an ARM SoC. ESRG Embedded Systems Research Group

Wind River ICE 2. Table of Contents. Key Features

A Data Centric Approach for Modular Assurance. Workshop on Real-time, Embedded and Enterprise-Scale Time-Critical Systems 23 March 2011

VxWorks Licenses for EPICS Application Developers Andrew Johnson

How To Secure Your Computer With Libreware Libreroview (Windows) And Libreros (Windows 2) (Windows 3.5) (For Windows) (Powerpoint) (Networking)

Complete Integrated Development Platform Copyright Atmel Corporation

evm Virtualization Platform for Windows

Secure Containers. Jan Imagination Technologies HGI Dec, 2014 p1

Experience with the integration of distribution middleware into partitioned systems

TRACE32 Documents... ICD In-Circuit Debugger... Processor Architecture Manuals... TriCore... TriCore Monitor... 1

FPGA Accelerator Virtualization in an OpenPOWER cloud. Fei Chen, Yonghua Lin IBM China Research Lab

ISOLATING UNTRUSTED SOFTWARE ON SECURE SYSTEMS HYPERVISOR CASE STUDY

Red Hat Network Satellite Management and automation of your Red Hat Enterprise Linux environment

Red Hat Satellite Management and automation of your Red Hat Enterprise Linux environment

Real Time Developer Studio. Emmanuel Gaudin

Embedded & Real-time Operating Systems

Compromise-as-a-Service

Technical Data Sheet SCADE R17 Solutions for ARINC 661 Compliant Systems Design Environment for Aircraft Manufacturers, CDS and UA Suppliers

Simplifying Embedded Hardware and Software Development with Targeted Reference Designs

Chapter 14 Virtual Machines

Zynq SATA Storage Extension (Zynq SSE) - NAS. Technical Brief from Missing Link Electronics:

IOTIVITY AND EMBEDDED LINUX SUPPORT. Kishen Maloor Intel Open Source Technology Center

Developing software for Autonomous Vehicle Applications; a Look Into the Software Development Process

Virtualization and Other Tricks.

WIND RIVER HYPERVISOR

Università Degli Studi di Parma. Distributed Systems Group. Android Development. Lecture 1 Android SDK & Development Environment. Marco Picone

ARM* to Intel Atom Microarchitecture - A Migration Study

POSIX. RTOSes Part I. POSIX Versions. POSIX Versions (2)

AN INTEL COMPANY WIND RIVER AUTOMOTIVE SOLUTIONS

9/26/2011. What is Virtualization? What are the different types of virtualization.

SPACE AND TIME PARTITIONING WITH HARDWARE SUPPORT FOR SPACE APPLICATIONS

Enea Hypervisor : Facilitating Multicore Migration with the Enea Hypervisor

Enhancing Hypervisor and Cloud Solutions Using Embedded Linux Iisko Lappalainen MontaVista

Virtualization. Dr. Yingwu Zhu

Eli Levi Eli Levi holds B.Sc.EE from the Technion.Working as field application engineer for Systematics, Specializing in HDL design with MATLAB and

ANDROID DEVELOPER TOOLS TRAINING GTC Sébastien Dominé, NVIDIA

Real- Time Mul,- Core Virtual Machine Scheduling in Xen

KVM in Embedded Requirements, Experiences, Open Challenges

CycurHSM An Automotive-qualified Software Stack for Hardware Security Modules

POSIX : Certified by IEEE and The Open Group a briefing.

Achieving Real-Time Performance on a Virtualized Industrial Control Platform

STLinux Software development environment

IOMMU: A Detailed view

OpenAMP Framework for Zynq Devices

Going Linux on Massive Multicore

PERFORMANCE ANALYSIS OF KERNEL-BASED VIRTUAL MACHINE

SCADE System Technical Data Sheet. System Requirements Analysis. Technical Data Sheet SCADE System

Enhanced Project Management for Embedded C/C++ Programming using Software Components

Mobile Operating Systems. Week I

Example of Standard API

Transcription:

DOWNLOAD COURSE PRESENTATIONS 2 Scan to download course presentations

ZYNQ OS SUPPORT 3

AGENDA 4 > OS/Ecosystem Overview > Xilinx Petalinux/OSL > AMP Reference Design Information > Linux Partial Reconfiguration Demo

OPERATING SYSTEMS OS IS THE FOUNDATION FOR ALL EMBEDDED SOFTWARE 5 Applications Libraries & APIs Operating System Custom Processing System Programmable Logic Linux (incl variants) is #1 OS requested for Zynq

COMPREHENSIVE SOFTWARE ECOSYSTEM SUPPORT 6 Applications Libraries & APIs Operating System Processing System Custom Programmable Logic ARM Ecosystem enables comprehensive OS & Tools support

ECOSYSTEM SUPPORT WELL SUPPORTED BY POPULAR OSES AND TOOLS OS & Libraries Green Hills Integrity Open Source Linux ENEA OSE Wind River VxWorks PetaLinux ThreadX FreeRTOS Android Windows CE ETAS RTA-OS µtron/t-kernel Mentor Nucleus (TBD) Micrium µc/os Wind River Linux (TBD) ENEA Linux (TBD) Available Now Compilers CodeSourcery GNU compiler ARM compiler Diab compiler Microsoft Visual C++ IDE/Debuggers Mentor CodeBench ARM DS-5 WorkBench Lauterbach Trace32 ENEA Optima YDC microview Plus Visual Studio 2008 Mentor EDGE Express Logic BenchX Modeling/Virtual Platform QEMU PS Models (Oct, 2011) MATLAB/Simulink (2H2012) NI LabView (2H2012) 7

AGENDA 8 > OS/Ecosystem Overview > Xilinx Petalinux / OSL > Multi-OS > Linux Partial Reconfiguration Demo

PETALOGIX IS NOW XILINX Xilinx acquires PetaLogix, Brisbane, Australia > PetaLogix develops PetaLinux > PetaLinux is a commercial Linux distribution and development environment for the Zynq AP SOC as well as for all Xilinx FPGA families with MicroBlaze and PowerPC processors The acquisition brings to Xilinx an experienced Linux team > Headed by Dr. John Williams, founder and CEO of PetaLogix > All experts in Linux and development tools and Xilinx products Page 9

LINUX / PETALINUX ROADMAP 10 Xilinx is merging the formerly independent source trees for PetaLinux and Xilinx Open Source Linux into a single GIT PetaLinux will be derived from the OSL kernel > PetaLinux releases will be based on a branch of the OSL GIT and will support both Zynq and MicroBlaze > PetaLinux will continue to provide value-add in the form of ease of use, tools, file system, and customization. > Development branch Kernels on the OSL GIT will have varying degrees of support and testing for Zynq and MicroBlaze

LINUX KERNEL New Feature PetaLinux 12.12 PetaLinux 13.04 PetaLinux 13.10 Kernel Version 3.6 3.6 goal to improve power management which could lead to 3.7 kernel 3.11 (+/-) PetaLinux BSP ZC706, Improved Zed board support Non planned TBD Other Features RPMsg/RemoteProc TBD Select drivers for next generation silicon (NDA) Key Milestones: > December 2012: OSL GIT and PetaLinux GIT Synchronized MicroBlaze kernel version synchronized with Zynq kernel version Page 11

BRANDING & PRICING Branding > There is value associated with the PetaLogix brand that will help in transitioning into a Xilinx branded product Existing PetaLogix customers will feel minimum risk from the acquisition Potential customers will fell minimum risk because PetaLinux is now a Xilinx backed product PetaLinux Licenses Pricing: > On a per-developer basis, with no per-unit or per-project royalties or fees > Node locked, active for 12 months, and are tiered on support level Zynq Edition, 12 month license, Basic Support - $7K* Zynq Edition, 12 month license, Premium Support - $14K* Zynq Edition, 12 month license, AMP Support MicroBlaze / PPC edition, 12 month license, Basic Support - $6K MicroBlaze / PPC edition, 12 month license, Premium Support - $12K Page 12

ZYNQ-7000 AP SOC LINUX COMPONENTS COMPLETE SET OF OPEN SOURCE LINUX SOFTWARE COMPONENTS 13 Linux Source GIT Repository Industry Standard Eclipse IDE & GNU tool chain QEMU system model for software debug Developer Community Wiki and Forums

AGENDA 14 > OS/Ecosystem Overview > Xilinx Petalinux / OSL > Multi-OS > Linux Partial Reconfiguration Demo

OPTIONS FOR MULTI-OS SUPPORT Multi-OS Implementations can be implemented in several ways > AMP: Bare-Metal/Bare-Metal > AMP: Linux/Bare-Metal > Unsupervised AMP: (Linux + FreeRTOS) > Hypervisor (Type 1 - e.g. Wind River, GHS, SYSGO, Sierraware, General Dynamics Broadband) > ARM TrustZone-based Solutions (e.g. GlobalPlatforms) > Dual-kernel Linux (e.g. real-time Linux) Key selection factors: > OS support > Software stack Isolation/separation and certification requirements > Performance Among the alternatives that are considered, performance is presumed to be equivalent

BARE-METAL/BARE-METAL AMP Executable Code Executable Code CPU 0 CPU 1 ZYNQ Separate executables run on CPU 0 and CPU 1 > FSBL is used to load both applications and start CPU 0. > CPU 0 is responsible for starting CPU 1 Bare-metal applications run in pre-defined memory spaces > Within the design example of the XAPP, neither CPU 1 nor CPU 0 use MMU to protect against accessing the other CPU s memory space > However, the MMU can be configured with just a few lines of code to isolate CPU 0 from CPU 1 Implementation Approach > Communications between applications is available via OCM > OCM caching is disabled for improved determinism Use Case now supported by Xilinx WTS > Application Note and reference files available February, 2013

LINUX/BARE-METAL AMP Linux runs on CPU 0 > Linux then starts CPU 1 executable that was loaded into memory by FSBL Bare-metal application runs in dedicated memory space on CPU 1 > MMU 0 is used by Linux as normal; MMU 1 is used to define the memory context of bare-metal application, but no special coding is required > Bare-metal application does not run within the context of Linux memory > Linux doesn't know about the memory used by CPU 1 MMU can be used to contain application > MMU defines what addresses (memory and AXI devices) application may normally access > CPU 1 is not restricted from accessing Linux memory space or shared devices (ICD or SCU), but Linux can detect if/when that occurs and take appropriate action. Implementation Approach Use Case now supported by Xilinx WTS > Application Note and reference files available February, 2013

UNSUPERVISED AMP LINUX + FREERTOS Non Critical Apps Critical Tasks Linux FreeRTOS Kernel CPU 0 CPU 1 ZYNQ Firmware runs in dedicated memory space at address 0x0000_0000 > FreeRTOS Kernel does not run within the context of Linux memory > But, Linux can read and write this address space just like it can read any other device memory MMU limits how Firmware may affect Linux > MMU defines what addresses (memory and AXI devices) FreeRTOS may normally access > Granularity of 1 MB (if two devices lie in a 1 MB area then you can not isolate one without the other) > The GIC controller is shared between Firmware and Linux Interrupts are explicitly routed to Firmware or Linux from GIC Firmware is not prevented from reconfiguring GIC Linux kernel is not prevented from corrupting Firmware

HYPERVISORS Non Critical Apps Critical Tasks General Purpose OS Kernel RTOS Kernel Hypervisor CPU 0 CPU 1 ZYNQ Hypervisor = additional layer of software running at processor privileged level > Very small size (typically ~ 10k 100k LOC), Often certifiable > Imposes performance penalty of approximately 5% Creates partitions in which software stacks run > Hypervisor can access all system resources > Partitions can access only what is allowed by Hypervisor > Can run more than two partitions/operating systems Partitions > Memory, PCIe and AXI Devices, Interrupts, Processor cores Virtualizes > Shared devices (think proxy device)

SIERRAWARE TRUSTED EXECUTION ENVIRONMENT AND HYPERVISOR Sierraware / OpenVirtualization.org > http://www.sierraware.com/ > October, 2012 > ARM Global Platforms compliant, Trusted Execution Environment Open Source GlobalPlatform TEE Best use cases: A TEE used for execution of point-specific application stacks from the regular software stack Examples: crypto, DRM, key storage Running OS Xilinx Zynq Linux 3.0 Global Platforms TEE POSIX RTOS Other additional guest OS possible. Details TBD

SYSGO OS AND HYPERVISOR FOR SAFETY CRITICAL APPLICATIONS SYSGO > Available now! > Safe and secure OS and Hypervisor Best use cases: Basis for safety critical solutions» DO-178B, EN 50128, IEC 62304, IEC 61508, ISO 26262, IEC 61513, ARINC-653 RTOS + OS Automotive, A&D, ISM Underlying technology for OpenSynergy AutoSAR solution Expected Guest OS Xilinx Zynq Linux 3.0 Sysgo RTOS (PikeOS) POSIX PSE52 RTOS Many additional guest OS possible. Previously supported examples include: Bare-metal, In-house RTOS, uitron, AutoSAR, OSEK, RT Java Android, Win EC7

GENERAL DYNAMICS BROADBAND(OK-LABS) RTOS AND HYPERVISOR FOR EMBEDDED SECURITY CRITICAL APPLICATIONS General Dynamics Broadband (OK-Labs) > Demonstrable Q1, 2013 > Embedded Real-Time Hypervisor Best use cases: Automotive, A&D, ISM Expected Running OS Linux + RTOS Many additional guest OS possible. Previously supported examples include: Android, Symbian, GENIVI, QNX ecos, ThreadX, Nucleus, esol T-Engine, Electrobit, Vector Q1, 2013

WIND RIVER HYPERVISOR V2.0 SUPPORTING SAFETY PROFILES Wind River > Demonstrable Q1, 2013 > Safe and secure OS and Hypervisor Wind River hypervisor uses ARM TrustZone Consolidation and re-use of applications combined with safety certification Best Use Cases Virtual Board (Certified) DO-178/IEC61508 Certified Application(s) VxWorks Cert Guest OS Unmanned Systems Integrated Modular Avionics (aircraft platforms) Industrial Control, Railway and Nuclear applications: IEC61508/EN50128 Safety Profile for IEC 61508 SIL3 and DO-178B/C Level A VxWorks Cert Guest OS (GOS) to support safety requirements Wind River Linux GOS Wind River Hypervisor (Safety Profile) Board Support Package Multi-Core ARM Target Hardware Virtual Board (Uncertified) Uncertified Application(s) Wind River Linux Guest OS (or VxWorks GOS) Q1, 2013

GREEN HILLS SOFTWARE Green Hills Software > Integrity is ported to Zynq > Integrity forms baseline for their separation kernel > No active discussions around hypervisor TBD

TRUSTZONE-BASED SOLUTION Trusted Apps Normal Tasks Secure world Trusted Software General Purpose OS Non-secure world CPU 0 CPU 1 ZYNQ TZ supports a secure world and non secure world > Secure and Non Secure run Trusted and Non-Trusted software respectively > Non-secure world software can access only non-secure resources > Secure world software can access all system resources > The Secure World is secured only from the TrustZone Unsecure World (i.e. local) > The Secure World is subject to external attacks Trusted software often comprises of limited software functionality: DRM, encryption, password entry, etc. > Secure World API: Global Platform (http://www.globalplatform.org) DRM, crypto, NetFlix, etc. > If Secure World software can not be safety certified then the whole system may not be certifiable Zynq TrustZone Protection can be applied to > Memory locations, Cache, AXI Devices, Interrupts

AGENDA 26 > OS/Ecosystem Overview > Xilinx OSL > AMP Reference Design Information > Linux Partial Reconfiguration Demo

AGENDA 27 > Thank you!