22.06.2013 Views

Infotainment Solutions with Open Source and i.mx6

Infotainment Solutions with Open Source and i.mx6

Infotainment Solutions with Open Source and i.mx6

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

<strong>Infotainment</strong><br />

<strong>Solutions</strong><br />

<strong>with</strong><br />

<strong>Open</strong> <strong>Source</strong><br />

<strong>and</strong> i.<strong>mx6</strong><br />

Andrew Patterson<br />

Business Development Director<br />

Embedded Automotive<br />

mentor.com/embedded<br />

Android is a trademark of Google Inc. Use of this trademark is subject to Google Permissions.<br />

Linux is the registered trademark of Linus Torvalds in the U.S. <strong>and</strong> other countries.


<strong>Infotainment</strong> Requirements<br />

Android<br />

Apps<br />

Navigation<br />

Multimedia<br />

• Modular , Scalable<br />

Virtualization<br />

• Complex, Multi-Mode HMI<br />

• <strong>Open</strong>-<strong>Source</strong> integration<br />

Video/ Rear camera<br />

Web<br />

Browsing<br />

Connected<br />

Cloud<br />

SmartPhone<br />

integration


Innovation <strong>and</strong> Functionality…<br />

3


Software in Transportation<br />

Complexity increase is relentless …<br />

Millions of<br />

Lines<br />

300<br />

250<br />

200<br />

150<br />

100<br />

50<br />

0<br />

Lines of Code in Transportation ECUs<br />

4


Critical <strong>and</strong> Non-Critical Functions<br />

M<strong>and</strong>atory : Safety Critical Convenient<br />

Traction-Control Monitor<br />

Steer by Wire<br />

Emissions Sensor<br />

Cornering Brake<br />

Control<br />

Headlamp Warning<br />

Electronic Stability<br />

Control<br />

PowerTrain Control<br />

Automatic Braking<br />

Sat-Nav System<br />

Door Sensors<br />

Reversing Sensor<br />

Tire-Pressure Monitor<br />

Electronic Stability<br />

Control<br />

Pre-Crash System<br />

Head-Up Display<br />

Rear-View Camera<br />

Automated Parking<br />

5 AP,<br />

Embe<br />

Connected Car<br />

Mobile Office<br />

Support<br />

Android App<br />

Support


Trends…<br />

■ 5 out of 10 top purchase<br />

decisions for cars are<br />

<strong>Infotainment</strong> related (GFK Research)<br />

■ Value of software <strong>and</strong> electronics<br />

in a car is already 35-40% for a<br />

premium car (Spectrum IEEE)<br />

■ Electric Vehicle : software <strong>and</strong><br />

electronics : 80% of value<br />

■ Rising aftermarket maintenance<br />

costs …


Automotive Technology Refresh<br />

Mechanical Systems<br />

Electrical Systems<br />

Software Systems<br />

New Smartphone<br />

New Apps<br />

= Obsolete<br />

= Current<br />

Product Release Year 5 Year 10<br />

Product Release Year 1 Year 2<br />

7 AP,<br />

Embe


<strong>Infotainment</strong> System Technology Refresh<br />

Mechanical Systems<br />

Electronic Systems<br />

Software Systems<br />

Real Time Data<br />

New Apps<br />

= Obsolete<br />

= Current<br />

Data Communications<br />

Commercial prospects for "driverless" cars<br />

got a boost last month when four vehicles<br />

on autopilot successfully trailed a lead car<br />

on a 124-mile route near Barcelona, Spain.<br />

Position<br />

Cloud Access / Connected Car<br />

Real time road conditions<br />

Vehicle to vehicle warnings<br />

8


Embedded Software Design Process<br />

Requirement<br />

Definition<br />

Initial POC<br />

H/W Model in Loop<br />

S/W Model in Loop<br />

Design<br />

Implementation<br />

Test Scripts<br />

Prototype<br />

Development<br />

System in Loop<br />

Prototype in Loop<br />

Integration, Test<br />

Final Test<br />

Calibration


Benefits of St<strong>and</strong>ardization<br />

Allow OEMs to source from several Tier One<br />

suppliers<br />

Reduce development <strong>and</strong> maintenance costs<br />

Reduce specification / design ambiguity<br />

Fewer Errors / More Quality<br />

CAN<br />

10


The <strong>Infotainment</strong> System Stack<br />

HMI<br />

Apps<br />

Display<br />

Networking<br />

Navigation<br />

Entertainment<br />

Mobile Office<br />

Operating System <strong>and</strong> Middleware<br />

Hardware Platform<br />

Operating system choice : Linux or Android ?<br />

• App Selection, SmartPhone Link<br />

• Scalability, flexibility, security<br />

• Performance, cost, feature set<br />

11


Android or Linux Platform for IVI ?<br />

Android Linux<br />

