DWF13 Designing QorIQ Software SanJose

You might also like

Download as pdf or txt
Download as pdf or txt
You are on page 1of 73

TM

October 2013
Milpitas,California Beijing, Chengdu,
Bucharest, Romania
Shanghai, China

Tel Aviv, Israel


Toulouse, France
Austin, Texas Noida,
Hyderabad, India

• Freescale has over 1,000 software engineers, over 700 focused on Digital Networking
• Increasing investment on software through hiring and acquisition
• Focus: Heterogeneous Multi-core, Run-time, Tools, Key Applications
• Robust Ecosystem with Freescale Connect Partner Program
• Strategic Partnerships, including Mentor Graphics, ENEA, Green Hills, QNX and Wind River

TM 2
Best-in-Class Multicore Software Development and Debug Solutions

Key Software Acquisitions


Invest

VortiQa & Investments


Development Tools

Apps
1999: Metrowerks
Stacks
2002: AMC, Lineo
2003: Freescale Professional Services
APIs/Libraries 2005: Seaway Networks

Partner
2008: Intoto
OSs Schedulers 2009: MQX Runtime Platform
2010: Processor Expert, Chipwerks
Drivers/BSPs/HAL 2013: Launch Digital Networking Services
Multicore Silicon + Open Ecosystem of Partners
Comm Processors and DSP

Investment in silicon optimized software IP In-house resources & IP plus Partners


across our Multicore portfolio provide open choices for vertical
• Over 1000 in-house software resources solutions and tools
• Stand-alone base tools and run-time technologies built • Optimized solutions, reference designs and greater
around standard platforms application performance
• Available throughout the ecosystem • Alternative to restrictive/captive approaches
• Peace of mind that software IP will not be locked in
• Freescale Professional Services where needed

TM 3
TM 4
Application-Specific Packages
 Highly optimized for key application and hardware
 Licensable and customizable
 More features and performance
User
 API abstracts GPP implementation
Kernel
Space DCN SMB/Ent SDN Transport
Space
Ent-
Apache OF-Ctrl IKE
UTM?
Base SW Dev Kit Applications
 Open source ASP API
 Upstream SSL OF IPsec
 Std features & FastPath Packet
TCP Switch PDCP processing
performance apps

OS Apps and
Tools
NW App Dev Kit
NADK-API
 Common services,
Middle-ware

Linux Stack/
FS/KVM Demo NW Services drivers
Apps Runtime  API for advanced
Services features and
Kernel Drivers High-Level Drivers
performance tuning
Foundation Libraries

Freescale Platforms—QorIQ processors built on Layerscape architecture

TM 5
Rob Oshana, 10/16/13
OS Apps & Tools Customer
• Targeted for General SW development (a.k.a.
OpenWRT Str-swan Apps everyone)
RT-test bind, dhcpd − May include NW Applications

ip, tc, httpd, ftpd


iptables, • Everything is upstream
ifconfig smbd − No deviations

Linux System call (API) • Don't invest in middleware


− Don’t force HW features into middleware
Linux Middleware framework (QoS, LAG)
Scheduler − Don’t add new middleware (e.g. ASF)
Network File-
Stack system memory, − Optimize within bounds of middleware
timers,
RT KVM PM threads
• Invest in drivers
− Ensure F-Lib compliance
Security Kernel Drivers SRIO − Ensure middleware compliance
Ethernet PEX SATA USB VFIO
• Evaluate and migrate non-compliances to
TDM, IFC, UART, SPI, SDHC, I2C, DIU, I2S user-space – e.g. ASF, L2-switch

