国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于3D-NAND 的神經形態(tài)計算

2022-11-14 08:06陳陽洋何毓輝繆向水楊道虹
物理學報 2022年21期
關鍵詞:器件神經元權重

陳陽洋 何毓輝 繆向水 楊道虹?

1)(華中科技大學,博士后流動站,武漢 430074)

2)(武漢新芯集成電路制造有限公司,博士后工作站,武漢 430205)

3)(江城實驗室,武漢 430205)

4)(華中科技大學集成電路學院,武漢 430074)

神經形態(tài)芯片是一種新興的AI 芯片.神經形態(tài)芯片基于非馮·諾依曼架構,模擬人腦的結構和工作方式,相比馮·諾依曼架構的AI 芯片,神經形態(tài)芯片在效率和能耗上有顯著的優(yōu)勢.3D-NAND 閃存工藝成熟并且存儲密度極高,基于3D-NAND 的神經形態(tài)芯片受到許多研究者的關注.然而由于該技術的專利性質,少有基于3D-NAND 神經形態(tài)計算的硬件實現(xiàn).本文綜述了用3D-NAND 實現(xiàn)神經形態(tài)計算的工作,介紹了其中前向傳播和反向傳播的機制,并提出了目前3D NAND 在器件、結構和架構上需要的改進以適用于未來的神經形態(tài)計算.

1 研究背景

1.1 神經形態(tài)計算是未來通用人工智能的重要路徑

數據、算法和算力是人工智能(artificial intelligence,AI)的三大要素,未來AI 的發(fā)展將面臨算力不足的瓶頸(如圖1 所示[1]).一方面,云端計算中的通用AI 模型性能強大,但參數龐大,通常采用CPU/GPU 硬件平臺進行訓練,訓練成本高昂且難以普及.另一方面,隨著5G、物聯(lián)網與工業(yè)4.0 的發(fā)展,越來越多的AI 應用在邊緣端設備中設計和部署,需要定制化AI 芯片滿足功耗和成本限制下的計算需求,例如阿里的“含光”、華為的“昇騰”和寒武紀的“思源”等.通用CPU/GPU 以及AI 加速芯片,均基于傳統(tǒng)的馮·諾依曼計算架構,計算和存儲單元分離,“馮·諾依曼瓶頸”不可避免(如圖2 所示[2-4]): 第一,數據在計算和存儲單元之間不停來回傳輸,消耗大部分的計算時間和功耗;第二,處理器和存儲器之間運算速度的明顯差異限制了整體系統(tǒng)的計算效率.面對這一問題,存儲和計算融合是未來的發(fā)展趨勢,新型的計算架構逐漸興起,其中包括近存計算(near-memory computing)、存內計算(in-memory computing)以及神經形態(tài)計算(neuromorphic computing).受人腦智能啟發(fā)的神經形態(tài)芯片引起了學術和工業(yè)界的極大興趣.

圖1 AI 模型訓練的算力需求和單芯片運算性能[1]Fig.1.Total amount of computing in AI training and single-core chip performance[1].

圖2 限制芯片性能提升的馮·諾依曼瓶頸[2-4]Fig.2.The von Neumann bottleneck limits chip performance promotion[2-4].

人腦在復雜和陌生場景下的學習、推理和決策能力遠超過傳統(tǒng)計算機.人腦有超過1011個神經元和1015個突觸,功耗只有20 W[5].神經形態(tài)芯片模擬人腦的結構和工作方式(如圖3 所示[6]): 在結構上,用互補金屬氧化物半導體(complementary metal-oxide-semiconductor,CMOS)或新型器件模擬神經元和突觸,并將神經網絡映射到突觸陣列中;在工作方式上,用基于權重模擬值計算的人工神經網絡(artificial neural network,ANN)或基于脈沖計算的脈沖神經網絡(spiking neural network,SNN)作為算法模型,輸入的事件用電壓脈沖編碼,經過突觸后轉化為電流輸入到后級神經元進行積分,后級神經元達到閾值電壓后便向下一級神經元發(fā)放電壓脈沖.相比馮·諾依曼架構芯片,神經形態(tài)芯片高并行、低功耗和存算融合的特性,有望成為未來通用AI 的理想硬件方案.

圖3 神經形態(tài)計算的原理與芯片架構[6]Fig.3.Neuromorphic computing architectures and paradigms[6].

1.2 基于存儲器的神經形態(tài)芯片

神經形態(tài)芯片根據實現(xiàn)的器件方案可分為基于傳統(tǒng)CMOS 的神經形態(tài)芯片和基于存儲器的神經形態(tài)芯片兩種類型.基于CMOS 的神經形態(tài)芯片代表性成果包括TrueNorth,SpiNNaker,Brain-ScaleS,Loihi,天機芯和達爾文等.這些芯片的突觸和神經元采用基于CMOS 的數字電路或者數?;旌想娐穪泶罱?模擬單個神經元或突觸行為需要靠多個CMOS 晶體管組成的電路模塊來實現(xiàn),集成度和功耗受到限制,并且斷電后信息無法保存.基于存儲器的神經形態(tài)芯片從底層器件仿生的角度出發(fā),用存儲器件模擬神經元和突觸,在功耗和硬件代價上有明顯的優(yōu)勢.近幾年,國內外研究機構展示了眾多基于存儲器的神經形態(tài)計算成果,硬件方案包括主流的閃存(NOR/NAND Flash),以及阻變存儲器(ReRAM)、相變存儲器(PCM)、自旋轉移矩磁存儲器(STT-MRAM)、鐵電存儲器(FeRAM)和鐵電晶體管存儲器(FeFET)等新型存儲器.這些存儲器的結構和工作原理如圖4 所示[7].表1 列出這幾類存儲器的性能指標,其中參數源于已有陣列或芯片實現(xiàn)的研究工作.

圖4 基于非易失存儲器的神經形態(tài)計算硬件方案[7](a)幾種作為突觸的非易失性存儲器件,其中包括PCM,ReRAM,STTMRAM,FeRAM 和FeFET;(b)突觸和神經元構成crossbar 陣列結構用于神經形態(tài)計算;(c)神經形態(tài)計算芯片的架構Fig.4.Use of non-volatile memory devices as synaptic storage[7]:(a)Non-volatile memory cell as artificial synapse including PCM,ReRAM,STT-MRAM,FeRAM,and FeFET;(b)the implementation of neuromorphic computation on crossbar array consists of artificial synapses and neurons;(c)typical architecture of the neuromorphic chip.

表1 幾種非易失性存儲器的性能參數Table 1. Benchmark table of performance of emerging memories and typical memories.

1.3 NAND 用于神經形態(tài)計算的優(yōu)點與局限性

