Logo
Get direct access via EPNdirect to Europe’s most comprehensive database of electronic products & suppliers
Search    Advanced Search Criteria
 FEATURE ARTICLE
Print | Digg This | Slashdot It! | Add to Del.icio.us |
Specialised Automotive Graphics System
Infotainment applications require increasingly complex graphics-processing capabilities. This processing can be implemented in high-end processors and DSPs, but at a significant cost, complexity and power consumption. A flexible and scalable solution based on automotive-grade FPGAs and structured ASICs can be used in the system to lower the overall cost, complexity, and performance needs in a multimedia and driver-information system while meeting stringent quality demands. These designs can also be easily demonstrated in hardware using a fully scalable infotainment platform.
EPN_Supplements, 25/01/2008
Reference: 28366

Developing a multimedia head-unit platform for next-generation cars does not look too complicated at a first glance. Typical system-architecture ideas are using a powerful CPU with a number of car bus interfaces, some analogue front-end chip sets for radio and TV, an audio amplifier and of course an automotive power supply. Recently, a variety of microcontrollers dedicated to exactly these requirements have been announced, and some seem to be well-positioned with multi-core architectures and hardware-acceleration blocks. As usual, the challenge is in the detail. A centralised architecture with mainly one CPU running all applications has to provide sufficient performance for each task. As long as the tasks are executed one after the other, these 400 to 800MIPS processors are well-equipped. Unfortunately, this is not the scenario in the automotive world. There are obvious requirements, such as uninterrupted sound decoding and displaying content on the TFT screen instantly. Furthermore, car bus systems need a certain response time on messages, and a GPS signal tracking algorithm cannot be interrupted either. The system-design task is even more difficult due to the fact that for cost and quality reasons, it needs to be somehow scalable to address the different end-user needs from a low-end radio up to a high-end multimedia navigation device. This is not possible by just tuning the system frequency as long as we are talking about an embedded system. Therefore, for higher end head-unit variants, the solution is to offload tasks from the main CPU. There are also a number of specialised graphic controllers available on the market. However, no matter which device is selected, there is always either something missing, or the system will become too expensive. For example, a car platform needs to fulfill the requirement for different TFT sizes and resolutions; thus the timing controller has to be flexible. In addition, there could be a need for multiple screens or other specialties such as a dual-view TFT for the upper segment. Finally, if the car manufacturer requests the attachment of one or more cameras to the system with additional need for video-image processing - such as fisheye correction - then standard devices are wholly unsuitable.


Application development
Another issue is application development. Every head unit has its own HMI (human-machine interface), which usually comes from the car manufacturers in order to maintain a unique look-and-feel. Ideally, the HMI development should be independent of the actual graphics controller used. In fact, the HMI is usually developed on a PC using a high-level description language such as XML. HMI-development tools generate an OpenGL output format, which is what a PC uses to generate graphics; therefore, it is very easy to simulate the HMI on the same PC environment. However, mapping the simulated HMI to embedded hardware is much more difficult as graphics controllers for embedded systems usually understand only a sub-set of OpenGL. Furthermore, this graphics language developed for the PC world is not very efficient in the embedded space and its ever-existing challenge to optimise for power, frequency and cost. The result is that an HMI developed and simulated on a PC does not always look like the actual output of an embedded implementation. A new graphics-system solution for the embedded market therefore needs at the same time address the car manufacturers’ very fast prototyping requirements and minimise system cost, frequency and power budget.


Graphics on demand
The Altera Automotive Graphics System (AAGS; Figure 1) is a framework created to create any imaging application within next-generation cars. Based on a flexible graphics controller, the graphics API provides a very efficient way of implementing dynamic display applications. In addition, the OpenGL ES interface allows to re-use existing code and develop in a platform-independent way. Also, a GUI could be used to simplify the windows management for embedded systems. Finally, standard HMI-development tools are directly linked to the whole environment and provide very fast application development and prototyping.


Controller flexibility
A flexible and scalable graphics platform based on programmable logic or on a structured ASIC derived from an FPGA enables both the power and flexibility needed for targeting low-cost applications such as those required by the automotive marketplace (Figure 2). It includes one or more video interfaces connecting directly to cameras or other video sources. It formats all incoming video to desired buffered representation. Registers allow the system to be customised for various display resolutions and input video formats such as NTSC, PAL, or SECAM. Video data from the module is transferred via a 32-bit DMA (direct memory access) to the frame buffer. A video-processing module performs tasks such as colour-space conversion, sizing, scaling, and image sharping. YCrCb ≥ RGB and programmable X/Y clipping allow only the area of interest to be viewed and reduces memory bandwidth, bi-linear interpolation with a scale from 0.3x to 3x and image warping (fish-eye correction).


Graphics controller
In addition to the external video sources, an internal graphics controller produces the main content of the HMI. There are already various functions available in the basic graphics controller, such as dynamic object management, transparency control, filtering, resizing, palette control and Bit-Blit engine. For vector-based tasks such as map drawing or complex graphics, the TES D/AVE vector-acceleration module is used. This module can take over many features, such as fast high-quality antialiasing, sub-pixel accuracy, resolutions up to 2048x2048, extended rendering primitives supported in hardware (lines, circles, circle rings, triangles, quadrangles, wedges...), 16 blending modes, patterns and gradients with alpha channel on all primitives.