Foundation Libraries
TM 6
SDK 1.3 SDK 1.4 SDK 1.5
(14-Nov) (Jun) (Dec)
Processor and board Processor and board Processor and board
SDK 1.3.1
•P4080 rev 3 •P5040 rev 2 •C290 rev 1
(20-Dec)
•P5020 rev 2 •TWR-P1025 •T4240/160 rev 2
•P5040 add’l features Processor and board •P102xRDB consolidation •B4860/4420 rev 2
•Remove P5020 rev 1, •T4240/160 rev 1, T4240QDS •P1023RDB •P5040 rev 2.1
P3041, P204/1 rev 1 •B4860/4420 rev 1, B4860QDS •BSC9131 and BSC9131RDB •P1010 rev 2
•BSC9132 and BSC9132QDS
New Features Features •MPC85xx and boards removed New Features
•Linux Containers •U-Boot, Linux, USDPAA on New Features •SDK 1.4.5 changes plus …
•Linux DPAA GSO optimizeT4240 and B4860 •Updated kernel version (3.8) … (see next slide)
•SEC XOR DMA •KVM: e6500, LRAT, QEMU update
•SEC Real Time Assembly Environment •Libvirt integration
•IXXAT IEEE1588 on P2020•Same as SDK 1.3 except U- •Topaz on e6500, LRAT
•ASF on P3041, P2041/0, Boot 2012-10 SDK 1.3.2 •Thermal monitor, on-board SDK 1.4.5
all P102x (26-Mar) (T4242QDS, B4860QDS, P1022DS) (Oct)
•PCIe EAR •Real-Time: TWR-P1025, B4860 Processor and board
Processor and board
•QE TDM on P102x •XFI (B4860) •B4860/4420 rev 1 & 2 ONLY!
•P3041, P2041/0 rev 2
•FMAN Driver 17 •Virtual Storage Profile •e6500 Hardware Table-walk
•Spansion flash on P102xRDB,
•ASF: IPv6, skb-less for firewall, •PDCP add’l algorithms
P2020RDB and P2041RDB
Environment Scatter-Gather, 64-bit •DSP Boot and IPC (B4860)
•XAUI-TN8020
•Kernel 3.0 •IEEE1588: 64-bit, IXXAT 1.06 •PM20 and Drowsy Altivec
•U-Boot 2011-12 •DPAA offload (B4860, P4080) •FMC: Permit policers b/w ports
Features
•Gcc 4.6.2, eglibc 2.13 •Crypto SEC QMAN Interface •Offload: CEETM counters
•U-Boot, Linux, USDPAA on
•Yocto 1.2 (Denzil) •PCIe Hot Plug, End Point •PAMU: Stashing for DSP for
T4240 and B4860
DMA and Maple
Environment
Environment
•Kernel 3.8, U-Boot 2013-01 Environment
•Same as SDK 1.3 except: U-
•Gcc 4.7, eglibc 2.15, Yocto 1.4 •Same as SDK 1.4
Boot 2012-10
Nov Dec Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov
2012 C290r1 2013
T4240r1 P3041r2 B4860r2 T1040r1
P5040r2 T2080
B4860r1 PSC9132r1.1 T4240r2

TM 7
SDK 1.5 SDK 1.6 SDK 1.7
(Dec) (May) (Nov)
Processor and board Processor and board Processor and board
•C290 rev 1, C290PCIe board •T2080 rev 1, T1040 rev 1, •LS1021/0 updates
•T4240/160 rev 2, P5040 rev 2.1, LS1020/21, •LS2xxx
P1010 rev 2 •T4240RDB (rev 2) •B3xxx
•End support for B4860 rev 1, •T4240 rev 1 removed
P3041 and P2041 rev 1.1, P4080 New Features
rev 2.0, P1010 rev 1 New Features •LS reference software libraries
New Features •ARM Yocto enablement •AIOP core libraries for LS
•SDK 1.4.5 changes plus … •ARM Toolchain •AIOP core/app library updates
•Libvirt uprev •ARM images and binary ISO •LS reference apps
•KVM Hardware Table-walk, Topaz •ARM updates to user manual •USDPAA for LS
LRAT (T4240, B4860) •Endianness updates to drivers •KVM/Containers for LS
•SKMM, PK Calculator (C290)
•Ethernet: DPAA 802.1Qbb (T4240) •Management complex
•OpenSSL SEC offload
•Ethernet: “Wake on LAN” support •SEC enablement for LS
•Ethernet: DPAA offload aware net (T1040) •ARM drivers upstream
device, CPU Hotplug •Power Mgmt: Deep sleep (T1040)
•ASF: T4240, BSC913x
•PCIe SR-IOV (T4240) Environment
•USDPAA: Threads share buffer
•Interlaken (T4240) •Same as SDK 1.6
pools, SRIO port 2, IPSec extended
•HiGig (T4240)
sequence
•Data Compression Engine (T4240)
•DPAA Offload: P2041, add IPSec
SA extended statistics, extend
Environment
IPSec for SA modify
•Kernel 3.12 (tentative)
•XFI and 10GBASE-KR (T4240)
•U-Boot 2014.01 (tentative)
Environment
•Gcc 4.8 (tentative)
•Same as SDK 1.4 except: U-Boot
•Yocto 1.5 (tentative)
2013-07
•Depends on community

Dec Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec
2013 2014
LS1020A
TM 8
Application Application
GPPs
user API socket API other sys calls API libs CPU CPU CPU CPU
kernel
kernel name
cgroups
scheduler APIs spaces Accel
memory Linux Network file Tasks
management Stack systems
Data Path Accel
timers
block char Accel
eth driver devices devices

• SMP multicore Linux as you know it for ARM and Power


− Freescale SoC support within broad ecosystem (kernel.org, Linaro, Yocto)
− Thousands of packages in ecosystem (tools, servers, management, etc.)
− One source base for all architectures
− Familiar programming and debug (C, C++, gdb, etc.)
− Functionality via Linux, not proprietary APIs
− Full-featured networking and device subsystem
− RT patch
− 64b (ARMv8 and Power)
− big-little (ARM)