突觸器件需要具有高集成度、低能耗、耐擦寫、CMOS 工藝兼容以及模擬權重調制的特性.其中模擬權重調制特性需要突觸有多個權重、并且權重對稱線性變化.從圖5 可以看到,新型存儲器ReRAM,PCM,STT-MRAM,FeRAM 和FeFET在讀寫速度、讀寫電壓、擦寫次數和功耗方面具有突出的優(yōu)勢.然而NAND/NOR Flash 的器件特性使得其在眾多硬件方案中有不可替代的優(yōu)勢: 1)ReRAM,PCM,FeRAM 等二端結構器件為了防止?jié)撔型?sneak path)的產生需要集成用于選通的晶體管,NAND/NOR 的基本存儲單元是三端的MOSFET,柵電極自帶選通功能,硬件代價小;2)NOR/NAND flash 工藝成熟,器件的閾值電壓分布穩(wěn)定,即權重的分布穩(wěn)定,并且單元之間的性能高度一致,適合高精度的數值運算;3)得益于NAND/NOR 存儲單元的柵控機制,即閾值電壓由器件單元俘獲層中俘獲電荷數量決定,通過增量步進脈沖寫入技術(incremental step pulse program,ISPP)可獲得穩(wěn)定的閾值電壓分布,權重(電導率)的模擬權重調制特性更容易實現(xiàn).

圖5 各種存儲器的性能參數對比(數據來源于表 1)Fig.5.Performance comparison of various memories(data was extracted from Table 1 and plotted into a radar diagram).

NOR 和NAND 的存儲單元分別為浮柵型閃存(floating gate flash,FGF)和電荷俘獲型閃存(charge trapping flash,CTF),二者均利用柵介質中的存儲電荷調控閾值電壓,主要區(qū)別在于電荷存儲層的材料、電荷俘獲機制和陣列的結構,如圖6所示.FGF 的浮柵層通常為摻雜的多晶硅,利用熱電子注入效應實現(xiàn)電荷的存儲: 在源、漏電極和柵、源電極之間施加高電壓,電子在溝道中被源漏電場加速后,被柵源之間的電場吸引,穿過隧穿氧化層注入到浮柵層中.CTF 的電荷俘獲層通常采用氮化硅材料,利用F-N 隧穿效應(Fowler-Nordheim tunneling)實現(xiàn)電荷的存儲: 源、漏接地,柵極施加高電壓,源極電子通過F-N 隧穿效應穿過隧穿氧化層進入浮柵.在陣列結構方面,NOR 的布局采用并行結構,每個存儲單元均有源線(source line,SL)和字線(word line,WL)引出,隨機讀寫的速度快,但過多的布線和較大的器件尺寸(10F2)使得其存儲密度難以進一步提升.相比之下NAND采用串行結構,每個存儲單元的源極無需單獨引線,因此具有更小的單元特征尺寸(4F2)和更高的存儲密度.利用三維集成技術,NAND 的存儲密度提高至TB 量級.2022 年5 月,國內廠商長江存儲量產的3D-NAND 已達到192 層,2022 年8 月SK Hynix 已宣布量產238 層3D-NAND,如此高的集成密度碾壓NOR 以及其他新型存儲器.

圖6 NOR 和NAND 的電路結構Fig.6.Circuit structure diagram of NOR flash and NAND flash.

NAND 的高存儲密度為神經形態(tài)計算提供了充足的硬件資源、更高的存儲密度,意味著芯片能分配更多的硬件資源用于映射更大規(guī)模、更多數量和種類的神經網絡,芯片性能也越強.然而3DNAND 的存儲單元,電荷俘獲型晶體管(transistor with charge trap layer,CTL)的擦寫次數不高(如表1 所示,次數<105),因此基于3D-NAND 的AI 芯片適用于權重更新不太頻繁的場景.

AI 系統(tǒng)通常涉及訓練(training)和推斷(inference)過程,訓練過程中需要輸入大量的樣本數據,并且根據輸出反饋不斷調節(jié)芯片中權重的分布直至輸出達到預期的精度,使芯片具備學習能力,這個過程涉及頻繁的權重更新.而推斷過程是在已訓練好的芯片上輸入新的數據,完成指定任務的過程,權重更新頻率低.因此,3D-NAND 芯片在執(zhí)行推斷任務的場景中,得益于其超高的存儲密度,相對其他種類的存儲器芯片具有顯著的優(yōu)勢.

2 基于3D-NAND 神經形態(tài)計算的研究進展

2.1 3D-NAND 的結構和突觸特性

隨著2D-NAND 工藝微縮到14 nm 節(jié)點,每個單元只能容納少量的電子,并且單元之間電子的串擾問題使得尺寸繼續(xù)微縮變得愈加困難且不夠經濟.在不降低工藝節(jié)點的前提下提高存儲密度和降低成本,3D-NAND 技術成為了必然的選擇.鎧俠(原東芝)、鎂光、海力士和旺宏均提出了各自的3D-NAND 技術方案,如圖7 所示[40].這些技術方案從3D 堆疊方式上可分為兩種: 一種是柵極堆疊(gate stack)結構,溝道為垂直方向;另一種是溝道堆疊(channel stack)結構,柵極為垂直方向,如圖8 所示[41,42].

圖7 各種3D-NAND 的技術方案[40]Fig.7.A summary of 3D-NAND technologies[40].

圖8 (a)柵極堆疊的TCAT 技術[41];(b)溝道堆疊的VG-NAND 技術[42]Fig.8.(a)TCAT technology with gate stack architecture[41];(b)VG-NAND technology with channel stack architecture[42].

其中存儲層一般采用浮柵(floating gate,FG)或者電荷俘獲層(charge trap layer,CTL).一般來說,FG 采用摻雜的多晶硅,存儲單元尺寸較大,存儲電荷量較多,閾值電壓窗口較大,保持特性較好.CTL 材料為氮化硅,存儲電荷量相對較少,存儲單元的閾值電壓窗口和保持特性略差,但CTL器件的尺寸小,集成度更高.目前三星量產的96層V-NAND 技術便是基于柵極堆疊和CTL 層的TCAT 結構.

神經形態(tài)計算芯片中突觸是基本的結構單元,在3D-NAND 中用CTL 器件作為突觸(圖9(a))[43].突觸的權重(電導)非易失且連續(xù)可調,即模擬權重調制特性.存儲用3D-NAND 中CTL 器件的閾值電壓通過增量步進脈沖寫入(incremental step pulse program,ISPP)機制進行調節(jié)(圖9(b))[44].用于神經形態(tài)計算的3D-NAND 中,CTL 不僅可用ISPP 機制進行調節(jié),而且可用多次同脈沖寫入(multiple identical pulses program,MIPP)機制進行調節(jié)以模擬權重調制特性(圖9(c))[45].

圖9 (a)CTL 單元的結構示意圖(以柵極堆疊結構為例)[43];(b)采用ISPP 機制調控3D-NAND 中CTL 器件的閾值電壓[44];(c)3D-NAND 中CTL 器件的模擬電導特性,即模擬權重調制特性[45]Fig.9.(a)Illustration of typical gate-stack type 3D-NAND[43];(b)ISPP modulation of threshold voltage in CTL device[44];(c)analog conductivity characteristics of CTL devices in 3D-NAND[45].

