調(diào)查數(shù)據(jù)表明,額外的微處理器內(nèi)核并沒有被添加到SoC中,但你必須深入研究數(shù)字,才能發(fā)現(xiàn)真正的情況。原因很復雜。它們包括從軟件編程模式到市場轉(zhuǎn)變和新的用例等一切因素。因此,雖然調(diào)查數(shù)字看起來很平淡,但市場和技術(shù)動態(tài)可能會對未來重塑這些趨勢產(chǎn)生很大影響。
在剛剛發(fā)布的一項功能驗證調(diào)查中,強調(diào)了目前的比較,該調(diào)查由Wilson Research和西門子業(yè)務(wù)的Mentor進行。該調(diào)查基于1492名受訪者--其中約有一半?yún)⑴c了ASICS的調(diào)查,主要涉及芯片尺寸和處理器數(shù)量等方面。調(diào)查數(shù)據(jù)顯示,“8個或更多 ”的類別有非常輕微的增加,但幾乎在調(diào)查的+/-3%的誤差范圍內(nèi)。這使得它的數(shù)量與2016年大致相同。與前兩次調(diào)查結(jié)果相比,擁有兩個處理器的SoC略有減少。
“處理器的數(shù)量在PC或便攜式設(shè)備等平臺上停滯不前,”Arteris IP的研究員兼系統(tǒng)架構(gòu)師Michael Frank說。“這與摩爾定律趨于平緩的關(guān)系不大,而是從軟件的角度來看,要為更多的處理器找到足夠的工作變得非常困難。除非你有高度并行的工作負載,否則要讓所有這些核心都忙碌起來真的非常困難。”
工作負載也在發(fā)生變化。“對于移動應用處理器來說,這是第一大批量產(chǎn)品,一般架構(gòu)似乎已經(jīng)在8個核心的集群上穩(wěn)定下來了--至少目前是這樣,”Cadence公司Tensilica IP高級集團營銷總監(jiān)Larry Przywara說。“我們看到的是,做視覺和AI類型的工作負載的核心數(shù)量正在上升。”
但在智能手機市場之外,還有很多變化的空間。“我們看到從汽車到基礎(chǔ)設(shè)施等一系列市場的計算需求都在增加,”Arm公司技術(shù)副總裁、研究員Peter Greenhalgh說。“這意味著我們還遠遠沒有達到有用處理器的極限。新的應用有不同的需求,如功率、安全和效率。從低功耗物聯(lián)網(wǎng)的角度來看,我們可以預期多核解決方案的采用會越來越多。而且我們可以預期,這種趨勢將繼續(xù)增加到更多的應用和終端市場。”
Synopsys公司ASIP工具產(chǎn)品營銷經(jīng)理Markus Willems對此表示贊同。“我們看到的情況與調(diào)查中出現(xiàn)的情況恰恰相反,即芯片上的可編程元件數(shù)量正在增加。這是由于非常特定于應用,或者特定于領(lǐng)域的那種加速器正在變得更加軟件可編程。由32位超標量內(nèi)核組成的多核集群可能已經(jīng)變得有限,因為內(nèi)存是一個問題。”
在規(guī)模較小的嵌入式市場上,似乎有一個大的變化即將發(fā)生。“如果我們看一下嵌入式市場上出現(xiàn)的新芯片,它們通常是雙核、四核類型的配置,”Mentor公司嵌入式軟件部門高級產(chǎn)品經(jīng)理Jeffrey Hancock說。“仍然有一些設(shè)備是單核的,但多核終于也要在這個領(lǐng)域出現(xiàn)了。從硅供應商的角度來看,只要人們能夠使用這些核心,只要能夠保持在他們的成本結(jié)構(gòu)之內(nèi),他們就非常樂意增加核心。”
但這些數(shù)字隱藏了更大的故事。“雖然一個ASIC中的嵌入式處理器數(shù)量可能已經(jīng)持平,但特定領(lǐng)域或?qū)S锰幚砥鞯臄?shù)量卻在增加,”Mentor公司IC驗證解決方案部副總裁兼總經(jīng)理Ravi Subramanian說。“我們看到,邊緣設(shè)備中的SoC正在發(fā)生本質(zhì)的變化,即數(shù)據(jù)以及計算量正在增長,而且大量的計算正在轉(zhuǎn)移到應用或領(lǐng)域?qū)S锰幚砥魃稀!?/p>
新的工作負載的處理需求明顯不同。“采用多個嵌入式處理器的傳統(tǒng)ASIC計算機架構(gòu)無法提供許多新應用所需的GOPS/mw/MHz,”Subramanian說。“需要注意的是,算法的復雜性遠遠超過了摩爾定律,因此,推動了新的架構(gòu)。這些新架構(gòu)的編程模型是共同開發(fā)的,以便共同優(yōu)化編程模型和硬件架構(gòu)。”
這也在推動大型數(shù)據(jù)中心架構(gòu)的發(fā)展。“Arteris的Frank說:”我們看到超級計算機的核心數(shù)量會增加,因為它們的工作負載,比如有限元和大的迭代系統(tǒng),很容易并行化。“ 一切有大的線性代數(shù)工作負載的東西都在很好地擴展。”
CPU的局限性
雖然通用CPU很有用,但其通用性也是一個限制因素。“其中一個問題是,CPU并不是真的擅長什么,”Frank說。“CPU擅長處理一個單線程,里面有很多決策。這就是為什么你有分支預測器,它們已經(jīng)是多年來研究的主題。但是加速器,尤其是定制加速器,服務(wù)于兩個領(lǐng)域。一個是你有很多數(shù)據(jù)在移動,CPU不擅長處理這些數(shù)據(jù)。這里我們看到向量擴展的范圍會更廣。還有很多操作是非常特殊的。如果你看神經(jīng)網(wǎng)絡(luò),你有非線性的閾值和巨大的矩陣乘法,用CPU做這些事情效率很低。所以人們試圖將工作負載移到靠近內(nèi)存的地方,或者移到專門的功能單元中。”
與處理器架構(gòu)緊密相連的是內(nèi)存。“對于一些應用來說,內(nèi)存帶寬限制了增長,”Mentor的Subramanian說。“專用處理器以及內(nèi)存(或接近內(nèi)存)計算機架構(gòu)增長的關(guān)鍵原因之一,是為了直接解決傳統(tǒng)馮-諾依曼架構(gòu)的限制。尤其是當如此多的能量在處理器之間移動數(shù)據(jù),以及內(nèi)存與實際計算所花費的能量時,情況更是如此。”
數(shù)字中隱藏的另一件事是核心復雜性。“我們看到的是,雖然集群保持不變,但單個內(nèi)核變得更加強大,”Synopsys的Willems說。“我們看到的是某些領(lǐng)域向64位發(fā)展的趨勢。從這個意義上說,同樣數(shù)量的核心,但能力更強。”
受軟件的限制
20多年前,PC從單核處理器轉(zhuǎn)為多核,然而能夠成功利用多核的應用程序數(shù)量仍然有限。“如果你看看你能從一個普通程序中提取多少并行性,你可以發(fā)現(xiàn)每時鐘周期大約兩條指令的并行性水平,”Frank說。“如果你改變你的編程模型,成為一個明確的數(shù)據(jù)流模型,在這個模型中,你有你管理的數(shù)據(jù)依賴性,你可以突然獲得13倍到20倍的性能提升。”
人類能做得更好嗎?“試著找一個能寫出能有效使用兩個線程的并行程序的程序員,”Frank補充道。“你會找到這些人的。試著找到一個人,當你沒有高度并行的工作負載時,可以使用四個以上的線程。非常困難。而且你想增加的線程越多,問題就越復雜,越難。”
面向數(shù)據(jù)的編程讓一切變得不同。“幾十年來,并行計算概念一直是計算機科學的一部分,但一直被歸為高度專業(yè)化的任務(wù),并行處理是很困難的,”Subramanian說。“在過去的五到七年里,這種情況已經(jīng)發(fā)生了重大變化,以至于大規(guī)模的并行計算成為可能。這在當今許多新的‘基于數(shù)據(jù)’的學科中尤為重要,在這些學科中,編程模型需要有效地使軟件算法能夠在非常大的并行計算架構(gòu)上運行。現(xiàn)在,它們正在被擴展到異構(gòu)并行計算架構(gòu)上,我們看到新的工作負載的新的編程框架出現(xiàn)--Tensorflow、Caffe、MLpac、CUDA、Spark、MOA只是其中的幾個--以大大降低這些系統(tǒng)編程的障礙。”
進展也發(fā)生在AI領(lǐng)域之外。“有一些編程模型,或者編程語言,強制執(zhí)行編程模型,比如Cilk,一個基于任務(wù)的模型,”Frank說。“有一些運行時庫,支持像OpenMP任務(wù)模型這樣的東西。當采用這些時,你會突然發(fā)現(xiàn),你可以填滿10個處理器。因此,只要我們達到這個水平,以及這些類型的編程模型--基于任務(wù)的、數(shù)據(jù)依賴管理的程序模型--你就會發(fā)現(xiàn),處理器的增加會有下一步的發(fā)展。”
還有其他因素促使人們關(guān)注多核編程。“有些人是從功能安全或安全領(lǐng)域來看待多核的,”Mentor的Hancock說。“設(shè)計人員需要將多核隔離,或者說分離成各個子系統(tǒng),以便保護一些東西。然而,人們不愿意改變。你需要開拓者來引領(lǐng)潮流,可能要發(fā)生一些大事件。在這之前,他們傾向于建立在他們已經(jīng)知道的和舒適的基礎(chǔ)上。汽車業(yè)需要像特斯拉這樣的人去撼動一切。傳統(tǒng)的汽車公司最初只是看到山谷里的一家創(chuàng)業(yè)公司,就把他們拒之門外。突然間,他們注意到了,并意識到自己需要做出改變。”
新驅(qū)動程序
雖然智能手機仍然是銷量和美元的領(lǐng)頭羊,但它們不再是導致技術(shù)進步的唯一細分市場。“汽車應用中的計算正在經(jīng)歷一場令人難以置信的轉(zhuǎn)變,其驅(qū)動力是對更沉浸式、更豐富的車內(nèi)體驗的需求,不斷提高的安全和便利的自動化水平,以及向軟件定義功能的發(fā)展,”Arm的Greenhalgh說。“這導致單個電子控制單元(ECU)迅速整合為更少的多功能ECU,這不僅需要以多核CPU的形式提供更多的CPU計算能力,還需要部署異構(gòu)計算元素。我們現(xiàn)在看到SoC的多核CPU越來越多,同時也得到了GPU、ISP和ML加速器的增強,使得軟件可以部署到每個工作負載最有效的計算元素上。”
進入汽車芯片的計算能力是驚人的。“趨勢肯定是朝著特定領(lǐng)域架構(gòu)、片上和片外加速器以及嵌入式可編程邏輯的方向發(fā)展,”O(jiān)neSpin Solutions的技術(shù)營銷經(jīng)理Sergio Marchese說。“對于許多應用來說,把更多的標準處理器扔到一個問題上并不是最有效的解決方案。例如,如果你看看特斯拉全自動駕駛芯片,它有12個Cortex-A72處理器,占據(jù)了很大一部分芯片面積。然而,兩個神經(jīng)網(wǎng)絡(luò)加速器占用的面積幾乎是它的兩倍。”
Cadence的Przywara對此表示贊同。“我們在汽車領(lǐng)域看到的用于支持自主汽車中更復雜的Level 2、Level 3的是多核DSP集群來支持雷達,以及支持越來越復雜的AI算法的引擎。我們看到的例子是,由于所需的TOPS數(shù)量,可能多達8個以上的AI引擎被用來運行AI算法。”
人工智能本身就是一個驅(qū)動力。“對于人工智能來說,它是關(guān)于如何處理內(nèi)存訪問和地址計算的問題,”Willems說。“我們看到了很多活動和很多正在開發(fā)的處理器,這些處理器不是現(xiàn)成的那種處理器。有些系統(tǒng)會有多個AI處理器,只是因為它們有一個始終在線的功能,它們需要處理一些事情,然后它們會喚醒另一個AI處理器來做一些更大規(guī)模的計算 所以,你可能會有多個處理器分配到任務(wù)。”
AI也在影響更小的邊緣設(shè)備,以及。“MCU正在承擔起進行機器學習的能力,”Przywara說。“TinyML正在幫助推動這一點。這是他們傳統(tǒng)上沒有使用的東西,但隨著越來越多的人工智能和機器學習的應用被研究和開發(fā)出來,這將成為MCU或所有產(chǎn)品變得更有能力的驅(qū)動力。這將推動這些設(shè)備中的處理核心數(shù)量越來越多的趨勢。”
5G也在產(chǎn)生相當大的影響。“一個無線電調(diào)制解調(diào)器過去有一個大的大規(guī)模DSP,”Willems說。“它足夠強大,可以依次或交錯運行必要的任務(wù)。轉(zhuǎn)移到5G,很明顯,一個單一的DSP已經(jīng)無法完成工作。相反,他們把某些東西剝離出來,變成多個可編程加速器--一個DSP專門負責某些功能,比如做矩陣反轉(zhuǎn)或均衡。但它并不都是同一個DSP,也不是它的倍數(shù)。它是多個內(nèi)核,每個內(nèi)核由指令集和內(nèi)存接口專門化。”
基站的處理器增長幅度更大。“對于5G基站應用,我們看到大量的核心接近近100個核心,來完成工作負載。”Przywara說。“5G,當然是在基礎(chǔ)設(shè)施方面,將會把事情推高。”
未來發(fā)展
那么未來我們應該期待什么呢?“會有更多的特殊處理器,”弗蘭克說。“在標準SoC領(lǐng)域,我預計處理器內(nèi)核數(shù)量會增加,可能會達到256個內(nèi)核,但不會用于PC、筆記本或手機。我們將看到的地方是針對汽車的嵌入式系統(tǒng),與機器學習方面相比,對高性能和連貫性的要求越來越高,變得更加重要。”
為了利用它,編程模式必須改變。“由工作負載能力和性能效率驅(qū)動的新計算機架構(gòu)的ASIC數(shù)量正在快速增長,”Subramanian說。“對解決大量各種工作負載的解決方案的需求(如語音識別、X射線分析、物體檢測、面部識別、生物細胞的進化)已經(jīng)在迫使計算分析的新領(lǐng)域的發(fā)展,開發(fā)新的數(shù)學模型來理解具體問題。而且它正在迅速地將這些發(fā)現(xiàn)帶入計算機科學的世界,特別是新計算機架構(gòu)性能的分析。這導致了計算機架構(gòu)世界正在向異構(gòu)、多處理架構(gòu)發(fā)展,并從馮-諾依曼向神經(jīng)形態(tài)計算架構(gòu)發(fā)展。我們今天剛剛開始了計算機架構(gòu)的復興。”
也許是時候重寫調(diào)查問題,以更好地反映芯片處理能力的演變。也許應該確定獨立指令流的數(shù)量,或者控制線程的數(shù)量,但所有這樣的指標將繼續(xù)偏向于今天的控制驅(qū)動范式。
責任編輯:tzh
-
處理器
+關(guān)注
關(guān)注
68文章
19813瀏覽量
233637 -
芯片
+關(guān)注
關(guān)注
459文章
52217瀏覽量
436553 -
mcu
+關(guān)注
關(guān)注
146文章
17854瀏覽量
360779 -
soc
+關(guān)注
關(guān)注
38文章
4348瀏覽量
221769 -
AI
+關(guān)注
關(guān)注
87文章
34324瀏覽量
275513
發(fā)布評論請先 登錄
使用MATLAB進行無監(jiān)督學習

機器學習模型市場前景如何
嵌入式機器學習的應用特性與軟件開發(fā)環(huán)境

MCU在車載系統(tǒng)中的展望
傳統(tǒng)機器學習方法和應用指導

評論