TM 9
KVM Guest
Std User Space Container Application HW devices can be directly
Application accessed by containers,
Application driver skt
VMs, and processes– not
Application Application
net stack just the host kernel. It
driver driver skt
means load/store to device,
skt driver
use DMAs, etc.
net stack
Increased performance via
driver Host Kernel host kernel bypass.

Hardware
Virtualization support in standard Linux
• KVM
• Containers
• Access isolation
• Performance isolation (via name spaces, cgroups, etc)
• Direct assignment of devices for performance
− To containers Emerging in standard embedded
− To KVM guests Linux, an area of Freescale
− To standard user space processes
strength
• Isolation via IO-MMU

TM 10
Freescale Linux SDK is a complete Linux development
environment (Linux distribution)

• Based on industry standard Yocto/Poky.


• Embedded-style (cross-compilation but native tools also provided)
• Source code provided Everything needed to boot
and run Linux
Linux SDK main contents:
• GNU tools Bootloader image
• Package system
Kernel image
• Build System Generates
• Kernel source
Customizable file system
• Bootloader source
• Package sources Hypervisor images (optional)
• Hypervisor package
sources Freescale optimized package
• Freescale Network SW images (optional)
packages

TM 11
• Widely-supported community project to create tools supporting
the creation of Linux distributions. Participating Organizations*
Freescale Linux SDK Cavium Networks
Dell
Enea AB
Poky provides Poky Freescale Semiconductor
package Intel
systems, many Freescale kernel support LSI
Mentor Graphics
standard Freescale u-boot support Mindspeed
packages, and MontaVista Software
build recipes Freescale GNU tools OpenEmbedded eV
enhancements Panasonic
for them based NetLogic Microsystems
on open Freescale-specific RidgeRun
embedded. packages Secret Lab Technologies
Sakoman, Inc.
Texas Instruments
Tilera
Freescale augments Poky from Yocto with Timesys
support for Freescale-specific features and Wind River
*http://www.yoctoproject.org/community/
packages. participating-organizations

TM 12
• One SDK supports all P and T series, and selected other
networking SoCs)
• Single source base used for all
• Versions (kernel, etc.) consistent across all
• Freescale ARM-based networking SoCs will be supported by the
same unified SDK, ensuring consistency between PA and ARM.
• Power SoCs– big-endian (per Power ecosystem)
• ARM SoCs– little-endian (per ARM ecosystem)

T4240
P4080
Freescale P1020
Linux SDK
T4240
P1023
Etc.
LS SoCs, including ARM
TM 13
• Milestones (all dates 2013)
− Feature Freeze: 1-Nov
− Code Freeze: 29-Nov
− Release date: 19-Dec

TM 14
• Environment
− No change compared to SDK 1.4 *except for U-Boot
− Build Tools: Yocto 1.4
− Toolchain: GCC 4.7.x and eglibc 2.15
− Linux kernel version 3.8
− U-Boot version 2013-07 (upgraded)
• Yocto toolchain
− Ability to compile with external FSL prebuilt toolchain within Yocto

TM 15
• C290 rev 1 and C290PCIe card
− Carry over features from one-off releases made for C29x plus
− Silicon and C290PCIe board support
− Secure Key Management Module (SKMM) and PK calculator
− Secure Boot

TM 16
• T4240 rev 2.0
− Key silicon errata workarounds to be conditional
− Rev 1 support remains (to be removed in Spring 2014)
• T4240 XFI and 10GBASE-KR
− Platform: Modified T4240QDS with XFI support (internal only)
− 10GBASE-KR Interoperability with Broadcom
• T4240 PCIe performance measure module in PCIe EP driver
− SR-IOV compatible, SR-IOV support coming in later SDK release.
• B4860: L1 defense
− Ability
to restart the DSP and L1 software without having to restart
the entire SoC

TM 17
• P5040 rev 2.1
− Confirmed working using SDK 1.4 – no changes required, replaces rev
2.0
− MEM_PLL_CFG recommended updates
• P1010 rev 2 and P1010RDB-PB
− Support for rev 2 silicon and upgraded board
• P4080 8x1G, SerDes 0x16 update
• QSGMII-RISER
− Supports both QSGMII and standard SGMII, replaces existing SGMII-
RISER
− Affects all boards that support SGMII-RISER: P4080DS, P3041DS,
P5020DS, P5040DS, T4240QDS, B4860QDS
• EOL support for various silicon revisions
− For B4860 rev 1, 3041 and P2041 rev 1.1, P4080 rev 2.0, P1010 rev 1
− Primarily a testing and documentation statement - no code changes
planned.

TM 18
• CPU
− MMU Hardware Tablewalk (T4240 and B4860)
• Power Management
− PW20 (T4240 and B4860)
− Drowsy Altivec Power Management features (T4240 and B4860)
− CPU Hotplug for networking (see Linux Networking)
• Virtualization
− Libvirt uprev
− KVM Hardware Table-walk (T4240, B4860)
− Topaz LRAT (T4240, B4860)
− KVM: Assign pass-through devices back to host once the KVM
guest exits

