Considering the OpenVG GPU core in more detail
Everyone is talking about 3D graphics these days, but not everyone appreciates the importance of their 2D cousins. In the case of an automotive instrument panel, for example, using 3D to create background imagery and representations of things like the mounts for virtual dials results in a much more immersive and pleasurable user experience.
However, when it comes to displaying things that need to be scaled, and things like the fine, crisp lines of the pointers on displays that look like old-school meters and gauges, then 2D graphics offer significant advantages. It's important that there be no visual artifacts to detract the driver from his or her sense of immersion in the user experience of the display. Using one of today's state-of-the art 2D GPUs results in a display so lifelike that one has to look very closely indeed to determine whether the display is rendered or real.
The end result is that an ideal instrument panel will employ a mix of 2D and 3D graphical elements. Now, proponents of OpenGL will note that OpenGL is capable of rendering both 3D and 2D graphics. While this is true, OpenGL is more efficient when it comes to 3D and less efficient when it comes to 2D. This may be compared to having a multipurpose tool that can act as a set of pliers (3D) and a screwdriver (2D). In reality, users will find that a dedicated screwdriver is more suited to the task.
This is why the OpenVG API was created. OpenVG 1.0 was released in 2004 by the Khronos Group and has seen a similar adoption curve to the ES (embedded systems) version of OpenGL. The original version of the API was authored to bring the functionality of SVG (Scalable Vector Graphics; an XML-based vector graphics file format) to a hardware abstraction interface. Version 1.1 was released in December of 2008 with the intent of providing the same acceleration for Adobe’s Flash vector graphics middleware and adds enhanced glyph (font) and enhanced anti-aliasing support. Most importantly, OpenVG 1.1 can be implemented fully in hardware, which is the case with Vivante's GC355 core, thereby fully offloading the main CPU.
A brief summary of the capabilities of the OpenVG hardware pipeline is as follows:
Using the i.MX6 to create real-world human-machine interfaces (HMIs)
- Path definition
- Stroking (line width, joins and caps, dashing, etc.)
- Transformation [2 x 3 (paths) and 3 x 3 (images) transformations]
- Clipping and masking (scissor rectangles)
- Paint generation (flat color, gradient, or pattern paint)
- Blending (multiple blend modes)
- Image filters
Freescale’s i.MX6 Series of application processors offer a scalable line of hardened processors targeting automotive systems. Each i.MX6 product is optimized around CPU, Triple Play graphics, and HD video processing to bring unbounded, next-generation visual user experiences to in-vehicle infotainment and instrument cluster systems.
The Triple Play graphics inside the i.MX6 consists of three Vivante GPU cores – GC2000 for graphics and OpenCL, GC320 for composition and GC355 for OpenVG. Each core works seamlessly together to ensure QoS and efficient work-load balance for best-in class reliability and performance. The differentiated cores allow the composition engine to offload all 2D/composition functions from the GPU to save power and allow the GPU to focus on rendering amazing 3D HMIs and configurable instrument clusters. The OpenVG core operates in parallel to the other engines and delivers the sharpest, fastest, and most accurate needle renderings.
However, you can have the most incredibly powerful processing platform on the planet, but if it's difficult for the creators of automotive instrument display panels to design and deploy their applications, the power of the processing platform is of little interest...
Introducing Rightware Oy
Rightware Oy, is a leader in embedded 2D and 3D user interface (UI) technologies. Rightware’s flagship user interface product, Kanzi UI, is the leading, industry-proven automotive user interface technology that enables creation of high-performance interactive 2D and 3D human-machine interfaces. To achieve the futuristic look-and-feel in next generation automobiles, Rightware has developed the patent-pending Kanzi UI technology that gives car manufacturers the freedom to build captivating, photorealistic HMIs in their graphical display systems.
Rightware has taken its Kanzi UI solution and optimized it for use with the Frescale i.MX6 platform. The highly optimized Kanzi engine has been tightly integrated with the unified software stack of the i.MX6 applications processor and Vivante’s OpenGL, OpenVG, and Composition Processing GPU cores. The resulting turnkey solution increases productivity, shortens development time, and significantly reduces the effort required to create the next wave of revolutionary 3D HMIs.
As Tero Sarkkinen, CEO of Rightware Oy says: "Human-machine interfaces and user experience design for in-vehicle infotainment and instrument cluster systems have become key differentiators in modern cars. High-fidelity graphical user interfaces significantly enhance the appeal of a vehicle and – eventually – that of the manufacturer brand. Our collaboration with Vivante will help car manufacturers and the entire automotive ecosystem rise to a whole new level with next-generation HMIs."
Introducing Elektrobit Corporation
Elektrobit (EB) is an industry-leading supplier of automotive software. EB specializes in providing technologies and flexible software platforms, tools, and services to help automotive manufacturers – such as Audi, BMW, Daimler, Ford, and Volkswagen – to deliver the best products and services to meet the needs of their customers. In order to achieve this, EB works with a community of partners – including Freescale, Microsoft, QNX, Nuance, and Vivante – to help build the next generation of smart, flexible, and cost-efficient automotive software-solutions.
EB GUIDE is a powerful tool chain for intelligent multimodal HMI product development, from modelling and specification, to rapid prototyping and simulation, to target deployment. Thanks to its scalability, EB GUIDE allows carmakers and Tier 1 automotive suppliers to build compelling HMIs for all in-vehicle screens. EB GUIDE enables the development of advanced user interfaces with 3D support, animations and effects.
Figure 2. The combination of OpenVG and OpenGL
provides the most optimal solution.
Release 5.3 of EB GUIDE brings with it support for OpenVG and seamless SVG integration. Having best-in-class 2D graphics enables car manufacturers and suppliers to use cost-effective graphic platforms like the i.MX6 from Freescale. Drivers will benefit from the same rich experiences in their car as they are used to from their mobile phone or tablet.
Figure 3. An example instrument cluster created using EB's tools.
As Thomas Fleischmann, EB GUIDE Product Manager, Elektrobit Corporation says: "With the Vivante GC355 core powering OpenVG on the Freescale i.MX6, we can bring extremely sharp graphics and very nicely rendered fonts from the PC development environment right into the car. Clever usage of vector graphics is the key to re-use. As of version 5.3, EB GUIDE supports SVG and OpenVG. This helps users to build an HMI once that can easily be applied time and again in different device variants."
Human-machine interfaces for in-vehicle infotainment and instrument cluster systems have become one of the key differentiators in modern cars. High fidelity graphical user interfaces significantly enhance the appeal of a vehicle and eventually that of the manufacturer brand.
The technologies and tools provided by companies like Freescale, Vivante, Elektrobit, and Rightware will help car manufacturers and the whole automotive ecosystem move up to a new level of performance and sophistication with next-generation HMIs.
About the author
Clive "Max" Maxfield is six feet tall, outrageously handsome, English, and proud of it. In addition to being a hero, trendsetter, and leader of fashion, he is widely regarded as an expert in all aspects of electronics (at least by his mother).
Max received his BSc in Control Engineering in 1980 from Sheffield Hallam University in Sheffield, UK. He began his career as a designer of central processing units (CPUs) for mainframe computers. Over the years, Max has designed everything from silicon chips to circuit boards, and from brainwave amplifiers to steampunk "Display-O-Meters." He has also been at the forefront of Electronic Design Automation (EDA) for more than 20 years.
Max is the author and/or co-author of a number of books, including Designus Maximus Unleashed (banned in Alabama), Bebop to the Boolean Boogie (An Unconventional Guide to Electronics), EDA: Where Electronics Begins, FPGAs: Instant Access, and How Computers Do Math.
Max is the editor of the EE Times Microcontroller Designline
and Programmable Logic Designline
website and the Editor in Chief of the All Programmable Planet
If you found this article to be interest, visit Microcontroller / MCU Designline
where – in addition to my Max's Cool Beans
blogs on all sorts of "stuff" – you will find the latest and greatest design, technology, product, and news articles with regard to all aspects of designing and using microcontrollers.
Also, you can obtain a highlights update delivered directly to your inbox by signing up for my weekly newsletter – just Click Here
to request this newsletter using the Manage Newsletters tab (if you aren't already a member you'll be asked to register, but it's free and painless so don't let that stop you [grin]).
Last but certainly not least, make sure you check out all of the discussions and other information resources at All Programmable Planet
. For example, in addition to blogs by yours truly, microcontroller expert Duane Benson is learning how to use FPGAs to augment (sometimes replace) the MCUs in his robot (and other) projects.