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