TM 19
• Unified DPAA ethernet driver
− Single, unified driver to be used for termination and forwarding
− Removal of build time (kernel config) option
• DPAA networking support for CPU Hotplug
− Ability
to remove and add cores in SMP and retain networking
interfaces
• Prepare DPAA ethernet code for upstream
• Change license type for config/policy files
− Will switch from FSL to open source license

TM 20
• ASF
− Migrate existing ASF functionality to BSC913x and T4240
− ASF to become the default networking configuration for best out of box
networking performance
• USDPAA Hello Reflector App – short circuit cores
− Addmode where all the frames are reflected back unmodified from
FMAN directly without reaching cores. Useful to validate FMAN
hardware configuration and its ability to withstand line rates.
• USDPAA IPSEC app should support extended sequence number
− Each tunnel configured in IPSEC app should optionally support
extended sequence number. This came out while engaging with a
critical customer engagement.
• USDPAA Huge Page support
− Change memory allocation to utilize hugetlbfs
• USDPAA SRA: Ability to specify SRIO port 2
− Add srio port 2 support and payload can be specified in SRA
application

TM 21
• DPAA Offload – Add support for P2041
• DPAA Offload - Add support for IPSec SA extended statistics counters
− Extend the IPSec statistics per SA with new counters for 1) Number of packets
received for inbound SA and 2) Number of packet sent for outbound SA
• DPAA Offload - Extend the IPSec support for SA modify ASF
− Extend API to support sequence number and NAT port update for a specific SA.
Needed in order to support IPSec High Availability.
• Linux networking: DPAA hardware offloading aware Ethernet net device
− Provides support for advanced DPAA offloading features: IPSec offload, Virtual
Storage Profile based zero-copy frames between USDPAA and kernel stack or
OH checksum offload.
• USDPAA: DPAA offloading aware Ethernet net device' (oNIC) in
Reflector
− New net device created for Offline Port, resembles Shared-MAC net device.
Uses the OP offloading capabilities (e.g. CSUM offload and VSP based buffer
copy offload) and can work with DPAA offload driver.

TM 22
• OpenSSL SEC Offload
− Defined: Crypto operation SEC offload support for symmetric cipher,
digest via Cryptodev interface
− Processors
with SEC 4.0 or later: C29x, P1010, P4080, P3041,
P2041, P5020, P5040, T4240, B4860
• Support SDHC after IFC boot (P1010)
− Enables SDHC after booting from IFC
• U-Boot: Add multiple USB controller support

TM 23
TM
• Virtualization – Hardware and software technologies that
provide an abstraction layer that enables running multiple
operating systems on a single computer system

App App App App App App


App App App App App App

Linux® Linux® Windows® Linux® Linux® Windows®

TM 25
App App App App App App
App App App App App App

Linux® Linux® Windows® Linux® Linux® Windows®

Hypervisor

• A hypervisor is a software component that


creates and manages virtual machines
which can run operating systems.

TM 26
• Common usage:
− Type 1 – hypervisor runs only OSes
− Type 2 – hypervisor is based on conventional OS

OS OS OS OS OS App

hypervisor OS / hypervisor

Type 1 Type 2
• My opinion: The distinction is not helpful
• No meaningful conclusions can be drawn by these labels
• For further info:
http://blog.codemonkey.ws/2007/10/myth-of-type-i-and-type-ii-
hypervisors.html

TM 27
Consolidation Security/Sandboxing

Utilization Fail Over

Dynamic Resource Management

TM 28
Rob Oshana, 10/16/13
COS COS COS

USDPAA USDPAA
App

LXC LXC LXC

Linux

C C
CP CP P
P
U U U
U

Multicore Hardware

• KVM is a Linux kernel driver • Lightweight framework for • Containers provide OS level
• User space tool, QEMU, is partitioning an SoC virtualization
used in conjunction with KVM • Best of both worlds—bare metal • Provides low overhead,
• Solution is open source performance with enforced lightweight, secure partitioning
partitioning, fully architected of Linux applications into
• Number of virtual machines is
approach to meeting AMP different domains
only limited by available
requirements
resources (CPU cycles, • Can control resource
memory) • Solves many headaches of
running multiple unsupervised utilization of domains—CPU,
OSs I/O bandwidth
• Threads appear as cores to OS

TM 29
Rob Oshana, 10/16/13
control data
control
data
control data

hypervisor

Multiple Topaz
processors/boards Unsupervised AMP (Supervised AMP)
control data
control data control data

Linux® Linux® Linux®

KVM Linux Containers USDPAA

= hardware = OS = App

TM 30
• Good performance, but at
cost of fragility and complexity data control

• Agreement by all OSes


required on how memory and App App
I/O devices are partitioned
• Cooperation by all OSes OS OS
required for initializing &
managing global resources
CPU CPU CPU

