哪些系統(tǒng)設(shè)計(jì)要求SoC復(fù)雜性進(jìn)行飛躍式發(fā)展,?正確答案絕不僅僅是大家首先想到的大數(shù)據(jù)中心人工智能(AI)芯片,同時(shí)還包括無人駕駛汽車等場(chǎng)景,,例如汽車,、卡車以及無人機(jī),。此外,能夠自主著陸的可重復(fù)利用火箭,,以及可以進(jìn)行遠(yuǎn)程診斷的醫(yī)療設(shè)備,,也都是這類芯片的需求主力。
目前,,很多片上系統(tǒng)(SoC)的設(shè)計(jì)復(fù)雜性已經(jīng)令人難以想象,。例如,今年HotChips研討會(huì)上展示的針對(duì)邊緣與數(shù)據(jù)中心等場(chǎng)景的各類全新SoC設(shè)計(jì),,就令人大開眼界,,甚至進(jìn)一步拓展了我們對(duì)于“大”芯片的定義范圍。那么,,到底哪些系統(tǒng)設(shè)計(jì)要求SoC復(fù)雜性進(jìn)行飛躍式發(fā)展,?正確答案絕不僅僅是大家首先想到的大數(shù)據(jù)中心人工智能(AI)芯片,同時(shí)還包括無人駕駛汽車等場(chǎng)景,,例如汽車,、卡車以及無人機(jī)。此外,,能夠自主著陸的可重復(fù)利用火箭,,可以進(jìn)行遠(yuǎn)程診斷的醫(yī)療設(shè)備,以及用于支持智能制造的聯(lián)網(wǎng)機(jī)床控制器,,也都是這類芯片的需求主力,。
憑借著夸張的尺寸與復(fù)雜性,這些芯片開始被人們稱為“怪獸級(jí)芯片”,。在今天的文章中,,我們將共同了解這些怪異芯片設(shè)計(jì)方案興起背后的驅(qū)動(dòng)因素。簡(jiǎn)而言之,此類特殊設(shè)計(jì)主要是為了實(shí)現(xiàn)互聯(lián)網(wǎng)連接,,這種連接能力不僅可以帶來大數(shù)據(jù)信息,,同時(shí)還能實(shí)現(xiàn)有助于決策的分布式處理機(jī)制。這些與互聯(lián)網(wǎng)連接的系統(tǒng),,往往需要通過每秒處理超過萬億次運(yùn)算的方式自行做出一部分甚至所有決策,,而這也進(jìn)一步推動(dòng)了又一輪硬件與軟件創(chuàng)新熱潮,并最終令芯片的復(fù)雜度邁向前所未有的高度,。
圖一:無人駕駛,、機(jī)器學(xué)習(xí)以及區(qū)塊鏈處理等場(chǎng)景對(duì)復(fù)雜性的嚴(yán)苛要求,帶來了新一代SoC設(shè)計(jì)方案,。
沒錯(cuò),,也有一部分應(yīng)用僅負(fù)責(zé)信息報(bào)告,但這類應(yīng)用通常數(shù)量非常有限,,而且代表著低價(jià)值市場(chǎng)上只能產(chǎn)生較低利潤(rùn)率的產(chǎn)品門類,。為了真正實(shí)現(xiàn)價(jià)值,聯(lián)網(wǎng)系統(tǒng)必須有能力自主做出決策,,而這就帶來了獨(dú)特的軟件與硬件開發(fā)挑戰(zhàn),。
首先,為了能夠做出決策,,這些系統(tǒng)需要建立起一整套包含多種類型傳感器,,以及由復(fù)雜軟件算法驅(qū)動(dòng)的高性能數(shù)據(jù)處理體系??梢钥隙ǖ氖?,硬件由軟件需求進(jìn)行驅(qū)動(dòng),而設(shè)備本身也需要支持能夠使系統(tǒng)與現(xiàn)實(shí)世界進(jìn)行交互的其它算法,。
沒錯(cuò),,大家可以在軟件與硬件之間旋轉(zhuǎn)幾個(gè)中間件層,但這會(huì)犧牲性能表現(xiàn),,并給多種關(guān)鍵任務(wù)應(yīng)用帶來額外的執(zhí)行成本,。
怪獸級(jí)芯片中的緩存一致性
怪獸級(jí)芯片的時(shí)代,要求系統(tǒng)能夠基于復(fù)雜的硬件與軟件構(gòu)建單元實(shí)現(xiàn)自主決策,。此外,,新時(shí)代還推動(dòng)著IP核與EDA設(shè)計(jì)工具技術(shù)的進(jìn)一步發(fā)展,用以確保對(duì)這類復(fù)雜項(xiàng)目進(jìn)行妥善管理,,同時(shí)又不會(huì)破壞設(shè)計(jì)人員在合理時(shí)間與成本范圍之內(nèi)拿出最終方案的可行性,。
以怪獸級(jí)芯片中的多處理器緩存一致性問題為例,它屬于計(jì)算機(jī)上的一套子系統(tǒng),,已被應(yīng)用于部分SoC當(dāng)中,,旨在簡(jiǎn)化輔助處理子系統(tǒng)(例如視覺加速器以及其他圖像處理器)的編程流程。
除了主CPU子系統(tǒng)之外,這些怪獸級(jí)芯片還具備用于處理特殊數(shù)據(jù)以及實(shí)現(xiàn)有效控制的處理器層級(jí)結(jié)構(gòu),。再有,,為了進(jìn)一步增加處理能力,其中包含的處理器數(shù)量也在不斷增加,,這就要求芯片本身支持?jǐn)?shù)十個(gè)緩存一致性端口,,并在這些端口上運(yùn)行異構(gòu)緩存一致性協(xié)議。
圖二:大型SoC設(shè)計(jì)中的緩存一致性工作原理示意圖,。
由于使用多級(jí)片上緩存,,導(dǎo)致片上調(diào)整緩存存儲(chǔ)器多達(dá)四級(jí)。調(diào)整緩存的這套層級(jí)結(jié)構(gòu)負(fù)責(zé)改善內(nèi)存帶寬,,并最大程度減少因片外內(nèi)存訪問帶來的延遲,。事實(shí)證明,隨著設(shè)計(jì)人員不斷尋求對(duì)內(nèi)存性能的提升,,高帶寬內(nèi)存接口的應(yīng)用也變得越來越普遍。
網(wǎng)格狀芯片
由于各個(gè)處理子系統(tǒng)會(huì)不斷生成大量數(shù)據(jù),,這些數(shù)據(jù)當(dāng)然需要在整個(gè)SoC設(shè)備當(dāng)中進(jìn)行傳輸,。以高級(jí)駕駛輔助系統(tǒng)(ADAS)應(yīng)用中的現(xiàn)有汽車SoC為例,其每天可生成超過20GB數(shù)據(jù),。因此,,在怪獸級(jí)芯片當(dāng)中,多節(jié)點(diǎn)網(wǎng)格部分將用于實(shí)現(xiàn)片上深度學(xué)習(xí)處理,,旨在將數(shù)據(jù)轉(zhuǎn)換為可以操作的對(duì)象,。
如今,邊緣設(shè)備子系統(tǒng)中通常包含20個(gè)網(wǎng)格節(jié)點(diǎn),,而未來這一數(shù)字可能會(huì)在高端AI應(yīng)用當(dāng)中進(jìn)一步增長(zhǎng)至上百個(gè),。舉例來說,用于機(jī)器學(xué)習(xí)的卷積神經(jīng)網(wǎng)絡(luò)(CNN)中的網(wǎng)格節(jié)點(diǎn)數(shù)量正在快速增加,,以便更好地支持訓(xùn)練與推理任務(wù),。此外,芯片設(shè)計(jì)中的挑戰(zhàn)不僅在于如何實(shí)現(xiàn)CNN節(jié)點(diǎn)內(nèi)部的數(shù)據(jù)轉(zhuǎn)換,,同時(shí)也要求我們想辦法在節(jié)點(diǎn)之間實(shí)現(xiàn)數(shù)據(jù)移動(dòng),。
圖三:關(guān)于在汽車SoC中實(shí)現(xiàn)機(jī)器學(xué)習(xí)與神經(jīng)網(wǎng)絡(luò)架構(gòu)的示例。
再有,,功率與頻域數(shù)字也在增加,,用以管理這些怪獸級(jí)芯片的功耗水平。接下來,,怪獸級(jí)芯片極高的復(fù)雜性也給設(shè)計(jì)生產(chǎn)率帶來壓力,。而且,這種復(fù)雜性要求引入IP核與EDA工具,它們負(fù)責(zé)將手動(dòng)優(yōu)化能力與為用戶管理非增值復(fù)雜性因素的自動(dòng)化方案結(jié)合起來,。
怪獸級(jí)芯片的神經(jīng)系統(tǒng)
用于ADAS與無人駕駛汽車的SoC正是怪獸級(jí)芯片中的經(jīng)典范例,。無人駕駛汽車是一種由軟件驅(qū)動(dòng)的應(yīng)用方案,可能需要多達(dá)1億行代碼才能與真實(shí)的交通世界順暢交互,。因此,,能夠支持這種龐大軟件的硬件(即汽車SoC)必須具有高性能、低功耗,、經(jīng)濟(jì)高效且功能安全等特點(diǎn),。
因此可以想見,相關(guān)的處理與存儲(chǔ)子系統(tǒng)必然在復(fù)雜度方面日益提升,,并要求利用新一代互連IP以實(shí)現(xiàn)巨大的數(shù)據(jù)傳輸帶寬,、低延遲以及更高的能源利用率。換句話說,,怪獸級(jí)芯片正在給互連技術(shù)施加壓力,,敦促其盡快發(fā)展成合格的SoC神經(jīng)系統(tǒng)。
是的,,處理器是系統(tǒng)當(dāng)中最核心的IP,,而內(nèi)存帶寬則是決定一切的基礎(chǔ);但現(xiàn)在,,如何利用高級(jí)互連IP將SoC中的各個(gè)部件組裝起來,,則直接決定著SoC設(shè)計(jì)方案的整體可行性??偨Y(jié)來講,,互連IP對(duì)于SoC的性能、成本以及發(fā)展進(jìn)度,,都將產(chǎn)生極為重大的影響,。