Real-Timeness and System Integrity on a Asymmetric Multi Processing configuration

Similar documents
Use ZCU102 TRD to Accelerate Development of ZYNQ UltraScale+ MPSoC

Designing a Multi-Processor based system with FPGAs

i.mx 7 - Hetereogenous Multiprocessing Architecture

Copyright 2014 Xilinx

Asymmetric MultiProcessing for embedded vision

Introduction to Embedded System Design using Zynq

Copyright 2016 Xilinx

SDSoC: Session 1

Heterogeneous Software Architecture with OpenAMP

Optimizing HW/SW Partition of a Complex Embedded Systems. Simon George November 2015.

Designing, developing, debugging ARM Cortex-A and Cortex-M heterogeneous multi-processor systems

Using VxWorks BSP with Zynq-7000 AP SoC Authors: Uwe Gertheinrich, Simon George, Kester Aernoudt

A So%ware Developer's Journey into a Deeply Heterogeneous World. Tomas Evensen, CTO Embedded So%ware, Xilinx

Partitioning of computationally intensive tasks between FPGA and CPUs

Making Full use of Emerging ARM-based Heterogeneous Multicore SoCs

Optimizing ARM SoC s with Carbon Performance Analysis Kits. ARM Technical Symposia, Fall 2014 Andy Ladd

HKG : OpenAMP Introduction. Wendy Liang

Heterogeneous multi-processing with Linux and the CMSIS-DSP library

Development of Real-Time Systems with Embedded Linux. Brandon Shibley Senior Solutions Architect Toradex Inc.

Software Design Challenges for heterogenic SOC's

Parallella Linux - quickstart guide. Antmicro Ltd

SoC Systeme ultra-schnell entwickeln mit Vivado und Visual System Integrator

Designing with ALTERA SoC Hardware

Getting the Most out of Advanced ARM IP. ARM Technology Symposia November 2013

借助 SDSoC 快速開發複雜的嵌入式應用

MYC-C7Z010/20 CPU Module

SoC Systeme ultra-schnell entwickeln mit Vivado und Visual System Integrator

Introduction to SoC+FPGA

Software Driven Verification at SoC Level. Perspec System Verifier Overview

Integrating ROS and ROS2 on mixed-critical robotic systems based on embedded heterogeneous platforms

Designing with NXP i.mx8m SoC

Abstract. Testing Parameters. Introduction. Hardware Platform. Native System

Leverage Vybrid's asymmetrical multicore architecture for real-time applications by Stefan Agner

MATLAB/Simulink 기반의프로그래머블 SoC 설계및검증

EDGE COMPUTING & IOT MAKING IT SECURE AND MANAGEABLE FRANCK ROUX MARKETING MANAGER, NXP JUNE PUBLIC

S32 SDK for Power Architecture Release Notes Version EAR

An Introduction to Asymmetric Multiprocessing: when this architecture can be a game changer and how to survive it.

ARM Cortex-A9 ARM v7-a. A programmer s perspective Part1

Zynq Architecture, PS (ARM) and PL

Simplify System Complexity

FA3 - i.mx51 Implementation + LTIB

«Real Time Embedded systems» Multi Masters Systems

OpenAMP Discussion - Linaro2018HK. Copyright 2018 Xilinx

Zynq-7000 All Programmable SoC Product Overview

Simplify System Complexity

Smart Antennas and Hypervisor: Enabling Secure Convergence. July 5, 2017

FPQ6 - MPC8313E implementation

Hardware Software Bring-Up Solutions for ARM v7/v8-based Designs. August 2015

Lab Exercise 4 System on chip Implementation of a system on chip system on the Zynq

ARM CORTEX-R52. Target Audience: Engineers and technicians who develop SoCs and systems based on the ARM Cortex-R52 architecture.

On the Security Evaluation of the ARM TrustZone Extension in a Heterogeneous SoC

Designing Security & Trust into Connected Devices

Designing Security & Trust into Connected Devices

Kontron s ARM-based COM solutions and software services

WP3: GPS and Time-Tagging Case Western Reserve University (Cleveland, USA)

