freertos multicore port for validation infrastructure

23
Confidential and Proprietary TM FreeRTOS Multicore Port for Validation Infrastructure Raghav Nayak [email protected] 2015 14 th IDC Technical Symposium

Upload: raghav-nayak

Post on 08-Aug-2015

145 views

Category:

Engineering


19 download

TRANSCRIPT

Page 1: FreeRTOS Multicore Port for Validation Infrastructure

Confidential and Proprietary

TM

FreeRTOS Multicore Port for Validation Infrastructure

Raghav Nayak [email protected]

2 0 1 5

14th IDC Technical Symposium

Page 2: FreeRTOS Multicore Port for Validation Infrastructure

TM

Confidential and Proprietary 2

Agenda

Problem Analysis

Proposed Solution

Results

Uniqueness

Page 3: FreeRTOS Multicore Port for Validation Infrastructure

TM

Confidential and Proprietary 3

PROBLEM:

SoC’s becoming increasingly complex

Limitations with Bare-Metal Framework

Better validation strategy to find/reproduce critical silicon issues

Bridge the gap between Bare-Metal and Software Environment

Page 4: FreeRTOS Multicore Port for Validation Infrastructure

TM

Confidential and Proprietary 4

SOLUTION:

RTOS Based Validation

Which RTOS to choose????

We have decided to go with “FREERTOS”

Page 5: FreeRTOS Multicore Port for Validation Infrastructure

TM

Confidential and Proprietary 5

WHY FREERTOS?

Very Scalable

Simple and easy to use

Low Memory Footprint

Popular Open-Source embedded real-time operating system

Ported over different hardware architectures and compiler tool-chains

Page 6: FreeRTOS Multicore Port for Validation Infrastructure

TM

Confidential and Proprietary 6

FREERTOS:

Page 7: FreeRTOS Multicore Port for Validation Infrastructure

TM

Confidential and Proprietary 7

Page 8: FreeRTOS Multicore Port for Validation Infrastructure

TM

Confidential and Proprietary 8

FREERTOS:

Page 9: FreeRTOS Multicore Port for Validation Infrastructure

TM

Confidential and Proprietary 9

FREERTOS-MULTICORE:

Extending the support to Multicore Implementing MP Scheduler

Hardware design

Page 10: FreeRTOS Multicore Port for Validation Infrastructure

TM

Confidential and Proprietary 10

FREERTOS-MULTICORE:

Memory model

Page 11: FreeRTOS Multicore Port for Validation Infrastructure

TM

Confidential and Proprietary 11

FREERTOS-IMPLEMENTATION:

Core-Ignition:

Page 12: FreeRTOS Multicore Port for Validation Infrastructure

TM

Confidential and Proprietary 12

FREERTOS-IMPLEMENTATION:

Task Creation:

Single-Core:

Multi-Core:

Page 13: FreeRTOS Multicore Port for Validation Infrastructure

TM

Confidential and Proprietary 13

FREERTOS-IMPLEMENTATION:

Scheduler -> Task Control Block (TCB) :

Single-Core--->

Multi-Core---->

Page 14: FreeRTOS Multicore Port for Validation Infrastructure

TM

Confidential and Proprietary 14

FREERTOS-IMPLEMENTATION:

Port-Layer (Context Save/Restore)

Synchronization

Page 15: FreeRTOS Multicore Port for Validation Infrastructure

TM

Confidential and Proprietary 15

FREERTOS-RUN:

LS1 Platform with debug from ARM DS-5

LS2 Fast Model with debug from GDB

Page 16: FreeRTOS Multicore Port for Validation Infrastructure

TM

Confidential and Proprietary 16

FREERTOS-SUPPORT:

Preemptive and Co-operative Scheduling

Core-Subsystem (ARM Cortex A7, A57, A53)

Memory Management (Short descriptor and LPAE)

Interrupt Management (GIC400, GIC500)

Drivers ( I2C, UART, DMA )

Logging ( Console, Trace )

Page 17: FreeRTOS Multicore Port for Validation Infrastructure

TM

Confidential and Proprietary 17

FREERTOS-PLATFORM:

Python (Host-Interface) FreeRTOS (Target-Interface)

Multi-Processing and Multi-Tasking

Provide path to run directed and complex system synario’s

Multiple-Masters/Cores getting services to validate/stress-out better

Page 18: FreeRTOS Multicore Port for Validation Infrastructure

TM

Confidential and Proprietary 18

UNIQUENESS:

“Memory footprint” <400KB and “Boot-time” is <1min with full-system on emulator

Scalable enough to find “early” critical silicon bugs in Pre-Silicon phase

Easy to “reproduce” issues reported by software team in Post-Silicon phase

Helps to “bridge the gap” between Bare-Metal and Software

Platform is “generic” across different hardware architectures and applications

Page 19: FreeRTOS Multicore Port for Validation Infrastructure

TM

Confidential and Proprietary 19

Thinking Ahead

Page 20: FreeRTOS Multicore Port for Validation Infrastructure

TM

Confidential and Proprietary 20

Page 21: FreeRTOS Multicore Port for Validation Infrastructure

TM

Confidential and Proprietary 21

Page 22: FreeRTOS Multicore Port for Validation Infrastructure

TM

Confidential and Proprietary 22

UNIQUENESS:

Scalable enough to find “early” critical silicon bugs in Pre-Silicon phase

Easy to “reproduce” issues reported by software team in Post-Silicon phase

Helps to “bridge the gap” between Bare-Metal and Software

Platform is “generic” across different hardware architectures and applications

Questions and Answers

Page 23: FreeRTOS Multicore Port for Validation Infrastructure

TM

© 2014 Freescale Semiconductor, Inc. | Confidential and Proprietary

www.Freescale.com