2.2 基于3D-NAND 神經形態(tài)計算的相關工作

神經形態(tài)計算包含3 個過程: 前向傳播、反向傳播和權重更新.前向傳播,即前級神經元發(fā)放的電壓脈沖經過突觸陣列轉化為電流脈沖傳遞給后級神經元.把前級神經元發(fā)放的輸入電壓脈沖和輸入到后級神經元的電流脈沖視為向量,突觸的權重構成矩陣,那么前向傳播過程等價為輸入信號和突觸權重進行乘加運算(multiply-and-accumulation,MAC)的累計,即向量矩陣相乘(vector matrix multiplication,VMM).反向傳播過程中計算各層突觸的誤差: 對輸出神經元的結果與目標結果進行比對,從輸出神經元往輸入神經元方向逐層計算各層突觸權重的誤差.最后根據計算結果更新各層突觸的權重.由于最近幾年才被學術界關注,3DNAND 用于神經形態(tài)計算的相關報道并不多,應用多集中在前向傳播和反向傳播方面.

2.2.1 3D-NAND 用于前向傳播

3D NAND 是多層2D NAND 的堆疊.用于神經形態(tài)計算時,3D NAND 比2D NAND 多了層間選通的操作.為了使讀者更方便地理解輸入編碼、器件選通、差分對突觸和權重轉置的概念,首先介紹Lee 等[45,46]基于2D NAND 的神經形態(tài)計算的工作,如圖10 所示.圖10(a)為2D NAND 的神經形態(tài)計算法則,具體地:

圖10 (a)基于NAND 的神經形態(tài)計算法則[46];(b),(c)前向傳播和反向傳播過程中NAND 的操作方法[45]Fig.10.(a)Learning rule of software-based and NAND-based neural network[46];2D-NAND operation method in(b)forward and(c)backward propagation[45].

3)反向傳播.前向傳播中得到的輸出與預期的輸出之間往往存在誤差,為了使神經網絡達到預期的識別率,需要計算出每層突觸的誤差然后進行權重更新.反向傳播中將誤差信號從最后一層神經元往第一層神經元傳遞,實現(xiàn)每層突觸誤差的計算.第l -1 層中神經元Xi接收的誤差信號為

前向傳播和反向傳播的具體操作方法如圖10(b)和圖10(c)所示.前向傳播: 1)輸入Xi采用幅值編碼,施加在BL 上.2)NAND 的每個page 等同于神經元(X0,X1,···,X785)對一個后級神經元(Yi)進行全連接的突觸.對目標page 施加Vread,其他page 施加Vpass.其中Vread<Vpass<Vprogram,施加Vpass的CTL 器件處于導通狀態(tài),可視為導線.輸入的電壓脈沖,經過目標page 后轉化為電流在SL 上相加,完成一次VMM 過程.3)重復上述操作,依次讀取每個page 的電流,完成一次前向傳播過程.前向傳播中,page 中CTL 器件為785×2 個,一共有51 個page.由于NAND 的串行結構無法將誤差信號從SL 端輸入,反向傳播過程中誤差信號(δ1,δ2,···,δ51)仍從BL 端輸入,但此時一個page 中的CTL 器件數為51×2 個,共有785 個page.因此反向傳播過程要另外選取硬件資源,映射權重時突觸陣列的配置與前向傳播時的陣列互為轉置,如圖10(c)所示.

2019 年佐治亞理工的余詩孟和清華大學的錢鶴等[47]提出了一種基于3D-NAND 的VMM 方案,如圖11(a)所示.需要指出的是,通常情況下3DNAND 中一個WL 控制一個平面的器件,但圖11(a)中每一層器件沿Y方向均有獨立的WL 作為輸入端.具體的VMM 的過程為: 1)輸入信號采用二值編碼,通過地址解碼器和傳輸門電路實現(xiàn)不同層的選通(如圖11(b)所示).左側傳輸門的輸入端施加導通電壓Vpass,地址解碼器連接在傳輸門的PMOS柵上.右側傳輸門的輸入端施加選通電壓Vsel,地址解碼器連接在傳輸門的NMOS 柵上.當輸入信號為0 時,左側傳輸門開啟,右側傳輸門關閉,WL 上施加Vpass電壓.當輸入信號為1 時,左側傳輸門關閉,右側傳輸門打開,WL 上施加Vsel電壓.2)SL 上施加讀電壓Vread,經過目標層突觸轉化為電流在BL 上讀取.從XY平面上看,CTL 器件以經典的crossbar 形式排列.

圖11 一種基于3D-NAND 的VMM 方案[47](a)3D-NAND 的電路結構和VMM 的操作方法;(b)用于3D-NAND 層間選通的外圍電路結構Fig.11.A case of using 3D-NAND for VMM operation[47]:(a)Circuit diagram and bias scheme of 3D-NAND array architecture for VMM;(b)peripheral circuitry for layer-to-layer selection.

余詩孟、錢鶴等[47]提出的基于3D-NAND 的VMM 方案,并未用于神經形態(tài)計算.如果沿用此方案進行神經形態(tài)計算,其優(yōu)勢在于同一平面內的CTL 單元為crossbar 結構,反向傳播可采用相同的操作方法,誤差信號δi從WL 輸入,SL 上施加Vread,BL 上讀取電流,無需另外選用硬件資源.并且后續(xù)的權重更新可通過WL 上施加電壓脈沖實現(xiàn).但進一步的工作需要考慮兩個方面: 1)目前不存在這種結構的3D-NAND.同一平面上制備獨立的WL 將大大增加工藝難度、單元尺寸和引線的復雜度,硬件實現(xiàn)難度大;2)柵壓有無作為輸入(二值編碼),那么所選通的器件必須工作在飽和區(qū),CTL 只能有1 bit 的存儲態(tài),如果用一個CTL 代表一個突觸,那么神經網絡的精度只有1 bit.要進一步提高神經網絡的精度,可以用多個器件等效為一個具有多比特精度的突觸,雖然硬件代價成倍增加,但3D-NAND 的大容量可輕松滿足其需求.

