Enea Keystone training 2014

24
ENEA Keystone II SW Solution Jörg Hammerschmid, FAE at Enea, [email protected] TI/Enea Keystone Multicore Seminar Garching, October 14, 2014

Transcript of Enea Keystone training 2014

ENEA Keystone II

SW SolutionJörg Hammerschmid, FAE at Enea,

[email protected]

TI/Enea Keystone Multicore Seminar

Garching, October 14, 2014

Agenda

• ENEA at a glance?

• ENEA Software Platform for KeyStone II SoC

• SW Platform Ingredients – ENEA Linux

– OSEck

– LINX

– Optima

• Enea Element for Keystone II

• ENEA Value Proposition

• Q&A

R&D OPEX

INVESTMENT

22.1PERCENT

Enea is a global software & services company showing revenue growth

and good operating profit margins.

Enea holds a world-leading position on the wireless communications

market with products that unquestionably work, powering more than

half of the world’s 8.2M radio base stations and more than 250M of

the 325M LTE population coverage. (2012)

Main product areas are Embedded Linux, RTOS and Middleware.

Extensive services offering through Global Services hub in Romania

Founded 1968 and publicly traded in Nasdaq OMX Nordic

Enea at a glance

Numbers for 2013

OFFICES IN

8COUNTRIES

REVENUE

408.5MSEK

NO. OF

EMPLOYEES

387

Wide Industry Presence

Telecom & Networking Wireless terminals MedicalAutomotive

Industrial AutomationAerospace and Defense

Ericsson

Nokia Solutions

and Networks

Alcatel Lucent

Motorola

ZTE

Huawei

Commscope

Fujitsu

Yamaha

Nokia

Corporation

ST-Ericsson

LG Electronics

ZTE

Sony Ericsson

Samsung

Infineon

Sepura

Teltronic

Alcon Labs

C2 Diagnostics

Cardinal Health

Hospira, Inc.

Metrohm AG

Philips Medical

Pointcare

Technologies

Agilent Life

Sciences

Volvo

Lear

ASM Assembly

Siemens Energy

& Automation

Rohde&Schwarz

Emerson Process

Atlas Copco

Carl Zeiss

Honeywell-SMS

Kongsberg AS

Selex

Communications

General Dynamics

Mitsubishi Heavy

Industries LT

Cassidian

Raytheon

Electronic

Air Force

Research

Global Presence

STOCKHOLM

TOKYO

SHANGHAI

BUCHAREST

MUNICH

PARIS & AIX-EN-PROVENCE

SHEPTON MALLET

BOSTON

PHOENIX

ENEA Software Platform for KeyStone II SoC

Enea OSEck

Enea Linux

LINX Shared Pools LINX Shared Pools

Optima Tools App

c66x DSP core CPU (4x ARM Cortex-A15 cores)

Core-to-Core

Scheduling

Error Process

Memory Mana.

Interrupt Mana

LINX

Sh Pools

RTOS optimized for TI C66 DSPs

Linux + real time characteristics

Unified IPC support for internal SoC, or external (Eth, sRIO)

Runtime layer adaptable to any board setup

Eclipse System wide tools

Optima

c66x DSP core

Enea OSEck Core-to-Core

Scheduling

Error Process

Memory Mana.

Interrupt Mana

QMSS, CPPI

Developed on TI 66AK2Hx Keystone II, but very easily ported to all other

Keystone II family SoC:s.

LINX

External devices

Components

OSEck RTOS running AMP on c66x DSP cores

ENEA Linux running SMP on ARM Cortex-A15 cores.

DSP boot loading via Linux cmd-line.

LINX IPC:

• ARM cores, DSP cores

• External devices – other Keystone II SoCs or other nodes via ethernet or SRIO

• LINX ARM <-> DSP cores using shared memory pools and with HW queues support

(QMSS, CPPI).

ENEA Optima for debugging the DSP core in an Eclipse-based environment,

shared with Yocto ADT tools for ARM Linux debugging

Each component tested individually as separate standard products but also all integrated and tested together as a SW platform

Developed on TI 66AK2Hx Keystone II, but easily ported to all other Keystone II family members

ENEA Software Platform for KeyStone II SoC

Enea Linux is an embedded Yocto based Linux

distribution with the Communication Market in focus.

Services capabilities to tackle any unique customer

requirements related to embedded Linux