MYD-C7Z010/20 Development Board

Integrating LogiCORE SEM IP in Zynq UltraScale+ Devices

Designing Security & Trust into Connected Devices

ECE 5775 (Fall 17) High-Level Digital Design Automation. Hardware-Software Co-Design

Isolation Methods in Zynq UltraScale+ MPSoCs

ECEN 449: Microprocessor System Design Department of Electrical and Computer Engineering Texas A&M University

Embedded Systems: Architecture

OP-TEE Using TrustZone to Protect Our Own Secrets

Early Software Development Through Emulation for a Complex SoC

GigaX API for Zynq SoC

Interrupts in Zynq Systems

Trustzone Security IP for IoT

CoreTile Express for Cortex-A5

Secure Boot in the Zynq-7000 All Programmable SoC

Multi-core microcontroller design with Cortex-M processors and CoreSight SoC

Cortex-A9 MPCore Software Development

MYD-C437X-PRU Development Board

Protecting Embedded Systems from Zero-Day Attacks

Software Quality is Directly Proportional to Simulation Speed

PRU Hardware Overview. Building Blocks for PRU Development: Module 1

Real Safe Times in the Jailhouse Hypervisor Unrestricted Siemens AG All rights reserved

Application Note. Powering Xilinx Zynq with DA9061/2/3 AN-PM-087

PDK (Platform Development Kit) Getting Started. Automotive Processors

ECE 448 Lecture 15. Overview of Embedded SoC Systems

FPQ9 - MPC8360E implementation

MYC-C437X CPU Module

HEAD HardwarE Accelerated Deduplication

Porting VME-Based Optical-Link Remote I/O Module to a PLC Platform - an Approach to Maximize Cross-Platform Portability Using SoC

Getting Started with TargetOS on the ZedBoard 1 Introduction

Simulation Based Analysis and Debug of Heterogeneous Platforms

Hardware-Software Co-Design and Prototyping on SoC FPGAs Puneet Kumar Prateek Sikka Application Engineering Team

Designing with ALTERA SoC

Hardware-Assisted On-Demand Hypervisor Activation for Efficient Security Critical Code Execution on Mobile Devices

SBC8140 Single Board Computer

M2-SM6-xx - i.mx 6 based SMARC Modules

Speeding AM335x Programmable Realtime Unit (PRU) Application Development Through Improved Debug Tools

Operating Systems Course 2 nd semester 2016/2017 Chapter 1: Introduction

FTF-CON-F0403. An Introduction to Heterogeneous Multiprocessing (ARM Cortex -A + Cortex- M) on Next-Generation i.mx Applications Processors

Performance Optimization for an ARM Cortex-A53 System Using Software Workloads and Cycle Accurate Models. Jason Andrews

Embedded Systems: Hardware Components (part II) Todor Stefanov

Simplify rich applications & hard real-time

Parallel Simulation Accelerates Embedded Software Development, Debug and Test

Multicore platform towards automotive safety challenges

LEON4: Fourth Generation of the LEON Processor

DS1104 R&D Controller Board Single-board PCI hardware for use in PCs Set of intelligent I/O on-board

Transcription:

Real-Timeness and System Integrity on a Asymmetric Multi Processing configuration D&E Event November 2nd Relator: Manuele Papais Sales & Marketing Manager 1

DAVE Embedded Systems DAVE Embedded Systems' HEADQUARTER Via Talponedo, 29/A 33080 Porcia, Italy DAVE Embedded Systems' BRANCH OFFICE Maximilianstrasse, 13 80539 München, Germany

DAVE Embedded Systems Sales Offices: USA California UK Swindon France Paris Israel Tel Aviv Belgium / The Netherlands Telerex B.V. Now opening: Japan DAVE Embedded Systems' HEADQUARTER Via Talponedo, 29/A 33080 Porcia, Italy DAVE Embedded Systems' BRANCH OFFICE Maximilianstrasse, 13 80539 München, Germany

DAVE Embedded Systems Concept and Design of Embedded Systems

