目前,先进驾驶员辅助系统(ADAS)最大的趋势是,从不断增加的离散传感器中,获取更高品质的传感器数据,从而增强系统功能。这样,系统可以更好地理解环境,故而改善性能,更好地协助驾驶员进行操作。增加输入数据将增加成本:运行足够快,可以为系统的实时响应和性能带来显著的差异化。
本质上来说,图行处理单元(GPU)因为其高度并行且以吞吐量为导向的特性,非常适合解决这一挑战。因此,目前领先的ADAS厂商开始利用嵌入式GPU,以使汽车的性能和功能实现跨越式提升。
从历史上看,GPU在汽车技术层面的应用更为传统:驾驶显示, 消费者对其新购置的汽车有了越多越多的期待,希望汽车的技术更新能跟上智能手机等设备更新的步伐。尺寸更大、分辨率更高且反应更迅速的显示屏故而成为众望所归,其使得驾驶员与乘客能够以更现代的方式进行交流,这种体验正如智能手机一样。因此,从核数不多的,并行计算能力不强的CPU 切换到 集成芯片,这类芯片集成了具有强大图形和并行计算能力的GPU,可满足汽车驾驶中的多屏交互显示需求从尺寸较小、动力不足的CPU或微控制器转移到更强大的GPU上成为必需,以此来驱动这样一款新显示屏。鉴于此点,嵌入式GPU在这方面取得了明显的进展。
相比传统的渲染,ADAS 对GPU 提出了不同的应用需求。 这些应用需求有别于一般的绘图渲染,其更强调GPU 的并行计算能力,对图像进行分析和处理。ADAS使用GPU会有一些不同的需求。例如,ADAS和全自动驾驶平台将使用GPU来分析传感器数据,以此迅速做出反应。且这些数据不仅来自传感器,还来自摄像头。图像处理本身就是GPU要处理的问题,且几乎任何一种计算密集型并行计算都与其是完美组合。未来的ADAS和全自动驾驶平台若不有效利用GPU和特定功能加速器,则将会迅速被时代淘汰。
未来ADAS平台所需的性能水平迫使GPU日益增大,制造成本也会相应地增加。平台厂商将共同分担这个成本,且与配置在汽车中的其他系统共享GPU。但前提是,GPU支持硬件加速虚拟化。有了虚拟化,GPU才可以被多个操作环境共享,且这些环境不会意识到彼此的存在(因此能够互相影响)。
想象一下,若是仪表板软件故障,会影响到驾驶员辅助系统的正确操作。GPU支持的虚拟化执行环境则可以提供保护,以安全且关键的行为分担昂贵的成本。虚拟化通过硬件支持,每个环境使用完全独立的地址空间,并通过硬件支持重启或驱逐有错误行为的环境。这种隔离十分关键,既可以合作使用GPU,又可以使驾驶员辅助系统等关键软件不受其他外物的干扰。
除了GPU的并行性能适合于应对现代汽车中的诸多问题,当下,适合于ADAS应用程序的大多数GPU都具有一个特定的属性,使之契合于机器学习,即:快速混合精度计算。深度神经网络的许多部分也可以按您所预期的那样以较低的精确度运行。
以较低精确度运行(通常较低指的是小于32位)在嵌入式GPU中可以保证功率。或者说,保持与高精确相似的功耗,但获得更高的性能。这就是为何GPU可以提供全速率单精度,或以一半精确度获得双倍速率。其功率并未增加,但性能却增加了一倍。有很多方法来实现这个目标,如在GPU设计中平衡面积和功率,或者采用嵌入式GPU设计中使用的多种方法。
ImaginaTIon 的PowerVRGPU有一套非常适合于ADAS和全自动驾驶汽车的属性。目前,PowerVR GPU内核计算架构的设计非常完整,在精简精确度计算,特别是半精确度浮点(F16)中,其将提供高速的性能和卓越低功耗。这非常适合通用图形处理。当使用GPU用于非图形任务,如运行神经网络时,我们也可以对其加以利用,将其作为设计的核心力量。我们在设计F16硬件时,使用的是与全精度(F32)独立的数据通路。虽然因共享数据通路的设计更简单从而应用较为普遍,但独立硬件可以使我们得到最佳的功耗状态,且更具效率,因为在设计中,每个数据通路都会按需求处理任务。
现代PowerVR GPU也支持完全的硬件虚拟化,即在上下文之间完全隔离地共享GPU,并且提供上下文管理及设置其优先级所需的支持,有助于ADAS平台的架构设计以及运行所需达到的性能。这样,ADAS平台设计者可以将GPU作为汽车整体系统架构的第一级组件,同时允许系统供应商分期偿还投资,允许GPU加速IVI 和ICE软件,充分给予消费者在这些技术中所寻求的体验。
具有最佳的功耗效率和内存带宽PowerVR GPU微架构的设计,可以提供一个契合汽车技术需求平衡的GPU设计。其系统具有绝佳的性能,显示屏尺寸越来越大且分辨率越来越高,驾驶员和乘客可以有效地互动,这个设计本身便是非常符合下一代ADAS应用程序的发展趋势。尤其是,当下一代ADAS和全自动驾驶汽车到来的时候,任何有助于GPU固有优势的事物,尤其是在图像分析或并行信号处理领域,都可以辅助汽车更好地感知周边环境,并在更复杂的环境中更有效地运行。