Exclusively open source development tools hardened

to support all phases of the development process

Customer tailored distributions centered on real time,

virtualization and networking capabilities

Hardware agnostic embedded Linux distribution

focused on ARM Architecture

Over 40 years of experience delivering

mission critical embedded software solutions

Linux Foundation training partner

Enea Linux

Community Based

Enea Linux is based on the Yocto Project which is the de facto standard for

embedded Linux distributions

Enea is a heavy contributor of the Yocto Project and it

participates in many other Software Communities in

order to provide the best existing software in terms of

productivity and quality

Focus on Real Time

Enea Linux can be delivered with different deterministic set ups:

Enea’s team of experts help customers meet their real time

requirements while understanding the corresponding

throughput trade off

No Forced Preemption

Voluntary Preemption

Preemptive Kernel

PREEMPT_RT patch set

NO_HZ (user space runtime)

Responsiveness Throughput

Core Isolation + Tickless Execution

Enea Linux

Verified

Enea Linux verification efforts are the foundation of its

commercial grade level:

Package functionality is tested daily over 15000 Test Cases

LTP standard is achieved daily over more than 11000 Test Cases

POSIX compliance is passed daily over 3500 Test Cases

Toolchain is tested thoroughly per release against all typical hosts

Eclipse development tools are tested per release meticoulessly

IP performance is monitored weekly through over 800 TCs per

board

”We just like it

when things work”

For Keystone II, Enea Linux uses TI’s Yocto upstreamed

drivers and supports ALL devices and capabilities.

Enea Linux

Support & MaintenanceEnea Linux team supports customers through their entire

product life cycle:

Design Development Market

Major

Release

Major

Release

Bug fix Security

UpdateBSP

Development

Test LabIntegration

IP ProtectProgram

UpstreamTraining

Multi-year support for specific Linux versions, with

backporting for all important security fixes

Enea Linux

“Stand Alone” for Keystone II Without Enea “Full” Solution with OSEck

Enea Linux for ARM on Keystone II with

SysBios/TI RTOS OR “Bare Metal” on DSP

Full Enea commercial grade support for Enea

Linux

Enea LINX for Linux, including external or

peripheral device communications

Enea LINX on SysBios/TI RTOS??

Possible to develop !

Enea Linux for ARM on Keystone II with TI

OpenMP / OpenCL

Full Enea commercial grade support for Enea

Linux

Enea LINX for Linux, including external or

peripheral device communications

Enea Linux

Enea OSEck- Optimized Payload Processing

Develop application software

immediately

– Writing powerful multicore DSP

applications is easy with OSEck

Proven software deployed on over 100

million DSPs each year

Out-of-the-box support for TI C66x

Memory optimizations of code and data

Advanced multicore communication

drivers – TI Multicore Navigator

LINX Intra-core, inter-core and inter-

device communication

Networking: IPv4/IPv6, Ipsec, SSH,

OpenSSL and FastPath support

Eclipse system & application debugging

and profiling tools – Enea Optima

Boot, management, debug, error

handling

Performance benchmarks available

User Application

DSP Management Shell

IPCIP Stack

RTOS

Tools

Core

OSEck uses MCSDK’s low level

drivers as well as the C run-time

libraries

Enea LINX Powerful & simple API

Unified API for intra-core, inter-core, and inter processor communications

Transparent communications protocol

for distributed systems

Supports any homogeneous and

heterogeneous device cluster topology Cores on multicore devices, between devices,

between systems

Operating system independent

Linux, OSEck, others

Supports any combination of multicore CPUs and DSPs

LINX protocol and LINX for Linux implementation are open source Available from SourceForge

Optimized performance for each

supported communication media

Ethernet, TCP/IP, SRIO, Shared Memory,

QMSS, DMA, etc

Payload Byte Order

ConversionLINX Client ApplicationLINX Client Application

Traffic Interface Management Interface

RLNH

Connection Manager(s)

Connection Management & Supervision

Fragmentation Fragmentation

Sequencing /

Retransmission

Unreliable

Media

Eth, UDP …

Reliable

Media

sRIO, TCP …Shared Memory

Link Management

Link Supervision

Naming Service