• Complexities: boot sequence, I/O


MMU
Memory Memory
OS reboot, error
Interrupt
management, debugging Controller
I/O I/O

Unsupervised AMP

TM 31
• A lightweight framework for data control
partitioning an SoC

• Gives you the best of both App App


worlds– bare metal
performance with enforced
partitioning and fully architected OS OS
approach to meeting AMP Topaz
requirements

• Solves many of the headaches CPU CPU CPU

of running multiple I/O


MMU
unsupervised OSes Memory Memory

Interrupt
Controller
I/O I/O
• Threads appear as cores to OS

TM 32
data control

• KVM/QEMU– open source App


virtualization technology based App App

on the Linux® kernel


App OS OS
• Run virtual machines alongside
Linux applications
• VMs are fully isolated from rest KVM
of the system Linux®
• Number of VMs supported
limited only by available CPU CPU CPU
I/O
resources (CPU cycles, MMU
Memory
memory) Interrupt
Controller
• Virtual I/O capabilities I/O I/O

TM 33
• Containers provide OS level data control
virtualization
App
− Provideslow overhead, App App
lightweight, secure partitioning of
Linux applications into different App
domains
− Can
control resource utilization of
domains– CPU, I/O bandwidth Linux®

− LinuxContainers is based on a
collection of technologies CPU CPU CPU
I/O
including kernel and user-space MMU
Memory
components. Interrupt
Controller
I/O I/O

TM 34
• Infrastructure to build Linux®- data control
based networking applications App App
App
• Bare metal performance with
the rich APIs available in Linux
App

Linux®

CPU CPU CPU


I/O
MMU
Memory
Interrupt
Controller
I/O I/O

TM 35
• These technologies are not
mutually exclusive:
− RunUSDPAA on a Linux guest on USDPAA
App
Topaz
− Run USDPAA in a Linux container OS

− Runa KVM virtual machine in a


Linux container
App App

Linux® KVM

hardware

TM 36
• Cost savings– bill-of-material, power
• Flexibility

• Examples
− Combine multiple domains– control plane, data plane
− Migration — move to new hardware, preserve investment in
software
 Run legacy software alongside new software
 Add Linux® to a system
− Provide an isolated environment where untrusted software can run
− High availability — active/standby configuration without additional
hardware

TM 37
control data
control
data
control data

hypervisor

Multiple Topaz
processors/boards Unsupervised AMP (Supervised AMP)
control data
control data control data

Linux® Linux® Linux®

KVM Linux Containers USDPAA

TM 38
TM
Core 6, 7
Linux Stack Core1

User TCP User TCP User TCP


Application Application 2 Application 3
Application Th1 Th2 Th1…….Th1000
Control … … …
App Linux User-space
Socket Layer
Linux Kernel

TCP / UDP SSL

Session Mgmt ASF User Space


IP
5-tuple PSP NW Services
USDPAA – FBQ Drivers
Portal2 Portal3 Portal Portal Portal Portal Portal
Portal1

Coren Coren Coren Coren Coren Coren Coren Coren

VSP n
VSP 1

Storage Profile based Classifier VSP 2

TM 40
FMAN Ports
TM
Basic GPL Solution High Performance Custom Solution
- Highly optimized for key application & HW
- Licensable & customizable
Customer
User Space - More features and performance
Application User space
Customer Application
User Space
OpenSSL Webserver / Storage Server / Banking etc.
Application
Library

User space
Customer SSL Commercial SSL OpenSSL
Library Library Library
Kernel space

Power Management
PKC Symmetric Crypto,
Cipher
Protocol - SSL, TLS,
IPSec, USPDCP etc.
NADK
CryptoDev +
Unified SEC API RTA
CryptoAPI
C29x Driver
User Space
Kernel Network Driver PEX + DMA Driver QM/BM
RTA
Drivers (SKMM) (SKMM, PKC)

C29x – QorIQ + x86 + SEC – QorIQ DPAA Kernel space


C29x SEC
Layerscape + Layerscape

TM 42
TM
TM 44
Device drivers Misc
Suspend hooks
hwmon
Runtime_pm hooks
Linux device model wakeup source hooks

PM Qos hooks PM core


pm_ops
TMU driver
runtime_pm_ops Suspend
MPIC timer driver
wakeup source
Power Monitor
Clock

SoC platform support Core support CPU mgmt


Power domain

Qos Power domain e500v2 PMC CPU freq

Clock domain e500mc RCPM CPU idle

Core topology e6500 new states CPU hotplug


Already done
SCHED_PM
In development

In Planning
Freescale Domain

TM 45
Proposal
SDK T1040 LS-1 SDK
1.5 0.3 EAR-3 1.6 Planning

T4/B4/
Power Monitor integration PH30/PCL10 support Execution
T2080

compatibility with CPU hotplug Finished

T1040 Deep Sleep core support

Driver compatibility with DS

Auto response