2019 年Lee 等[48]研究了如何用2D NAND 實現(xiàn)二值神經網絡(binary neural network,BNN)的前向傳播,如圖12 所示.二值神經網絡的輸入、權重和輸出均只有兩種狀態(tài),運算過程較為簡單,適合對精度要求不高的推斷(inference)過程.BNN的運行只需要器件有兩個穩(wěn)定可區(qū)分的阻態(tài),對硬件要求不高.圖12(a)展示了用SLC NAND 進行二值運算的原理(single level cell,SLC 即存儲態(tài)為1 bit 的CTL 器件),輸入信號施加在源端用于開關的晶體管的WL 上(即bit line selector,BLS 或者select gate at drain side,SGD).同一個page 上兩個相鄰的SLC 器件構成一個突觸對,兩個器件中有且只有一個為寫入狀態(tài).左側的string 上的BLS 有電壓,右側無電壓時,輸入標記為+1,反之標記為-1.突觸對左側SLC 器件為未寫入狀態(tài)(Vth,low),右側為寫入狀態(tài)(Vth,high)時,突觸權重標記為W=+1,反之W=-1.輸入信號為+1,當W=+1 時,SL 端輸出電流ISL,如果將Iref設為0.5×ISL時,電流經過差分放大器,輸出+0.5×ISL,轉化為正電壓,標記為+1.反之當W=-1 時,SL 端無電流輸出,電路輸出-0.5×ISL,讀出負電壓,標記為-1.同理,當輸入信號為-1 時,權重分別為+1 和-1 時,輸出分別為-1 和+1.這種輸入和權重狀態(tài)相同才有電流輸出的過程等效為XNOR 邏輯運算.

BNN 前向傳播的原理如圖12(b)所示.其中一個SLC 器件依次對應一個前級神經元對后級多個神經元的突觸.前級神經元的輸入視為一組向量,同時輸入到NAND 的BLS 上,如圖12(c)所示.基于這種硬件方案,Lee 等[48]設計了二值全連接神經網絡以及二值卷積神經網絡分別用于MNIST 和CIFAR-10 圖片數據的識別,網絡的訓練次數與識別率的關系如圖12(d)所示,識別率分別達到98.12%和87.11%.

圖12 基于2D NAND 的二值神經網絡BNN[48](a)相鄰的兩個CTL 器件組成差分對形式的突觸,與輸入的信號進行同或運算(XNOR);(b),(c)BNN 前向傳播中NAND 的操作方法以及NAND 電路示意圖;(d)采用二值全連接神經網絡和二值卷積神經網絡分別用于MNIST 和CIFAR-10 圖像庫的識別性能Fig.12.A synaptic architecture based on 2D NAND for binary neural network(BNN)[48]:(a)NAND string structure for XNOR operation,in which two neighboring CTL device constructs a differential pair as one synapse;(b)operation scheme for forward propagation;(c)schematic diagram of synaptic array architecture;(d)the performance of binarized multi-layer and convolutional neural networks for MNIST and CIFAR-10 database recognition task respectively.

2019 年Lue 等[49]提出一種用基于SLC 3DNAND 的卷積核映射和前向傳播方案,用多個BL 輸入和SLC 器件實現(xiàn)4 bit 精度的輸入和4 bit精度的權重,如圖13 所示.卷積神經網絡CNN 往往采用多個卷積核,對圖片進行卷積操作需要進行大量的MAC 運算,原理如圖13(a)所示.圖片中每個像素對應一個輸入信號,一次卷積的過程等同于像素輸入與卷積核中對應的權重進行MAC 運算(即前向傳播).卷積核中的權重具有多bit 精度,可以將權重拆分為高位和低位,存放在多個SLC中,例如2 個SLC 可以實現(xiàn)2 bit 存儲狀態(tài).2 bit精度的輸入和2 bit 精度的權重的MAC 過程(2 bit input &2 bit weight,2I2W)如圖13(b)所示.輸入信號的兩位X1〈0〉和X1〈1〉先后施加在BL1上,權重的兩位分別存儲在2 個SLC 器件上,即W(1-1,j)和W(1-2,j).MAC 過程的得到的總電流為X1〈0〉×[W(1-1,j)+2×W(1-2,j)]+2X1×[W(1-1,j)+2×W(1-2,j)],分4 次相乘后移位相加獲得.依次類推,4 bit 精度的MAC 過程(4I4W)可拆分為2 組2 bit 的輸入和2 組2 bit 的權重進行相乘后移位相加,工作原理如圖13(c)所示.圖13(d)展示了卷積核電路的工作原理.圖中沿BL 方向劃分了M個block,每個block 代表不同的通道,每個block 中的每一層代表一個卷積核.輸入信號從BL 進入,3 根BL 構成一個2 bit的輸入,一個4 bit 精度的輸入信號需要6 根BL(圖中只繪出一根).3 個SLC 器件構成一個2 bit 精度的權重,4 bit 精度的權重需要6 個SLC,對應地需要6 根SSL(圖中只繪出2 根),因此4I4W 過程需要36 個SLC.對于更高精度的輸入和權重,以及更多的圖片像素(文中不考慮輸入端口復用),需要更多的BL 和SSL,陣列具有相當的規(guī)模.Lue 等[49]并未從硬件上實現(xiàn)卷積核功能,他們測試了64 GB SGVC NAND 中單元的電性能.最后基于4 bit 精度的3D-NAND 卷積核電路,運行VGG-16 卷積神經網絡對CIFAR-10 數據庫進行識別,識別率達到90%.

圖13 采用SLC 3D-NAND 實現(xiàn)4 bit 精度的卷積神經網絡方案[49](a)卷積神經網絡的工作原理示意圖(上),涉及大量的MAC 過程(下);(b)對于多bit 權重 的MAC 過程,用多個SLC 器件構成 一個多bit 權重;(c)4 bit 精度輸入與4 bit 精度權 重的MAC 原理;(d)卷積核電路的工作原理;(e)VGG 16 神經網絡的結構圖以及用所設計的3D-NAND 加速VGG 16 的性能Fig.13.A case of SLC 3D-NAND for convolution neural network(CNN)with 4-bit resolution[49]:(a)Flow schematic of CNN;(b)in a MAC array,plural SSLs to stand for multi-bit weight;(c)the arithmetic principle of MAC with 4-bit input and 4-bit weight(4I4W);(d)convolutional core circuit and working principle diagram;(e)schematic diagram of VGG 16 CNN and the simulated performance of 3D-NAND hardware implementation.

2019 年,Kim 等[50]提出了一種基于3D-NAND的卷積核映射方案,用4 個MLC(multi-level cell,2 bit 存儲態(tài)的CTL 器件)構成了8 bit 存儲態(tài)的突觸,并實現(xiàn)了8 bit 精度的CNN 卷積運算,如圖14 所示.圖14(a)中將BiCS 結構的3D-NAND中的每個block 按BL 方向展開成2D-NAND,每個SGD 線(select gate at drain side,SGD)連接一個前級神經元接收輸入信號.具體的卷積核映射方法如圖14(b)所示.一個8 bit 的權重映射到一個string 上相鄰的4 個MLC 中(P15/N15,P14/N14,P13/N13,P12/N12).兩個相鄰的block 中同一個SGD 線控制的兩個string 上的權重分別標記為正、負,構成差分對.差分對中權重為正時,負權重設為0,反之權重為負時,正權重設為0.Kim 等[50]在2021 年的報道中增加了對卷積運算具體過程的闡述,如圖14(c)所示.其過程為: 1)兩個輸入信號的第一位和權重的前兩位進行乘加運算后得到4,下一步兩個輸入信號的第一位和權重的下兩位進行乘加運算得到結果3,兩次運算結果進行移位相加,即3×22+4×20;2)圖中有24 根SGG線,支持24 個神經元信號同時輸入進行乘加運算,乘加運算32 次后移位相加,得到24 個前級神經元對同一個后級神經元的輸出.同一個string 上有16 個MLC,可存儲4 個8 bit 權重,圖14(b)的電路可以映射24 個前級神經元和4 個后級神經元之間全連接的突觸.