Address Pu`blication /

SubscriptionAddress Resolution

Application

API

Layer

Session

Layer

Transport

Layer

Link

Layer HW Queues

LINX is open source for Linux on

SourceForge

Same development environment from board bring

up, through kernel and application development.

Built on a standard Eclipse platform, maximizing

freedom of choice of additional tools, commercial or

open source.

Flexible license model. Complete environment, or

selected tools for use in other Eclipse

environments.

Supports OSEck and Linux and provides insight

into even the most complex heterogeneous

multicore and multiprocessor configurations

Compatible with TI CCS Eclipse environment

Enea Optima

Target

DSP cores

CPU cores

Enea Gateway

TCP / IP

USB

Enea

LINX

Enea Optima

Features

System Browser - EXPLORE AND MANAGE THE SYSTEM

Pool Browser - ANALYZE AND OPTIMIZE MEMORY USAGE

System Profiler - ANALYZE KERNEL AND APPLICATION RESOURCE

USAGE OVER TIME

Log Manager - RECORD KERNEL AND APPLICATION EVENTS

Log Analyzer - VISUALIZE AND ANALYZE KERNEL AND APPLICATION

EVENTS

Kernel Awareness Plugins - EXPLORE KERNEL AND APPLICATION

STATE

Benefits

Provides insight into kernel state without direct

dependencies between kernel data structures and debug

environments or scripts, reducing risk.

Need for trace, log and profiling infrastructure in the

application can be eliminated, shortening development time.

Built on a standard Eclipse platform, maximizing freedom of

choice of additional tools, commercial or open source.

Complete environment, or selected tools for use in other

Eclipse environments, i.e. TI’s CCS

Target

DSP cores

CPU cores

Enea

Gateway

TCP / IP

USB

Enea

LINX

Optima

Enea Optima

PROFILING, TRACING AND KERNEL AWARENESS TOOLS FOR OSEck

Enea Element for Keystone IIOn HP Moonshot

with TI Slayton Cartridges

HP Moonshot+ Economical

+ Manageable

+ Flexible

+ Purpose-Built

+ Local Capability

Element + Full Enea Keystone II SoC solution

What is Element?

Distribution

Scalability

Data Sharing

Management:

Configuration

Monitoring

Control

High

Availability

Runtime Debug and

Trace

• Simplifies Writing Distributed Applications

• Distributed Messaging Framework – LINX

• Enables Product Integration and Maintenance

• Runtime Debug and System Trace

• Enables Management of Systems and Devices

from NMS, OSS, BSS

• Delivers High Availability

Element Scales from Single Node, to Chassis, and the Cloud

Cloud

Element is a unified platform of system management services that

accelerates Product Delivery of a system

Runs on Linux and OSEck on DSP

Not dependent on Enea Linux – can

work with any Linux and full TI

solution

Many Use Cases

Cloud

Single node or small systems

Chassis or rack-based systems

Cloud Environments

• Applicable Services:

• For Keystone II, management of

both ARM Linux environment and

the DSP environment

• Runtime Debug and System Trace

with Element Command Service

and Log Manager – see the demo

• Management of Systems and

Devices from external NMS, OSS,

or BSS – not in the demo

Why ENEA?

ENEA has all ingredients for success in a heterogeneous SoC

Long experience with:

DSP - RTOS on TI DSP cores (+15 years)

KeyStone I - TMS320c6670/8 - Kepler 2 first in 2013 to tier1 telecoms

Linux on ARM processors (+3 years)

ENEA Linux for ARM and KeyStone II

IPC (+8 years)

LINX transparent, distributed IPC protocol

Experts in ”real-time” Linux ”control” plane extensions

Data plane extensions

Scalable Systems Management Solution Enea Element

Single vendor of a complete

integrated solution

Best Linux ISV supplier for ARM

based systems in the industry

Enea Real-time focus and expertise

Performance, performance, ….

And then, more performance!!

Multiple Solutions - Keystone II

Full Enea Keystone II SoC solution

Enea Linux ONLY with TI solutions

SysBios, or OpenMP /

OpenCL

Enea Value Proposition

Systems Level Management

Enea Element - on both Linux and

OSEck

Harmonized, Eclipse-based tools for

development and debugging

Linux tools from Yocto (Yocto’s ADT)

OSEck tools

Integrated with TI CCS

Commercial Grade, Multi-year version

Maintenance and Support

For full Keystone II SoC solution

For Enea Linux only

For Enea Element

OSEck Optrima

Questions ?

Visit us at enea.com