For - Smartphone Influence<br />

- Applications exist<br />

- Market Apps repository<br />

Against - Dependent on Google<br />

- Audio Capability<br />

- Connected car costs<br />

- Graphics Performance<br />

- <strong>Open</strong> widely used st<strong>and</strong>ard<br />

- Scalable <strong>and</strong> flexible<br />

- Portable<br />

- IVI st<strong>and</strong>ard <strong>with</strong> GENIVI<br />

- Higher development costs<br />

- Weaker in consumer<br />

electronics


GENIVI Linux Platform for <strong>Infotainment</strong><br />

GENIVI Consortium established 2009 to<br />

provide <strong>Infotainment</strong> base (Linux) platform<br />

170 members<br />

50% European, 26% USA, 24% ASIA<br />

OEMs, Tier 1s, Semiconductor Suppliers, Tool<br />

Vendors<br />

Members contribute re-usable software under<br />

open source rules<br />

13


GENIVI Future Development<br />

GENIVI Expert Groups<br />

– System Infrastructure (Loaders, Initialization)<br />

– Automotive (Diagnostics, Software tools)<br />

– Media <strong>and</strong> Graphics (Tuners, Broadcast, DVD)<br />

– Location Based Services (Positioning, Navigation)<br />

– Networking<br />

– Consumer Electronics, Social Media, Connectivity,<br />

Bluetooth, iPad,..<br />

– Mobile Office<br />

– Application Framework (Speech Recognition, HMI, Text to<br />

speech)<br />

14


GENIVI <strong>Open</strong> <strong>Source</strong> Components<br />

Adopt,<br />

Adapt,<br />

Create<br />

Automotive Specific Code<br />

Extended Community Code<br />

Community Code<br />

GENIVI<br />

LINUX<br />

Platform<br />

<strong>Infotainment</strong><br />

Graphical Interface<br />

Applications<br />

80%<br />

Hardware<br />

5%<br />

15%<br />

15<br />

GENIVI Code


GENIVI support for <strong>Infotainment</strong> Layers<br />

Audio Manager<br />

Graphics Server<br />

DVD<br />

RADIO<br />

Layer Management<br />

<strong>Open</strong> GL/ES<br />

ALSA<br />

GStreamer<br />

Systemd<br />

Software Download<br />

NAVIGATION<br />

Speech Engine<br />

OFFICE<br />

Telephony Stack<br />

Noise Reduction<br />

INC Messenger<br />

IPOD Control<br />

Traffic Incident<br />

Auto Diagnostics<br />

User Manager<br />

IPOD<br />

SPEECH<br />

Virtual MOST<br />

HTTP Server<br />

Noise Reduction<br />

Indexing Engine<br />

Virtual MOST<br />

HTTP Server<br />

Linux Kernel<br />

Hardware Platform<br />

Noise Reduction<br />

Diagnostics<br />

PHONE<br />

Future Support<br />

Future Support<br />

16<br />

Future Support<br />

CAMERA<br />

TV<br />

Future Support


Beyond GENIVI<br />

Human Machine Interface – HMI<br />

Hardware Platform <strong>and</strong> software drivers<br />

Applications <strong>and</strong> Integration work<br />

Testing<br />

Design Tool Support<br />

Services<br />

17


Running Multiple<br />

Operating Systems<br />

Andrew Patterson<br />

Business Development Director<br />

Embedded Automotive<br />

mentor.com/embedded<br />

Android is a trademark of Google Inc. Use of this trademark is subject to Google Permissions.<br />

Linux is the registered trademark of Linus Torvalds in the U.S. <strong>and</strong> other countries.


<strong>Infotainment</strong> System layers<br />

HMI Layer<br />

Application Layer<br />

Middleware Layer<br />

OS Layer<br />

Hardware Layer<br />

eg i.<strong>mx6</strong><br />

HMI<br />

Core<br />

Entertainment<br />

Mobile Office<br />

Media Graphics<br />

Platform<br />

Management<br />

User<br />

Interface<br />

Networking<br />

Navigation<br />

OS<br />

Connectivity<br />

System<br />

Infrastructure<br />

Voice &<br />

Speech<br />

Telematics<br />

Diagnostics<br />

On-Line<br />

Services<br />

Power State<br />

Management<br />

Board Support Package Linux Core<br />

CPU Cores<br />

Memory<br />

Storage<br />

MOST<br />

CAN/FlexRay<br />

BootLoader<br />

19<br />

HMI Design<br />

Apps Ecosystem<br />

Libraries, Services,<br />

Middleware<br />

GENIVI-compliant<br />

Embedded Linux<br />

Semiconductor<br />

Driver Support


Guest OS Example: Linux Container (LXC)<br />

HMI<br />

IVI<br />

Stack<br />

User<br />

Interface<br />

