劉 偉,孫芳岑
(1.東軟睿馳汽車技術(shù) (沈陽(yáng))有限公司,遼寧 沈陽(yáng) 110179;2.大陸汽車電子 (長(zhǎng)春)股份有限公司,吉林 長(zhǎng)春 130025)
近年來(lái)自動(dòng)駕駛技術(shù)得到了突飛猛進(jìn)的發(fā)展,從國(guó)內(nèi)外各類技術(shù)比賽[1]中對(duì)自動(dòng)駕駛算法的系統(tǒng)研究,到新興技術(shù)公司在自動(dòng)駕駛市場(chǎng)應(yīng)用領(lǐng)域的大力投入,技術(shù)的積累和市場(chǎng)的推動(dòng),為自動(dòng)駕駛系統(tǒng)應(yīng)用提供了廣闊的前景[2]。
自動(dòng)駕駛是集環(huán)境感知與認(rèn)知技術(shù)、系統(tǒng)決策技術(shù)、車輛底盤與車身控制技術(shù)于一體的綜合性系統(tǒng)。近年來(lái)自動(dòng)駕駛的發(fā)展,也得益于傳感器技術(shù)、車輛電子電器架構(gòu)以及車載計(jì)算芯片的飛速發(fā)展。
圖1描述了車輛網(wǎng)聯(lián)信息來(lái)源和感知范圍,以及應(yīng)用感知信息實(shí)現(xiàn)車輛智能化相關(guān)功能的流程,如車道保持、全速自適應(yīng)巡航、主動(dòng)換道、交通擁堵輔助、車道級(jí)導(dǎo)航[4-8]等,本文中具體的智能化功能即為自動(dòng)駕駛。
自動(dòng)駕駛系統(tǒng)是通過(guò)傳感器感知并認(rèn)知環(huán)境、車輛運(yùn)動(dòng)及工作狀態(tài)、駕駛員操縱與操作狀態(tài),結(jié)合對(duì)環(huán)境、車輛運(yùn)動(dòng)學(xué)模型、自動(dòng)駕駛?cè)蝿?wù)的理解,實(shí)現(xiàn)對(duì)車輛運(yùn)動(dòng)行為的決策,通過(guò)車輛底層控制系統(tǒng)完成對(duì)車輛動(dòng)作的控制。文獻(xiàn)[3]將上述過(guò)程中的決策任務(wù)分為3個(gè)層次,即策略層、戰(zhàn)術(shù)層和控制層,分別對(duì)應(yīng)駕駛?cè)蝿?wù)理解與全局性路徑規(guī)劃、局部環(huán)境認(rèn)知與局部路徑規(guī)劃、車輛執(zhí)行機(jī)構(gòu)控制。
圖1 智能網(wǎng)聯(lián)車輛系統(tǒng)構(gòu)成與自動(dòng)駕駛功能析出
自動(dòng)駕駛是以環(huán)境感知和認(rèn)知為基礎(chǔ)的,即車輛的智能化;而車輛的網(wǎng)聯(lián)化是智能化的實(shí)現(xiàn)手段,尤其在更高等級(jí)的自動(dòng)駕駛系統(tǒng)中,需要更加豐富的信息來(lái)源,主要?jiǎng)澐譃檐噧?nèi)網(wǎng)、車際網(wǎng)和車聯(lián)網(wǎng)[3-4]。車內(nèi)網(wǎng)能夠感知的范圍為百米級(jí),更新周期為ms級(jí);車際網(wǎng)感知范圍為千米級(jí),更新周期為s級(jí);車聯(lián)網(wǎng)感知范圍則更加廣泛,更新周期為s級(jí)甚至分鐘級(jí)。信息的來(lái)源和數(shù)據(jù)量,對(duì)各級(jí)網(wǎng)絡(luò)的帶寬、信息采集和處理能力提出了基本要求。
完整的自動(dòng)駕駛系統(tǒng),感知甚至決策不僅僅源于車端,云端的感知、決策通過(guò)車聯(lián)網(wǎng)這個(gè)特殊的傳感器單元,將全局感知和決策信息傳遞至車載控制單元。在此全局規(guī)劃的基礎(chǔ)上,車載傳感器感知局部環(huán)境信息,車載計(jì)算單元處理并理解全局目標(biāo)與局部環(huán)境,并控制車輛依次完成局部控制目標(biāo),直至全局目標(biāo)的達(dá)成。上述自動(dòng)駕駛功能流程可由圖2所示的自動(dòng)駕駛系統(tǒng)功能架構(gòu)來(lái)描述。本文會(huì)對(duì)車載計(jì)算單元如何承載車載傳感器信息感知與處理、全局目標(biāo)與局部環(huán)境理解、車輛執(zhí)行機(jī)構(gòu)控制等計(jì)算任務(wù),展開(kāi)調(diào)研和分析。
圖2 自動(dòng)駕駛系統(tǒng)功能架構(gòu)
根據(jù)對(duì)自動(dòng)駕駛功能架構(gòu)的分析,自動(dòng)駕駛系統(tǒng)感知的來(lái)源主要有相機(jī)、毫米波雷達(dá)、激光雷達(dá)、高精度定位系統(tǒng),分別獲取相機(jī)拍攝的環(huán)境圖片、毫米波接收到的電磁波回波、激光掃描出的環(huán)境點(diǎn)云數(shù)據(jù)等。數(shù)據(jù)的基本量級(jí)和獲取方式如圖3所示。最大可達(dá)每秒GB,獲取方式為L(zhǎng)VDS、以太網(wǎng)、CAN、Flexray、MOST、LIN等車載網(wǎng)絡(luò)。
自動(dòng)駕駛系統(tǒng)首先通過(guò)圖像、激光點(diǎn)云、基于位置的交通信息服務(wù)[3]、毫米波發(fā)射與接收回波間的差異,提取目標(biāo)特征形成對(duì)環(huán)境中各類機(jī)動(dòng)車、行人、路肩、護(hù)欄等物體的感知,以及對(duì)環(huán)境中車道線、交通信號(hào)、交通標(biāo)志等交通信息的感知。然后基于全局目標(biāo)和全局路徑規(guī)劃,應(yīng)用車道、護(hù)欄、路肩等局部可行駛區(qū)域,以及可行駛區(qū)域中物體運(yùn)動(dòng)狀態(tài)的估計(jì),規(guī)劃車輛的局部行駛路徑。最后將控制指令通過(guò)車載網(wǎng)絡(luò)發(fā)送至車輛執(zhí)行機(jī)構(gòu),執(zhí)行車輛縱向、側(cè)向控制,實(shí)現(xiàn)自動(dòng)駕駛。自動(dòng)駕駛各子模塊的功能劃分如圖4所示。
針對(duì)獲取的以上各子模塊分工,對(duì)應(yīng)的處理方式包括了傳感器信息融合[10]、圖像處理[11]、激光點(diǎn)云處理[12]、數(shù)字信號(hào)處理、多狀態(tài)估計(jì)、模型預(yù)測(cè)控制、SLAM以及更底層的支持向量機(jī)、光流跟蹤[13]、模式識(shí)別、機(jī)器學(xué)習(xí)、深度學(xué)習(xí)等,以實(shí)現(xiàn)對(duì)環(huán)境中對(duì)車輛行駛有影響的目標(biāo)的識(shí)別,并結(jié)合車輛自身動(dòng)力學(xué)特性,去決策和規(guī)劃車輛的行駛路徑。
圖3 自動(dòng)駕駛系統(tǒng)傳感器構(gòu)成與信息數(shù)據(jù)量
圖4 自動(dòng)駕駛系統(tǒng)組成與子模塊功能分析
自動(dòng)駕駛計(jì)算任務(wù)對(duì)計(jì)算芯片的需求,主要分為計(jì)算力、實(shí)時(shí)性、可靠性、算法通用性等。計(jì)算力的需求一方面要考慮信息流的數(shù)據(jù)量,另一方面要考慮對(duì)信息的處理方法。
1)從信息流的數(shù)據(jù)量角度出發(fā),分析各類信息處理對(duì)計(jì)算芯片的處理需求。將信息處理分為3類:①面向超大數(shù)據(jù)量 (GB級(jí))的超高性能計(jì)算,系統(tǒng)復(fù)雜,且往往算法與硬件相關(guān),難以約束可靠性,移植性和通用性較差;②面向大數(shù)據(jù)量 (百M(fèi)B級(jí))的高性能計(jì)算,系統(tǒng)復(fù)雜,但算法結(jié)構(gòu)較為清晰,有一定的通用性和移植性,以及一定的功能安全需求;③面向小數(shù)據(jù)量 (MB級(jí))的高可靠性計(jì)算,數(shù)據(jù)結(jié)構(gòu)整齊,系統(tǒng)邏輯清晰,具備很強(qiáng)的通用性和移植性,有很高的可靠性、實(shí)時(shí)性需求,以及更高的功能安全需求。
2)從信息處理方法角度分析通用算法處理器、專用算法處理器。通用算法處理器適應(yīng)性較強(qiáng),可用于處理各種計(jì)算任務(wù),如ARM、X86架構(gòu)處理器;專用算法處理器用于處理專門的計(jì)算任務(wù),比如在機(jī)器學(xué)習(xí)方面具備很強(qiáng)優(yōu)勢(shì)的GPU、專門支持TensorFlow算法的TPU、可編程門陣列電路FPGA等。
如前所述,由于涉及到不同數(shù)據(jù)量規(guī)模以及不同數(shù)據(jù)結(jié)構(gòu)信息的處理,對(duì)處理器芯片的計(jì)算力、處理器架構(gòu)有著不同的需求。在滿足計(jì)算力的前提下,功耗也是影響處理器芯片在車載系統(tǒng)中應(yīng)用的關(guān)鍵。而自動(dòng)駕駛的出發(fā)點(diǎn)是保證車輛的安全性,因此處理器的安全性和可靠性也是自動(dòng)駕駛芯片選型中必須要考慮的因素?;谏鲜鲂枨?,對(duì)自動(dòng)駕駛處理器芯片應(yīng)用現(xiàn)狀和發(fā)展趨勢(shì)作簡(jiǎn)要的總結(jié)。
自動(dòng)駕駛對(duì)感知和復(fù)雜決策的需求,使得傳統(tǒng)的規(guī)則建模難以支撐復(fù)雜場(chǎng)景的應(yīng)用,也難以支持OTA等自適應(yīng)和自學(xué)習(xí)方式的算法。基于以上背景,深度學(xué)習(xí)以其靈活的建模方式和復(fù)雜場(chǎng)景的適應(yīng)性,被廣泛認(rèn)為是解決高等級(jí)自動(dòng)駕駛的重要手段。在自動(dòng)駕駛系統(tǒng)處理器選擇上,也與深度學(xué)習(xí)的技術(shù)路線有很大的重疊。深度學(xué)習(xí)算法復(fù)雜性比較高,需要有相應(yīng)的嵌入式計(jì)算平臺(tái)進(jìn)行匹配,在應(yīng)用過(guò)程中硬件技術(shù)路線主要有GPU、SoC、FPGA、ASIC等。CPU由于在分支處理以及隨機(jī)內(nèi)存讀取方面有優(yōu)勢(shì),在處理串聯(lián)工作方面較強(qiáng);GPU在處理大量有浮點(diǎn)運(yùn)算的并行運(yùn)算時(shí)候有著天然的優(yōu)勢(shì);SoC提供多種可編程邏輯密度,硅片內(nèi)集成多種系統(tǒng)級(jí)處理器硬核;FPGA可以使開(kāi)發(fā)者在其硬件電路里原生支持特殊的復(fù)雜指令而不需要對(duì)指令進(jìn)行分解和模擬;ASIC則是為某種特殊復(fù)雜指令定制的專用芯片,能夠帶來(lái)更加優(yōu)異的計(jì)算力和功耗表現(xiàn),如谷歌專為深度學(xué)習(xí)語(yǔ)言Tensor Flow設(shè)計(jì)的TPU。
計(jì)算力的評(píng)價(jià)指標(biāo)主要有MIPS、FLOPS、TOPS等,分別表示處理器芯片處理指令、進(jìn)行浮點(diǎn)型運(yùn)算、進(jìn)行整形運(yùn)算的能力,主要通過(guò)常用基準(zhǔn)程序測(cè)試計(jì)算,如Dhrystone、Whetstone、Linpack等。但是實(shí)際上I/O的效能、內(nèi)存的架構(gòu)、快取內(nèi)存一致性、硬件能支持的指令等對(duì)芯片的處理速度都會(huì)產(chǎn)生影響。多核并行計(jì)算過(guò)程中,因?yàn)樘幚砥骷軜?gòu)不同,也會(huì)對(duì)綜合性能產(chǎn)生影響,如ARM架構(gòu)芯片在多核并行計(jì)算中,根據(jù)應(yīng)用不同會(huì)損失20%~30%的性能。而異構(gòu)芯片在多核集成過(guò)程中,也會(huì)受到工藝的限制,比如ARM架構(gòu)的cortex A72目前最多構(gòu)成4核,通常應(yīng)用以2個(gè)A72和4個(gè)A53形成SoC。
計(jì)算力評(píng)價(jià)指標(biāo)是從不同角度對(duì)計(jì)算性能的評(píng)價(jià),并不能真實(shí)反映算法部署時(shí)對(duì)計(jì)算力的需求,相關(guān)指標(biāo)僅供參考,但是能夠給出一個(gè)比較直觀的計(jì)算力對(duì)比。ARM系列芯片通常應(yīng)用Dhrystrone庫(kù)測(cè)試MIPS指標(biāo)進(jìn)行計(jì)算力對(duì)比分析,如圖5所示。
圖5 ARM架構(gòu)芯片計(jì)算力對(duì)比分析
芯片功耗的來(lái)源主要有核心邏輯電路、時(shí)鐘樹(shù)、RAM、ROM等。功耗的大小與芯片供電電壓、晶振頻率、制造工藝等因素相關(guān),通過(guò)降低工作電壓、應(yīng)用新材料、3D/光學(xué)互連代替PCB布線、智能電源管理、集成電路生產(chǎn)工藝提升等方式優(yōu)化處理器性能與功耗間的平衡,以滿足車載應(yīng)用需求。比如一種20 nm芯片,將工作電壓從1.5 V降低至1.35 V,以節(jié)省67%的功耗;最新的微控制器和SoC運(yùn)用智能電源管理單元,自動(dòng)調(diào)整工作電壓與時(shí)脈速度來(lái)搭配工作負(fù)載;使用InGaAs增強(qiáng)未來(lái)三閘電晶體上的通道,可望使工作電壓降低至0.5 V;通過(guò)使用硅中介層功耗降低,僅為傳統(tǒng)PCB解決方案的17%;集成電路生產(chǎn)工藝的提高,如納米級(jí)的集成芯片設(shè)計(jì),縮小了單管的尺寸,提高了芯片的集成度與工作頻率,降低了工作電壓,保證性能的前提下,從根本上降低了同樣計(jì)算力下芯片的功耗。但是工藝的提升會(huì)帶來(lái)芯片成本的增加,性能、成本、需求之間的綜合考慮,是產(chǎn)品設(shè)計(jì)的關(guān)鍵。目前自動(dòng)駕駛芯片計(jì)算力和功耗比設(shè)計(jì)目標(biāo)為1TFLOPS/W,但是隨著自動(dòng)駕駛支持場(chǎng)景復(fù)雜度不斷提升,對(duì)計(jì)算力和功耗的需求將會(huì)是一個(gè)持續(xù)的綜合性能設(shè)計(jì)。
為了平衡計(jì)算力、功耗、功能安全等需求,傳統(tǒng)的規(guī)則建模中應(yīng)用的通用計(jì)算平臺(tái),如DSP、PowerPC、ARM在自動(dòng)駕駛芯片領(lǐng)域也有著重要的地位。在這類芯片上更容易在同一封裝內(nèi)部實(shí)現(xiàn)雙核鎖步等校驗(yàn)技術(shù)。
根據(jù)上述分析,可將自動(dòng)駕駛芯片按計(jì)算力、成本角度劃分,如表1所示。根據(jù)不同階段的市場(chǎng)需求,在開(kāi)發(fā)相應(yīng)的自動(dòng)駕駛功能過(guò)程中,需要從算法適用性、復(fù)雜度等多個(gè)角度深入分析算法對(duì)計(jì)算力的需求,選擇性能、成本綜合指標(biāo)滿足需求的芯片方案。
表1 自動(dòng)駕駛芯片分類
自動(dòng)駕駛需要統(tǒng)合車輛所有的環(huán)境感知、車輛狀態(tài)感知信息,協(xié)調(diào)影響車輛運(yùn)動(dòng)狀態(tài)的執(zhí)行機(jī)構(gòu),以及協(xié)調(diào)車身控制器進(jìn)行車輛內(nèi)外部聲音、光學(xué)等交互信息,所以自動(dòng)駕駛控制系統(tǒng)需要集中式的設(shè)計(jì),來(lái)匯總和處理各類信息,協(xié)調(diào)各類輸出,因此自動(dòng)駕駛控制系統(tǒng)的實(shí)現(xiàn)更加趨于一種中央域控制器的設(shè)計(jì)。
通過(guò)芯片的選型和集成,設(shè)計(jì)自動(dòng)駕駛域控制器,首先要滿足各類信息的接入和采集;第二要具備異構(gòu)信息的處理能力;第三要有滿足車載需求的功耗和散熱方式,以搭載自動(dòng)駕駛相關(guān)控制算法在車載環(huán)境中得到應(yīng)用。在自動(dòng)駕駛域控制器實(shí)現(xiàn)過(guò)程中,目前研究中應(yīng)用較為廣泛的有以下兩種方案:一種是以充分發(fā)揮GPU數(shù)據(jù)處理性能為核心的方案,如NVIDIA公司的Drive PX2自動(dòng)駕駛控制平臺(tái);另一種是依據(jù)算法負(fù)責(zé)程度分層在多類芯片中分別部署的多元異構(gòu)芯片組合方案,如奧迪新A8采用的自動(dòng)駕駛平臺(tái)zFAS。
Drive PX2自動(dòng)駕駛控制平臺(tái),支持12路攝像頭輸入、激光定位、雷達(dá)和超聲波傳感器基于16 nm FinFET工藝制造,但是其功耗可達(dá)250 W,且采用了水冷散熱的方式。這種高功耗和水冷的方式目前很難在車載領(lǐng)域得到應(yīng)用,但是在技術(shù)研究領(lǐng)域,為一些控制算法的集成驗(yàn)證提供了控制器平臺(tái)。
zFAS中NVIDIA TegraK1芯片為GPU架構(gòu)芯片,用于環(huán)視和駕駛員檢測(cè),Mobileye Q3為FPGA架構(gòu)芯片,負(fù)責(zé)實(shí)現(xiàn)自動(dòng)駕駛功能的視覺(jué)感知,Altera的Cyclone V為FPGA芯片,負(fù)責(zé)信息融合、高性能計(jì)算及部分決策控制。英飛凌的Aurix TC297T為DSP芯片,負(fù)責(zé)運(yùn)行高可靠性和實(shí)時(shí)性較高的決策控制算法,并監(jiān)測(cè)系統(tǒng)運(yùn)行狀態(tài),使系統(tǒng)滿足相應(yīng)的功能安全等級(jí)要求,目前已實(shí)現(xiàn)量產(chǎn)。
更加多元的異構(gòu)芯片的組合方案,通過(guò)對(duì)自動(dòng)駕駛控制算法的分析和分解,將算法分層部署在滿足各類需求的芯片中,達(dá)到計(jì)算性能、功耗、功能安全等各方面綜合要求的滿足,在應(yīng)用過(guò)程中會(huì)為算法的優(yōu)化提供指導(dǎo),另外芯片成熟度的提升也會(huì)降低成本并且更加符合功耗、功能安全等方面的需求,從而進(jìn)一步促進(jìn)自動(dòng)駕駛相關(guān)功能和域控制器的逐步升級(jí)。
根據(jù)圖3信息量角度對(duì)自動(dòng)駕駛控制系統(tǒng)的信息處理需求的劃分,進(jìn)一步細(xì)化多元異構(gòu)芯片組合的域控制器集成方式對(duì)自動(dòng)駕駛需求的分層對(duì)應(yīng),如圖6所示。這種組合方式是平衡性能、成本、功耗、功能安全等各類自動(dòng)駕駛需求的有效方案,且模塊化的層級(jí)劃分具備自然的升級(jí)換代的便利性,是目前自動(dòng)駕駛系統(tǒng)應(yīng)用的唯一解決方案,也是自動(dòng)駕駛控制系統(tǒng)發(fā)展過(guò)程中的必然趨勢(shì)。
圖6 多元異構(gòu)芯片組合對(duì)應(yīng)各層自動(dòng)駕駛算法需求
依托于芯片、傳感器、算法的飛速發(fā)展和日趨成熟,自動(dòng)駕駛技術(shù)的發(fā)展呈現(xiàn)一種多學(xué)科交叉、統(tǒng)合的態(tài)勢(shì),已經(jīng)不是簡(jiǎn)單的組合,而是技術(shù)、應(yīng)用、算法、軟件、硬件相互響應(yīng),相互促進(jìn)的深度融合。自動(dòng)駕駛芯片的選擇一方面要考慮其計(jì)算力、成本,來(lái)滿足基本的運(yùn)算和產(chǎn)品化需求;另一方面需要綜合對(duì)比其事務(wù)管理功能、數(shù)據(jù)處理能力和運(yùn)行速度、軟件編程和硬件設(shè)計(jì)的靈活性,來(lái)滿足設(shè)計(jì)、開(kāi)發(fā)及產(chǎn)品生命周期管理的需求。
鑒于自動(dòng)駕駛控制系統(tǒng)需求的復(fù)雜性,多元異構(gòu)傳感器、多核異構(gòu)芯片構(gòu)成的控制系統(tǒng)的模塊化、分層化設(shè)計(jì)方式,是自動(dòng)駕駛控制系統(tǒng)滿足其系統(tǒng)成本、功耗、實(shí)時(shí)性、設(shè)計(jì)開(kāi)發(fā)、功能安全等各類需求的必然趨勢(shì)。