圖14 基于MLC 3D-NAND 的8-bit 精度卷積方案[50,51](a)基于BiCS 結構的3D-NAND 電路圖[51];(b)權重的映射方式,正、負權重存儲在相鄰的兩個block 中[51];(c)2 個8 bit 精度的輸入信號和2 個8 bit 精度的權重的乘加運算過程[51];(d)基于eNAND 的卷積核電路,有7 個block,28 個輸入端口,滿足5×5 卷積核的功能[51];(e)卷積過程的信號時序圖[51]Fig.14.A case of MLC 3D-NAND for CNN with 8-bit resolution[50,51]:(a)Circuit diagram of BiCS type 3D-NAND,the 3D structure can be flattened into a 2D structure[51];(b)weight mapping method,positive and negative weight stored in two neighboring blocks[51];(c)MAC operation principle of 2 inputs and two weights with 8-bit resolution[51];(d)convolutional core circuit diagram with 7 blocks and 28 input ports can be used for 5×5 convolution operation[51];(e)timing diagram of 5×5 convolution operation with 8-bit data and 8-bit weights[51].

由于NAND 廠商禁止開放WL 和SGD 端口的控制,Kim 等[50]用自研的16 層die 堆疊的eNAND等效3D-NAND(具體的eNAND 結構和工作原理不在此贅述).圖14(d)中展示了基于eNAND 的卷積核電路,有7 個卷積用的Block 和一個用于修復的Block.此電路具有28 個輸入端口,可以映射5×5 大小的卷積核,卷積的脈沖時序如圖14(e)所示.基于此硬件方案,Kim 等[50]設計了LetNet-5進行MNIST 手寫數字識別,識別率達到98.5%.

2021 年,Kim 課題組[52]提出了一種基于3D NAND 的卷積核映射方案,用1 bit 的MAC 算子進行分部相乘(partial multiplication)并采用Booth編碼映射正負權重,顯著地降低了VMM 過程中的電流,提高了芯片的能效,文中將這種芯片架構命名為S-Flash.圖15(a)為卷積運算的過程,一個卷積層由k個尺寸為K×K×N大小的卷積核構成.輸入信號和卷積核的精度通常為8 bit,那么卷積核在圖像上進行一次滑動將產生k×K2×N(8 bit×8 bit)次MAC 運算.如何優(yōu)化8 bit×8 bit計算過程是文獻[52]研究的重點.文中將輸入信號和權重拆分為低比特的算子進行分部相乘.將輸入信號和權重的比特分別記為(Ba,Bw),當(Ba,Bw)=(1,1)時,進行64 次乘法運算.當(Ba,Bw)=(1,2)或(2,1)時,進行32 次乘法運算.圖15(b)展示了(Ba,Bw)對乘法和積分對電路延時的影響,隨(Ba,Bw)增大,乘法運算的延時略有降低,但電流積分的延時顯著增大.這是因為MAC 運算的速率受限于ADC 精度,ADC 精度越高,外圍電路的開銷、延時和能耗越大.采用一般精度的ADC(如3-bit/4-bit),(Ba,Bw)越大,電流積分的次數越多,電流積分時間顯著延長.文中采用(Ba,Bw)=(1,1)作為MAC 運算的基本操作單位.圖15(c)展示了S-Flash 的架構,神經網絡的每一層突觸映射到沿WL 的每一層SLC 中,輸入信號A1-An的8 位信號依次施加在BL 上,MAC 電流用SSL 收集,n為卷積核的通道數,用一個block 映射一個卷積核的一個通道,n個block 構成一個array 映射一個卷積核,多個array 映射一個卷積層.圖15(d)展示了卷積核的映射過程,其中突觸權重的精度為8 bit,16 個SLC 構成一個具有正、負權重的突觸對.圖15(e)展示了通過用Booth 編碼正、負權重,以增加權重中的“0”位,提高MAC 過程中的稀疏性,從而降低MAC 過程中的總電流.為了進一步提高計算效率,將Ak×Wk對應的SLC 陣列中BL 和SSL 增大一倍,SLC 單元增大2 倍,原先8 bit ×8 bit 的MAC 次數從64 縮減為16,如圖15(f)和圖15(g)所示,將MAC 過程中具有4 倍SLC 規(guī)模但權重未經過Booth 編碼的S-Flash 定義為S-Flash*,具有4 倍SLC 規(guī)模并且權重經過Booth 編碼的S-Flash 定義為S-Flash**.

圖15 基于3D NAND 的S-Flash 芯片用于卷積神經網絡加速[52](a)卷積過程示意圖;(b)MAC 算子的比特對乘、加運算延遲時間的影響(左)和MAC 算子的比特對累加運算延遲時間的影響(右);(c)S-Flash 芯片的架構;(d)S-Flash 中權重分布的示意圖,用16 個SLC 構成一個差分結構的突觸;(e)通過Booth 編碼分配權重;(f),(g)同時操作的SSL 和BL 增大1 倍,MAC 次數縮減了1/4Fig.15.3D NAND-based CNN accelerator named as S-Flash[52]:(a)Convolutional operation of CNN;(b)normalized latency for multiplication,accumulation(left)and MAC operation in various multiplication units(right);(c)overall S-FLASH architecture;(d)overall weight data layout,in which a differential synapse constructed with 16 SLC;(e)weight allocation by Booth coding;(f),(g)double the concurrently operated BLs and SSLs,4 times faster the MAC operation speed.

最后通過電路仿真研究了S-Flash 芯片在運行卷積神經網絡時的性能參數.分別用S-Flash,SFlash*和S-Flash**運行VGG-16 神經網絡,計算了前向傳播中每層神經網絡的能效,并以GPU 方案時的能效為標準進行歸一化,結果如圖16(a)所示.從圖16(a)可以看出,S-Flash,S-Flash*和S-Flash**的能效分別是GPU 的1.64,6.43 和13.49 倍,SFlash*和S-Flash**的能效分別是S-Flash 的3.9 倍和8.2 倍,所以正、負權重的分配對芯片能效的影響最大.S-Flash**中各電路模塊的面積和能耗對比如圖16(b)所示,可以看到ADC 面積占芯片面積的0.61%,但能耗占90.67%.圖16(c)中表格列出了S-Flash**和其他芯片的性能參數,包括存儲密度、單位面積的峰值吞吐量和能效,可以看到SFlash**在這3 個方面均有明顯優(yōu)勢.

