Earlier this summer, Freescale Semiconductor and QNX Software Systems announced their strategic partnership for jointly developing embedded solutions, including in-vehicle digital instrument clusters that enable graphics deployment and updates across multiple vehicle lines. Andy and Paul discuss how their respective companies are addressing the challenges of developing automotive infotainment systems and describe how scalable platforms – particularly those based on multicore architectures – can simplify the design process.
ECD: What are the biggest challenges your customers talk to you about when looking to design automotive infotainment units?
GRYC: Automakers and Tier 1 automotive suppliers face many challenges, but implementing connectivity in mobile devices has become one of the most prevalent. Done right, mobile connectivity can help differentiate a vehicle and boost its desirability. But it also raises several issues:
- User satisfaction versus driver distraction: How do you design an infotainment system that can leverage the immense variety of apps and Internet services available on mobile devices while minimizing driver distraction?
- Time to market: How do you ensure that, by the time the car becomes available to the general public, its device connectivity isn’t already obsolete?
- Time in market: Given that an automobile’s life cycle is 10x longer than that of the average mobile device, how do you keep the car relevant? How do you ensure it continues to work with the latest mobile apps and services?
Sykes: In addition to the very important challenges related to mobile connectivity, customers want to balance the right set of features with the following system parameters:
- Performance: Given the growing sophistication of in-vehicle connectivity, applications, and Human-Machine Interfaces (HMIs), how can the customer ensure that the system will have enough performance to support the features required?
- Cost: An infotainment platform might need to support several configurations to span across a broad portfolio of vehicles. How do you optimize the development and bill of materials cost of the platform while meeting the unique needs of each vehicle?
- Power consumption: How can the customer minimize power consumption to offset an ever-increasing number of vehicle engine control units and the hybrid vehicle trend?
ECD: As the market matures and end-user expectations grow, user interfaces in automotive infotainment systems are becoming richer and more graphics-intensive. What’s being done to keep up with these requirements?
Gryc: Infotainment system designers are tapping into multiple standards and technologies, including Adobe AIR, HTML5, and OpenGL ES. Problem is, none of these can address every requirement. Thus, we provide a “universal platform” that supports these various technologies simultaneously. That way, designers can take a best-of-breed approach, blending apps and user interface components based on these technologies, all on a single display. It comes down to flexibility; rather than force our customers into an either/or approach, with all its attendant risks, we have opted for a both/and model that accommodates multiple environments.
Sykes: Graphical user interfaces in the vehicle are becoming more popular. As consumer devices such as tablets are introduced with ever-increasing graphical user interface capabilities, consumers expect the same experience in their vehicles. Freescale implements the latest graphics and multimedia technologies into our products, such as multiformat 1080p video encoding/decoding and high-performance graphics processing units with the latest graphics API standards such as OpenGL/GL ES, OpenVG, and OpenCL, and tests the products’ ability to withstand the harsh automotive environment for many years. In addition, Freescale works with ecosystem partners like QNX Software Systems to ensure that the software running on our products can take advantage of the hardware capabilities.
ECD: With today’s car owners desiring to bring their connected lifestyle to the automobile, what are the challenges to developing systems that easily integrate with smartphones and tablets? How are Freescale and QNX Software Systems addressing these challenges?
Gryc: Automakers need to concentrate on designing upgradable, future-proof systems that keep pace with the rapid evolution of mobile devices and applications. More specifically, they must create a system that can reliably and securely support new or upgraded software without affecting the system’s core functions. With this in mind, we equipped the QNX CAR Application Platform with several capabilities, including:
- Firewall and safety features, such as advanced memory protection to contain faults and adaptive time partitioning to prevent new applications from starving core processes of CPU time.
- A highly modular architecture that simplifies software updates using Firmware Over The Air (FOTA) techniques (see Figure 1).
Sykes: Mobile devices are integrated into the vehicle environment in various ways. For example, an iPhone or iPad might require a USB interface, while many smartphones use a Bluetooth interface. This integration poses many challenges, including:
- How to account for future devices or software upgrades for existing devices.
- How to protect the in-vehicle system from corruption or viruses while interfacing to portable devices.
Freescale solutions offer the hardware and foundation software required for interfacing to a multitude of existing and future mobile devices, whether they utilize a wired or wireless interface. However, the ability to interface is only part of the challenge. It is also important to have available processing power to support future needs, which could include connections to other cars or to the transportation infrastructure. Once the interface is established, it is also necessary to ensure that it is secure. The i.MX processor family offers features such as specialized hardware for software version control and trusted image execution that can help protect the system from undesired software effects.
ECD: What are some of the key innovations both companies offer to simplify the design process for auto engineers? And how do you help the general application development community keep cars fresh with new applications?
Gryc: For auto engineers, it’s about creating a platform that has all the key software technologies integrated into it. In essence, we give them an out-of-the-box infotainment system that has the pieces they need – Operating System (OS) platform, multimedia engine, graphics frameworks, networking stacks, and so on – to get their systems set up quickly.
For the application developer community, it’s about providing support for HTML5, Adobe AIR, and other standards so that developers have the flexibility to apply their expertise to automotive systems, regardless of the application or the auto manufacturer for which the application is designed. For example, because the BlackBerry PlayBook is based on the QNX Neutrino OS, developers who create applications for the BlackBerry PlayBook could have a natural migration path between application development on the PlayBook and automotive systems based on QNX Neutrino.
Sykes: It is also important to provide scalable development solutions to the customer. While some chipmakers focus their solutions on a particular segment of the infotainment market, the newest i.MX 6 family of application processors can cover the entire range of solutions from entry to high end while maintaining software compatibility (see Figure 2). The entire family is based on standard ARM processors in single and multicore configurations and shares common footprints and pin configurations. Hardware can be designed without worrying if more or less performance will be needed later.
Prior to hardware development, the software development process can start with Freescale’s affordable automotive-focused reference platforms that enable key system functions, offer expandability to support new functions, and include the software base that allows the customer to start development right away.
ECD: What has changed in automotive infotainment that makes multicore CPU architectures so attractive to developers today, and how do Freescale and QNX Software Systems take advantage of these architectures?
Gryc: Simply put, there’s a lot more going into cars, from video codecs to 3D navigation applications to high-level languages with virtualized execution environments, all of which have a serious appetite for CPU cycles.
Multicore addresses this demand for greater processing power by allowing multiple applications to run in parallel. For example, in a multimedia head unit, you could dedicate one core to running a compute-intensive process such as an HTML5 browser and use the other cores to run the remaining processes. Or you could run in full Symmetric Multi-Processing (SMP) mode and allow any process to run on any available core.
From a software perspective, the QNX Neutrino RTOS makes multicore dead simple. Because QNX Neutrino employs a true microkernel architecture, only the OS kernel needs SMP awareness and supporting logic. Applications, drivers, networking stacks, and other multithreaded processes can automatically take advantage of multiple cores without having to be rewritten or redesigned because the kernel handles the details of scheduling threads on each core. Moreover, our visualization tools can analyze how the multicore system behaves as a whole. This approach offers deeper insight into the complex system interactions typical of multicore designs and allows developers to focus their efforts on areas that yield the greatest increase in parallelism and performance.
Sykes: Multicore CPU solutions offer the benefits that Andy described while consuming less power than a single core CPU with similar performance. This reduction in power consumption is important for all vehicles, but can be critical in hybrids.
While some markets focus on achieving the highest performance for a particular application, infotainment applications can greatly benefit from multicore CPUs because they require multiple simultaneous processes such as speech, audio, multimedia, navigation, and HMI. Single applications running across multiple cores will experience diminishing returns as the number of cores increases. In contrast, multiple applications in an infotainment system can be run as unique processes to optimize loading and take full advantage of each core’s available performance. As a result, the infotainment system achieves more processing power with better software load balancing, as well as lower power consumption.
QNX Software Systems 800-676-0566