DAVE Embedded Systems Solutions Provider Concept and Design of Embedded Systems Supporting and Promoting Customer Ideas and Concepts from Scratch to Business

Products Portfolio

Products Portfolio System On Modules Texas Instruments SITARA, DA VINCI NXP i.mx6... XILINX Zynq

Products Portfolio System On Modules Single Board Computers Texas Instruments SITARA, DA VINCI Wall mount NXP i.mx6... DIN Bar mount XILINX Zynq

Products Portfolio System On Modules Single Board Computers Customized Solutions Texas Instruments SITARA, DA VINCI Wall mount Based on customer requirements NXP i.mx6... DIN Bar mount Based on existing proven solutions XILINX Zynq

Products Portfolio System On Modules Single Board Computers Customized Solutions Texas Instruments SITARA, DA VINCI Wall mount Based on customer requirements NXP i.mx6... DIN Bar mount Based on existing proven solutions XILINX Zynq Available with advanced SW elements

Products Portfolio System On Modules Single Board Computers Customized Solutions Texas Instruments SITARA, DA VINCI Wall mount Based on customer requirements NXP i.mx6... DIN Bar mount Based on existing proven solutions XILINX Zynq Available with advanced SW elements Linux Kernel & Drivers

Products Portfolio System On Modules Single Board Computers Customized Solutions Texas Instruments SITARA, DA VINCI Wall mount Based on customer requirements NXP i.mx6... DIN Bar mount Based on existing proven solutions XILINX Zynq Available with advanced SW elements Linux Kernel & Drivers Android BSP

Products Portfolio System On Modules Single Board Computers Customized Solutions Texas Instruments SITARA, DA VINCI Wall mount Based on customer requirements NXP i.mx6... DIN Bar mount Based on existing proven solutions XILINX Zynq Available with advanced SW elements Linux Kernel & Drivers Android BSP FPGA Vivado Project and SDSoC/HLS examples

Products Portfolio System On Modules Single Board Computers Customized Solutions Texas Instruments SITARA, DA VINCI Wall mount Based on customer requirements NXP i.mx6... DIN Bar mount Based on existing proven solutions XILINX Zynq Available with advanced SW elements Linux Kernel & Drivers Android BSP FPGA Vivado Project and SDSoC/HLS examples RTOS Integration/examples

AMP Asymmetric Multi Processing BIG - LITTLE NXP Vybrid TI AM335...

AMP Asymmetric Multi Processing BIG - LITTLE SIMMETRIC NXP Vybrid TI AM335... NXP i.mx6 DUAL Lite NXP i.mx6 DUAL NXP i.mx6 QUAD...

AMP Asymmetric Multi Processing BIG - LITTLE SIMMETRIC NXP Vybrid TI AM335... NXP i.mx6 DUAL Lite NXP i.mx6 DUAL NXP i.mx6 QUAD...

Cortex-A9 architecture Multicore platform approach Low power architecture Industrial grade proof

Cortex-A9 architecture Multicore platform approach Low power architecture Industrial grade proof TrustZone IP integrated

Cortex-A9 architecture Multicore platform approach Low power architecture Industrial grade proof TrustZone IP integrated NXP i.mx6

Cortex-A9 architecture Multicore platform approach Low power architecture Industrial grade proof TrustZone IP integrated NXP i.mx6 Xilinx Zynq

Cortex-A9 architecture Multicore platform approach Low power architecture Industrial grade proof TrustZone IP integrated NXP i.mx6 Xilinx Zynq

The TrustZone IP Like the 33rd bit Transaction (S)ecure / (NS)Non Secure) Trustzone

The Asymmetric Multi Processing on Zynq Architecture AXI bus Processing System (PS) Programmable Logic (PL) FPGA

The Asymmetric Multi Processing on Zynq Architecture AXI bus Processing System (PS) Programmable Logic (PL) FPGA Hard Real Time

The Asymmetric Multi Processing on Zynq Architecture RTOS / Bare Metal Real Time AXI bus Processing System (PS) Programmable Logic (PL) FPGA Hard Real Time

