As we saw earlier this year at CES 2020, when it comes to automotive, the future is rushing to meet us. Large, high-resolution displays with sophisticated graphics will soon become the default, even on entry-level vehicles. Whether it’s a single, large tablet-like device or an ultra-wide display, screens will be dominant in next-generation cars. To command consumer attention and help differentiate their cars from competitors, manufacturers will need these displays to be sophisticated and visually arresting 3D displays – and this will require, highly performant, low-power GPUs.
A prototype ultra-wide car display at CES 2020
However, when building a modern vehicle, all parts of the system need to be considered and designed against the applicable regulatory, safety and quality standards, which in the automotive space is ISO 26262. As well as the hardware itself, this includes software; from the tooling framework vendors and the operating systems, to the APIs and the drivers that talk to the hardware.
To meet this standard, all electronics must be “functionally safe”, as in absent of anything in their design and construction which could potentially cause a hazard through malfunction. In automotive terms, this means that if an electronic system fails, the vehicle can either be immediately stopped in a safe manner or operate in a failsafe mode so that it can safely reach somewhere it can be repaired. ISO 26262 contains four automotive safety integrity levels (ASILs); with ASIL A at the lowest level and ASIL D the highest tier of safety.
In today’s cars, 3D pixels are widely used in dials, clusters and cameras. For example, 3D will play a key role in surround view, a feature that will be increasingly relied upon by a human to park safely. Therefore, it cannot fail, as that could pose a safety risk. While GPUs have been part of functionally safe domain controllers, no GPU has yet been designed to be functionally safe itself. Therefore, the parts of the displays that are safety-critical, e.g. speedometer dials, fuel-level indicator, and warning lights for advanced driver assistance systems (ADAS), have been handed over to a functionally safe CPU. However, when it comes to 3D graphics, CPUs are an order of magnitude less capable than GPUs, limiting what dashboard designers can achieve.
Introducing the first safety-critical driver for a high-performance GPU
To this end, Imagination has been working to solve these problems by creating the building blocks required to create functionally safe graphics systems. Later this year we will be announcing fully functionally safe ASIL B compliant GPUs, designed to protect against permanent and transient fault. These will be accompanied by the safety cases that have been put together through consultation with the wider automotive industry.
In preparation for this Imagination is proud to announce the release of a groundbreaking safety-critical GPU software driver – and below we are showing a demo application built using it.
In the video we are demonstrating Imagination’s OpenGL® SC™ 2.0 API software driver development, running on an automotive-grade silicon platform featuring our GPU, as found in millions of production vehicles on the market today. The driver is a clean development, aligned to ISO26262:2018 process requirements.
OpenGL SC is a safety-critical subset of OpenGL ES 2.0 that’s streamlined to remove API calls that might otherwise compromise its ability to achieve ISO 26262 certification. The Safety-Critical Profile for OpenGL ES 2.0 is designed to be deterministic and testable, or in layman’s terms, omit calls that could potentially return ambiguous, and therefore, unsafe, results. OpenGL SC is thus highly reliable but also enables system manufacturers to take advantage of the capabilities of a modern GPU to create the 3D interfaces consumers will expect in next-generation cars.
What’s more, porting the demo application from OpenGL ES 2.0 to OpenGL SC was straightforward and achieved in only a couple of days, proving that a functionally safe 3D graphics API is easy to use and does not limit visual potential.
At 30 seconds into the video we see the safety-critical code running, with our PowerVR Tune debugging tool running in the background, just as would be done with code written using conventional OpenGL ES, while at 54 seconds we see the 3D wireframes behind the textured dials.
Driving the industry forward
With this driver, we are showing that using a safety-critical API is no hindrance to creating a great-looking 3D interface. We are working closely with the application framework companies, such as Rightware and Candera and OS companies, such as Greenhills and QNX.
Our next steps will be using our safety-critical GPUs to run compute applications for ADAS. While our OpenGL SC driver today supports graphics, we are also working in the more fragmented compute space, where no clear API has yet gained traction. We are in the process of enabling more industry-standard automotive safety-critical compute APIs, by working with our partners and industry bodies, such as Khronos.
Of course, should you wish to run a workload built using a safety-critical APIs at the same time as one built using a non-safety-critical API, you can do so on a single GPU thanks to the HyperLane Technology built into every IMG A-Series GPU. HyperLane offers entirely isolated hardware control lanes so multiple virtualized OSs can be run on the same GPU simultaneously without any danger of compromising the safety-critical functions in any way.
Safety-critical; future critical
With the release of our safety-critical driver, we are making safety-critical 3D for the automotive market a reality. Just as we did for mobile graphics we are continuing to lead and innovate in the embedded graphics space for dials, clusters, cockpit domain controllers, surround view and in-vehicle infotainment (IVI). The automotive future is indeed rushing to meet us, and Imagination’s technology is firmly behind the wheel.