LS-1 ARM core states LS-1 Deep Sleep

Thermal Monitor (TMU) Driver compatibility with DS

LS-2 Deep Sleep


HW design review and discussion
LS-2
AIOP compatibility

Generic Benchmark Optimizations

PowerTOP Low power boot Upstream patches

Power-aware Scheduler Thermal Mgmt

Oct Nov Dec Jan Feb Mar Apr May Jun Jul Aug Sept Oct
2013 2014

TM 46
TM
Demo Apps Customer ASP Apps NW

NADK NW API
• Targeted for NW
Refl Crypto Apps Services Application development
Net-filter − Specific customers willing
IP-Fwd PME E- TCP
to use new API/env for
UTM + Routing licensing, debug or
IPSec RT Svc + FP SSL performance concerns
ARP/PPP
Pseudo IF
• Restructure USDPAA &
NADK API PSP
− USDPAA
High-Level Drivers Run-Time  Low-level driver for data
I/O only.
Ethernet SEC, PME Services
− PSP
Memory/
Linux NW
Non-Eth AIOP Cfg  Separate out NW services
Buffers Stack as optional middleware
L2-Switch Discovery  Separate applications and
Timers change to library mode
Low-Level Drivers − High-Level drivers
Resource
QM/BM Mgmt  New high-level drivers
based on MC NW objects
Sync
FLIB
• Distribution
− Support is chargeable
VFIO MC NW Linux OS
Objects
TM 48
Application Specific Packages
OS Apps & Tools Customer
GPP - Highly optimized for key application & HW Network Components
OpenWRT Str-swan Apps - Licensable & customizable - Highly optimized middleware
- More features and performance - Either on GPP or AIOP
RT-test dns,dhcpd
DCN SMB/Ent SDN W/L WLAN - Common Control/Data Path API
ip, tc, httpd, ftpd
iptables, Transport
smbd Ent-
ifconfig CAP-
Apache OF-Ctrl
UTM IKE WAP AIOP
Linux System call (API)
Common Control/Data-Path API
Linux Middleware
Network File- Scheduler SSL NAPT OF IPSec GRO/GSO IPSec
NAPT OF CAPWAP/
Stack system memory, Fwl Switch
timers, TCP PDCP E-OAM Fwl Switch PDCP DTLS
RT KVM PM threads

NADK-API Service Layer API

Service Layer
Security Kernel Drivers SRIO
Demo NW Services NW Svcs C Runtime Init/Shut
Ethernet PEX SATA USB VFIO Apps RunTime
High-level Drivers Services Acc I/O Debug
TDM, IFC, UART, SPI, SDHC, I2C, DIU, I2S Entry-pts

Base SW
Foundation Libraries Foundation Libraries NW I/O Utils Events
Dev Kit
- Open-Source NW Object + LS-Bus API NW App Dev Kit
- Upstream
- Common services, drivers

Complex
- Std features & NW Objects Rsrc Mgmt - API for advanced features &

Mgmt
performance
performance tuning. Service
NI / NIC L2-Sw AI Aggr DP-I/O LS Bus Layer
Controller - Common
Low Level Drivers Abstract Network services, drivers
DPAA Rsrc
WRIOP QM/BM SEC PME DCE Objects - Abstraction of
Init Mgmt
- Simple NW devices programming
- Central Rsrc Mgmt environment
Layerscape DPAA blocks - Bus assign/discover
IFP cTLU Portals
WRIOP QM/BM SEC PME DCE AIOP Layerscape HW
FQs Pools 49 - Powerful, Flexible
MACs TM

- Complex, distributed
TM
Multicore
AMP (>1 OS) SMP (1 OS)
Programming
Model?

Multicore unsupervised No FSL


Choose OS
OS Framework support, use
? 3P

Control plane Control or Data plane


data plane?
Choose OS
Supervised Modes

and acceleration
FSL technology
Embedded
HV (Topaz) What type What type
of Linux? of small
yes Acceleration Exec?
KVM HV
Needed?

Containers FSL SMP


USDPAA
Linux
ASF
Third Partner SDOS for
Party (Mentor) PA
FMAN
programming
Other 3P FLIB
microcode
Roll your
51
TM
Third party
own
Decide on a programming model
USDPAA

ASF

FLIB Linux

KVM SEC

…that’s composed from a set …to select a MC


of MC leggo bricks SW solution….

TM 52
TM 53
TM 54
• Linux is an open-source integration of many components from
many sources, most of which are architecture-independent and
don’t originate with Freescale.
Kernel Package & Update
• Customers (and FSL Manager

internally) cannot use Linux FSL-specific Window System BOM (License


Support
without a complete kit. (if needed) management)

− Many distros exist. Proprietary value-add Docs


GNU Tools & Libs (Often Tools in
Embedded Linux)
− Some customers create FSL-specific
Support 10’s of Thousands
their own. User Space
of User Space Management
− Major FSL SW must be Bootloader Packages Scripts

