從傳統上來講,汽車中的計算任務是由微控制器單元 (MCU) 和應用處理器 (AP) 完成的。一輛普通的中檔車可能包含 25 至 35 個 MCU/AP,而豪華車則可能采用 70 個或更多。越來越多的汽車需要極其復雜的密集型計算能力,用于執行高級駕駛輔助系統 (ADAS)、信息娛樂、控制、網絡和安全等任務。其中許多應用涉及與人工智能 (AI) 相結合的圖像和視頻處理方面的機器視覺。 獨立的處理器架構難以處理傳感器、照相機和顯示器等外圍設備所需的所有電氣接口和各種協議。此外,在許多情況下,這類處理器根本無法滿足機器視覺和人工智能等任務的極端計算需求。 為了解決這種復雜性,汽車系統設計人員正把目光投向現場可編程門陣列 (FPGA)。這樣做不是為了取代現有的 MCU/AP,而是作為它們和其他設備之間的橋梁,并通過卸載通信和其他計算密集型任務來增強 MCU/AP 的性能。 由于 FPGA 可進行編程以支持各種電氣接口和協議,因此可作為 MCU/AP 和傳感器、照相機、顯示器之間的橋梁。此外,由于 FPGA 能夠以大規模并行方式進行計算和工作,因此可以用來執行計算密集型的視覺處理和人工智能任務,從而釋放主機處理器性能,用于執行其他任務。 本文將討論現代汽車的處理要求,介紹一些可由 FPGA 處理的汽車應用。然后,以 Lattice Semiconductor 提供的一些 FPGA 為例進行介紹并展示如何用這種器件解決連接、處理和安全方面的問題。本文還將介紹相關的開發板,以幫助設計人員上手工作。 FPGA 的目標汽車應用 為了實現 ADAS 功能,今天的汽車在車身上采用了許多傳感器,包括攝像頭、雷達、LiDAR 和超聲波探測器。在許多情況下,必須從不同的傳感器獲取數據并對這些數據進行預處理(消除噪音并按要求格式化),然后通過傳感器融合來組合這些數據,以使由此獲得的信息比通過單獨使用不同傳感器的數據而獲得的信息更具確定性。人工智能應用多用于數據分析,做出決策并采取適當的措施。 一種相對較新的趨勢是部署電子(或稱“數字”)后視鏡。這種情況下,會在后車窗內安裝一個高分辨率廣角攝像頭。來自該攝像頭的視頻流會發送至取代了傳統后視鏡的數字顯示屏上,從而能夠更清晰地觀察車輛后方,不受后座乘客的阻擋。有些情況下,由安裝在兩個側后視鏡上的攝像頭產生的視頻流可與來自后窗攝像頭的視頻流合并。將這三個反饋信號“拼接”在一起,在超寬的電子后視鏡上產生單一圖像,讓駕駛員能夠更好地觀察車輛周圍的情況。 最近的另一個趨勢是部署安裝在儀表板上、轉向柱上的或者集成在后視鏡(普通或電子)中的車內攝像頭。當結合人工智能時,這些車內后視鏡可用于執行眾多任務,如識別不同的駕駛員并相應地調整駕駛員座椅和后視鏡。除了監視駕駛員以確保他們注意道路和不打瞌睡之外,這類系統還可以檢測駕駛員有無瞌睡跡象以及健康問題或痛苦表情(如癲癇或心臟病發作),然后采取適當措施。這些措施可能包括啟動危險警告燈,實施剎車并將車輛導引至路邊。更多的應用還包括:通過防止汽車被鎖和發出閃燈信號來確保不會誤將幼兒和寵物遺留在后座上無人看管,以及在乘客將手機、包或包裹等物品遺落在后座上時提醒司機。 在基于視頻的應用方面,有些情況下需要將一個視頻輸入分成多個視頻流,有些情況下則可能是根據設計要求將多個視頻流匯聚成一個。 隨著電動汽車 (EV) 部署的增加,需要監視和控制電機,并監視和管理充電過程以使電池壽命達到最長。 最重要的是,今天的許多汽車開始啟用 5G 或 V2X 功能,其中 V2X(“車輛到任何東西”)是指車輛和任何可能影響車輛(或受車輛影響)的其他實體之間的通信,從路邊基礎設施到其他車輛。隨之而來的就是需要安全保障,以防止黑客入侵車輛。 汽車級器件 不是所有的 FPGA 都適用于汽車應用,記住這點很重要。汽車電子委員會 (AEC) 是一個最初由克萊斯勒、福特和通用汽車在 20 世紀 90 年代成立的組織,旨在建立共同的零件鑒定和質量體系標準。最常引用的 AEC 文獻之一便是 AEC-Q100——“基于故障機制的集成電路應力測試鑒定。” IATF 16949:2016 是一項技術規范,旨在制定質量管理體系,用于規定持續改進,強調預防缺陷并減少汽車行業供應鏈和裝配流程中的變動和浪費。IATF 16949:2016 是由國際汽車工作組 (IATF) 和 ISO 技術委員會在 ISO 9001 標準基礎上制定的。 汽車市場的電子系統供應商越來越要求半導體供應商提供符合 AEC-Q100 標準的產品,并能證明其質量體系獲得了 ISO/TS-16949 認證。 為工作選擇正確的 FPGA FPGA 非常靈活,但不同的器件系列會提供各種不同能力和功能組合,從而更加適合特定的任務。以嵌入式視覺應用為例,現代攝像頭和顯示器通常采用 MIPI 接口。MIPI CSI-2(攝像頭/傳感器)和 DSI(顯示器)協議都采用了被稱為 D-PHY 的通信物理層 (PHY)。傳統的 MCU/AP 可能不支持這種接口,但一些 FPGA 會支持,如 Lattice Semiconductor 的 CrossLink-NX 嵌入式視覺和處理 FPGA。 除了每個 PHY 都支持 10 Gb/s 速率的兩個加固型四通道 MIPI D-PHY 收發器外,CrossLink-NX 器件還支持 5 Gb/s PCIe、1.5 Gb/s 可編程輸入/輸出 (I/O) 以及1066 Mb/s 的 DDR3。這種器件還支持傳統的電氣接口和協議,如低壓差分信號 (LVDS)、Sub-LVDS(LVDS 的降低電壓版本)、Open LVDS 顯示接口 (OLDI) 和串行千兆位媒體獨立接口 (SGMII)。因此,這些器件可用于匯集視頻流、分離視頻流、運行人工智能應用,并且在執行這些任務的同時,還可以作為傳統 MCU/AP 與現代傳感器、顯示器之間的橋梁。 希望評估 CrossLink-NX FPGA 的汽車系統開發商會發現,LIFCL-VIP-SI-EVN CrossLink-NX VIP 傳感器輸入板(圖 1)和 LF-EVDK1-EVN 模塊化嵌入式視覺套件的組合的意義重大(前者可以作為后者的輸入板)。除了 CrossLink-NX FPGA 之外,傳感器輸入板還具有四個 1300 萬像素的 Sony IMX258 CMOS MIPI 圖像傳感器,可支持 4K2K @ 30 幀/秒 (fps) 或 1080p @ 60 幀/秒。該板還支持通過三個獨立的 PMOD 接口連接傳感器。 圖 1:CrossLink-NX VIP 傳感器輸入板可作為嵌入式視覺開發工具包的輸入,它包含一個 CrossLink-NX FPGA 并支持四個 MIPI Sony IMX258 圖像傳感器聚合。(圖片來源:Lattice Semiconductor) 對于還需要高 I/O 帶寬的計算密集型應用——諸如像用于手勢識別和控制、語音識別和控制、人類存在檢測、乘員識別和駕駛員監控之類的 AI 應用來說,Lattice 的 ECP5 FPGA 具有高達 3.2 Gb/s 的串行器/解串器 (SERDES),為獲得更高粒度而在雙通道塊中的每個器件都采用了多達有四個通道,具有多達 85K 的查找表 (LUT)、能為對稱濾波器提供 2 倍資源改進的增強型數字信號處理 (DSP) 塊,并支持減緩單粒子翻轉 (SEU)。這些 FPGA 還為 LVCMOS 33/25/18/15/12、XGMII、LVTTL、LVDS、總線 LVDS、7:1 LVDS、LVPECL 和 MIPI D-PHY I/O 接口提供可編程 I/O 支持。 例如,LFE5U-85F-6BG554C 就是一種 ECP5 器件,該器件有 84,000 個邏輯元件,3.75 Mb RAM 和 259 個 I/O。同樣值得關注的還有 LFE5UM-45F-VERSA-EVNG ECP5 Versa 開發套件(圖 2)。該開發板采用半長 PCI Express (PCIe) 外形尺寸,設計人員可用其評估 ECP5 FPGA 的關鍵連接特性,包括 PCIe、千兆以太網 (GbE)、DDR3 和通用 SERDES 性能。 圖 2:ECPe Versa開發套件具有半長 PCI Express 外形,設計人員可用其評估 ECP5 FPGA 的關鍵連接特性,包括 PCIe、GbE、DDR3 和通用 SERDES 性能。(圖片來源:Lattice Semiconductor) 用 FPGA 確保汽車安全 現在,黑客造成的安全威脅在不斷增加,新的違規事件持續發生。就汽車而言,網絡攻擊可能造成失控,導致乘客和行人傷亡,造成受攻擊汽車和其他車輛損壞以及財產損失。 汽車安全解決方案的很大一部分是建立一個信任根 (RoT);也就是說,可以始終信任系統中的某個硬件資源。一種解決方案是基于 FPGA 的硬件 RoT (HRoT),如 Lattice 的MachXO3D 系列器件提供的解決方案。除了大量的 LUT 資源和 I/O 外,這些基于閃存的器件還實現了瞬時啟動和熱插拔功能。通用應用包括膠合邏輯、總線橋接、總線接口、電機控制、上電控制和其他控制邏輯應用。 特別值得注意的是,MachXO3D 是唯一同時具有雙啟動能力和少于 10K LUT 的 FPGA,該器件配備了美國國家標準和技術研究所 (NIST) 認證的不可變安全引擎。這使得 MachXO3D 可以作為汽車的 HRoT,以“系統的先開后關器件”的形式發揮作用。當系統上電時,MachXO3D 首先檢查以確保其正在運行經過驗證的固件。然后,該器件檢查系統中其他器件的固件。如果系統中的任何組件受到攻擊或損害,包括其本身,MachXO3D 都會拒絕可疑固件并使用已知的、良好的、經過認證的固件圖像重新加載該組件。 對于那些有興趣評估基于 MachXO3D 的設計的開發人員,LCMXO3D-9400HC-D-EVN MachXO3D 開發板提供了一個可擴展的原型開發平臺(圖 3)。該板具有一個 L-ASC10(模擬檢測和控制)硬件管理器件、一個與 Arduino 和 Raspberry Pi 板搭配使用的通用 I/O 接口、兩個 Hirose FX12-40 針座位置 (DNI),一個 Aardvark 針座 (DNI) 以及具有四重讀取功能的 128 Mbit 串行外圍接口 (SPI) 閃存。 圖 3:MachXO3D 開發板具有一個 MachXO3D FPGA、一個 L-ASC10(模擬檢測和控制)硬件管理器件、Arduino 和 Raspberry Pi 板支持功能、兩個 Hirose FX12-40 針座位置 (DNI)、一個 Aardvark 針座以及一個用于設備編程的 USB-B 連接。(圖片來源:Lattice Semiconductor) 該開發板的尺寸為 4 x 6 英寸,配備供電和編程用 USB mini-B 接口,以及支持 Arduino、Aardvark、FX12、Hirose 和 Raspberry Pi 的多個針座位置。該開發板包括一根 USB 線和一本快速入門指南。 結論 現代汽車電子需要越來越多的傳感器、電氣接口和協議,并對處理能力和帶寬提出了相應的要求。由于增加了人工智能、機器視覺處理以及安全要求,使得在實施采用傳統 MCU 或 AP 方法的解決方案時變得復雜。 如圖所示,通過適當地使用 FPGA,設計人員可以增加一定的靈活性和處理能力。也就是說,可以連接完全不同的處理環境,執行傳感器匯集和融合功能,解決 I/O 帶寬要求,并以大規模并行的方式完成計算和運行,同時釋放主處理器功能來執行其他任務。 在安全方面,具有雙啟動能力和 NIST 認證的不可變安全引擎的、基于閃存的 FPGA 可以作為汽車的 HRoT,并確保自身和其他器件只運行經過認證的固件,從而防止黑客通過加密技術破壞汽車系統。 |