The Asymmetric Multi Processing on Zynq Architecture Linux No - Real Time RTOS / Bare Metal Real Time AXI bus Processing System (PS) Programmable Logic (PL) FPGA Hard Real Time

The Asymmetric Multi Processing on Zynq Architecture Processing System (PS) AXI bus ASYNC Comm Programmable Logic (PL) FPGA SHARED Data Linux No - Real Time RTOS / Bare Metal Real Time Hard Real Time

The Asymmetric Multi Processing on Zynq Architecture Processing System (PS) AXI bus INTEGRITY ASYNC Comm Programmable Logic (PL) FPGA SHARED Data Linux No - Real Time RTOS / Bare Metal Real Time Hard Real Time

The Asymmetric Multi Processing on Zynq Architecture Processing System (PS) 1st boot Master AXI bus ASYNC Comm INTEGRITY 2nd Slave Programmable Logic (PL) FPGA SHARED Data Linux No - Real Time RTOS / Bare Metal Real Time Hard Real Time

The Asymmetric Multi Processing on Zynq Architecture Processing System (PS) L2 Cache 1st boot Master AXI bus ASYNC Comm INTEGRITY 2nd Slave Programmable Logic (PL) FPGA SHARED Data Linux No - Real Time RTOS / Bare Metal Real Time Hard Real Time

The Asymmetric Multi Processing on Zynq Architecture Processing System (PS) L2 Cache 1st boot Master AXI bus ASYNC Comm INTEGRITY 2nd Slave Programmable Logic (PL) FPGA SHARED Data Linux No - Real Time RTOS / Bare Metal Real Time Hard Real Time Traditional AMP has not ALL these feature so, integrate all new feature listed?

The TrustZone-based Approach Processing System (PS) AXI bus Programmable Logic (PL) FPGA It is required a Software Monitor

The TrustZone-based Approach SAFEG monitor with TrustZone AXI bus Processing System (PS) Programmable Logic (PL) FPGA It is required a Software Monitor Customized version of SAFEG

The TrustZone-based Approach SAFEG monitor with TrustZone TRUST No TRUST OS (RTOS) OS (GPOS) SAFEG monitor with TrustZone AXI bus Processing System (PS) Programmable Logic (PL) FPGA It is required a Software Monitor Customized version of SAFEG The monitor is responsible for: Enable TrustZone IP Initialize Trusted /Non Trusted areas

The TrustZone - based Approach Like the 33rd bit Transaction (S)ecure / (NS)Non Secure) Trustzone

The TrustZone - based Approach SPI UART1 Like the 33rd bit Transaction (S)ecure / (NS)Non Secure) Trustzone UART2 NS SS NS

The TrustZone - based Approach SPI UART1 Like the 33rd bit Transaction (S)ecure / (NS)Non Secure) Trustzone UART2 NS SS NS

The TrustZone - based Approach CORE0 CORE1 S SPI S NS UART1 Like the 33rd bit Transaction (S)ecure / (NS)Non Secure) Trustzone UART2 NS SS NS

The TrustZone - based Approach CORE0 CORE1 S SPI S NS UART1 Like the 33rd bit Transaction (S)ecure / (NS)Non Secure) Trustzone UART2 NS SS NS

The TrustZone - based Approach X Not allowed CORE0 CORE1 S SPI S NS UART1 Like the 33rd bit Transaction (S)ecure / (NS)Non Secure) Trustzone UART2 NS SS NS

The TrustZone - based Approach X Not allowed CORE0 CORE1 S SPI S NS UART1 Like the 33rd bit UART2 NS SS NS Transaction (S)ecure / (NS)Non Secure) This applies to: Cores DMA... Trustzone For INTC... Linux must ask to Monitor The OK for modify INTC

The TrustZone-based Approach AXI bus Processing System (PS) Programmable Logic (PL) FPGA SAFEG monitor with TrustZone TRUST No TRUST OS (RTOS) OS (GPOS) SAFEG monitor with TrustZone DATA I/O RTOS DATA BUS GPOS DATA It is required a Software Monitor Customized version of SAFEG The monitor is responsible for: Enable TrustZone IP Initialize Trusted /Non Trusted areas Setup data struct and except handlers Memory RTOS GPOS Memory Memory