圖16 S-Flash 電路仿真的結果[52](a)S-Flash/S-Flash*/S-Flash**運行VGG-16 卷積神經網絡時的能效;(b)S-Flash**電路模塊的面積對比和運行VGG-16 時各電路模塊的能耗對比;(c)S-Flash**與其他芯片的性能參數對比Fig.16.Simulation result of S-Flash[52]:(a)Energy efficiency evaluation result of each VGG-16 layer accelerated by S-Flash/S-Flash*/S-Flash**;(b)area and energy breakdown of S-FLASH**;(c)comparison with the other platform.

2021 年,余詩孟課題組[53]提出了一種基于3D NAND 的神經形態(tài)芯片架構,用于卷積神經網絡加速.圖17(a)所示為在3D NAND 的一個block 中進行VMM 操作的方法: 沿WL 方向的每一層SLC 器件對應神經網絡的每一層突觸,輸入信號XN施加在BL 上,權重Wi精度為2 bit,用3 個SLC 代表一個Wi,3 根SSL 用于突觸選通.XN采用十進制編碼,即精度為nbit 的XN,可用2n-1 根BL 來表示.用十進制編碼的優(yōu)勢在于block 中所有string 上的電流可直接相加后進行模數轉換,而無需移位操作.圖17(b)中展示了2 bit 權重精度的卷積核映射方案,卷積核尺寸為K=KC×KW×KH,XN精度為nbit,卷積核中一個單元的權重映射到3×(2n-1)個SLC 中.圖17(c)為多個block 構成的subarray,用于映射一個卷積層.VGG-8 卷積神經網絡中,最大的卷積層中有16 個卷積核,Wi精度為2 bit,XN精度為8 bit.用一個block 映射精度為2 bit 的卷積核,block 的大小為521×3×3×(22-1)×(22-1)×32 WL=1.27 Mb.考慮到VGG-8 中權重的精度為8 bit,采用4 個2 bit 精度的block 通過分部相乘實現(xiàn),那么1 個subarray 的大小為16×4×1.27 Mb=81 Mb.圖17(d)為芯片架構的示意圖,芯片中有4 個tile,每個tile 有4 個PE(process element),每個PE 有4 個subarray.VGG-8 神經網絡需要110 Mb SLC,所設計的芯片容量完全滿足需求.用HSPICE 計算了3D NAND 運行VGG-8網絡用于CIFAR-10 圖像識別任務的性能,電路中各模塊的能耗占比如圖17(e)所示.圖17(f)列出了3D NAND 的性能參數,并與RRAM 和SRAM做比較,可以看到所設計的3D NAND 在各項性能指標上均有明顯的優(yōu)勢.

圖17 輸入信號采用十進制編碼的3D NAND 芯片用于卷積神經網絡加速[53](a)用3D NAND 做VMM 的操作方法;(b)卷積核映射的方案;(c)subarray的結構示意圖;(d)芯片的架構示意 圖;(e)用3D NAND 芯片運行VGG-8 神經網絡用于CIFAR-10 圖片庫識別時,各電路模塊的能耗對比;(f)3D NAND 與其他芯片的性能對比Fig.17.A 3D NAND CNN accelerator with decimal input coding[53](a)VMM operation method by using 3D NAND;(b)the mapping method of a CNN kernel;(c)designed subarray configuration;(d)hierarchy of the 3D NAND-based neuromorphic chip architecture;(e)energy breakdown of 3D NAND-based chip on VGG-8 network for the CIFAR-10 dataset;(f)comparison with other chips.

2022 年,霍宗亮課題組[54]利用3D NAND 中CTL 的模擬權重調制特性,設計了兩層全連接神經網絡,用Winner-takes-all(WTA)非監(jiān)督學習算法實現(xiàn)ZVN 圖像的識別.圖18(a)為3D NAND的操作示意圖,不同于其他文獻,文中陣列的輸入信號施加在WL 上,輸入信號為Vread和Vpass,分別代表輸入像素點的明暗兩種狀態(tài),即1 和0.突觸映射在WL 平面的CTL 陣列中,采用差分對結構,輸出電流在BL 端收集并通過TSG(top select gate transistor)控制.圖18(b)中為CTL 器件的模擬權重調制特性,可以看到CTL 器件的長時程增強(long term potentiation,LTP)和長時程抑制(long term depression,LTD)過程具有良好的線性度.圖18(c)展示了用3D NAND 實現(xiàn)非監(jiān)督學習的訓練過程.首先以相同的概率輸入標準的Z,V,N 圖像然后以WTA 法則進行權重更新.WTA 的權重更新法則: 以圖像“Z”為例,當輸入Xi為1 時,增強對應的3 個權重Gi, j=1,2,3,即增大值,減小值.然后將輸出最大的后級神經元標記為winner,增強連接在winner 神經元的突觸權重,即增大值,減小值,其他突觸權重不變.在訓練了標準圖像后,訓練帶有噪聲的Z,V,N 圖像,即有一個像素點反轉的圖片,以提高神經網絡的容錯率.測試時用一組隨機圖像做推斷,評估神經網絡的性能.圖18(d)中展示了訓練之前和訓練之后,3 個神經元的響應情況以及權重的分部.經過42 個訓練周期后,3 個神經元能準確識別Z,V,N 圖像,并且輸入像素的權重隨訓練次數的增大,往正確的預測方向增大/減小.

圖18 基于3D NAND 的WTA 神經網絡用于非監(jiān)督學習[54](a)具有差分對結構的3D NAND;(b)CTL 器件的模擬權重調制特性;(c)用3D NAND 訓練WTA 神經網絡的過程;(d)WTA 神經網絡的訓練結果Fig.18.A 3D NAND-based WTA neural network for unsupervised learning[54]:(a)Schematic of the differential pair in 3D NAND flash array;(b)analog weight modulation of measured CTL device;(c)the training procedure of WTA neural network using 3D NAND array;(d)stylized letter clustering results before and after training.

上述關于用于前向傳播的3D NAND 均采用二值或者幅值編碼.2020 年Lee 等[55]設計了一種基于脈寬編碼的操作方案,在3D-NAND 中實現(xiàn)了前向傳播過程,如圖19 所示.圖19(a)展示了前向傳播的原理和操作方式: 1)前級神經元發(fā)放的脈沖輸入信號采用脈寬編碼,通過脈寬調制電路(pulse width modulation,PWM)發(fā)放施加在SSL,神經網絡中每一層突觸映射到3D-NAND 中每一層CTL 器件上,并且采用差分對結構用兩個CTL器件分別存儲正、負權重;2)SL 上施加驅動電壓VBL,選通層的WL 上加較小的選通電壓Vread,未選通層的WL 上加較大的導通電壓Vpass,VBL經過選通層的正、負權重轉化為電流進入后級神經元電路;3)神經元電路的結構如圖19(b)所示,輸出的電流經過電流鏡構成的差分電路,相減后對電容進行充電得到后級神經元的電壓Vc,其中SSL 上輸入信號的脈寬決定了SSL 上晶體管的開啟時間,即電流的積分時間.Lee 等[55]根據3D-NAND 的硬件方案設計了3 層全連接的卷積神經網絡,對CIFAR-10 圖片數據庫進行識別任務,并且比較了權重精度為1 bit 和4 bit 時網絡的性能表現(xiàn),如圖19(c)所示.