usable with arbitrary FSL-specific Build FSL User Space


Support Environment Packages
distros.
− ButFSL also must use and Major FSL component
ship one. Pass-through from other source

− FSL choice: Yocto


TM 55
• The Yocto Project™ is an open source collaboration project that provides
templates, tools and methods to create custom Linux-based systems for
embedded products regardless of the hardware architecture.
System
• FSL proprietary Builder • Industry standard
• Decision to not • Partner w/ MG • Large adoption
do our own distro
• Poor OOBE • Large industry
internally investment
• Not ready for
prime time
LTIB Yocto

 Engaged in Yocto community since June


 MG also moving to Yocto (working jointly)
 Field team transparency and feedback
 Beta version by end of 2011
 Full incorporation into SDK 1.2 in April 2012

TM 56
Model Approach When to Use Attributes

Native on Provide evaluation boards with Desire zero “getting Easy to use.
Eval Board complete native GNU Tool started” effort to
environments right on the board. building and running
FSL and standard
OSS
Yocto This embedded distribution helps Need a tool to Complex,
(Complete) customer create entire Linux generate a but very
system. Package both as ISO complete Linux flexible and
image and also in virtual environment powerful.
machine. including tailored file
system.
A la Carte Simplify customer access to just Desire to integrate Simple when
the major Freescale-created Freescale Linux the
Linux components. Perfect for components into a customer is
integration into Linux Linux development also the
distributions from other sources, environment that integrator.
home-brew or 3rd party. Supports the customer
fast delivery of patches. already has.
TM 57
TM
• Accelerate Customer Time to Market • Deliver Commercial Software,
− Speed Adoption of Multicore / new Support, Services and Solutions
technologies − Commercial Software: VortiQa,
− Dedicated expert staff with access to CodeWarrior, Processor Expert
software and SoC teams − Packaged and Customized services

• Simplify Software Engagement • Create Success!


with Freescale − Partner with customers
− Consolidate Freescale software and − Leverage your strengths, add our
solutions capabilities
− Streamline business processes

TM 59
Software Products and Custom Services

Development Runtime Solutions Linux® Integration


Tools Products Reference Services Services

• CodeWarrior • VortiQa Software • Storage Controller • Commercial • Systems


− IDE Products • SDN Switch Support Consulting
− Debug − Application • Wireless LAN • Frozen Branch • Design Services

− Compiler
Identification • Data Concentrator • Application • Porting
Software (AIS) Specific Hardening • Migration
− Trace • Smart Converged
− Open Networking • Feature
• QorIQ Gateway
Switching Acceleration
Optimization Suite • Digital Signage
Framework
− Scenarios Tools
− Platform Services
− DDrV Package (PSP)
− Mobile Transport

Development Runtime Solutions Linus Integration


Tools Products Reference Services Services

TM 60
TM
• Market Aligned
• Differentiated High Performance Segment-Specific Solutions Enterprise Cloud
• Near market ready designs – leverage R&D efforts
• Feedback to internal teams, improve future NPIs performance
Differentiated System Performance
Turnkey, Market-Ready - Solution Performance with low CPU utilization
Time-To-Market - Evaluate Wi-Fi, SSL/DTLS/VPN performance
- Tradeoffs - x1 vs x2 cores,, DDR size, speed
- Provide Level2/level 3 support on turnkey solutions - Tradeoffs on CPU clock, platform clock speed &
power consumption

Enterprise Cloud
AP Gateway

Multi-Service Gateway Differentiated Platform Solutions (DPS)


- Storage Server (NAS, SAN) - Converged IOT Gateway –Wi-Fi, 3G/4G, sensor
- Video Media Server network (IOT)
- ISR (Integrated Service Router) - Scalable, Portable open-source Platform runs on any
- Universal Communication Gateway
QorIQ, Qonverge, PowerPC devices
- BSC9131 Femto-WLAN Gateway (e.g. P101x, P1020x P1022,/1013, P1023 /P1017,
P1025 etc)
• Winner of 2012 Australian and New Zealand Smart Metering Conference – “Best Networking and Communication
Product Award”
• Winner of 2011 Broadband World Forum: Infovision Award – Smart multi-core, multi-service Business Gateway
• 2012 Innovator of the Year by ECD Magazine for the core 62
TM
agnostic platform approach to Wireless Smart Gateways
TM
VortiQa Application Identification
Network Applications Development
Software (AIS)

Market Driver - The need for


identifying and controlling web
applications traffic at the edge of
business network

• Trends
− Application Identification becoming
a key component of security
appliances. Highlights:
− Explosive adoption of smart • User space Network Application using PSP middleware
devices in business. • Configurable detection schema for full deep packet inspection
or partial inspection for higher performance
− Need for device & application
recognition as Application usage • In-house Signature development & distribution infra.
increases substantially. • Nearly 1700 application features detection – Social
− Need for right policy enforcement Networking, P2P, Business Apps, Games, Streaming etc
for effective utilization of network Status:
bandwidth in businesses.
• Released on QorIQ T4240, P4080, P2020, P1020
• Traffic Characterization and Encrypted traffic detection in
progress.
• Release v3.0 scheduled for Sept, 2013