The TrustZone-based Approach AXI bus Processing System (PS) Programmable Logic (PL) FPGA SAFEG monitor with TrustZone MASTER SLAVE TRUST No TRUST OS (RTOS) OS (GPOS) SAFEG monitor with TrustZone DATA I/O RTOS DATA BUS GPOS DATA It is required a Software Monitor Customized version of SAFEG The monitor is responsible for: Enable TrustZone IP Initialize Trusted /Non Trusted areas Setup data struct and except handlers Start Trusted OS Memory RTOS GPOS Memory Memory

DAVE Embedded Systems' example SAFEG monitor with TrustZone AXI bus Processing System (PS) Programmable Logic (PL) FPGA

DAVE Embedded Systems' example SAFEG monitor with TrustZone Statically assigned OS AXI bus Processing System (PS) Programmable Logic (PL) FPGA

DAVE Embedded Systems' example SAFEG monitor with TrustZone Statically assigned OS 100% No Trusted Linux AXI bus Processing System (PS) Programmable Logic (PL) FPGA

DAVE Embedded Systems' example SAFEG monitor with TrustZone Statically assigned OS 100% No Trusted Linux 100% Trusted FreeRTOS No context switch Reduced latency AXI bus Processing System (PS) Programmable Logic (PL) FPGA

DAVE Embedded Systems' example AXI bus Processing System (PS) Programmable Logic (PL) FPGA SAFEG monitor with TrustZone Statically assigned OS Statically partinioned Mem partitioning 100% No Trusted Linux 100% Trusted FreeRTOS No context switch Reduced latency

DAVE Embedded Systems' example AXI bus Processing System (PS) Programmable Logic (PL) FPGA SAFEG monitor with TrustZone Statically assigned OS Statically partinioned Mem partitioning 100% No Trusted Linux 100% Trusted FreeRTOS No context switch Reduced latency No trusted private Area (MMU level)

DAVE Embedded Systems' example AXI bus Processing System (PS) Programmable Logic (PL) FPGA SAFEG monitor with TrustZone Statically assigned OS Statically partinioned Mem partitioning 100% No Trusted Linux 100% Trusted FreeRTOS No trusted private Area (MMU level) No context switch Reduced latency Trusted private Area (TrustZone level)

DAVE Embedded Systems' example AXI bus Processing System (PS) Programmable Logic (PL) FPGA SAFEG monitor with TrustZone Statically assigned OS Statically partinioned Mem partitioning 100% No Trusted Linux 100% Trusted FreeRTOS No trusted private Area (MMU level) No context switch Reduced latency Trusted private Area (TrustZone level) Shared Area (Not Trusted)

Details: The MEM partinioning Mem partitioning END of SDRAM LINUX 0x10000000 RPMSG buffer and shared data 0x04000000 Monitor 0x01000000 FreeRTOS 0x00000000

Details: The BOOT process 0 RESET

Details: The BOOT process 0 RESET 1 BootROM: FSBL taken from NV-memory and loaded on On Chip Memory

Details: The BOOT process 0 RESET 1 BootROM: FSBL taken from NV-memory and loaded on On Chip Memory 2 FSBL: SDRAM init and Uboot image load in memory

Details: The BOOT process 0 RESET 1 BootROM: FSBL taken from NV-memory and loaded on On Chip Memory 2 FSBL: SDRAM init and Uboot image load in memory 3 Uboot: loads in SDRAM: Monitor Trusted code FREERTOS No Trusted code LINUX

Details: The BOOT process 0 RESET 1 BootROM: FSBL taken from NV-memory and loaded on On Chip Memory 2 FSBL: SDRAM init and Uboot image load in memory 3 Uboot: loads in SDRAM: Monitor Trusted code FREERTOS No Trusted code LINUX 4 Uboot: gives control to Monitor