圖19 3D-NAND 中采用脈寬編碼實現(xiàn)前向傳播[55](a)前向傳播的操作方式、神經網絡示意圖和WL 上讀電壓的時序圖;(b)左: 前向傳播的工作原理示示意圖,即兩個標記為正、負權重的突觸對構成一個突觸,輸出電流相減后通過電容積分轉化為電壓Vc;右: 讀電壓Vread、SSL 上輸入脈沖VSSL 和Vc 的時序圖;(c)3 層全連接CNN 網絡在權重精度為4 bit(QNN)和1 bit(BNN)條件下對CIFAR-10 圖片數據庫的識別性能Fig.19.Forward propagation using 3D-NAND with pulse width modulation(PWM)scheme[55]:(a)Operation scheme of forward propagation,schematic diagram of neural networks,the timing diagram of pulses applied to WLs;(b)Left: schematic diagram of synaptic string array consisting of synapses with positive weight(G+)and synapses with negative weight(G-);Right: timing diagram of Vread,VSSL,and Vc;(c)simulated classification accuracy of 4-bit QNN and BNN for CIFAR-10 images.

2.2.2 3D-NAND 用于反向傳播

由于CTL 器件擦寫次數有限,因此3D-NAND通常用于權重更新不太頻繁的應用場景.通常將已訓練好的權重映射到3D-NAND 中,執(zhí)行推斷任務,2.2.1 節(jié)中介紹的工作均基于此應用場景.但在硬件上直接訓練權重,顯然更智能且經濟.除了有限的器件擦寫次數,在3D-NAND 中做反向傳播面臨兩方面的挑戰(zhàn).第一,反向傳播中突觸矩陣和前向傳播中互為轉置,另選硬件資源映射轉置后的突觸矩陣做反向傳播(如圖10(c)所示),訓練時間代價較高,也容易出錯.第二,突觸往往采用差分對結構,NAND 的串行結構天然不適合反向傳播.因此如何設計反向傳播的操作方案是關鍵.

2021 年,Lee 等[56]在2020 年報道的方案上[55]做出改進,可以在3D-NAND 同一個CTL 陣列中同時實現(xiàn)神經形態(tài)計算中的前向傳播和反向傳播過程,如圖20 所示.根據神經網絡的工作原理,反向傳播過程中誤差信號從最后一層神經元輸入并依次向前級神經元傳遞.對于crossbar 結構的突觸陣列,反向傳播時誤差信號從原輸出端輸入,從矩陣相乘角度看,前向傳播和反向傳播過程中突觸陣列的矩陣互為轉置的關系,如圖20(a)所示.但如果硬件采用差分對結構,相鄰的器件分別為正、負權重,前向傳播和反向傳播時突觸的矩陣則為非轉置關系,如圖20(b)所示.為了實現(xiàn)反向傳播,Lee等[56]將所有突觸的正、負權重用兩個陣列分開配置,如圖20(c)所示.

圖20 差分對突觸陣列中將正、負權重分開放置可實現(xiàn)反向傳播[56](a)前向傳播和反向傳播過程中對應的突觸陣列,從矩陣運算角度上看互為轉置結構;(b)通常情況下,差分對結構中的正、負權重在同一個陣列中,突觸陣列與前向傳播過程中并非轉置的關系,無法實現(xiàn)反向傳播功能;(c)將正、負權重分開置于不同的陣列中,可以實現(xiàn)反向傳播過程Fig.20.Backward propagation can be implemented using a differential synaptic array where positive and negative weights are separated[56]:(a)The matrix of synapse weight in forward and backward propagation are transposed;(b)synaptic array architecture consisting of two adjacent cells representing G+ and G-,the weights cannot be transposed;(c)synaptic array architecture where G+and G- weights are separated in different arrays.

Lee 等[56]用3D-NAND 實現(xiàn)前向和反向傳播的原理如圖21 所示.前向傳播過程如圖21(a)所示: 1)前級神經元的輸入信號用脈寬編碼,通過PWM 模塊發(fā)生并施加到BL 上,SSL 控制NAND string 的開關,即控制流入到對應的各個后級神經元的電流.2)3D-NAND 中每一層突觸器件對應神經元中的每一層全連接突觸,如圖21(c)所示,信號前向傳播到第i層時,在3D-NAND 第i層的WL 上施加選通電壓Vread,在其他層施加導通電壓Vpass;3)所有前級神經元輸入的脈沖信號分別經過正、負權重,轉化為電流在輸出神經元電路中進行差分后積分轉化為輸出電壓.反向傳播的過程如圖21(b)所示: 1)反向傳播的誤差信號同樣采用脈寬編碼,通過PWM 電路發(fā)生并施加在SSL 上.由于讀操作中CTL 單元的電流受柵-源電壓控制,即Vread減去CTL 單元源端的電位,而源極的電位與pass 狀態(tài)的CTL 單元的分布情況有關.如果反向傳播過程的誤差信號施加在SL 端,那么CTL的源極電位與前向傳播時不一致,即CTL 柵源電壓不一致,讀電流將會產生較大的誤差.因此Lee等[56]將誤差信號從SSL 端輸入,既能保證權重的轉置也能避免pass 單元造成的讀誤差.2)Vread和Vpass依次施加各層WL 上,施加的順序與前向傳播相反.3)BL 連接前級神經元電路,SL 上施加驅動電壓VBL,每個NAND string 上的產生電流在神經元電路中做差分后積分得到輸出電壓,通過SSL 上誤差信號的脈寬決定了電流在神經元電路中的積分時間得到對應的電壓.

圖21 基于3D-NAND 的前向傳播和反向傳播的工作原理[56](a)前向傳播中3D-NAND 的操作方法;(b)反向傳播中3DNAND 的操作方法;(c)具有n 層全連接突觸的神經網絡結構;(d)前向傳播和反向傳播中WL 上選通電壓Vread 和導通電壓Vpass 的時序Fig.21.Forward and backward propagation using 3D-NAND with PWM scheme[56]:(a)Synaptic array architecture based on NAND flash memory for forwarding propagation operation;(b)synaptic array architecture based on NAND flash memory for backward propagation operation;(c)schematic of neural networks consisting of n weight layers;(d)timing diagram of Vread and Vpass in forwarding propagation and backward propagation.