Hardware Layer<br />

i.<strong>mx6</strong> 4Q<br />

Networking<br />

Navigation<br />

Entertainment<br />

Mobile Office<br />

Mentor IVI Linux OS<br />

CPU Core 1<br />

Android App<br />

Android OS<br />

CPU Core 2 CPU Core n..<br />

Memory, Storage, peripheral support etc.<br />

Linux Container<br />

20


Linux Container<br />

Boot-up speed dependent on host OS<br />

Security : Software partition / Firewall<br />

Resources, managed by underlying kernel<br />

Useful option for including guest operating<br />

systems – e.g. Android<br />

Mentor acknowledges development partner :


Guest OS via Hypervisor<br />

HMI<br />

IVI<br />

Stack<br />

Linux OS<br />

HyperVisor<br />

User<br />

Interface<br />

Entertainment<br />

Mobile Office<br />

Hardware Layer<br />

Networking<br />

Navigation<br />

e.g. OK Labs OKL4, Synergy CoqOS, Sysgo PikeOS<br />

CPU Core 1<br />

Android<br />

App. Market<br />

Android OS<br />

CPU Core 2 CPU Core n..<br />

Memory, Storage, peripheral support etc.<br />

MAPS<br />

Social Network<br />

22


Resource <strong>and</strong> Privilege Management<br />

Linux<br />

Operating System<br />

Managed Privileges<br />

Freescale<br />

Resources<br />

HMI (User Application Interface)<br />

Android<br />

Operating System<br />

Managed Privileges<br />

Microvisor : Privilege <strong>and</strong> Resource Mgmt.<br />

CPU Graphics Memory Network


ECU Count in Cars<br />

150<br />

100<br />

50<br />

0<br />

■ Vehicle Safety<br />

■ Driver Convenience<br />

■ Performance<br />

■ Emissions / Environment<br />

■ Reliability<br />

2005 2010 2015 2020<br />

24<br />

■ Maintainability<br />

■ Harness Costs<br />

■ Manufacture <strong>and</strong><br />

■ Assembly Cost<br />

■ Reliability


AUTOSAR <strong>and</strong> GENIVI<br />

AUTOSAR: Set to be in 25% of all ECUs in 2 years<br />

Why mix Linux <strong>and</strong> AUTOSAR?<br />

Increasing need for vehicle function consolidation<br />

<strong>Infotainment</strong> System is a multi-core high-end computer,<br />

capable of multi-tasking<br />

Functions such as video, audio, navigation becoming<br />

safety-critical<br />

Complexity of ECU functions increasing<br />

Today : Remotely connect ECUs <strong>and</strong> IVI system<br />

Future : Integrate on same hardware platform<br />

25 AP,<br />

Embe


Connect Remotely<br />

INFOTAINMENT SYSTEM<br />

IVI Application /<br />

Middleware<br />

Linux OS<br />

Does not help <strong>with</strong> ECU consolidation<br />

Spare capacity in IVI system<br />

Harness cost implications<br />

CAN / AVB / MOST / Flexray etc<br />

AUTOSAR ECU<br />

FUNCTION<br />

AUTOSAR<br />

RTE<br />

26


Share common platform<br />

IVI<br />

Stack<br />

HMI<br />

Freescale e.g<br />

i.<strong>mx6</strong>Q<br />

Vehicle Network<br />

Networking<br />

Navigation<br />

Entertainment<br />

Mobile Office<br />

User<br />

Interface<br />

GENIVI compliant Linux OS<br />

CPU Core 1<br />

Virtualization Layer<br />

CPU Core 2 CPU Core n..<br />

Memory, Storage, peripheral support etc.<br />

CAN / AVB / MOST / Flexray etc<br />

AUTOSAR Functions<br />

TACHO<br />

SENSORS<br />

MASTER<br />

AUTOSAR RTE


Embedded Tools for IVI Design<br />

Optional Tools<br />

Static Analysis<br />

Code Coverage<br />

Traceability<br />

Verification<br />

Virtual Platform<br />

<strong>Source</strong> Code<br />

Dljasldkas;dj<br />

fa<br />

Dljasldkas;dj<br />

a;ldsj<br />

aslkadsjkdkd<br />

fa<br />

Dljasldkas;dj<br />

a;ldsj<br />

aslkadsjkdkd<br />

fa<br />

Dljasldkas;dj<br />

a;ldsj<br />

aslkadsjkdkd<br />

fa<br />

Dljasldkas;dj<br />

a;ldsj<br />

aslkadsjkdkd<br />

fa<br />

Dljasldkas;dj<br />

a;ldsj<br />

aslkadsjkdkd<br />

fa a;ldsj<br />

aslkadsjkdkd<br />

<strong>Source</strong> Control<br />

IVI APPS<br />

Development<br />

Tools<br />