Details: The BOOT process 0 RESET 1 BootROM: FSBL taken from NV-memory and loaded on On Chip Memory 2 FSBL: SDRAM init and Uboot image load in memory 3 Uboot: loads in SDRAM: Monitor Trusted code FREERTOS No Trusted code LINUX 4 Uboot: gives control to Monitor 5 Monitor: Init TrustZone Enable data structures and Handlers for both cores Gives to Trust code the control of machine FREERTOS MASTER

Details: The BOOT process 0 RESET 1 BootROM: FSBL taken from NV-memory and loaded on On Chip Memory 2 FSBL: SDRAM init and Uboot image load in memory 3 Uboot: loads in SDRAM: Monitor Trusted code FREERTOS No Trusted code LINUX 4 Uboot: gives control to Monitor 5 Monitor: Init TrustZone Enable data structures and Handlers for both cores Gives to Trust code the control of machine FREERTOS 6 RTOS FreeRTOS: Under his control decides to start No Trusted OS (LINUX) MASTER SLAVE

Details: Inter-World comm Several methods available OP - TEE dualoscom Based on TOPPERS Very specific Too SW layers RPMsg Based on TI DSP accepted on mainline Used by Xilinx in AN Very well structured on buffers and cache handlings OpenAMP Similar to RPMsg Used on MPSoCs

Details: Inter-World comm Several methods available OP - TEE dualoscom RPMsg Selection Criterias OpenAMP

Details: The BOOT process Several methods available OP - TEE dualoscom RPMsg Selection Criterias Acceptance into Mainline Linux Kernel OpenAMP

Details: The BOOT process Several methods available OP - TEE dualoscom RPMsg OpenAMP Selection Criterias Acceptance into Mainline Linux Kernel Control over the isolation level between the two worlds

Details: The BOOT process Several methods available OP - TEE dualoscom RPMsg OpenAMP Selection Criterias Acceptance into Mainline Linux Kernel Maintenance future developments Control over the isolation level between the two worlds

Details: The BOOT process Several methods available OP - TEE dualoscom RPMsg OpenAMP Selection Criterias Acceptance into Mainline Linux Kernel Maintenance future developments Control over the isolation level between the two worlds The level of isolation is application dependent

Details: The BOOT process Several methods available OP - TEE dualoscom RPMsg OpenAMP Selection Criterias Acceptance into Mainline Linux Kernel Maintenance future developments Control over the isolation level between the two worlds The level of isolation is application dependent

Details: L2 cache management Processing System (PS) FreeRTOS Trusted AXI bus LINUX No Trusted Programmable Logic (PL) FPGA

Details: L2 cache management LINUX No Trusted FreeRTOS Trusted L1 cache L1 cache MMU MMU AXI bus Processing System (PS) Programmable Logic (PL) FPGA

Details: L2 cache management LINUX No Trusted FreeRTOS Trusted L1 cache L1 cache MMU MMU SHARED MEMORY AXI bus Processing System (PS) Programmable Logic (PL) FPGA PRIVATE MEMORY

Details: L2 cache management LINUX No Trusted FreeRTOS Trusted L1 cache L1 cache MMU MMU AXI bus Processing System (PS) Programmable Logic (PL) FPGA L2 cache PRIVATE MEMORY SHARED MEMORY PRIVATE MEMORY

Details: L2 cache management LINUX No Trusted FreeRTOS Trusted L1 cache L1 cache MMU MMU AXI bus Processing System (PS) Programmable Logic (PL) FPGA L2 cache PRIVATE MEMORY SHARED MEMORY PRIVATE MEMORY Linux performances are not affected by dual OS solutions FreeRTOS determinism is granted Shared mem is not cached

Details: L2 cache management LINUX No Trusted FreeRTOS Trusted L1 cache L1 cache MMU MMU OCM AXI bus Processing System (PS) Programmable Logic (PL) FPGA L2 cache PRIVATE MEMORY SHARED MEMORY PRIVATE MEMORY Linux performances are not affected by dual OS solutions FreeRTOS determinism is granted Shared mem is not cached Internal OCM can be granted only to Trust OS

Details: Performances achieved Processing System (PS) FreeRTOS Trusted AXI bus LINUX No Trusted Programmable Logic (PL) FPGA TEST BENCH: used the internal timer to measure the latency between: INT handling INT service

