作者 | 郭昕婕、王紹迪
來源 | 《微納電子與智能制造》期刊
摘 要:現代電子設備朝著智能化、輕量化 、便攜化快速發展 ,但是智能大數據處理挑戰與馮 · 諾依曼計算架構瓶頸成爲 當前電子信息領域的關鍵矛盾之一;同時,器件尺寸微縮(摩爾定律失效)帶來的功耗與可靠性問題進一步加劇了該矛盾 的快速惡化。近年來以數據爲中心的新型計算架構 ,例如存算一體芯片技術 ,受到人們的廣泛關注 ,尤其在端側智能場景。但是 ,基于端側設備在資源 、時延、成本、功耗等諸多因素的考慮 ,業界對存算一體芯片提出了苛刻的要求。因此, 存算一體介質與計算範式尤爲重要。同時,器件—芯片—算法—應用跨層協同對存算一體芯片的産業化應用與生態構建非常關鍵。概述了端側智能存算一體芯片的需求 、現狀 、主流方向 、應用前景與挑戰等。
引言
自第四次信息革命以來 ,現代電子設備朝著智 能化 、輕量化 、便攜化快速發展。尤其近年來 ,隨著 以深度學習神經網絡爲代表的人工智能算法的深入 研究與普及 ,智能電子設備與相關應用場景已隨處 可見 ,例如人臉識別 、語音識別 、智能家居 、安防監 控 、無人駕駛等。同時 ,隨著 5G 通信與物聯網 (internet of things,IoT)技術的成熟,可以預見,智能 萬物互聯(artificial intelligent internet of things,AIoT) 時代即將來臨。
如圖 1 所示 ,在未來 AIoT 場景中 ,設備 將 主 要 分 爲 3 類 :雲 端 、邊 緣 端 與 終 端 [ 1 ] ,其 中 邊 緣 終端設備將呈現爆發式增長。衆所周知 ,人工智能 的 3 大要素是算力 、數據與算法。互聯網與 5G 通信 的應用普及解決了大數據問題 ,深度學習神經網絡 的快速發展解決了算法問題 ,英偉達 GPU/谷歌 TPU 等高性能硬件的大規模産業化解決了雲端算力問 題。但是 ,資源受限的邊緣終端設備的算力問題目 前仍然是缺失的一環 ,且因其對時延 、功耗 、成本 、安 全 性 等 特 殊 要 求( 尤 其 考 慮 細 分 場 景 的 特 殊 需 求 ),將 成爲 AIoT 大規模産業化應用的核心關鍵。因此 ,在 通往 AIoT 的道路上 ,需要解決的核心挑戰是高能效、低成本和長待機的端側智能芯片 。
馮·諾依曼計算架構瓶頸與大數據智能處理挑戰
隨著大數據、物聯網、人工智能等應用的快速興 起 ,數據以爆發式的速度快速增長。相關研究報告 指出 ,全世界每天産生的數據量約爲 2.5 × 1018 字節,且該體量仍然以每 40 個月翻倍的速度在持續增 長[2]。海量數據的高效存儲、遷移與處理成爲當前電 子信息領域的重大挑戰之一。但是 ,受限于經典的 馮 · 諾依曼計算架構[3-4] ,數據存儲與處理是分離的 , 存儲器與處理器之間通過數據總線進行數據傳輸, 如圖 2(a)所示。在面向大數據分析等應用場景中 , 這種計算架構已成爲高性能低功耗計算系統的主要瓶頸之一。一方面 ,數據總線的有限帶寬嚴重制約 了處理器的性能與效率 ,同時 ,存儲器與處理器之間 存在嚴重性能不匹配問題 ,如圖 2(b)所示。
不管處理器運行的多快 、性能多好 ,數據依然存儲在存儲器 裏 ,每次執行運算時 ,需要把數據從存儲器經過數據 總線搬移到處理器當中 ,數據處理完之後再搬回到 存儲器當中。這就好比一個沙漏 ,沙漏兩端分別代 表存儲器和處理器 ,沙子代表數據 ,連接沙漏兩端的 狹窄通道代表數據總線。因此 ,存儲器的帶寬在很 大程度上限制了處理器的性能發揮 ,這稱爲存儲牆 挑戰。
與此同時 ,摩爾定律正逐漸失效 ,依靠器件尺 寸微縮來繼續提高芯片性能的技術路徑在功耗與可 靠性方面都面臨巨大挑戰。因此 ,傳統馮 · 諾依曼計算架構難以滿足智能大數據應用場景快 、准 、智的響 應需求。另一方面 ,數據在存儲器與處理器之間的 頻繁遷移帶來嚴重的傳輸功耗問題 ,稱爲功耗牆挑 戰。英偉達的研究報告指出 ,數據遷移所需的功耗 甚至遠大于實際數據處理的功耗。例如 ,相關研究 報告指出 ,在 22 nm 工藝節點下 ,1 bit 浮點運算所需 要的數據傳輸功耗是數據處理功耗的約 200 倍[5] 。在電子信息領域 ,存儲牆與功耗牆問題並稱爲馮 · 諾 依曼計算架構瓶頸。
因此 ,智能大數據處理的挑戰 實質是由硬件設施的處理能力與所處理問題的數據 規模之間的矛盾引起的。構建高效的硬件設施與計 算架構 ,尤其是在資源受限的 AIoT 邊緣終端設備 , 來應對智能大數據應用背景下的馮 · 諾依曼計算架 構瓶頸具有重要的科學意義與應用前景 。
爲了打破馮 · 諾依曼計算架構瓶頸 ,降低數據搬 移帶來的開銷 ,一種最直接的做法是增加數據總線 帶寬或者時鍾頻率 ,但必將帶來更大的功耗與硬件 成本開銷,且其擴展性也嚴重受限。目前業界采用 的主流方案是通過高速接口 、光互聯 、3D 堆疊 、增加片上緩存等方式來實現高速高帶寬數據通信 ,同時使存儲器盡量靠近處理器,減小數據傳輸的距離。光互聯技術還處于研發中試階段,而3D堆疊技術與增加片上緩存等方法已經廣泛用于實際産品當中。
國內外很多高校與企業都在研發與應用這種技術,如谷歌、英特爾、AMD、英偉達、寒武紀科技等。例如,利用3D堆疊技術,在處理器芯片上集成大容量內存 ,可以把數據帶寬從幾十 GB/s 提升到幾百 GB/s;基 于 3D 堆疊 DRAM 技術 ,IBM 于 2015 年發布了一款面 向百億億次超級計算系統[6] ;英國 Graphcore 公司在芯 片産品上集成了 200~400MB 的片上緩存 ,來提高性能。
值得注意的是,上述方案不可避免地會帶來功耗 與成本開銷 ,難以應用于邊緣終端能耗與成本均受限 的 AIoT 設備 ,且其並沒有改變數據存儲與數據處理分離的問題,因此只能在一定程度上緩解,但是並不能從根本上解決馮·諾依曼計算架構瓶頸。
存算一體基本原理與國內外發展現狀
存算一體芯片技術,旨在把傳統以計算爲中心的架構轉變爲以數據爲中心的架構,其直接利用存儲器進行數據處理 ,從而把數據存儲與計算融合在 同一個芯片當中 ,可以徹底消除馮 · 諾依曼計算架構 瓶頸,特別適用于深度學習神經網絡這種大數據量 大規模並行的應用場景。需要說明的是 ,目前在學 術界和産業界有不少類似的英文概念,例如 Computing-in-Memory、In-Memory-Computing、Logic- in- Memory 、In- Memory- Processing 、Processing- in- Memory等,而且不同研究領域(器件、電路、體系架 構、數據庫軟件等)的稱呼也不統一,相應的中文翻 譯也不盡相同 ,例如內存處理 、存內處理 、內存計算 、 存算融合 、存內計算 、存算一體等。此外 ,在廣義上 , 近存計算也被歸納爲存算一體的技術路徑之一 。
存算一體的基本概念最早可以追溯到 20 世紀 70 年代,斯坦福研究所的Kautz等[7-8]最早于1969年就 提出了存算一體計算機的概念。後續相當多的研究 工作在芯片電路 、計算架構 、操作系統 、系統應用等 層面展開。例如 ,加州大學伯克利分校的 Patterson 等[9]成功把處理器集成在DRAM內存芯片當中,實現 一種智能存算一體計算架構。但是受限于芯片設計 複雜度與制造成本問題,以及缺少殺手級大數據應 用進行驅動 ,早期的存算一體僅僅停留在研究階段, 並未得到實際應用。
近年來 ,隨著數據量不斷增大 以及內存芯片技術的提高,存算一體的概念重新得 到人們的關注 ,並開始應用于商業級 DRAM 主存當 中。尤其在 2015 年左右 ,隨著物聯網 、人工智能等大 數據應用的興起 ,存算一體技術得到國內外學術界 與産業界的廣泛研究與應用。在 2017 年微處理器頂 級年會(Micro 2017)上 ,包括英偉達 、英特爾 、微軟 、 三星、蘇黎世聯邦理工學院與加州大學聖塔芭芭拉 分校等都推出了存算一體系統原型[10-12]。
尤其是 ,近年來非易失性存儲器技術 ,例如閃存 (Flash)、憶阻器(阻變存儲器 RRAM)、相變存儲器 (PCM)與自旋磁存儲器(MRAM)等[13-17] ,爲存算一體芯片的高效實施帶來了新的曙光。這些非易失性存 儲器的電阻式存儲原理可以提供固有的計算能力, 因此可以在同一個物理單元地址同時集成數據存儲 與數據處理功能。此外 ,非易失性可以讓數據直接 存儲在片上系統中 ,實現即時開機/關機 ,而不需要 額外的片外存儲器。惠普實驗室的 Williams 教授團隊[18]在 2010 年就提出並驗證利用憶阻器實現簡單布 爾邏輯功能。
隨後 ,一大批相關研究工作不斷湧 現。2016年,美國加州大學聖塔芭芭拉分校(UCSB) 的謝源教授團隊提出利用 RRAM 構建基于存算一體 架構的深度學習神經網絡(PRIME[19] ),受到業界的 廣泛關注。測試結果表明,相比基于馮·諾依曼計算 架構的傳統方案 ,PRIME 可以實現功耗降低約 20 倍、速度提高約50倍[20]。這種方案可以高效地實現 向量-矩陣乘法運算,在深度學習神經網絡加速器領 域具有巨大的應用前景。國際上杜克大學 、普渡大 學 、斯坦福大學 、馬薩諸塞大學 、新加坡南洋理工大 學 、惠普 、英特爾 、鎂光等都開展了相關研究工作 ,並 發布了相關測試芯片原型[21-24]。
我國在這方面的研 究也取得了一系列創新成果,如北京大學黃如教授 與康晉鋒教授團隊 、中國科學院微電子研究所劉明 教授團隊 、清華大學楊華中教授與吳華強教授團隊、 中國科學院上海微系統與信息技術研究所宋志棠教 授團隊、華中科技大學缪向水教授團隊等,都發布了 相關器件/芯片原型 ,並通過圖像/語音識別等應用進 行了測試驗證[25-27]。PCM 具有與 RRAM 類似的多比 特特性 ,可以基于類似的原理實現向量-矩陣乘法運 算。對于 MRAM 而言 ,由于其二值存儲物理特性 , 難以實現基于交叉點陣列的向量-矩陣乘法運算 ,因 此基于 MRAM 的存算一體通常采用布爾邏輯的計算 範式[28-30]。但由于技術/工藝的成熟度等問題 ,迄今基于相變存儲器 、阻變存儲器與自旋存儲器的存算一體 芯片尚未實現産業化。
與此同時 ,基于 Nor Flash 的存 算一體芯片技術近期受到産業界的格外關注 ,自 2016 年UCSB發布第一個樣片以來,多家初創企業在進行 研發,例如美國的Mythic、Syntiant,國內的知存科技 等 ,並受到國內外主流半導體企業與資本的産業投 資 ,包 括 Lam Research 、Applied Materials 、Intel 、 Micron 、ARM 、Bosch 、Amazon 、Microsoft 、Softbank 、 Walden 、中芯國際等。相比較而言 ,Nor Flash 在技術/ 工藝成熟度與成本方面在端側AIoT領域具有優勢,3 大公司均宣布在 2019 年末實現量産。
端側智能應用特征與存算一體芯片需求
隨著 AIoT 的快速發展 ,用戶對時延 、帶寬 、功耗、隱私/安全性等特殊應用需求,如圖3(a)所示,驅 動邊緣端側智能應用場景的爆發。首先 ,時延是用 戶體驗最直觀的感受 ,而且是某些應用場景的必需 要求 ,例如自動駕駛 、實時交互遊戲 、增強現實/虛擬 現實技術(AR/VR)等。考慮到實時産生的數據量、 實際傳輸帶寬以及端側設備的能耗 ,不可能所有運 算都依賴雲端來完成。例如 ,根據英特爾的估計 ,每輛自動駕駛汽車每天産生的數據量高達400GB[1];再如 ,每個高清安防監控攝像頭每天産生的數據量高 達 40~200GB。如果所有車輛甚至所有攝像頭産生 的數據都發送到雲端進行處理 ,那不僅僅是用戶體 驗 ,即使對傳輸網絡與雲端設備都將是一個災難 。而且,通常邊緣數據的半衰期都比較低,如此巨大的 數據量 ,實際上真正有意義的數據可能非常少 ,所以 並沒有意義把全部數據發送到雲端去處理。
此外,同類設備産生的大部分數據通常具有極高的相同模 式化特征 ,借助邊緣端/終端有限的處理能力 ,即可 以過濾掉大部分無用數據 ,從而大幅度提高用戶體 驗與開銷。增強用戶體驗的另一個參數是待機時 間 ,這對便攜式可穿戴設備尤爲關鍵。例如智能眼鏡與耳機,至少要保證滿負荷待機時間在1天以上。因此終端設備的功耗/能效是一個極大的挑戰。
其 次 ,用戶對隱私/安全性要求越來越高 ,並不願意把 數據送到雲端處理 ,促使本地處理成爲終端設備的 必備能力。例如,隨著語音識別、人臉識別應用的普 及 ,越來越多的人開始關心隱私泄露的問題 ,即使智 能家居已經普及 ,但很多用戶選擇關閉語音處理功 能。最後,在無網環境場景下,邊緣終端處理將成爲 必需。相應地,不同于雲端芯片,對于端側智能芯 片 ,其對成本 、功耗的要求最高,而對通用性、算力 、 速度的要求次之,如圖(3 b)所示。
因此,依靠器件尺 寸微縮來繼續提高芯片性能的傳統技術路徑在功耗 與成本方面都面臨巨大挑戰;而依賴器件與架構創 新的技術路徑越來越受重視。2018 年 ,美國 DARPA “電子複興計劃”明確提出不再依賴摩爾定律的等比 例微縮道路 ,旨在尋求超越傳統馮 · 諾依曼計算架構 的創新 ,利用新材料 、新器件特性和集成技術 ,減少 數據處理電路中移動數據的需求 ,研究新的計算拓 撲架構用于數據存儲與處理 ,帶來計算性能的顯著 提高。業界普遍認爲 ,存算一體芯片技術將爲實現此目標提供可行的技術路徑 。
存算一體芯片主流研究方向
根據存儲器介質的不同 ,目前存算一體芯片的 主流研發集中在傳統易失性存儲器 ,如 SRAM、DRAM,以及非易失性存儲器 ,如 RRAM、PCM、 MRAM 與閃存等 ,其中比較成熟的是以 SRAM 和 MRAM 爲代表的通用近存計算架構。值得注意的 是 ,本章將主要討論基于存算一體芯片的深度學習 神經網絡加速器實現。在此類應用中 ,95%以上的運算爲向量矩陣乘法( MAC ),因此存算一體主要用來加速這部分運算。
4.1 通用近存計算架構
如圖 4 所示 ,這種方案通常采用同構衆核的架 構 ,每個存儲計算核(MPU)包含計算引擎(processing engine,PE)、緩存(cache)、控制(CTRL) 與輸入輸出(inout/output,I/O)等,這裏緩存可以是SRAM、MRAM 或類似的高速隨機存儲器。各個 MPU 之間通過片上網絡(network-on-chip ,NoC)進行 連接。每個 MPU 訪問各自的緩存 ,可以實現高性能 並行運算。典型案例包括英國 Graphcore 公司 ,其測 試芯片集成了 200~400MB 的 SRAM 緩存以及美國 Gyrfalcon Technology 公司 ,其測試芯片集成了 40MB嵌入式MRAM緩存。
4.2 SRAM 存算一體
由于 SRAM 是二值存儲器 ,二值 MAC 運算等效于 XNOR 累加運算 ,可以用于二值神經網 絡運算。圖 5(a)和圖 5(b)爲兩種典型設計方 案 ,其核心思想是把網絡權重存儲于 SRAM 單元中 ,激勵信號從額外字線給入 ,最終利用外圍 電路實現 XNOR 累加運算 ,計算結果通過計數 器或模擬電流輸出 ,具體實現可以參考[31-32] 。這 種方案的主要難點是實現大陣列運算的同時保 證運算精度。
4.3 DRAM存算一體
基于 DRAM 的存算一體設計主要利用 DRAM 單元之間的電荷共享機制[33-34]。如圖 6 所示爲一種典型 實現方案[33] ,當多行單元同時被選通時 ,不同單元之 間因爲存儲數據的不同會産生電荷交換共享 ,從而實現邏輯運算。這種方案的問題之一是計算操作對 數據是破壞性的 ,即每次執行運算時 ,DRAM 存儲單元存儲的數據會破壞 ,需要每次運算後進行刷新 ,帶 來較大的功耗問題;另一個難點是實現大陣列運算的同時保證運算精度 。
4.4 RRAM/PCM/Flash 多值存算一體
基于 RRAM/PCM/Flash 的多值存算一體方案的基本原理是利用存儲單元的多值特性 ,通過器件本 征的物理電氣行爲(例如基爾霍夫定律與歐姆定律)來實現多值 MAC 運算[13,21-25] ,如圖 7 所示。每個存儲 單元可以看作一個可變電導/電阻 ,用來存儲網絡權 重,當在每一行施加電流/電壓(激勵)時,每一列即 可得到 MAC 運算的電壓/電流值。實際芯片中 ,根 據不同存儲介質的物理原理和操作方法的不同 ,具 體實現方式會有差異 。
由于 RRAM/PCM/Flash 本身是非易失性存儲器 , 可以直接存儲網絡權重 ,因此不需要片外存儲器 ,減 小芯片成本;同時,非易失性可以保證數據掉電不丟 失 ,從而實現即時開機/關機操作 ,減小靜態功耗 ,延 長待機時間,非常適用于功耗受限的邊緣終端設 備。目前 ,基于 RRAM/PCM 的存算一體技術在學術 界是非常熱的一個研究方向 ,遺憾的是 ,因爲RRAM/PCM 成熟度等問題 ,目前尚未實現産業化 , 但未來具有非常大的潛力;基于 Flash 的存算一體技 術相對較成熟 ,受到産業界廣泛關注 ,預計于 2019 年末量産。
4.5 RRAM/PCM/MRAM 二值存算一體
基于 RRAM/PCM/MRAM 的二值存算一體主要有兩種方案。第一種方案是利用輔助外圍電路,跟上述SRAM 存算一體類似 ,如圖 8(a)所示爲一種典 型的可重構存算一體實現方案[35] ,其可以在存儲應 用與存算一體應用之間進行切換。由于 RRAM/ PCM/MRAM 非易失性電阻式存儲原理 ,其具有不同 的電路實現方式 ,具體參考[35-37]。第二種方案是直接 利用存儲單元實現布爾邏輯計算[28,38-41] ,如圖 8(b)所 示 ,這種方案直接利用存儲單元的輸入輸出操作進 行邏輯運算,根據不同存儲器存儲單元的結構與操作方法不同 ,可以有不同的實現方式 ,具體可以參 考[28,38-41] 。
應用前景與挑戰
存算一體芯片技術,尤其是非易失性存算一體 芯片技術 ,因其高算力 、低功耗 、低成本等優勢 ,未來 在 AIoT 領域具有非常大的應用前景。存算一體芯 片 大 規 模 産 業 化 的 挑 戰 主 要 來 自 兩 方 面 :
(1 )技 術 層 面:存算一體芯片涉及器件—芯片—算法—應用等多 層次的跨層協同 ,如圖 9 所示。例如 ,細分應用場景的不同性能需求決定了神經網絡算法與芯片的設 計 ,算法依賴神經網絡框架 、編譯 、驅動 、映射等工具 與芯片架構的協同,芯片架構又依賴器件、電路與代 工廠工藝。這些對存算一體芯片的研發與制備都是 相當大的一個挑戰 ,尤其需要代工廠的支持。特別 是基于新型存儲介質的存算一體技術 ,器件物理原 理 、行爲特性 、集成工藝都不盡相同 ,需要跨層協同 來 實 現 性 能( 精 度 、功 耗 、時 延 等 )與 成 本 的 最 優 。
(2 ) 産業生態層面:作爲一種新興技術,想要得到大規模 普及 ,離不開産業生態的建設 ,需要得到芯片廠商 、 軟件工具廠商 、應用集成廠商等的大力協同 、研發 、 推廣與應用 ,實現性能與場景結合與落地 ,尤其在面 對傳統芯片已經占據目前大部分已有應用場景的前 提下 ,如何突破新市場 、吸引新用戶是快速産業化落地的關鍵。英偉達GPU的成功給出了很好的啓示與 借鑒。一方面需要優化工具與服務 ,方便用戶使用; 另一方面需要盡量避免競爭 ,基于存算一體芯片的 優勢 ,開拓新應用 、新場景 、新市場 ,創造傳統芯片無 法覆蓋的新型應用市場。
郭昕婕, 王紹迪. 端側智能存算一體芯片概述[J]. 微納電子與智能制造, 2019, 1(2): 72-82.
GUO Xinjie, WANG Shaodi. Continuous perception integrated circuits and systems for edge-computing smart devices[J]. Micro/nano Electronics and Intelligent Manufacturing, 2019, 1 (2): 72-82.
《微納電子與智能制造》刊號:CN10-1594/TN
主管單位:北京電子控股有限責任公司
主辦單位:北京市電子科技科技情報研究所
北京方略信息科技有限公司
【end】
《原力計劃【第二季】- 學習力挑戰》正式開始!
即日起至 3月21日,千萬流量支持原創作者更有專屬【勳章】等你來挑戰
-
機器學習新聞綜述:2019年AI領域不得不看的6篇文章
-
超30億人臉數據被泄露,美國AI公司遭科技巨頭聯合“封殺”
-
4600萬英鎊的“比特幣魚竿”!愛爾蘭毒販遺失藏有巨額比特幣密鑰的漁具
-
Rust 編譯模型之殇
-
狂賺 1200 億,差點收購蘋果,影響千萬程序員,那個叫做太陽的公司卻隕落了!
-
兩成開發者月薪超 1.7 萬、算法工程師最緊缺! | 中國開發者年度報告