開發(fā)自動(dòng)駕駛 SoC 相當(dāng)于讓三輛高速跑車從不同方向匯聚在同一個(gè)路口。每輛車都在一條任務(wù)關(guān)鍵的道路上,但駕駛員能否安全地通過十字路口而不會(huì)減速、停車或撞車?現(xiàn)在,不用汽車,想象三個(gè)相互沖突的設(shè)計(jì)要求在 SoC 設(shè)計(jì)的同一交叉點(diǎn)上匯聚:
1. 安全2. 近實(shí)時(shí)嵌入式性能3. 超級(jí)計(jì)算復(fù)雜性
開發(fā)自動(dòng)駕駛技術(shù)對(duì)半導(dǎo)體行業(yè)來說是一個(gè)令人興奮的增長(zhǎng)機(jī)會(huì),它將吸引來自傳統(tǒng)和非傳統(tǒng) SoC 設(shè)計(jì)團(tuán)隊(duì)的許多開發(fā)人員。賭注很高,因?yàn)榈谝幻墨@勝者將主導(dǎo)市場(chǎng)。第二名和第三名的選手可能能夠生存下來,但獲得第四名到第 20 名的公司將沒有太多值得慶祝的事情。
工程挑戰(zhàn)是將所有三個(gè)特性(安全性、性能和復(fù)雜性)同時(shí)集成到一個(gè)設(shè)備中。這些要求可能會(huì)以個(gè)人計(jì)算機(jī)、移動(dòng)電話和數(shù)據(jù)中心系統(tǒng)沒有的方式困擾系統(tǒng)設(shè)計(jì)人員。自動(dòng)駕駛芯片必須在經(jīng)濟(jì)上可行,并滿足汽車 OEM 和監(jiān)管機(jī)構(gòu)的技術(shù)期望。
當(dāng)前趨勢(shì)和 ISO 26262
自動(dòng)駕駛系統(tǒng)中的安全和超級(jí)計(jì)算要求極其復(fù)雜,并為提供近實(shí)時(shí)性能帶來障礙。因此,如果僅通過軟件添加功能安全機(jī)制,性能將受到影響。
高級(jí)駕駛輔助系統(tǒng) (ADAS) 的設(shè)計(jì)者曾經(jīng)試圖通過創(chuàng)建更復(fù)雜的軟件來解決這些挑戰(zhàn)。這種方法對(duì)于自動(dòng)駕駛來說是不可持續(xù)的,因?yàn)樗鼤?huì)對(duì)系統(tǒng)延遲、處理帶寬和安全性產(chǎn)生不利影響。此外,一旦在現(xiàn)場(chǎng)部署軟件,升級(jí)和維護(hù)系統(tǒng)會(huì)產(chǎn)生更多的風(fēng)險(xiǎn)和成本。
幸運(yùn)的是,ISO 26262 規(guī)范為 ADAS 設(shè)計(jì)的軟件和硬件開發(fā)提供了指南,同時(shí)為 CPU、內(nèi)存控制器和片上互連添加了安全機(jī)制。
ISO 26262 規(guī)范支持開發(fā)更復(fù)雜的自動(dòng)駕駛 SoC。這些系統(tǒng)使用多個(gè)異構(gòu)硬件加速器實(shí)現(xiàn)神經(jīng)網(wǎng)絡(luò)。這有助于更高效的視覺處理、傳感器融合和自動(dòng)駕駛功能。
圖 1:當(dāng)前的機(jī)器學(xué)習(xí)和 ADAS 芯片將算法處理拆分為多種硬件加速器類型,以優(yōu)化處理效率。
機(jī)器學(xué)習(xí)驅(qū)動(dòng)復(fù)雜性
在這里,要了解復(fù)雜性的程度,您必須首先考慮硬件工程師在創(chuàng)建功能安全的超級(jí)計(jì)算系統(tǒng)時(shí)面臨的挑戰(zhàn)。對(duì)于自動(dòng)駕駛 SoC 設(shè)計(jì),響應(yīng)物理世界中不斷變化的條件是應(yīng)對(duì)這一挑戰(zhàn)的基本要求。
好消息是物理世界存在于微秒時(shí)間尺度上,而計(jì)算世界則在納秒范圍內(nèi)工作。壞消息是,與移動(dòng)和 PC 領(lǐng)域不同,自動(dòng)駕駛 SoC 必須執(zhí)行一種稱為深度機(jī)器學(xué)習(xí)的人工智能。
為了避免依賴在復(fù)雜的物理世界中永遠(yuǎn)無(wú)法工作的預(yù)編程算法方法,實(shí)現(xiàn)神經(jīng)網(wǎng)絡(luò)的硬件架構(gòu)正在成為實(shí)現(xiàn)深度機(jī)器學(xué)習(xí)的最佳方法之一。
機(jī)器學(xué)習(xí)需要多次計(jì)算才能為系統(tǒng)計(jì)算出有用的“答案”。為了在物理世界的時(shí)間預(yù)算內(nèi)得到答案,需要對(duì)這些計(jì)算進(jìn)行簡(jiǎn)化、并行化和硬件加速。
硬件加速
自動(dòng)駕駛硬件將通過將 SoC 劃分為執(zhí)行特定算法任務(wù)的區(qū)域來驅(qū)動(dòng)機(jī)器學(xué)習(xí)。它是通過優(yōu)化和連接的處理節(jié)點(diǎn)完成的。這些處理節(jié)點(diǎn)是在神經(jīng)網(wǎng)絡(luò)中充當(dāng)神經(jīng)元的自定義處理元素或硬件加速器。
圖 2:在現(xiàn)代機(jī)器學(xué)習(xí)系統(tǒng)中,更大份額的算法處理被配置在自定義硬件加速器上。
為了減少計(jì)算延遲,必須通過特定算法的硬件加速器在 SoC 架構(gòu)中實(shí)現(xiàn)更大份額的機(jī)器學(xué)習(xí)處理。它有助于管理處理節(jié)點(diǎn)之間通信路徑中的延遲、帶寬和服務(wù)質(zhì)量 (QoS)。
隨著硬件加速器數(shù)量的增加,實(shí)現(xiàn)自動(dòng)駕駛的近實(shí)時(shí)性能變得越來越困難。因此,連接加速器的片上互連成為提高效率的關(guān)鍵組件。相比之下,由于芯片到芯片或服務(wù)器到服務(wù)器的通信,數(shù)據(jù)中心神經(jīng)網(wǎng)絡(luò)可以承受相當(dāng)多的延遲。
緩存一致性趨勢(shì)
除了低延遲要求之外,神經(jīng)網(wǎng)絡(luò)和超級(jí)計(jì)算操作還需要處理節(jié)點(diǎn)之間的高帶寬通信,以保持它們的有效饋送。它允許盡可能快地完成信息的計(jì)算和共享。
共享信息的一種方法是將存儲(chǔ)器(通常以內(nèi)部 SRAM 的形式)耦合到每個(gè)處理元件或子系統(tǒng)。然后將該內(nèi)存用作輸出郵箱,為后續(xù)計(jì)算步驟提供輸入。隨著處理元素?cái)?shù)量的增加,在軟件中管理這種類型的通信變得難以維護(hù)并且增加了延遲。
處于創(chuàng)新前沿的自動(dòng)駕駛 SoC 設(shè)計(jì)團(tuán)隊(duì)一直在采用異構(gòu)緩存一致性。它是一種可擴(kuò)展的方法,用于實(shí)現(xiàn)高帶寬和低延遲的片上通信,因?yàn)樗?jiǎn)化了軟件。
自動(dòng)駕駛競(jìng)賽正式開啟了 SoC 設(shè)計(jì)中硬件加速器的突出新時(shí)代。過去,主 CPU 或 CPU 集群是芯片上最重要的硬件塊。
今天,硬件加速器越來越受到重視,因?yàn)?SoC 架構(gòu)師現(xiàn)在通過將復(fù)雜算法劃分為更小的計(jì)算來進(jìn)行創(chuàng)新。并且這些計(jì)算可以通過硬件加速器和最好地連接和饋送該處理網(wǎng)絡(luò)的架構(gòu)來更有效地處理。
功能安全
功能安全為自動(dòng)駕駛 SoC 開發(fā)增加了另一層復(fù)雜性。SoC 將在一個(gè)方案中執(zhí)行所有自動(dòng)駕駛功能,該方案將檢測(cè)并在某些情況下糾正錯(cuò)誤和故障。檢測(cè)和糾正故障需要額外的系統(tǒng)邏輯,這可能會(huì)竊取超級(jí)計(jì)算功能的處理能力,特別是如果它是在軟件中實(shí)現(xiàn)的。
設(shè)計(jì)團(tuán)隊(duì)的關(guān)鍵是分析他們的系統(tǒng),并根據(jù)各種故障的危害和風(fēng)險(xiǎn)實(shí)現(xiàn)基于硬件的故障檢測(cè)和修復(fù)能力。此外,它們可以補(bǔ)償純軟件故障檢測(cè)方法的復(fù)雜性。
圖 3:功能安全復(fù)制某些邏輯并比較結(jié)果以識(shí)別故障。
解決硬件故障將為 SoC 設(shè)計(jì)增加額外的邏輯。這將增加延遲和芯片面積,而這通常是滿足系統(tǒng) QoS 和功耗要求的唯一方法。例如,SoC 互連單元復(fù)制可以為操作增加幾個(gè)時(shí)鐘周期的延遲,從而增加完成任務(wù)的納秒時(shí)間。
然而,在軟件中實(shí)現(xiàn)等效的功能安全機(jī)制不僅需要更多毫秒級(jí)的時(shí)間,而且還需要更多的功耗,尤其是對(duì)于任何片外 DRAM 訪問。
支持硬件開發(fā)團(tuán)隊(duì)
要同時(shí)實(shí)現(xiàn)這些“油水相依”的要求,公司將需要功能安全、近實(shí)時(shí)嵌入式處理和高性能計(jì)算方面的專業(yè)知識(shí)。大多數(shù)公司可能擁有一兩個(gè)領(lǐng)域的知識(shí),但不是全部三個(gè)。因此,他們必須在缺乏經(jīng)驗(yàn)的領(lǐng)域發(fā)展和招聘。
功能安全知識(shí)很難獲得。這是因?yàn)槿狈哂泄δ馨踩R(shí)的工程師。許多專家可能不精通汽車行業(yè)必須制造的高度復(fù)雜的半導(dǎo)體類型。
至此,通往自動(dòng)駕駛 SoC 的道路要經(jīng)過開發(fā)者的執(zhí)行辦公室。這些學(xué)科中的每一個(gè)都沒有足夠的技能可以從其他公司招聘,而且能夠?qū)⑺鼈兘M合在一起的人就更少了。
該軟件將在自動(dòng)駕駛時(shí)代引起媒體“熱議”,因?yàn)樗倪M(jìn)入門檻比硬件開發(fā)低,更容易被投資者理解。然而,真正創(chuàng)新的是半導(dǎo)體開發(fā)商,他們?cè)O(shè)計(jì)了經(jīng)過微調(diào)的定制硬件來執(zhí)行復(fù)雜的軟件。
這些團(tuán)隊(duì)已經(jīng)創(chuàng)建了 ADAS 系統(tǒng),為成功集成三層復(fù)雜性提供了模型:安全性、延遲和性能。這些趨勢(shì)為自動(dòng)駕駛 SoC 的外觀提供了線索:為高效代碼執(zhí)行而優(yōu)化的緊密耦合的硬件-軟件設(shè)計(jì);支持深度機(jī)器學(xué)習(xí)的緩存一致的 SoC 架構(gòu);和多個(gè)異構(gòu)處理元素。
以及在不犧牲電源效率、性能和面積的情況下實(shí)現(xiàn)功能安全的智能方法。你準(zhǔn)備好了嗎?啟動(dòng)你的引擎,不要害怕停下來問路。
審核編輯:湯梓紅
評(píng)論
查看更多