Details: Performances achieved Processing System (PS) IDLE Google Stress Test SAT FreeRTOS Trusted AXI bus LINUX No Trusted Programmable Logic (PL) FPGA

Details: Performances achieved LINUX No Trusted FreeRTOS Trusted IDLE IDLE Google Intensive Mem Stress Test SAT Task AXI bus Processing System (PS) Programmable Logic (PL) FPGA

Details: Performances achieved LINUX No Trusted FreeRTOS Trusted IDLE IDLE Latency Linux IDLE RTOS IDLE min 287ns avg 287ns max 548ns AXI bus Processing System (PS) Programmable Logic (PL) FPGA

Details: Performances achieved Processing System (PS) FreeRTOS Trusted IDLE Google Stress Test SAT Latency Linux IDLE RTOS IDLE LINUX SAT RTOS IDLE min 287ns 287ns avg 287ns 296ns max 548ns 539ns AXI bus LINUX No Trusted Programmable Logic (PL) FPGA

Details: Performances achieved Processing System (PS) FreeRTOS Trusted Google Intensive Mem Stress Test SAT Task AXI bus LINUX No Trusted Programmable Logic (PL) FPGA Latency Linux IDLE RTOS IDLE LINUX SAT RTOS IDLE LINUX SAT RTOS 16k task load min 287ns 287ns 287ns avg 287ns 296ns 205ns max 548ns 539ns 575ns Linux performances not affect RTOS in any condition FreeRTOS latency is granted with not heavy load tasks

Details: Performances achieved Processing System (PS) FreeRTOS Trusted Google Intensive Mem Stress Test SAT Task AXI bus LINUX No Trusted Programmable Logic (PL) FPGA Latency Linux IDLE RTOS IDLE LINUX SAT RTOS IDLE LINUX SAT RTOS 16k task load LINUX SAT RTOS 128k task load min 287ns 287ns 287ns 1268ns avg 287ns 296ns 205ns 2024ns max 548ns 539ns 575ns 3050ns Linux performances not affect RTOS in any condition FreeRTOS latency is granted with not heavy load tasks FreeRTos is affected by high mem loads due to it is not cached

Details: Performances achieved LINUX No Trusted FreeRTOS Trusted IDLE IDLE Google Intensive Mem Stress Test SAT Task AXI bus Processing System (PS) Programmable Logic (PL) FPGA Latency Linux IDLE RTOS IDLE LINUX SAT RTOS IDLE LINUX SAT RTOS 16k task load LINUX SAT RTOS 128k task load min 287ns 287ns 287ns 1268ns avg 287ns 296ns 205ns 2024ns max 548ns 539ns 575ns 3050ns Linux performances not affect RTOS in any condition FreeRTOS latency is granted with not heavy load tasks FreeRTos is affected by high mem loads due to it is not cached The L2 cache can be also used only on Trust OS there are pro and cons (typically a determinism reduction is noted)

Future works and references

Future works and references Complete Reboot of Slave core from Master Core

Future works and references Complete Reboot of Slave core from Master Core Deep understanding and optimization of INTerrupt handling and communication data interchange between two worlds related to determinism and latency aspects

Future works and references Complete Reboot of Slave core from Master Core Deep understanding and optimization of INTerrupt handling and communication data interchange between two worlds related to determinism and latency aspects Refers to: http://www.dave.eu/sites/default/files/brx-wp001.pdf Yashu Gosain and Prushothaman Palanichamy, Xilinx WP429 - TrustZone Technology Support in Zynq-7000 All Programmable SoCs (v1.0), May 20, 2014 DAVE Embedded Systems, AN-BELK-001: Asymmetric Multiprocessing (AMP) on Bora Linux FreeRTOS, TOPPERS SafeG home page (English), -, https://www.toppers.jp/en/safeg.html and many others

Question and answers

DAVE S.r.l. Via Talponedo, 29/A I-33080, Porcia (PN) Italy Tel +39 0434 921215 Fax +39 0434 1994030 www.dave.eu info@dave.eu wiki.dave.eu 87