双核锁步法用两个相同的逻辑单元实现同一个功能,同时执行任务比较结果是否一致,如果一致说明逻辑运行正确。通过双核锁步法实现功能安全的代价是多一倍的芯片面积。
工作负载重复法,就是把同一个工作执行两次,对比两次的结果是否一致,这种方法可以避免随机错误,但难以避免长期错误,并且因为要进行两次重复的工作,相当于性能降低为二分之一。
无论是双核锁步法增加一倍的芯片面积,还是工作负载重复法相同的芯片面积性能降低一半,实现功能安全的代价都是十分高昂,自然难以普及。
自动驾驶逐步普及之后,汽车芯片的功能安全就难以被忽略。如何才能用最小成本实现高等级功能安全?
Imagination DXS开创性地实现了仅增加10%的芯片面积,对GPU的性能几乎零影响,通过分布式安全机制实现了ASIL-B功能安全。
根据ISO 26262汽车安全完整性等级(ASIL)体系,ASIL-A等级的要求最低,ASIL-D等级的要求最全面。
“今天我们可以轻松达到ASIL-B,这个等级基本可以满足L2级自动驾驶的需求。如果需要更高功能安全等级,可以通过2个ASIL-B系统交叉确认实现。未来我们会进一步提高安全等级。”章政告诉雷峰(公众号:雷峰)。
Imagination DXS能够以足够小的代价,实现足够高的功能安全等级的核心是利用了处理器固有的并行性,以及任何线程都不会被完全利用的事实。
也就是说,DXS会利用一个GPU线程等待的时间,插入安全测试,使用相同的安全测试在另一个线程等待时插入,执行完成后对比结果是否一致。
这是DXS实现高等级功能安全逻辑模块的功能安全,也是实现整个功能安全的难点所在,需要能够迅速在模块中定位错误,这只是实现功能安全的其中一半。
DXS另一半的功能安全是内存,包括Cache或SRAM。章政介绍Imagination会通过ECC、parity或者CRC校验,保证内存的功能正确。
Imagination通过独特的分布式安全机制(DMS),利用空闲时不停发送很小的测试向量,在ASIL标准设定的时间范围内识别故障,实现高等级功能安全。
DXS在执行安全相关的任务时,效率是同级别竞品的2倍,再借助分布式功能安全机制,DXS的优势还能翻倍。
Imagination已经为这个机制申请了专利。章政说,“DSM机制不仅可以用于车载电子,对于功能安全要求高的其它的领域,比如航空、医疗和工业,也都适用。”
AI性能的数量级提升
对于自动驾驶汽车芯片,与功能安全同样重要的是高性能。因为自动驾驶仍在不断发展,智能化功能在不断扩展,高性能和可扩展性都非常重要。
得益于增加了一个新的SPU单元,使用5nm节点,算力可从单核0.25 TFLOPS的配置,扩展到1.5 TFLOPS的处理能力,DXS的性能相比上一代XS整体提升了50%。
Imagination为SPU做了很多优化工作,比如增加了2D双速纹理处理(2D dual-rate texturing),更新了固件处理器(firmware processor),新增了可变分辨率渲染(fragment shading rate)。
整体而言,对于渲染类任务,DXS单位面积的性能高出竞品2倍。对于以计算为中心的图形处理任务,DXS单位面积性能高出竞品28%左右。
自动驾驶芯片的AI性能也值得单独关注,这是实现更高级别自动驾驶的关键所在。
4核配置的DXS,用于FP16半精度浮点计算时,DXS能提供12 TFLOPS的性能;用于int8计算时,DXS能提供254TOPS。
“这是运行在1GHz主频上的数据,如果芯片设计公司后端能力够强,DXS可以运行在1.2GHz甚至1.5GHz的主频,其性能将更高。”章政表示,“我们研究发现,大部分AI负载FP16的精度就足够满足要求,FP32确实有更高精度,但带宽会增加一倍,系统可能没办法提供这么高的带宽。当然我们的DXS也支持FP32。”
带宽也是限制汽车ADAS实现的重要原因, Imagination DXS增加了片上存储,尽量把所有计算都控制在一个GPU内,大幅降低系统的带宽需求。
不过对于发挥芯片的AI性能,上层的软件同样关键。
由于GPU的人才相对匮乏,为了让开发者充分利用GPU的性能,Imagination开发了一系列库,比如几何库、BLAS库(imgBLAS),专门的CNN 库(imgNN),还有专门处理车载工作的库,如处理雷达数据需要的FFT库(imgFFT)。
Imagination的目标是帮助软件开发人员实现高达80%的GPU利用率。
这些库与新的参考工具包oneAPI和TVM相结合,构成了一个基于开放标准的实用软件栈,软件开发人员可以利用该软件栈轻松地将其计算应用移植到基于Imagination IP的硬件上,并最大限度地提高其性能。
DXS AI性能的提升相比上一代高达近10倍。其中,硬件性能大概提升了50%,所以更大的的提升来自软件的支持和协同。
“计算库提升了2-4倍的性能,采用双速率FP16带来了3倍提升,所以DXS在典型工作负载上带来了6-12倍的性能提升。”章政表示,“DXS大模型、路况视觉观察、驾驶员行为监测、激光雷达系统数据处理等方面已经具备了商用能力。DXS覆盖从座舱到L2/L3自动驾驶的需求,DXS 8-256 MC1主要用于低成本的HMI应用,最高端的IMG DXS-48-1536 MC4满足ADAS的这个需求。”
不同的公司可以根据产品定位,灵活选择合适的配置,甚至可以在下一代产品更新时增加一个新的GPU模块。
这就离不开DXS硬件和软件的灵活性。
为了应对高端制程大芯片良率越来越低的挑战,DXS原生支持小芯片(Chiplet)封装,这得益于Imagination内核之间的低带宽总线和对隔离的支持。
软件层面,基于硬件的虚拟化技术使Imagination GPU能够同时运行8个操作系统,并通过完全的内存隔离,实现完全安全的GPU多任务处理。
目前Imagination的汽车GPU支持OpenGL ES、Vulkan、OpenGL和OpenCL。它们可运行流行的汽车操作系统,如QNX和Green Hills软件公司的INTEGRITY RTOS,以及Linux和Android。
随着高安全等级且高性能DXS的发布,高功能安全的汽车芯片的普及将扫清障碍。