<article class=“article fmt article-content”><h2>计算单元</h2><p>更多内容,请关注:<br/>github:https://github.com/gotonote/Autopilot-Notes.git</p><p>如果说传感器是无人驾驶车的眼睛,那么计算单元则是无人驾驶车的大脑,传感器采集到的数据通过计算单元的运算,最初能力转化为管制信号,管制汽车的行驶。因而一个性能强劲的大脑显得尤为要害。</p><h3>一、简介</h3><p>无人驾驶车运行过程中须要解决各种不同类型的工作,所以目前大部分的无人驾驶计算平台都采纳了异构平台的设计。无人驾驶车在CPU上运行操作系统和解决通用计算工作,在GPU上运行深度模型感知工作。</p><p>无人驾驶操作系统运行在CPU上,实现系统调度、过程治理、网络通信等基本功能。还有一部分通用工作也跑在CPU上,例如定位的NDT算法、卡尔曼滤波和管制相干的算法等。无人驾驶的环境感知算法运行在GPU上,目前支流的深度学习框架都反对通过GPU来减速运算,特地是一些图像算法。GPU的性能和无人驾驶车感知周围环境的能力非亲非故,目前也有采纳专门用于深度学习的芯片来解决此类工作,例如google的TPU等。</p><h3>二、参考指标</h3><h4>(一)性能</h4><p>性能包含4个方面:CPU、GPU、内存和总线。</p><p><strong>1. CPU</strong></p><p>CPU次要运行主动驾驶操作系统和进行通用计算,目前支流的通用CPU是Intel公司X86架构和ARM公司的ARM架构。Intel公司的志强系列处理器曾经广泛应用于数据中心服务器和工控机上,ARM公司则是设计芯片而后把计划卖给各家公司让他们本人生产。目前各大公司公布的无人驾驶计算平台大部分都采纳了ARM架构的处理器,次要起因是在汽车行业,芯片须要满足车规要求,而ARM处理器更不便集成。能够预感将来公布的无人驾驶计算平台会大量采纳ARM架构的处理器做通用计算。</p><p><strong>2. GPU</strong></p><p>目前支流的深度学习框架都是通过GPU进行训练和计算,因而无人驾驶计算平台大部分都采纳GPU来进行深度学习计算。也有专门针对深度学习计算的芯片如TPU等,但目前这类芯片利用的生态和成熟度还不是很高。此外还有计算平台通过FPGA来做深度学习减速,老本会比GPU高。将来在无人驾驶大规模商业之后可能会呈现专门针对深度学习计算的芯片。</p><p><strong>3. 内存</strong></p><p>内存包含CPU内存和显存,内存容量太小和刷新频率太低都会影响到零碎性能。同时该当尽量避免内存条的设计,采纳贴片内存,避免内存触动生效。</p><p><strong>4. 总线</strong></p><p>无人驾驶车的传感器和GPU等硬件设施都须要总线和计算平台相连接,总线带宽是零碎性能的保障。同时计算平台的CPU须要采纳冗余设计,2颗CPU之间通过总线连贯,保障一颗CPU生效后,另一颗也可能持续工作。</p><h4>(二) 功耗</h4><p>个别零碎的性能越强,则功耗越大。这时候须要思考以下2个方面:电源和散热。</p><p><strong>1. 电源</strong></p><p>计算平台采纳的是车载电源,思考到人的平安,车载电源的电压限度在36v以下。个别车载电源可能提供的功率不超过1KW,也就是说在不进行任何革新的状况下,计算平台的功率限度在1KW以下。如果须要减少功率,要么采纳多个电源,要么增大电源的电流。而1KW的电源电流约为42A,功率如果要增大到2KW,那么电流要增大到84A,咱们晓得电流越大,零碎的发热会越大,所以也不是能够有限减少电源功率。</p><p><strong>2. 散热</strong></p><p>在功率十分大的时候,计算平台甚至须要水冷散热,采纳风扇散热在汽车密闭的后备箱中没有排风口,无奈无效的把热量排放进来。水冷散热的成果好,而且不须要排风口的设计,在功耗比拟大的时候采纳水冷散热是很好的抉择。</p><h4>(三)存储</h4><p>无人驾驶车须要存储高精度地图、日志、传感器数据等多种数据。这些信息的数据量很大,特地是传感器数据,在录制数据的时候,为了让数据可能及时保留,个别会抉择固态硬盘。固态硬盘的写入速度快,并且绝对机械硬盘也不容易生效,因而无人驾驶中都倡议采纳固态硬盘。</p><h4>(四) 接口</h4><p>计算平台除了须要留神性能、功耗和存储,还须要留神各种总线接口是否齐备。目前传感器的接口丰盛多样,摄像头采纳的是USB接口,激光雷达采纳的是以太网,毫米波雷达采纳的是CAN总线,同时还须要预留足够的接口给其它外设,例如GPU、FPGA加速卡、V2X设施等。计算平台只有具备丰盛的接口类型能力满足无人驾驶的要求。</p><h3>三、计算平台</h3><p>目前无人驾驶计算平台有3种抉择。</p><h4>(一)工控机</h4><p></p><p>工控机采纳CPU和GPU的组合,十分通用,同时又可能满足顽劣坏境的要求。但工控机的性能不太强劲,接口也不太丰盛,适宜初期的无人驾驶验证。</p><h4>(二)芯片厂家计算平台</h4><p></p><p>此类平台都是采纳开发板设计,不太适宜间接利用在无人驾驶中,益处是厂家提供了SDK,能够做到开箱即用。比方英伟达的DRIVE、德州仪器基于DSP的TDA2X Soc、恩智浦的BlueBox。</p><h4>(三)车企自研计算平台</h4><p></p><p>特斯拉的FSD就是自研的计算平台,集成度十分高,采纳冗余设计,集成有专门的平安模块,性能和接口也可能满足特定场景的要求。自研芯片的解决方案非常适合无人驾驶,然而研发老本太高。</p><h3>四、边缘计算</h3><p>边缘计算是无人驾驶将来的发展趋势之一,传感器中会逐渐集成交融和滤波算法,而不须要把所有的计算全都放在计算平台中实现。典型的利用场景是为了解决摄像头拍摄的大量图像,能够先用FPGA解决,而后输入解决好的后果给计算平台应用,这样不仅能够加重零碎带宽压力,同时还能够放慢图片处理速度。</p><p>本文由mdnice多平台公布</p></article>