TM 64
Network Function Virtualization
Network Applications Development
using Open Stack Neutron

Market Driver - The need for an


elastic expansion of virtual
network services on dynamic
demand

• Trends
− Virtual network appliances
replacing legacy hardware Highlights:
− Enterprises are adopting Cloud • Freescale QorIQ platforms work as Compute Nodes.
Computing technologies
• Brought up Web Proxy and Open Cart virtual network
− Elasticity - Dynamic scale in and function on Open Stack Grizzly compute node.
scale out of virtual network • Active participation in the OpenStack forum. Proposing new
appliances based on Network ideas blue prints & sharing software with the community
Traffic Load.
• Demonstrated at the ONS-2013, China Roadshow
− Reduction of CAPEX & OPEX
− Cloud orchestration for Status:
OpenFlow/Software Defined • OpenFlow Controller Integration with OpenStack - Neutron
Networks
• Cloud Resource Discovery Service development for
OpenFlow/SDN Network deployments
• Next release on Dec,2013

TM 65
Network Applications Development VortiQa ONSF
(Openflow Networking Software Framework)

Market Driver - Data center and


clouds embracing this promising
and disruptive new technology to
improve network manageability
and reduce operational cost

• Trends
Highlights:
− Enterprises are fast moving to • Support for Openflow 1.3 protocol
cloud for network services.
• Plugfest validated for Interoperability
− Cloud operators adopting network • Application extensions for L3-L7
virtualization for scalability,
• Integration with Open Stack and VXLAN
flexibility and cost reduction.
• Customer demos in China & Taiwan Road shows
− General purpose switch market
reducing considerably in favor for
SDN based switches for better Status:
manageability and improved cost. • North Bound APIs published for application integration
• Release-1 targeted for Q1 2014 (IP Fwd, IPSec)
• Final release targeted for Q4 2014 (Firewall, QoS)

TM 66
TM
• History
− 1985: Origins as Metrowerks, recognized as Gold Standard for
Mac/Desktop Development Tools
− 1996: Entered embedded development market
− 1999: Acquired as an independent subsidiary of Motorola’s
Semiconductor Products Sector
− 2002: Acquired Embedix (Lineo), established Linux Solutions Group
− 2002: Acquired Applied Microsystems Corporation, expanded product
offering to add board bring-up and code analysis capabilities
− 2005: Fully integrated as part of the TSO organization, focused
on enablement tools and software
CodeWarrior Development Studio
®

− Complete Development, Debug and Analysis
Suite
• Linux and Run-time Technology
− Development Tools (kernel & application)
• Reference and evaluation boards
• Customer Support, Product Maintenance

TM 68
• IDE
Algorithms • Build
• Simulate

• OS & Driver Packages


OS & Drivers • Stop Mode Debug
• Trace

• Debug Agents
Applications • Trace
• SDKs

• Test Server
Test & • Profiling
Refine • Code Coverage
Freescale Development Tools
TM 69
FSL Visibility
with Plug-ins
• Off-the-shelf ARM tools
ARM
− ARM DS-5 or any ARM Debugger
Coresight-Aware tools “just
work”
CodeWarrior
• Augment ARM tools with FSL Multicore
Freescale plug-ins and stand- Debugger
alone tooling
− ARM tools act as a pipe for JTAG/DAP Trace Ethernet
Freescale trace and debug
Combine AIOP
& Buffer
HW
Agent
• CodeWarrior enables debug of
core
Freescale cores ARM Core
EPU
− AIOP & Accelerators STM
EPU
− Fit within ARM Coresight arm Core
SOC
SOCBlocks
blocks
TM 70
• Customer Benefits
− Complexity abstraction and ease of
use
− Enables key use cases:
 Packet-Oriented System Level
Performance Analysis
 SoC Data Plane Configuration
Debug
 Packet Processing Latency Analysis
 Packet Processing Critical Resource
Monitoring
• Target areas:
− SoC debug/analysis feature
enablement
− Linux Systems
− Analysis data interpretation and
visualization
• Users
− External Customers
− Freescale internal developers

TM 71
• Customer Benefits
− Customer can see a time line of AIOP
Program execution.
− Visualizes task timelines
− Provides resource centric visualization for
both cores and accelerators.
− Presents task statistics
− Customer can select time ranges and the
viewer presents utilization statistics over
the selected range.
• Technology
− Today built on top of the simulator
− Will be moved to Emulator
− Linux Systems
− Analysis data interpretation and
visualization
• Users
− Freescale Designers and validation team
− Freescale internal developers
− External Customers

We have a prototype today


TM 72
TM

You might also like