CTL 器件通過寫脈沖可具有32 個不同的Vth,即5 bit 的權重態(tài),如圖22(a)所示.圖22(b)中用不同的讀電壓V1-V5可得到不同的權重態(tài)分布,其中讀電壓越大,權重變化范圍越小,但分布越線性.Vpass對Vth基本沒有影響,如圖22(c)所示.寫/擦脈沖循環(huán)對權重態(tài)的分布也基本無影響,如圖22(d)所示.CLT 器件權重的精度為5 bit,差分對構成的突觸精度達到6 bit.基于測試得到的幾種權重態(tài)分布和單元之間的權重誤差分布,Lee 等[56]設計了全連接神經網絡用于MNIST 圖片識別任務,網絡的性能表現(xiàn)如圖22(e)所示.其中權重態(tài)分布越線性,網絡識別率越高.將網絡中隱藏層數量增加到3 層,可以略微提高網絡識別率,如圖22(f)所示.

圖22 器件特性和神經網絡性能[56](a)器件的IBL-VBL 特性隨寫入脈沖數量的變化;(b)圖(a)中器件的歸一化電導隨寫脈沖數量的變化;(c)導通電壓Vpass 和寫電壓VPGM 對閾值電壓的影響;(d)初始狀態(tài)的器件和經歷過擦寫循環(huán)的器件對寫入脈沖的響應;(e)三層全連接神經網絡的識別率;(f)隱藏層數量對識別率的影響Fig.22.Device characteristics and neural network performance[56]:(a)IBL-VBL curves with an increasing number of program pulses;(b)normalized conductance responses measured in(a);(c)IBL-VWL curves measured in a fresh,Vpass disturbed,and programmed cell;(d)conductance response of fresh and cycled cell;(e)recognition accuracy of 3-layer neural network;(f)recognition accuracy with the number of hidden layers.

2.2.3 各項工作的比對

基于3D-NAND 的神經形態(tài)計算的各項工作比對如表2 所列.

表2 基于3 D-NAND 的神經形態(tài)計算的各項工作比對Table 2. A comparison of reviewed works.

3 總結與展望

過去幾年,具有存算一體特性的AI 芯片不斷涌現(xiàn),工藝節(jié)點涵蓋了14-180 nm,計算架構包括了近存計算、存內計算和神經形態(tài)計算,應用場景覆蓋了邊緣端到云端設備.在各種硬件方案中,基于3D-NAND 的神經形態(tài)芯片在芯片容量,CMOS工藝兼容性和成本方面極具優(yōu)勢.本文首先介紹了3D-NAND 的基本結構和原理,以及用于神經形態(tài)計算的優(yōu)勢和不足.然后詳細梳理了近幾年關于NAND 和3D-NAND 用于神經形態(tài)計算的代表性工作,重點介紹了其中的編碼方式、前向傳播原理和反向傳播過程.

基于現(xiàn)有的工作,考慮到3D-NAND 的優(yōu)勢與不足,如用于未來的神經形態(tài)計算,3D-NAND需要做的調整如下:

1)器件層面.用于數據存儲的3D NAND,器件采用電荷俘獲型晶體管(CTL),通過在柵極施加高幅值和長時程的脈寬(>10 V,>100 μs),利用Fowler-Nordheim 隧穿效應,在電荷俘獲層中注入或擦除電子以改變閾值電壓(Vth),實現(xiàn)存儲功能.隨擦寫次數的增加,隧穿絕緣層的晶格會被破壞甚至失效,因此CTL 的擦寫次數有限.低功耗是神經形態(tài)計算的特點,CTL 器件的操作功耗需要進一步優(yōu)化.目前國內外的一些研究機構,探索了將氧化鉿基鐵電材料替代傳統(tǒng)的氮化硅電荷俘獲層[57,58],利用鐵電效應實現(xiàn)了器件的存儲功能.如果能將鐵電技術成功地應用到3D NAND 中,能大幅提高器件的擦寫次數,并且降低操作功耗.

2)結構層面.1)CTL 晶體管是3D NAND 的基本單元,多個CTL 器件組成一個NAND string,多個string 組成一個block,多個block 組成3D NAND 結構.在神經形態(tài)計算中,突觸和神經元是神經網絡的基本單元.2)突觸可由一個或多個CTL 器件構成.對于低精度的計算,可采用幅值或者脈寬編碼,輸入/輸出均為模擬信號,單個CTL突觸即可滿足模擬計算的需求,電路結構簡單原理直觀.對于高精度的計算,則采用二值編碼,用多個SLC 構建一個多bit 精度的突觸,采用二進制計算方式.3)突觸多采用差分對結構G=G+-G-,為了避免正、負突觸閾值電壓達到最大而無法進一步更新權重,3D NAND 中通常需要定期進行塊擦除并重新賦予突觸權重值.2021 年,首爾大學和SK Hynix 合作開發(fā)了適用于神經形態(tài)計算的單個CTL 器件的擦除方案,避免了定期的塊擦除[59].

3)架構層面.存儲用途的3D NAND 只涉及讀、寫、擦操作,計算由外部的CPU 負責.讀寫按block→string→CTL 的順序串行操作.區(qū)別于存儲用途,在用于神經形態(tài)計算的3D NAND 中,讀操作增加了MAC 運算,外圍電路需要配置大量的ADC/DAC 和移位加法器等單元.并且讀寫操作按神經網絡的映射規(guī)則執(zhí)行,不一定按block→string→CTL 的順序.

最后,由于3D-NAND 的專利特性,廠商并未開放用戶對芯片顆粒端口的權限.目前的工作中,前向傳播過程和反向傳播過程并未做硬件實現(xiàn),多數是基于廠商樣片測得的存儲單元特性以及讀誤差分布,通過電路和軟件層面上仿真得到的結果.未來的工作應該考慮與廠商有更深入的交流合作,在硬件層面執(zhí)行前向傳播、反向傳播和權重更新,更直接地展示3D-NAND 在神經形態(tài)計算方面的應用潛力.

猜你喜歡
器件神經元權重
權重望寡:如何化解低地位領導的補償性辱虐管理行為?*
AI講座:神經網絡的空間對應
Finding the Extraterrestrial
權重常思“浮名輕”
仿生芯片可再現(xiàn)生物神經元行為
為黨督政勤履職 代民行權重擔當
權重漲個股跌 持有白馬藍籌
這個神經元負責改變我們的習慣
研究人員精確定位控制飲酒的神經元
旋涂-蒸鍍工藝制備紅光量子點器件
多伦县| 来安县| 富锦市| 文水县| 英吉沙县| 丽水市| 兴海县| 临颍县| 神木县| 乐平市| 四川省| 荔波县| 麻栗坡县| 报价| 香港| 通州区| 黄山市| 清新县| 兴宁市| 福贡县| 陇川县| 岳池县| 萨嘎县| 竹山县| 东乌珠穆沁旗| 喀喇沁旗| 江口县| 修武县| 车险| 莱芜市| 黎城县| 贵德县| 莲花县| 丹凤县| 平江县| 福海县| 五常市| 淮南市| 张家港市| 上蔡县| 滁州市|