這是今年最後一篇文章,為讀者分享汽車晶片的有關知識,特別關注自動駕駛域控制器,包括硬體和軟體,全文共計2516個字,提前祝願大家牛年大吉。
晶片在汽車的三大功能一輛傳統汽車上少則有40多種晶片,多則達到150多種。
按照功能劃分,汽車晶片大致可以分為三類:第一類負責算力和處理,比如用於自動駕駛感知和融合的AI晶片,用於發動機/底盤/車身控制的傳統MCU;第二類負責功率轉換,如IGBT等功率器件;第三類是感測類晶片,用於自動駕駛各種雷達,以及氣囊、胎壓檢測等等。
之前鬧得沸沸揚揚的大眾汽車晶片短缺事件中,主要缺的是應用於車身穩定ESP系統的MCU和用於發動機控制的MCU,主要由於8英寸的晶圓短缺造成的,而這兩類晶片是傳統汽車最基礎也是必不可少的。
晶片四大分類從另外一個角度,按照應用型別,晶片又可以分為四大類:
CPU(Central Processing Unit),中央處理器,也稱為微處理器MPU (Microprocessor Unit),是一塊整合度很高的晶片。
CPU主要由控制器、運算器和暫存器三個部分構成,暫存器用於寄存指令,控制器負責從暫存器中提取指令,並進行譯碼,譯碼後交給運算器進行計算和執行,最終計算結果再寫回暫存器,CPU遵循馮諾依曼構架,按照序列順序執行,擅長於處理邏輯控制。
如果對CPU進行最佳化和調整,發展出了GPU、DSP兩類常用的晶片。
GPU(Graphics Processing Unit), 也稱為影象處理器,是一種由大量運算單元組成的平行計算構架,相比於CPU而言,GPU能同時處理多重並行的計算任務,十分有利於處理影象。
DSP(Digital Signal Processer) ,稱為數字訊號處理器,它和CPU和GPU有很多相似的地方,最大的區別在於採用了哈佛結構,而非馮諾依曼結構,使得DSP能即時快速處理數字訊號,不強調人機互動,不需要通訊介面。
如果將CPU再往上發展一個級別,可以得到MCU。
MCU(Micro Control Unit),微控制器,也稱為微控制器。在CPU的基礎上,增加了儲存器RAM和ROM、計數器/定時器及I/O介面,將它們整合在一塊矽片,構成了小而完善的微型計算機系統,形成“晶片級別的晶片”,這是傳統汽車最為常用的晶片。
CPU、GPU、DSP都是通用的晶片,隨著計算需求越來越專業化,如果需要滿足某一專門的需求,可以採用定製的方式,設計和製造出專用積體電路ASIC(Application Specific Integrated Circuit) 。
ASIC是針對特定演算法定製的晶片,可以實現更高效率和更低的能耗,但是一旦演算法改變,晶片就無法使用,而且生產成本也很高。
在ASIC中,現場可程式設計邏輯陣列FPGA(Field Programmable Gate Array),是比較流行的設計方式之一。
FPGA的基本原理是在晶片內整合大量的數位電路基本閘電路及儲存器,使用者可以透過新增配置檔案來定義這些閘電路與儲存器之間的連線,這種新增不是一次性的,可重複編寫定義,重複配置。
FPGA本質上是一種半定製電路,它既解決了定製電路的靈活性差的問題,又克服了通用晶片算力不足、能耗過大。但其本身半定製方式,決定了FPGA的算力還有提升空間,即進一步發展成為完全定製化的人工智慧晶片。
谷歌公司為了加快神經網路運算能力,專門研發出了張量處理器TPU(Tensor Processing Unit),其本質上是一款基於神經網路計算的專用ASIC晶片。
除了TPU以外,還有類似的神經網路處理器,如NPU(Neural Network Processing Unit)晶片等。
無論是TPU還是NPU,它們都是根據人工智慧計算需求定製出來的專用晶片。
如果將CPU、GPU、DSP、NPU等不同型別的晶片,外加上介面、儲存等電子元件,可以組成片上系統SOC(System on Chip),形成“系統級別的晶片”。
SOC較MCU整合程度更高,功能更加複雜,資源利用效率更高。
如下圖彙總了不同型別晶片的分類以及整合度:
核心:自動駕駛域控制器目前汽車的電子電氣構架逐步從大量MCU的分散式,向域控制器集中式構架轉變,域控制器大致可以分為駕駛、座艙、閘道器三大模組。
而負責自動駕駛的域控制器是核心,其本質就是一塊SOC級別的晶片。
該控制器硬體上連線攝像頭、鐳射雷達等感測器,還有車聯網OBU、導航IMU等模組,以及車輛線控單元。主要的作用是負責對感測器感知到的環境資訊進行融合、識別和分類處理,結合地圖定位對車輛行駛進行路徑規劃和決策,從而實現對汽車的精確控制和自動駕駛。
該域控制器由硬體、軟體、介面三大部分組成。
硬體部分硬體部分由三大型別晶片組成:
第一部分,主要用於環境感知和資訊融合,需要適應深度學習演算法超大算力需求,一般採用GPU或是人工智慧晶片TPU,處理承擔大規模浮點數平行計算,包括了攝像頭、鐳射雷達等識別、融合、分類。
第二部分,主要負責邏輯運算和決策控制,大多為ARM架構,類似於CPU,處理高精度浮點數序列計算。
第三部分,主要負責功能安全、冗餘監控、車輛控制,不要求很高的算力,但是必須保證可靠性,滿足ISO26262功能安全ASIL-D的要求,一般採用MCU,目前用的較多的是Infineon的TC297或者TC397。
軟體部分常用的軟體構架包括了作業系統、中介軟體及應用層AI演算法三個層次。
中介軟體一般由域控制器開發商提供,類似於ROS,主要包含一些介面驅動和對於作業系統的最佳化部署。
介面自動駕駛的域控制器介面比較多,有攝像頭、鐳射雷達、毫米波雷達、超聲波雷達感測器,用於定位的IMU,用於車聯網的V2X模組,使用者底盤線控。
攝像頭的介面型別有MIPI SI-2、LVDS、GMSL、FPDLink等;鐳射雷達採用乙太網Ethernet介面;毫米波雷達是傳統CAN匯流排傳輸;超聲波雷達採用LIN匯流排就夠了;用於導航定位常見介面為RS232串列埠;車聯網V2X模組採用Ethernet介面傳輸;線控常用CAN匯流排。
核心中的核心,人工智慧晶片目前市面上可供選擇車規級AI晶片並不多,尤其是達到量產狀態的,只有特斯拉、NVIDIA英偉達、英特爾的Mobileye。
國內的初創公司地平線推出了車規級的人工智慧晶片,以及配套相應的演算法。
而華為的野心更大,其MDC智慧駕駛計算平臺,包括了硬體上包括了自研的AI晶片,軟體上包括了演算法和鴻蒙作業系統,打造了自動駕駛域控制器全棧解決方案。
回到題目,當前汽車晶片缺的是什麼,短期看缺的是MCU,長期看缺的是以人工智慧晶片為硬體、輔以作業系統和演算法為核心的自動駕駛域控制器。
以上內容節選自《一本書讀懂無人駕駛》,有刪減,預計2021中旬出版,祝願大家Happy Niu Year,2021肯定牛!