IDE<br />

Compiler<br />

Debugger<br />

Profiler<br />

IS Simulator<br />

Integration Services<br />

P R O B E<br />

JTAG & Trace<br />

Serial (ethernet, usb, etc)<br />

Run-Time IVI Software<br />

HMI<br />

Applications<br />

Middleware & User Space<br />

(GENIVI)<br />

GENIVI Linux Kernel<br />

Board Support Package<br />

Freescale Target<br />

28


Real / Virtual System Analyzer<br />

Optimize performance for baremetal,<br />

Linux, Hypervisor etc.<br />

Easily visualize data <strong>with</strong><br />

timeline synchronized views<br />

Extract CPU usage <strong>and</strong> kernel<br />

events, view locking patterns,<br />

find memory leaks <strong>and</strong> more!<br />

Integrate custom analysis of<br />

your own time-stamped data<br />

streams<br />

Analyze behavior <strong>and</strong> improve<br />

performance on multi-core<br />

systems<br />

29


Virtual Platforms<br />

A Virtual Platform is a high-level<br />

simulation model of the System/SoC<br />

– Software instruction set compatible<br />

– Models for CPU <strong>and</strong> peripherals<br />

A Virtual Prototype allows you to:<br />

– Test the integration of the hardware components <strong>and</strong><br />

software<br />

– Check design functionality before committing to real<br />

hardware/silicon<br />

– Iterate efficiently between HW/SW design teams<br />

– Simulate extreme conditions<br />

– Check OS / boot-up code<br />

<strong>Solutions</strong> from Mentor<br />

– Code port to native platform / KVM<br />

– QEMU : Functional only<br />

– VISTA : Includes Transaction Level Modeling for<br />

improved timing fidelity<br />

– VELOCE : Real hardware-in-the-loop<br />

UART<br />

Video<br />

Peripherals<br />

TIMER<br />

WD<br />

Accelerator Multicore ISS<br />

INTC DMA USB ETHERNET FLASH<br />

ADC<br />

ETH<br />

DDR2<br />

DDR<br />

DDR2


Virtual Prototype <strong>with</strong> Hypervisor<br />

Linux<br />

Operating System<br />

Microvisor : Privilege <strong>and</strong> Resource Mgmt.<br />

QEMU ISS<br />

HOST PC<br />

AUTOSAR<br />

Run Time Environment


Virtual Technology Stack<br />

HMI<br />

Sample<br />

App<br />

User<br />

Interface<br />

Entertainment<br />

GENIVI Linux OS +<br />

Middleware<br />

Native KVM<br />

QEMU<br />

VISTA<br />

Host PC<br />

IS Simulator<br />

HMI<br />

Sample<br />

App<br />

Actual<br />

Hardware<br />

User<br />

Interface<br />

Entertainment<br />

GENIVI Linux OS +<br />

Middleware<br />

i.MX6Q<br />

SabreLite


Multiple OS on Hardware Platform<br />

IVI<br />

Stack<br />

HMI<br />

Hardware Layer<br />

Networking<br />

Navigation<br />

Entertainment<br />

Mobile Office<br />

User<br />

Interface<br />

Virtualization Layer (Hypervisor – e.g. OK Labs OKL4)<br />

CPU Core 1<br />

Market Apps<br />

GENIVI compliant Linux OS Android OS<br />

AutoSar<br />

CPU Core 2 CPU Core n..<br />

Memory, Storage, peripheral support etc.<br />

Vehicle Data<br />

33<br />

SPEED<br />

SENSORS


Future application areas<br />

Cross-Market Themes:<br />

- Mentor Embedded<br />

Linux<br />

- <strong>Open</strong> <strong>Source</strong> Software<br />

- Services<br />

- Inflexion HMI<br />

- Hardware Support<br />

Packages<br />

- Supporting Design<br />

Tools<br />

IVI<br />

Combined Mentor/Freescale platform<br />

GENIVI<br />

Platform<br />

Mentor Linux<br />

IVI Stack<br />

Instrument<br />

Cluster<br />

Leverage IVI<br />

Building<br />

Blocks used<br />

Links to<br />

AutoSar, CAN,<br />

Flexray<br />

Other<br />

Transportation<br />

Off-Road<br />

Trains<br />

In-Flight<br />

Entertainment<br />

Adjacent<br />

markets


Demo Video<br />

mentor.com/embedded<br />

Android is a trademark of Google Inc. Use of this trademark is subject to Google Permissions.<br />

Linux is the registered trademark of Linus Torvalds in the U.S. <strong>and</strong> other countries.


Thank You<br />

mentor.com/embedded<br />

Android is a trademark of Google Inc. Use of this trademark is subject to Google Permissions.<br />

Linux is the registered trademark of Linus Torvalds in the U.S. <strong>and</strong> other countries.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!