人工智能、機(jī)器學(xué)習(xí)、深度學(xué)習(xí)可以極大改善芯片某項(xiàng)特定功能的控制和性能。架構(gòu)師既可以基于現(xiàn)有設(shè)備進(jìn)行分層設(shè)計(jì),也可以整合到新設(shè)計(jì)中,以實(shí)現(xiàn)更多功能或某個(gè)特定功能。
人工智能技術(shù)帶來很多好處,比如:
通過稀疏算法或數(shù)據(jù)壓縮來改變特定函數(shù)精度,增加粒度,提高芯片性能和降低功耗。
識(shí)別數(shù)據(jù)模式而不是單個(gè)比特,有效提高計(jì)算的抽象性,增加軟件密度。
允許以矩陣的形式執(zhí)行處理和內(nèi)存讀/寫操作,大大加快操作速度。
但是我們也需要好好反思如何在芯片上或者在芯片之間遷移(或不遷移)數(shù)據(jù)。畢竟,無(wú)論是用于邊緣計(jì)算還是數(shù)據(jù)中心,訓(xùn)練還是推斷,需要加以處理和存儲(chǔ)的數(shù)據(jù)量都是最大的。
新起點(diǎn)
從好的方面來說,通過使用更多更低精度的元素,人工智能提供了一種平衡結(jié)果精度與準(zhǔn)度的方法。比如,語(yǔ)音識(shí)別對(duì)精度的要求,遠(yuǎn)沒有自動(dòng)駕駛中安全應(yīng)用與目標(biāo)識(shí)別嚴(yán)苛。根據(jù)特定需要而展現(xiàn)的自適應(yīng)能力,才是人工智能的價(jià)值所在。
與其說人工智能的起點(diǎn)是硬件和軟件,不如說是數(shù)據(jù)的質(zhì)量、數(shù)量和遷移。這需要用一種不同的方式來看待設(shè)計(jì),包括過去通常沒有合作的團(tuán)隊(duì)之間的協(xié)作。
「計(jì)算真的很便宜,壓縮/解壓數(shù)據(jù)也很便宜,但在內(nèi)存中存儲(chǔ)和加載數(shù)據(jù)卻一點(diǎn)不便宜。要構(gòu)建這些系統(tǒng),需要特定領(lǐng)域的專家、機(jī)器學(xué)習(xí)專家、優(yōu)化與性能專家,這三個(gè)領(lǐng)域的專家都需要?!笰rm 研究員杰姆•戴維斯(Jem Davies)表示。
他指出,機(jī)器學(xué)習(xí)可以影響系統(tǒng)中的所有東西,其中很多東西隱藏在視線之外?!赣行┦怯脩艨床灰姷模勾骶S斯說,「它被用來延長(zhǎng)電池壽命。相機(jī)里也有機(jī)器學(xué)習(xí)?!?/p>
采用神經(jīng)形態(tài)計(jì)算和不同的內(nèi)存架構(gòu),AI 效果最好,因?yàn)樵谶@些情況下,數(shù)據(jù)可以進(jìn)行矩陣處理。為達(dá)到最優(yōu)工作狀態(tài),除了對(duì)處理器有要求外,還需要良好的系統(tǒng)架構(gòu)、超大的數(shù)據(jù)吞吐量及內(nèi)存變化過程中的數(shù)據(jù)對(duì)齊。
「許多架構(gòu)改進(jìn)是軟硬件的結(jié)合,雖然不一定會(huì)提高單個(gè)處理器的整體性能,但會(huì)更節(jié)能,內(nèi)存效率也更高??s小一點(diǎn),內(nèi)存大小就能減半?!圭H騰電子(Cadence)音頻和語(yǔ)音 IP 產(chǎn)品市場(chǎng)總監(jiān) Gerard Andrews 表示。
實(shí)際上,這使得軟件設(shè)計(jì)密度更高,并加速了數(shù)據(jù)在內(nèi)存中的移動(dòng)。「問題是,內(nèi)存不會(huì)有效地收縮,單詞識(shí)別的錯(cuò)誤率正在上升,我們都在探索算法的稀疏性,以降低功耗、提高性能?!笰ndrews 說。
這僅僅是快速變革的皮毛。
「內(nèi)存子系統(tǒng)中發(fā)生的變化是不連續(xù)的、突然的。這一切與延遲和帶寬,以及如何滿足芯片內(nèi)外的龐大需求有關(guān)。由于需要大量數(shù)據(jù)管道,因此,我們開發(fā)了許多關(guān)于如何移動(dòng)數(shù)據(jù)的架構(gòu)。在此之前,你要考慮的是添加多少內(nèi)存,如何高效使用內(nèi)存。但是,現(xiàn)在要建造巨大的管道,較少地使用內(nèi)存?!笰chronix 的系統(tǒng)架構(gòu)師 Kent Orthner 說。
嘗試減少數(shù)據(jù)流量的新方法之一是脈沖神經(jīng)網(wǎng)絡(luò)。它們不是持續(xù)發(fā)射信號(hào),而是以類似大腦峰值的方式發(fā)射信號(hào)。
「脈沖神經(jīng)網(wǎng)絡(luò)是下一代神經(jīng)網(wǎng)絡(luò)。」BrainChip 營(yíng)銷和業(yè)務(wù)開發(fā)高級(jí)副總裁 Bob Beachler 說,「卷積使用線性代數(shù)。出現(xiàn)峰值時(shí),數(shù)據(jù)以尖峰的形式輸入。你可以通過尖峰進(jìn)行訓(xùn)練,如果有很多尖峰,可以選擇加強(qiáng)或抑制它們。對(duì)于專用于訓(xùn)練閾值的位,你可以用非常低的權(quán)重來做到這一點(diǎn)?!?/p>
據(jù)估計(jì),約有 70 家人工智能初創(chuàng)公司正在研究不同辦法。最重要的是,幾乎所有主要的芯片制造商、IP(知識(shí)產(chǎn)權(quán))供應(yīng)商和工具公司都有涉足 AI 的某個(gè)方面。
人工智能的風(fēng)險(xiǎn)和困惑
但是,人工智能也存在一定的風(fēng)險(xiǎn),這取決于應(yīng)用程序和精確度。
過去,電子系統(tǒng)的設(shè)計(jì)是建立在完全可預(yù)測(cè)性的邏輯之上的,其中大部分是硬連線。人工智能用可接受行為的分布代替了計(jì)算精度,人們也在會(huì)議上討論這對(duì)芯片設(shè)計(jì)意味著什么。目前尚不清楚的是,現(xiàn)有工具或方法提供的置信度能否滿足設(shè)備需求,特別是在系統(tǒng)遭到破壞或退化的情況下,檢測(cè)任何異常行為的速度如何。
對(duì)于如何應(yīng)用人工智能,人們也有一定困惑。有專門為人工智能設(shè)計(jì)的芯片,以及一些不是專門為 AI 開發(fā)但可用于 AI 的芯片,對(duì)這些芯片進(jìn)行修改和疊加后,就能更有效地利用人工智能。
總的來說,這符合人工智能的主題,全行業(yè)都在爭(zhēng)相以相同或更低功率來提升性能。根據(jù)摩爾定律,在 16/14 納米工藝后,每個(gè)節(jié)點(diǎn)的能耗和性能的提高比例都下降到 20%,因此,大家都在尋找替代或補(bǔ)充的新方法。
對(duì)于針對(duì) AI 訓(xùn)練或推理的芯片,或者芯片中發(fā)揮 AI 能力的處理器和加速器,人們的普遍共識(shí)是,不同量級(jí)的程序指令可能使用不同的芯片架構(gòu)。但它不適用于所有情況,還有一些變量,比如訓(xùn)練數(shù)據(jù)的大小和價(jià)值,它們可能會(huì)使 AI 在某些應(yīng)用程序中失效,而在其他情況下,性能提升 100 倍甚至被認(rèn)為過于保守。
這就是人們要花很長(zhǎng)時(shí)間才能把一些新架構(gòu)推向市場(chǎng)的原因。隨著芯片行業(yè)初見端倪,人們也在進(jìn)行大量的架構(gòu)探索和實(shí)驗(yàn)。
「應(yīng)用程序和算法都面臨挑戰(zhàn),處理器和內(nèi)存芯片也面臨挑戰(zhàn)?!筍ynopsy 的戰(zhàn)略營(yíng)銷經(jīng)理 Ron Lowman 說:
「這使得對(duì) AI 架構(gòu)的探索變得更加重要,這也是 CCIX(緩存一致性互聯(lián)加速器)變得如此流行的原因之一。探索新架構(gòu)的客戶越來越多。每個(gè)人都在嘗試建立人腦仿生的新架構(gòu)。
除此之外,有一些新的非易失性存儲(chǔ)器技術(shù)正在開發(fā)中。還有一種趨勢(shì)是,將更小的處理器置于較小的存儲(chǔ)器旁邊,有時(shí),這種處理器會(huì)與針對(duì)不同數(shù)據(jù)類型、定制的新型加速器相關(guān)聯(lián)。另外,還有很多關(guān)于數(shù)據(jù)壓縮和量化的工作。
「人們正在研究從 32 位浮點(diǎn)數(shù)到 8 位浮點(diǎn)數(shù),」Lowman 說,「現(xiàn)在的問題是,你是否能精確到單比特量化?!?/p>
量化涉及到將一大組輸入值映射到一小組輸出值,最大的問題是,什么是可接受的精度損失。
理論上,有了足夠傳感器或數(shù)據(jù)輸入,就可將錯(cuò)誤率的影響降到最低,但這非常依賴于應(yīng)用程序。
沿著這些思路的另一種方法涉及到源代碼同步,特別是針對(duì)數(shù)據(jù)中心的 AI 芯片,促使芯片的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)發(fā)生變化。網(wǎng)絡(luò)中的所有目標(biāo)都是接收相同的數(shù)據(jù),較之廣播,使用多播方法能更好地針對(duì)性使用數(shù)據(jù)。
「通過多播,可以向多個(gè)目的地發(fā)送一封郵件。」Arteris IP 的營(yíng)銷副總裁 Kurt Shuler 說,「它通常被用來做權(quán)重。好處是,你可以更好地利用片上網(wǎng)絡(luò)帶寬,因此路上的車也越來越少了。
AI 芯片有一個(gè)問題:它們往往非常大。「最大的問題是時(shí)鐘樹,」Shuler 說,「這需要同步通信,異步處理通信會(huì)占用很多空間。另外,大型芯片更容易出現(xiàn)路由堵塞。解決這個(gè)問題的方法是創(chuàng)建虛擬通道連接,減少線路數(shù)量并通過一組線路共享通信。這就需要通過仲裁來匹配數(shù)據(jù)流。」
計(jì)劃性淘汰
這只是設(shè)計(jì)的一部分。另一方面,還要保持算法的時(shí)效性。
目前,深度學(xué)習(xí)算法還在定期更新,這會(huì)影響到 AI 芯片添加何種處理器。每一次變化,都可能對(duì)芯片內(nèi)部數(shù)據(jù)遷移、以及處理這些數(shù)據(jù)的處理器造成影響。
CPU 和 GPU 具有軟件可編程性,DSP 和 FPGA 具有固件/硬件可編程性。嵌入式 FPGA 將可編程性直接添加到 SoC 或多芯片包中。
處理器的選擇也取決于終端市場(chǎng)的應(yīng)用。例如,汽車或工業(yè)環(huán)境中的重要安全應(yīng)用,也需要有足夠通用性與反應(yīng)性,以便與其他車輛或設(shè)備兼容。
「當(dāng)我們討論未來時(shí),問題不在于它是否有效?!筫Silicon 的創(chuàng)新高級(jí)主管 Carlos Macián 說,「TPU(張量處理單元)是一個(gè)開拓者,它表明性能可以得到數(shù)量級(jí)提高。但是對(duì)于新的工作負(fù)載,如果沒有 ASIC 的優(yōu)化,你可能只會(huì)提高 3 倍?!?/p>
前提是,假設(shè)數(shù)據(jù)是干凈、有用的,這也是情況變得復(fù)雜的地方。
「AI 非常適用于處理非結(jié)構(gòu)化的數(shù)據(jù),」Macián 說,「如果你給出現(xiàn)在 Facebook 上的人打標(biāo)簽,你就知道這很適合人工智能。但它不是結(jié)構(gòu)化數(shù)據(jù)。所以,AI 天生就不準(zhǔn)確,有時(shí)它還是錯(cuò)的?!?/p>
并非所有事情都要面向未來。在一些市場(chǎng),比如手機(jī),消費(fèi)者希望每隔幾年就更換一次手機(jī)。在其他市場(chǎng),電子產(chǎn)品被寄予厚望——全部的功能能夠順暢運(yùn)行二十年之久。
提高數(shù)據(jù)質(zhì)量是有幫助的,這有助于解釋算法為何變化如此之快,也有助于解釋為什么對(duì)于一些設(shè)備而言,現(xiàn)場(chǎng)升級(jí)的能力至關(guān)重要。但是,這些變化也會(huì)影響性能,如果不在硬件中添加一些可編程性,就無(wú)法解釋這些變化。問題是,可編程性有多高,因?yàn)榭删幊踢壿嬅黠@慢于(軟件)已調(diào)優(yōu)的硬件。
結(jié)論
與其他許多成長(zhǎng)型半導(dǎo)體市場(chǎng)不同,AI 是一種橫向技術(shù),可以應(yīng)用于各種垂直市場(chǎng),也可以用來為這些市場(chǎng)開發(fā)芯片,還可以用來提高現(xiàn)有芯片的效率。
這只是 AI 革命的開始,但其影響已經(jīng)很大了。
隨著設(shè)計(jì)團(tuán)隊(duì)越來越精通這項(xiàng)技術(shù),這將對(duì)如何設(shè)計(jì)芯片、以及這些芯片如何與其他芯片交互產(chǎn)生重大影響,也會(huì)給工具開發(fā)人員、硬件開發(fā)人員、軟件開發(fā)人員創(chuàng)造新的機(jī)會(huì),也可能帶來一個(gè)全新的市場(chǎng)。