Video-mixing module
The video-mixing module is a scalable alpha-blending unit that controls multiple frame layers plus a background layer with blending and picture-in-picture capabilities. The architecture is fully parallel and thus extremely fast. At the same time, it is area-optimised thanks to intelligent resource sharing. The timing generator is used to provide a generic interface to virtually every display size and type. Multiple displays and even dual-view displays are supported. A set of registers is used to configure the actual display timing parameters. The display-output module supports digital direct, LVDS and/or interfaces to standard analogue video DAC devices. A variety of host processors can be used together with the flexible graphics controller. Ultimately, an embedded controller such as NIOS II is the most efficient way of running the application software.


OpenGL-ES
The OpenGL-ES graphics library interface (Figure 3) is written in ANSI-C and can be used on an external host micro as well as on NIOS. It is written as a consistent OpenGL-compliant interface, suitable for the development of low-cost embedded products. The most important features of this interface are a mixed 2D/3D graphic interface, support of existing graphics with improvements in map drawing, compliance to OpenGL for embedded-system specification, and easy upgrade to a complete 3D interface. There are a number of extensions to standard OpenGL-ES available with D/AVE: concave polygons; line ends; butt, round, square; poly-line connection; round, miter, bevel; perspective lines and outlines; and anti-aliasing.


Graphial user interface
One of the most challenging aspects of many development projects is designing an attractive and useful display. Besides creating images that look exactly how you want them to appear, the implementation of window techniques, complex drawing routines, different fonts and flicker-free updates are also expected. The developer has to implement this complex functionality in short time periods, which can take up to months or years of development time. emWin, an efficient and comprehensive embedded GUI, helps developers beat their timelines and development costs. emWin is a small-footprint, fully featured graphics software, designed to provide an efficient, processor- and display-controller-independent GUI (graphical user interface) for any embedded application that operates with any type of graphical display. Its feature-rich modules allow high flexibility and are suitable for FPGA designs.
It is written in ANSI "C" and supports any color depths up to 32bpp. It features 2D graphic routines, fonts and font-converter tool, a bitmap converter tool, colour management, virtual screen support, memory devices, simulation and viewer, TrueType Font support, and semi-transparent bitmaps with alpha blending support, among others.


HMI builder
Standard HMI-builder software, like Altia Design (Figure 5), can be used to provide an efficient means of creating virtual prototypes and deployable user interfaces. With these tools, product engineers can quickly and inexpensively design user interfaces, producing interactive software prototypes that can accelerate development cycles, saving time and money. Customers and other consultants can preview the product remotely and suggested changes can be made before a physical model is produced.


Summary
By using FPGAs in an automotive system, the same platform can be used to address different market requirements. In the Altera Automotive Graphics System, for example, a reference platform was used to implement several variations of a graphics-controller module based on market needs. By using standard IP and reference designs, the development team can focus its efforts (and expense) on differentiating its products from those of competitors and meeting customers’ needs, instead of concentrating on basic programming. Furthermore, the use of FPGAs still allows the implementation of an ASIC later on. The design implemented in an FPGA can be migrated to a structured ASIC such as Altera's HardCopy device or a full custom ASIC because all basic IP is reusable for future device generations. Designers can also be confident that FPGAs and structured ASICs will meet their quality requirements with new devices specifically targeted at automotive applications. This new class of devices supports automotive-temperature grades for systems such as car infotainment, telemactics, driver assistance, and networking. It is manufactured at TS16949-certified manufacturing sites, support AEC-Q100, and have production part-approval-process documentation. Although automotive applications can often justify the high volumes necessary for a profitable ASIC implementation, when increased complexity and time-to-market pressures are considered, FPGAs can meet or beat the overall project cost targets. The combination of this low-cost structure with abundant device resources available in FPGAs allows designers to implement complete, economical solutions ideal for this volume-production application. Furthermore, as FPGAs are flexible, these designs can be modified and enhanced quickly to meet changing market requirements and create product differentiation without costly redesign of the overall platform.


Figure 1: Structure of the Altera Automotive Graphics Solution.

Figure 2: Overview of application areas for embedded graphics in automotive.

Figure 3: D/AVE extensions to OpenGL ES.

Figure 4: A Segger emWin application example.

By Axel Zimmermann, Manager Automotive Applications, Altera Europe

Altera Europe
Holmers Farm Way
HP12 4XF High Wycombe - United Kingdom -Buckinghamshire
tel: +44 1494 602 033
fax: +44 1494 602 001

RELATED ARTICLES All related products...
Search in the archives
Advanced Search Criteria
Magazine_mar_2010_small
Loupe
issue
March 2010
Home  |  Products  |  Suppliers by company / by product type  |  Events  |  Subscription to Datasheet / to Magazine  |  Distiblog