王佳陽, 董哲康, 紀(jì)曉悅, 胡小方, 周廣東, 齊冬蓮1,,5
1.杭州電子科技大學(xué) 電子信息學(xué)院, 杭州 310018; 2.浙江大學(xué) 電氣工程學(xué)院, 杭州 310027; 3.浙江省裝備電子重點(diǎn)實(shí)驗(yàn)室, 杭州 310018; 4.西南大學(xué) 人工智能學(xué)院, 重慶 400715; 5.海南浙江大學(xué)研究院, 海南 三亞 572025
目前大部分現(xiàn)代智能計(jì)算系統(tǒng)都是基于馮諾依曼架構(gòu)[1]設(shè)計(jì)的, 在該結(jié)構(gòu)中數(shù)據(jù)的處理和存儲(chǔ)是分離的, 伴隨著巨大的能量消耗[2-4]. 近年來, 隨著科學(xué)技術(shù)的不斷發(fā)展與進(jìn)步, 受腦啟發(fā)的神經(jīng)形態(tài)系統(tǒng)[5]這一新型信息處理系統(tǒng)的出現(xiàn)為解決馮諾依曼瓶頸提供了很大的可能性. 神經(jīng)形態(tài)系統(tǒng)具有高度的并行計(jì)算能力、 極低的功耗并且能夠?qū)崿F(xiàn)存算一體, 已經(jīng)逐漸成為了人工智能領(lǐng)域[6]的研究熱點(diǎn)之一[7-9]. 其中, 邏輯電路是神經(jīng)形態(tài)計(jì)算硬件實(shí)現(xiàn)的基本計(jì)算單元, 對(duì)于構(gòu)建新型神經(jīng)形態(tài)系統(tǒng)具有重要的意義.
目前實(shí)現(xiàn)邏輯電路的方法可以分為三類[10-13], 即基于傳統(tǒng)元器件實(shí)現(xiàn)的邏輯電路、 基于集成芯片實(shí)現(xiàn)的邏輯電路以及基于憶阻器實(shí)現(xiàn)的邏輯電路. 基于傳統(tǒng)互補(bǔ)金屬氧化物半導(dǎo)體(Complementary Metal-Oxide-Semiconductor Transistor, CMOS)[14]技術(shù)和集成芯片構(gòu)建的邏輯電路在連續(xù)擴(kuò)展、 電路面積、 功率消耗等方面面臨著嚴(yán)峻的挑戰(zhàn)[15-17]. 具有納米尺寸、 電阻可變且非易失、 耗能低等特性的憶阻器, 為構(gòu)建邏輯電路提供了新的思路. 憶阻器[18]這一新型電路元器件的概念于1971年由蔡少棠教授首次提出, 該器件表示了電荷量和磁通量之間的關(guān)系. 2008年, 惠普實(shí)驗(yàn)室首次驗(yàn)證了實(shí)物憶阻器的存在, 并指出其是一個(gè)納米級(jí)無源的二端電路元器件, 憶阻器的成功制備引起了全球范圍內(nèi)研究者們的廣泛關(guān)注[19]. 隨著憶阻器研究的不斷深入, 憶阻邏輯電路為傳統(tǒng)集成電路技術(shù)的發(fā)展提供了新的思路和解決方案, 逐漸成為了構(gòu)建面向神經(jīng)形態(tài)系統(tǒng)中邏輯電路的一個(gè)熱點(diǎn)研究方向[20-22].
本文的主要結(jié)構(gòu)和框架如下: 在第1部分整理和分析了憶阻邏輯電路中常用的憶阻器模型; 在第2部分對(duì)近年來的憶阻邏輯電路進(jìn)行了詳細(xì)的梳理和分析, 并根據(jù)輸入、 輸出邏輯狀態(tài)變量的不同, 將其分為三類, 并對(duì)這三類電路的特性進(jìn)行了對(duì)比和分析; 在第3部分, 本文介紹了憶阻邏輯電路在神經(jīng)形態(tài)系統(tǒng)中的應(yīng)用現(xiàn)狀; 針對(duì)憶阻邏輯電路在操作復(fù)雜性和物理實(shí)現(xiàn)方面的缺陷, 在第4部分展望了憶阻邏輯電路的發(fā)展方向; 最后, 本文對(duì)憶阻邏輯電路及其在神經(jīng)形態(tài)系統(tǒng)中的應(yīng)用進(jìn)行總結(jié). 需要說明的是, 本文全面綜述了面向神經(jīng)形態(tài)系統(tǒng)的憶阻邏輯電路, 旨在總結(jié)當(dāng)前的發(fā)展趨勢(shì)和未來的發(fā)展前景, 希望進(jìn)一步促進(jìn)憶阻器在目前建立的邏輯電路架構(gòu)以及人工智能領(lǐng)域神經(jīng)形態(tài)系統(tǒng)中的應(yīng)用.
憶阻器具有非易失性、 納米尺寸、 低功耗、 與傳統(tǒng)CMOS技術(shù)可兼容、 阻值變換快速等特性, 已經(jīng)廣泛應(yīng)用在面向神經(jīng)形態(tài)系統(tǒng)的邏輯電路中. 目前, 該領(lǐng)域一直致力于尋找新的材料和技術(shù)制備不同結(jié)構(gòu)、 不同物理機(jī)制的憶阻器件. 與此同時(shí), 大量的工作已經(jīng)投入到憶阻器數(shù)學(xué)模型的研究中. 一個(gè)準(zhǔn)確、 通用、 簡潔的憶阻器數(shù)學(xué)模型能夠重現(xiàn)憶阻器所具備的復(fù)雜動(dòng)力學(xué)特性, 對(duì)于后續(xù)的應(yīng)用研究至關(guān)重要. 目前, 眾多不同類型的憶阻器模型被構(gòu)建[23-35], 例如不同材料的憶阻器、 惠普憶阻器、 閾值開關(guān)憶阻器、 電壓閾值自適應(yīng)憶阻器、 擴(kuò)散型憶阻器、 單極性憶阻器等等.
憶阻器通常由金屬-絕緣體-金屬(metal-insulator-metal, MIM)結(jié)構(gòu)制成, 大多新型材料具有環(huán)境穩(wěn)定性、 合適的能帶結(jié)構(gòu)和高導(dǎo)電性, 故新型材料制備的憶阻器在邏輯電路的構(gòu)建中具有很高的應(yīng)用潛力. Pt/W/Ta2O5/Pt/Ti/SiO2/Si[23], Au/Pt/TiO2/Pt/Ti/Au/Pt/TiO2/Pt/Ti[24], Pd/Bi2O2Se/Pd[25], Pt/ZnO/Pt[26], Ta/TaOx/Pt[27], Pt/Ta/Ta2O5/Pt/Ti[28], Pt/HfO2/TiN[29], Pt/Ta2O5/W/Pt[30]等材料制備的憶阻器都已在憶阻邏輯電路中驗(yàn)證了模型的合理性, 圖1展示了新型材料Pd/Bi2O2Se/Pd制備的憶阻器示意圖.
圖1 新型材料Pd/Bi2O2Se/Pd制備的憶阻器模型
雖然由新型材料制備的憶阻器具有獨(dú)特的物理和電子特性, 但是憶阻器的成功制備存在一定的技術(shù)壁壘, 且基于憶阻器構(gòu)建的邏輯電路對(duì)憶阻器的一致性和穩(wěn)定性要求較高, 構(gòu)建具有實(shí)物憶阻器電氣特性的憶阻器數(shù)學(xué)模型至關(guān)重要.
2008年, 惠普實(shí)驗(yàn)室提出了一個(gè)Pt/TiO2/Pt結(jié)構(gòu)的憶阻器模型[19](圖2). 該模型將兩層納米級(jí)的二氧化鈦薄膜夾在兩個(gè)鉑片電極之間, 其中一層TiO2薄膜沒有氧空位, 另一層薄膜中為缺失氧原子的TiO2-x層(摻雜層), 憶阻器的阻值是這兩層薄膜阻值的總和. 由于通過薄膜的電荷量和電荷方向的不同, 摻雜層的氧空位會(huì)發(fā)生離子遷移, 兩層薄膜的厚度會(huì)發(fā)生變化, 從而改變憶阻器的電阻狀態(tài). 定義憶阻器的高阻態(tài)阻值和低阻態(tài)阻值分別為Roff和Ron; 定義未摻雜薄膜端為憶阻器的正極, 摻雜層薄膜端為負(fù)極. 當(dāng)在憶阻器的正極施加高電平時(shí), 憶阻值減少, 反之, 憶阻值增加. 當(dāng)離子線性遷移時(shí), 模型的阻值M(x)定義為:
圖2 Pt/TiO2/Pt憶阻器模型
M(x)=Ron·x+Roff·(1-x)
(1)
(2)
(3)
其中:D為憶阻結(jié)構(gòu)中兩層薄膜的總厚度,w為摻雜層的厚度,x為摻雜層在兩層薄膜中的占比,μv為內(nèi)部離子漂移的平均速度,i為通過該憶阻器的電流.
在納米級(jí)器件中, 極小的電壓就可以產(chǎn)生巨大的電場, 并在離子遷移過程中出現(xiàn)顯著的非線性特征. 離子的非線性漂移在兩層薄膜的邊界處特別明顯, 遷移速度逐漸減少至零. 考慮到狀態(tài)變量x的值應(yīng)該限制在區(qū)間[0,D]中, 為了模擬非線性離子遷移現(xiàn)象, 在線性離子遷移模型的基礎(chǔ)上引入特殊的窗函數(shù)f(x)可以得到對(duì)應(yīng)的憶阻器非線性離子遷移模型. 相較于線性離子遷移模型, 該模型除狀態(tài)變量x的變化趨勢(shì)發(fā)生改變(見式(4)), 其余狀態(tài)方程均相同.
(4)
文獻(xiàn)[31]基于量子力學(xué)遂穿現(xiàn)象, 提出了耦合歐姆-隧穿憶阻器模型, 也稱閾值開關(guān)模型 (Threshold Switch Model). 該模型的等效電路如圖3所示, 圖中的R表示歐姆阻值,Rt表示憶阻值,L表示隧道勢(shì)壘的寬度. 該憶阻器模型的阻值定義為:
圖3 耦合歐姆—隧穿憶阻器模型
(5)
(6)
其中:L表示隧道勢(shì)壘的寬度;f0,κ為該模型的擬合參數(shù);r表示一個(gè)與電壓有關(guān)的參數(shù).
閾值自適應(yīng)模型[32](threshold adaptive memristor, TEAM)是一種基于電流閾值的憶阻器模型, 即憶阻器的阻值是否變化取決于流經(jīng)憶阻器的實(shí)時(shí)電流值與電流閾值之間的關(guān)系. 然而, 在大部分基于憶阻器的邏輯電路設(shè)計(jì)中, 基于電壓閾值的憶阻器模型應(yīng)用更廣泛. 基于此, 文獻(xiàn)[33]引入電壓閾值自適應(yīng)模型(voltage threshold adaptive memristor, VTEAM), 該模型允許通過調(diào)整模型的參數(shù)來模擬各種憶阻器的行為. 該模型中的憶阻器阻值定義為
(7)
式中:Roff和Ron分別為憶阻值的極大和極小值,xoff和xon分別為憶阻器內(nèi)部狀態(tài)變量x的上下邊界值.
VTEAM模型區(qū)別于HP憶阻模型的一個(gè)顯著特性是具有閾值特性, 憶阻器的阻值切換速度更快. 當(dāng)施加于憶阻器兩端的電壓為正負(fù)閾值之間的數(shù)值, 憶阻值不發(fā)生變化. 而施加的電壓超過正電壓閾值, 憶阻值增加. 相反, 若施加的電壓低于負(fù)電壓閾值, 憶阻值減少. 該模型結(jié)構(gòu)簡單、 具有閾值特性、 準(zhǔn)確度高, 還有一定的通用性, 為憶阻邏輯電路的設(shè)計(jì)提供了新的思路.
對(duì)于非易失性憶阻器, 在不施加偏置電壓時(shí), 可以保持在原來的阻值狀態(tài). 然而, 在去除偏置電壓時(shí), 若此前易失性憶阻器處于低阻值狀態(tài), 其會(huì)在納秒到毫秒的時(shí)間內(nèi)自發(fā)地從低阻值狀態(tài)回到高阻值狀態(tài). 數(shù)字型易失性憶阻器(擴(kuò)散型憶阻器)是構(gòu)建邏輯電路的理想選擇, 不但具有很高的開關(guān)比, 可以在低至納秒的時(shí)間內(nèi)完成電阻切換, 還具有良好的可擴(kuò)展性, 基于擴(kuò)散型憶阻器進(jìn)行內(nèi)存中計(jì)算的可能性已經(jīng)被證明[34]. 但數(shù)字型易失性憶阻器需要一個(gè)電源來存儲(chǔ)信息, 故其構(gòu)建的邏輯電路會(huì)比基于非易失性憶阻器構(gòu)建的電路復(fù)雜.
雙極性憶阻器具有阻值快速切換特性與閾值特性, 為其實(shí)現(xiàn)憶阻邏輯電路提供了天然的條件. 目前, 大量基于憶阻器的邏輯電路設(shè)計(jì)方案采用雙極性憶阻器模擬不同的邏輯功能[19,23-34]. 不同于基于雙極性憶阻器的邏輯電路, 單極性憶阻器有著很高的開關(guān)比和極高的集成度, 并且該憶阻器僅僅與施加的電壓大小有關(guān), 只需要一個(gè)極性的電壓[35], 能夠有效降低外圍電路的復(fù)雜度. 另外, 單極性憶阻器更容易并入存儲(chǔ)器陣列中, 進(jìn)而實(shí)現(xiàn)功能復(fù)雜的邏輯電路.
針對(duì)以上介紹的憶阻器模型進(jìn)行整理和分析, 并將得到的結(jié)果整理于表1:
表1 憶阻器模型匯總
從表1可以發(fā)現(xiàn)基于Pt/TiO2/Pt材料構(gòu)建的惠普憶阻器模型簡單, 然而其沒有閾值特性, 阻值的狀態(tài)易受到外界的干擾, 抗干擾能力較弱. 但是, 惠普憶阻器實(shí)現(xiàn)阻值的轉(zhuǎn)換對(duì)施加電壓的大小沒有太高的要求, 故其在憶阻器/CMOS混合構(gòu)建的邏輯電路中應(yīng)用廣泛. 表1中應(yīng)用于數(shù)字邏輯電路的憶阻器模型多為雙極性, 與單極性憶阻器相比, 電阻的開關(guān)能發(fā)生在較低的電壓條件下. 根據(jù)表1, 可以看出大多數(shù)憶阻器模型都具有閾值特性, 且將電壓作為閾值的憶阻器模型占大多數(shù), 值得注意的是, 表中提及的TEAM模型為電流閾值模型. 憶阻器具有的閾值特性能夠保證憶阻器具有良好的開關(guān)特性, 這是其能否在數(shù)字邏輯電路中得到較好應(yīng)用的關(guān)鍵特性. 此外, TEAM模型和VTEAM模型相對(duì)精確度較高, 也被廣泛應(yīng)用于實(shí)現(xiàn)憶阻邏輯電路.
憶阻器憑借良好的開關(guān)特性被廣泛應(yīng)用于邏輯電路. 基于憶阻器的邏輯電路不僅能夠?qū)崿F(xiàn)布爾邏輯、 實(shí)質(zhì)蘊(yùn)涵邏輯, 還能實(shí)現(xiàn)攜帶信息量更多、 運(yùn)算效率更高的三值邏輯電路. 基于憶阻器的邏輯電路與傳統(tǒng)的邏輯電路內(nèi)部的邏輯狀態(tài)變量存在著明顯的差異. 在由晶體管、 集成芯片構(gòu)建的傳統(tǒng)邏輯電路中, 電壓是唯一邏輯狀態(tài)變量. 輸入端口接入電壓信號(hào), 并在整個(gè)信號(hào)處理過程以電壓形式進(jìn)行邏輯運(yùn)算, 最后輸出也為電壓形式. 而憶阻邏輯電路內(nèi)部的邏輯狀態(tài)變量除了具有傳統(tǒng)邏輯電路電壓形式外還有兩種不同的表現(xiàn)形式: 一種是電阻作為輸入、 中間運(yùn)算和輸出結(jié)果中的唯一狀態(tài)變量; 另一種是電壓和電阻都作為狀態(tài)變量引入電路的運(yùn)算.
基于以上分析, 本文將憶阻邏輯電路大致分為三類: 第一類邏輯電路中的輸入、 輸出狀態(tài)變量均為阻值, 定義其為R-R憶阻邏輯電路; 第二類邏輯電路中的輸入、 輸出狀態(tài)變量均為電壓, 定義其為V-V憶阻邏輯電路; 第三類電路中的輸入、 輸出狀態(tài)變量為阻值和電壓的組合, 定義其為V與R組合狀態(tài)變量憶阻邏輯電路. 在此分析這三類憶阻邏輯電路的特性, 為后續(xù)其在神經(jīng)形態(tài)系統(tǒng)中的應(yīng)用提供良好的參考.
2.1.1 R-R型憶阻邏輯電路
R-R型憶阻邏輯電路是指使用憶阻值替代傳統(tǒng)邏輯電路中的電平信號(hào)來進(jìn)行邏輯計(jì)算的一類電路. 1910年, 《數(shù)學(xué)原理》一書提出了4種基本的邏輯運(yùn)算[36]. 其中的“與”“或”“非”運(yùn)算被廣泛地應(yīng)用于計(jì)算機(jī)系統(tǒng)和集成電路, 這3個(gè)基本運(yùn)算操作能夠形成一個(gè)完整的集合. 還有一個(gè)被命名為“實(shí)質(zhì)蘊(yùn)涵(Material implication, IMP)”的運(yùn)算操作, 由p和q兩個(gè)變量構(gòu)成, 邏輯函數(shù)pIMPq(p→q)的數(shù)學(xué)物理含義為“如果p, 那么q”, 用數(shù)字邏輯中的表達(dá)式如下:
(8)
惠普實(shí)驗(yàn)室提出了基于憶阻器實(shí)現(xiàn)實(shí)質(zhì)蘊(yùn)涵邏輯的電路(IMPLY), 該電路的輸入、 輸出邏輯狀態(tài)變量均為憶阻值. 實(shí)質(zhì)蘊(yùn)涵邏輯操作(IMP)可以由兩個(gè)憶阻器和一個(gè)電阻器構(gòu)建的簡單電路實(shí)現(xiàn), 并運(yùn)用提出的IMP操作和FALSE邏輯[37]操作(總是輸出邏輯“0”)構(gòu)建了一個(gè)二輸入的“與非”門. 圖4為IMP操作的電路圖, 由兩個(gè)參數(shù)完全相同的憶阻器P和Q與一個(gè)接地負(fù)載電阻器RG串聯(lián)構(gòu)建, 表2為其對(duì)應(yīng)的真值表. 基于該IMP和FALSE操作, 能夠?qū)崿F(xiàn)不同的布爾邏輯, 具體的實(shí)現(xiàn)方法列于表3.
圖4 實(shí)現(xiàn)IMP實(shí)質(zhì)蘊(yùn)涵邏輯的電路示意圖
表2 p IMP q →q′對(duì)應(yīng)的邏輯真值表
表3 基于IMP操作和FALSE操作的不同布爾邏輯實(shí)現(xiàn)方法
IMP邏輯操作的實(shí)現(xiàn)思路: 對(duì)兩個(gè)憶阻器施加不同的電壓, 其中施加于P上的電壓為VCOND, 施加于Q上的電壓為VSET, 限定兩個(gè)電壓均為負(fù)電壓, 且滿足|VP|<|VQ|. 定義憶阻器的極小值Ron(極大值Roff)對(duì)應(yīng)電路中狀態(tài)變量的邏輯“1”(邏輯“0”), 并規(guī)定電阻器的阻值滿足不等式Ron IMPLY電路在憶阻邏輯電路中應(yīng)用廣泛, 但基于IMPLY構(gòu)建的電路存在一個(gè)主要缺陷, 即其需要冗長的周期序列以執(zhí)行不同的邏輯運(yùn)算. 從性能的角度分析, 電路延時(shí)過長. 多次IMP邏輯操作還可能導(dǎo)致錯(cuò)誤累積從而影響邏輯運(yùn)算的準(zhǔn)確性. 針對(duì)IMPLY電路的進(jìn)一步研究和改進(jìn)工作大多在文獻(xiàn)[38]提出的電路基礎(chǔ)上進(jìn)行. 文獻(xiàn)[39]提出了引入變量的互補(bǔ)表示和多輸入運(yùn)算實(shí)現(xiàn)IMP邏輯的新方法, 構(gòu)建的電路如圖5a所示. 變量的互補(bǔ)表示策略中每個(gè)輸入和輸出變量需要兩個(gè)憶阻器, 一個(gè)存儲(chǔ)變量的值, 另一個(gè)存儲(chǔ)其反向值. 多輸入運(yùn)算時(shí)應(yīng)考慮所使用憶阻器的極大值和極小值的比率足夠大, 以區(qū)分多個(gè)并行非導(dǎo)電器件和單個(gè)導(dǎo)電器件. 如果輸入被用于并行執(zhí)行多個(gè)布爾操作, 每個(gè)邏輯門的操作行為將互相影響, 導(dǎo)致結(jié)果不準(zhǔn)確. 文獻(xiàn)[40]為解決該問題, 提出了一種綜合算法, 并設(shè)計(jì)了新的沒有扇出問題的邏輯異或門和同或門, 如圖5b所示. 圖5 基于憶阻器實(shí)現(xiàn)的IMPLY電路及其改進(jìn)電路 文獻(xiàn)[27]基于IMPLY電路, 提出了一種新的邏輯電路實(shí)現(xiàn)方法, 并構(gòu)建了雙憶阻器邏輯電路和三憶阻器邏輯電路, 如圖5c所示. 該電路與IMPLY電路最大的區(qū)別為電阻器RG不再接地, 并且在實(shí)現(xiàn)不同邏輯函數(shù)時(shí), 需要施加特定的電壓在憶阻器和電阻器上. 文獻(xiàn)[41]中提出了一種憶阻器和CMOS技術(shù)兼容實(shí)現(xiàn)IMPLY電路的方法, 該電路的輸入為兩個(gè)憶阻器P和Q的阻值狀態(tài), 而輸出的阻值狀態(tài)可以認(rèn)為是憶阻器Q的最終阻值狀態(tài), 使得阻值能夠作為輸出傳遞到下一級(jí)電路, 構(gòu)建的電路如圖5d所示. IMPLY電路與交叉陣列兼容, 故很多研究將IMPLY電路集成于交叉陣列中, 如圖5e所示, 在工作憶阻器所在的位線上施加特定的電壓VSET和VCOND, 在子線上串聯(lián)一個(gè)接地的電阻器RG. 文獻(xiàn)[42]基于IMPLY電路, 提出了一個(gè)新的基于憶阻器的邏輯電路——憶阻器輔助邏輯(Memristor Aided loGIC, MAGIC), 該電路中輸入、 輸出邏輯狀態(tài)變量均為憶阻值, 定義憶阻器的極小值Ron(極大值Roff)對(duì)應(yīng)電路中狀態(tài)變量的邏輯“1”(邏輯“0”). 在MAGIC中, 不需要電阻器這一元器件進(jìn)行分壓操作, 整個(gè)電路僅由憶阻器實(shí)現(xiàn). 此外, MAGIC電路中使用不同的憶阻器作為輸入和輸出, 輸出被寫入一個(gè)專用的憶阻器, 將輸入和輸出邏輯狀態(tài)變量進(jìn)行分離, 保護(hù)輸入變量不被破壞. 該方法構(gòu)建的電路還具有結(jié)構(gòu)簡單的特點(diǎn), 只需要在開關(guān)上施加一個(gè)特定的電壓就能實(shí)現(xiàn)對(duì)應(yīng)的邏輯功能. 基于MAGIC電路構(gòu)建的基本邏輯門如圖6a所示, 輸入憶阻器Min1和Min2的初始阻值狀態(tài)作為邏輯電路的輸入, 需要事先對(duì)憶阻器進(jìn)行初始化操作, 將這兩個(gè)輸入憶阻器與輸出憶阻器Mout串聯(lián)連接, 施加特定的電壓后Mout切換阻值狀態(tài). 具體地, MAGIC電路的實(shí)現(xiàn)分為連續(xù)的兩個(gè)階段. 首先將輸出憶阻器的阻值狀態(tài)初始化為特定值, 進(jìn)一步, 對(duì)邏輯電路施加電壓V0. 輸出憶阻器Mout上的電壓取決于輸入和輸出憶阻器的邏輯狀態(tài). 簡而言之, 輸入憶阻器和輸出憶阻器構(gòu)成一個(gè)分壓器. 當(dāng)施加在憶阻器兩端的電壓大于其閾值電壓, 輸出憶阻器的邏輯狀態(tài)能夠改變. 相反, 若電壓低于閾值電壓, 輸出憶阻器的阻值將保持在初始狀態(tài). MAGIC電路結(jié)構(gòu)簡單, 只需要一個(gè)控制電壓, 不需要額外的電阻器, 輸入和輸出狀態(tài)存儲(chǔ)在不同的憶阻器中, 且運(yùn)算過程高效穩(wěn)定, 能夠重復(fù)操作. 故基于MAGIC的邏輯電路通用性較強(qiáng), 目前在該方面的研究很廣泛. 文獻(xiàn)[43]將憶阻器的阻值分為高阻、 中阻、 低阻3個(gè)阻值狀態(tài), 表示邏輯“0”“1”“2”, 基于MAGIC電路設(shè)計(jì)實(shí)現(xiàn)了三值邏輯門電路. MAGIC電路也能夠與交叉陣列兼容, 在輸入憶阻器所在列施加特定電壓, 輸出憶阻器所在列接地, 電路示意圖如圖6b所示, 使用此設(shè)計(jì)方法在憶阻邏輯電路中應(yīng)用廣泛. 圖6 基于憶阻器實(shí)現(xiàn)的MAGIC電路及其改進(jìn)電路 文獻(xiàn)[44]基于IMPLY電路, 提出了一個(gè)新型邏輯門——憶阻器驅(qū)動(dòng)門(memristors-as-drivers gate, MAD Gate). 該電路通過感應(yīng)輸入憶阻器的值, 并將其作為輸出憶阻器的驅(qū)動(dòng)器, 該電路實(shí)現(xiàn)的簡單邏輯門例如“與”“或”“非”“與非”“或非”“異或”門等都只有一個(gè)邏輯操作的延時(shí), 并且最多只需要3個(gè)憶阻器. 以邏輯“與”門為例, 電路圖如圖6c所示. 憶阻器A和B的憶阻值作為輸入邏輯狀態(tài)變量, 輸出邏輯狀態(tài)變量為與開關(guān)相連的憶阻器的阻值, 定義憶阻器的極小值Ron(極大值Roff)對(duì)應(yīng)電路中狀態(tài)變量的邏輯“1”(邏輯“0”). 為保證輸入憶阻器在傳感階段的阻值不發(fā)生變化, 選取比憶阻器的正閾值電壓小的VCOND. 同時(shí)為了確保輸出憶阻器的憶阻值能夠發(fā)生改變, 選取比憶阻器的負(fù)閾值電壓小的VSET. 若憶阻器A和B的阻值都對(duì)應(yīng)邏輯“0”或者任意一個(gè)輸入憶阻器的阻值對(duì)應(yīng)邏輯“0”, 控制開關(guān)閉合端的電壓近似于0, 不足以啟動(dòng)開關(guān), 故輸出憶阻器保持其原始狀態(tài)“0”. 而若A和B均處于低阻值狀態(tài), 將會(huì)開啟與輸出憶阻器相連的開關(guān), 輸出憶阻器的阻值在VSET的影響下減小, 邏輯狀態(tài)轉(zhuǎn)變?yōu)檫壿嫛?”. 文獻(xiàn)[45]基于MAD設(shè)計(jì)了一個(gè)基于憶阻器的三值邏輯門電路, 電路示意圖如圖6d所示, 開關(guān)S1和S2的開閉由端點(diǎn)n的電壓決定, 兩個(gè)電流Ireset1和Ireset2被選通并流經(jīng)輸出憶阻器改變其阻值狀態(tài), 憶阻器的高阻、 中阻、 低阻分別表示邏輯“0”“1”“2”, 實(shí)現(xiàn)了憶阻邏輯電路的多值運(yùn)算. 2.1.2 V-V型憶阻邏輯電路 基于憶阻器構(gòu)建的邏輯電路中的輸入、 輸出邏輯狀態(tài)變量除了可以是電阻, 也可以為電壓, 并將輸入輸出變量均為電平信號(hào)的電路稱為V-V型憶阻邏輯電路. 文獻(xiàn)[46]中提出邏輯運(yùn)算可以通過將憶阻器與CMOS技術(shù)集成的方法來實(shí)現(xiàn), 提出了一種基于憶阻器/CMOS混合結(jié)構(gòu)的邏輯電路實(shí)現(xiàn)方法, 并將其命名為憶阻器比例邏輯(memristor ratioed logic, MRL). 在這種邏輯電路中, 邏輯運(yùn)算中的“與”和“或”功能可以通過憶阻器實(shí)現(xiàn), 邏輯運(yùn)算中的“非”門電路和信號(hào)放大功能由CMOS技術(shù)構(gòu)建的反相器實(shí)現(xiàn). 基于MRL結(jié)構(gòu)實(shí)現(xiàn)的基本邏輯電路示意圖如圖7所示. 圖7 基于MRL結(jié)構(gòu)實(shí)現(xiàn)的基本邏輯電路 不同于IMPLY電路實(shí)現(xiàn)的二值邏輯, MRL電路中的輸入輸出邏輯狀態(tài)變量始終為電壓信號(hào), 高電平(低電平)對(duì)應(yīng)電路狀態(tài)變量的邏輯“1”(邏輯“0”). 將施加在兩個(gè)憶阻器上的電壓Vin1和Vin2作為該邏輯電路的輸入變量, 輸出則為兩個(gè)憶阻器相連端口的電壓Vout. 邏輯“或”門和邏輯“與”門電路拓?fù)湎嗤?均可由兩個(gè)極性相反的憶阻器串聯(lián)構(gòu)建, 如圖7a和圖7b所示. 若在兩個(gè)邏輯門電路施加相同的輸入信號(hào)(高電平或低電平), 輸入端口不存在電壓降, 兩個(gè)憶阻器之間沒有電流通過, 那么輸出電壓與輸入電壓相同. 然而, 若施加的兩個(gè)輸入信號(hào)電平相反(一個(gè)高電平一個(gè)低電平), 電路中就會(huì)存在壓降, 相應(yīng)地, 電流將會(huì)從高電平一端流向低電平一端, 同時(shí)憶阻器的阻值狀態(tài)將會(huì)在電流的作用下發(fā)生改變, 進(jìn)而影響輸出電壓Vout的值. 在邏輯“或”門和“與”門的輸出端連接一個(gè)CMOS反相器, 即可實(shí)現(xiàn)邏輯“或非”門和“與非”門, 如圖7c和圖7d所示. 基于二輸入邏輯“或”門和“與”門的電路結(jié)構(gòu), 構(gòu)建了多輸入“或”門和“與”門, 如圖7e和圖7f所示. 在大多基于MRL構(gòu)建的電路中, 使用CMOS反相器實(shí)現(xiàn)邏輯“非”門, 而文獻(xiàn)[47]中使用一個(gè)憶阻器和一個(gè)CMOS晶體管混合的結(jié)構(gòu)改進(jìn)了邏輯“非”門, 如圖8a所示, 在一定程度上減少了電路的面積. 文獻(xiàn)[48]通過兩個(gè)憶阻器和一個(gè)CMOS反相器構(gòu)建了一個(gè)三值邏輯“非”門, 如圖8b所示. 文獻(xiàn)[49-50]基于MRL設(shè)計(jì)了一個(gè)三值邏輯電路, 將作為狀態(tài)變量的電平信號(hào)分為三檔, 分別代表邏輯“0”“1”“2”. 其中“與”“或”門的構(gòu)建與MRL相同, “非”“與非”“與或”門的構(gòu)建都在輸出端口串聯(lián)了一個(gè)憶阻器, 并且在憶阻器的輸入端施加一半的電源電壓, 實(shí)現(xiàn)的邏輯“與非”門的電路圖如圖8c所示. 在MRL中, 不同的電路拓?fù)浣Y(jié)構(gòu)實(shí)現(xiàn)了不同的邏輯函數(shù)功能, 整個(gè)運(yùn)算過程不需要額外的初始化操作, 電路的輸出結(jié)果與憶阻器的初始狀態(tài)無關(guān), 通用性更好. 例如文獻(xiàn)[51]提出了一個(gè)新的憶阻器/CMOS邏輯電路, 可以在同一個(gè)電路中實(shí)現(xiàn)邏輯“與”“或”“異或”“同或”4種邏輯運(yùn)算, 如圖8d所示. 圖8 基于憶阻器的MRL改進(jìn)電路 基于MRL設(shè)計(jì)的邏輯電路中, 邏輯“非”門的實(shí)現(xiàn)方式大多還需要一個(gè)CMOS反相器, 故基于該方法構(gòu)建的邏輯電路相較于純憶阻器構(gòu)建的邏輯電路, 功耗和面積都更大. 在計(jì)算輸出電壓過程中, 盡管滿足不等式Roff?Ron, 仍存在少量的電壓衰減. 但是通過對(duì)電路的不斷級(jí)聯(lián), 會(huì)導(dǎo)致電壓衰減現(xiàn)象更加明顯, 最終影響邏輯電路的準(zhǔn)確性. 文獻(xiàn)[31]提出了一個(gè)基于憶阻器的類CMOS電路, 該電路的輸入、 輸出邏輯狀態(tài)變量均為電壓, 也屬于V-V型憶阻邏輯電路. 該電路中使用正向極化憶阻器代替N型晶體管, 用反向極化憶阻器代替P型晶體管. 相應(yīng)地, 正向極化憶阻器的初始阻值為Ron, 反向極化憶阻器的初始邏輯狀態(tài)為Roff. 若在正向極化憶阻器兩端施加正電壓, 阻值狀態(tài)將不會(huì)發(fā)生改變, 若施加的電壓為負(fù)電壓, 阻值將會(huì)從Ron增大至Roff. 若在反向極化憶阻器兩端施加正電壓, 阻值狀態(tài)將不會(huì)發(fā)生改變, 而若施加的電壓為負(fù)電壓, 阻值將從Roff減少至Ron. 基于該電路構(gòu)建的邏輯“非”“與非”“或非”門電路如圖8e所示. 圖中憶阻器顯示為三端器件, 以方便其與CMOS器件比較. 該電路的輸入輸出邏輯狀態(tài)變量均為電壓, 定義輸入信號(hào)為正電壓時(shí), 對(duì)應(yīng)邏輯“1”, 輸入信號(hào)為負(fù)電壓時(shí), 對(duì)應(yīng)邏輯“0”, 定義輸出電壓近似于電源電壓Vdd時(shí), 對(duì)應(yīng)邏輯“1”, 近似于接地電壓Gnd時(shí), 對(duì)應(yīng)邏輯“0”. 以實(shí)現(xiàn)的邏輯“非”門為例, 在輸入正電壓時(shí), 兩個(gè)憶阻器都將維持其原先的阻值狀態(tài), 即反向極化憶阻器為高阻值狀態(tài), 正向極化憶阻器為低阻值狀態(tài). 根據(jù)電路分壓原理, 輸出的電壓近似為0V, 對(duì)應(yīng)邏輯“0”. 相反地, 若施加的電壓為負(fù)電壓, 兩個(gè)憶阻器的阻值狀態(tài)都發(fā)生了翻轉(zhuǎn), 即反向極化憶阻器的阻值狀態(tài)轉(zhuǎn)變?yōu)榈妥柚禒顟B(tài), 正向極化憶阻器的阻值狀態(tài)轉(zhuǎn)變?yōu)楦咦柚禒顟B(tài), 輸出的電壓近似表示為電源電壓, 對(duì)應(yīng)邏輯“1”. 2.1.3 V-R/R-V型憶阻邏輯電路 在V-R型憶阻邏輯電路中, 將電壓信號(hào)作為邏輯輸入進(jìn)行邏輯計(jì)算, 而計(jì)算得到的結(jié)果由憶阻器后繼的阻值狀態(tài)作為邏輯輸出. R-V型憶阻邏輯電路是將憶阻器的阻值狀態(tài)作為邏輯輸入, 電路的輸出電壓與參考值進(jìn)行比較, 得到邏輯輸出結(jié)果. 由于輸入輸出邏輯狀態(tài)不統(tǒng)一, 在寫入和讀出相應(yīng)變量時(shí), 需要采用不同的方法, 在一定程度上增加了設(shè)計(jì)電路的復(fù)雜性, 因此邏輯電路中輸入輸出狀態(tài)變量為不同變量的電路較少. Akers邏輯陣列[52]是由實(shí)現(xiàn)相同邏輯功能的單元互連而成, 每個(gè)邏輯單元的輸出被傳輸?shù)较路胶陀覀?cè)的數(shù)組, 控制對(duì)所有的行輸入高電平(邏輯“1”), 對(duì)所有的列輸入低電平(邏輯“0”), 電路如圖9a所示. 各個(gè)單元實(shí)現(xiàn)的邏輯函數(shù)為 (9) 文獻(xiàn)[53]提出了一個(gè)基于互補(bǔ)憶阻器結(jié)構(gòu)的Akers邏輯陣列, 該電路由兩個(gè)反向串聯(lián)的互補(bǔ)憶阻器(兩個(gè)憶阻器的阻值狀態(tài)相反)組成(圖9b). 該電路的輸入邏輯狀態(tài)變量為憶阻器的阻值, 定義憶阻器的極小值Ron(極大值Roff)對(duì)應(yīng)電路中狀態(tài)變量的邏輯“1”(邏輯“0”), 在x,y兩端施加特定的電壓后, 輸出為兩個(gè)憶阻器相連公共端口的電壓Vf, 定義高電平(低電平)對(duì)應(yīng)邏輯“1”(邏輯“0”), 該電路屬于R-V型憶阻邏輯電路. 如果憶阻器MZ為高阻值狀態(tài), 則與MZ相連的電路導(dǎo)通, 施加在y上的電壓作為電路的輸出. 若MZ為低阻值狀態(tài), 與MZ相連的電路斷開, 而與互補(bǔ)憶阻器相連的電路導(dǎo)通, 施加在x上的電壓作為電路的輸出, 兩個(gè)憶阻器相連的公共端口電壓表示為 (10) 進(jìn)一步, 設(shè)計(jì)了一個(gè)邏輯“異或”門, 該門電路由8個(gè)憶阻器構(gòu)建, 并對(duì)每行的最左邊列施加高電平, 并將每列最上方一行接地, 電路如圖9c所示. 電路的實(shí)現(xiàn)分為兩個(gè)階段: 首先要對(duì)電路中的憶阻器進(jìn)行初始化操作, 即寫入需要輸入的邏輯狀態(tài)變量; 緊接著, 通過施加一個(gè)低電平執(zhí)行相應(yīng)的布爾邏輯函數(shù). 需要說明的是, 這里使用的低電壓需要確保陣列中的憶阻器阻值狀態(tài)不會(huì)發(fā)生改變. 圖9 Akers邏輯陣列及實(shí)現(xiàn)方法 文獻(xiàn)[54]提出了一個(gè)由憶阻器和開關(guān)構(gòu)建的邏輯電路, 可以通過不同的開關(guān)操作實(shí)現(xiàn)基本的“與”“或”“非”“與非”“或非”門, 電路圖如圖10所示. 在一個(gè)電路中就能實(shí)現(xiàn)多個(gè)邏輯操作, 大大節(jié)省了電路的面積和功耗, 并且提出的電路不需要進(jìn)行初始化操作, 減少電路的執(zhí)行時(shí)間. 該電路的輸入邏輯狀態(tài)變量為電壓, 定義信號(hào)的高電平(低電平)對(duì)應(yīng)電路狀態(tài)變量的邏輯“1”(邏輯“0”). 輸出邏輯狀態(tài)變量為憶阻值, 定義憶阻器的極小值Ron(極大值Roff)對(duì)應(yīng)電路中狀態(tài)變量的邏輯“1”(邏輯“0”), 屬于V-R型憶阻邏輯電路類型. 以邏輯“與”門為例做詳細(xì)介紹, 上面部分的4個(gè)憶阻器為調(diào)控憶阻器, 下面的兩個(gè)憶阻器為負(fù)載電阻, 邏輯“與”門通過將憶阻器M1,M2,Ms2與電壓相連端的開關(guān)閉合, 其余憶阻器相連的開關(guān)斷開, 定義憶阻器M1和M2的阻值分別為R1和R2,Ms2的阻值遠(yuǎn)大于R1和R2, 那么3個(gè)憶阻器相連的公共端的電壓為: (11) 若V1和V2均為高電平(低電平), 公共端電壓Vs近似等于高電平(低電平), 產(chǎn)生的電流從Ms2的正極流向負(fù)極(負(fù)極流向正極), 其憶阻值減少(增加), 故輸出的狀態(tài)變量對(duì)應(yīng)邏輯“1”(邏輯“0”). 若V1為高電平,V2為低電平,M2阻值減少, 公共端電壓Vs近似等于低電平, 輸出邏輯“0”. 類似地, 若V1為低電平,V2為高電平, 輸出“0”. 針對(duì)以上的3類憶阻邏輯電路, 本文從組成部分、 計(jì)算方式、 邏輯狀態(tài)變量、 寫入/讀取變量外圍電路的復(fù)雜度、 能量損耗、 級(jí)聯(lián)能力、 延時(shí)性7個(gè)方面開展對(duì)比和分析, 并將結(jié)果整理于表4中. 表4 憶阻邏輯電路性能對(duì)比 1) R-R 型憶阻邏輯電路 輸入輸出狀態(tài)變量均由憶阻值表示, 有助于構(gòu)建結(jié)構(gòu)簡單的憶阻存內(nèi)計(jì)算系統(tǒng). 實(shí)現(xiàn)二值邏輯時(shí), 該類型邏輯電路中憶阻器的極大值和極小值分別表示邏輯“0”和邏輯“1”. 實(shí)現(xiàn)三值邏輯時(shí), 該類型邏輯電路一般是將憶阻器的阻值分為3檔, 分別對(duì)應(yīng)邏輯“0”“1”“2”或者邏輯“-1”“0”“1”. 該類型的憶阻邏輯電路組成部分簡單, 極大地縮減了電路的規(guī)模, 減少了電路的功耗. 然而, R-R型憶阻邏輯電路的計(jì)算方式為串行, 需要設(shè)定冗長的時(shí)間序列, 極大地增加了邏輯計(jì)算的時(shí)間成本, 延時(shí)性較差. 同時(shí), 該類型電路需要較復(fù)雜的外圍電路, 進(jìn)行寫入/讀取變量的操作. 2)V-V型憶阻邏輯電路 電壓表示輸入輸出的邏輯狀態(tài)變量, 與已經(jīng)成熟的CMOS技術(shù)兼容, 對(duì)驅(qū)動(dòng)電路的要求較低. 實(shí)現(xiàn)二值邏輯時(shí), 邏輯“0”和邏輯“1”分別由低電平和高電平表示. 實(shí)現(xiàn)三值邏輯時(shí), 一般采用3個(gè)不同的電壓, 分別對(duì)應(yīng)邏輯“0”“1”“2”或者邏輯“-1”“0”“1”. 該類型的憶阻邏輯電路, 通過直接給操作電壓分配邏輯意義, 消除了R-R型憶阻邏輯電路中將邏輯輸入信號(hào)寫入憶阻器的過程, 不需再設(shè)計(jì)外圍電路進(jìn)行寫入狀態(tài)變量的操作. 由于該類型電路的輸出邏輯狀態(tài)變量由電壓表示, 級(jí)聯(lián)性相較于狀態(tài)變量中有阻值的電路更好, 能夠并行地執(zhí)行邏輯計(jì)算. 但輸出電壓是易失性的, 需要額外的存儲(chǔ)單元來存儲(chǔ)邏輯輸出. 除此之外, 該類型的電路較難應(yīng)用于憶阻器的交叉陣列中, 存在一定的局限性. 3) R-V/V-R型憶阻邏輯電路 輸入輸出狀態(tài)變量為憶阻值和電壓的組合, R-V型憶阻邏輯由電阻輸入和電壓輸出構(gòu)成, 而V-R型憶阻邏輯電路中的輸入狀態(tài)變量為電壓, 輸出狀態(tài)變量則為憶阻值. 實(shí)現(xiàn)二值、 三值邏輯功能, 該類型電路所表示的邏輯值與以上討論的兩類邏輯電路相同. R-V型憶阻邏輯電路同V-V型憶阻邏輯電路的輸出邏輯狀態(tài)變量相同, 是易失性的, 需要設(shè)計(jì)能夠?qū)崿F(xiàn)存儲(chǔ)功能的外圍電路. R-V/V-R型組合型邏輯電路的輸入/輸出為憶阻值, 需要設(shè)計(jì)相應(yīng)的外圍電路執(zhí)行寫入/讀取變量操作. 這一類型的電路在邏輯迭代計(jì)算過程中, 每個(gè)計(jì)算的電阻(電壓)輸出都必須轉(zhuǎn)換為下一次計(jì)算的電壓(電阻)輸入, 級(jí)聯(lián)能力一般, 需要設(shè)計(jì)外圍電路實(shí)現(xiàn)變量的轉(zhuǎn)換, 極大地增加了運(yùn)行時(shí)間和功耗, 延時(shí)性一般. 憶阻器不僅可以作為計(jì)算元件, 還可以作為R-R型、 V-R型憶阻邏輯電路中的存儲(chǔ)元件, 它們都是非易失性邏輯, 為開辟非馮諾依曼架構(gòu)開辟了一條新的路徑. 基于內(nèi)存存儲(chǔ)的非易失性布爾邏輯門是構(gòu)成內(nèi)存計(jì)算體系結(jié)構(gòu)的基本和關(guān)鍵塊. 對(duì)于指定的邏輯操作, R-R型憶阻邏輯電路通常比V-V型、 V-R型和R-V型3種憶阻邏輯電路需要更多的外接設(shè)備. 采用相同邏輯配置的R-R型憶阻邏輯電路所實(shí)現(xiàn)的操作通常是有限的, 并且施加在憶阻器上的電壓需要特定的時(shí)間序列, 存在過于冗長的情況. 除此之外, 邏輯狀態(tài)變量中含有阻值的憶阻邏輯電路在變量的寫入或是讀取過程中, 需要外圍電路對(duì)變量進(jìn)行阻值和電壓的轉(zhuǎn)換, 此過程在增加了電路面積的同時(shí)增大了電路的能量損耗. 可重構(gòu)邏輯能夠通過改變相同電路拓?fù)渌鶓?yīng)用的操作信號(hào)來執(zhí)行各種邏輯功能, 提供了高靈活性和內(nèi)在并行性, 這對(duì)于執(zhí)行復(fù)雜的計(jì)算任務(wù)至關(guān)重要. R-R型和V-R型憶阻邏輯電路具有較低的可重構(gòu)性, 級(jí)聯(lián)性一般, 通常需要額外的電路進(jìn)行級(jí)聯(lián), 電路的復(fù)雜性會(huì)在一定程度上提高. 雖然V-V型憶阻邏輯電路的某些電路需要晶體管元器件, 電路面積較大的同時(shí)損耗也會(huì)有所提升. 但該類型的憶阻邏輯電路不需要外設(shè)的電路進(jìn)行邏輯狀態(tài)的讀取和寫入工作, 并且該電路的輸出為電壓, 與現(xiàn)有成熟的CMOS技術(shù)兼容, 級(jí)聯(lián)性能較好, 該類型的電路應(yīng)用較廣闊. 神經(jīng)形態(tài)計(jì)算系統(tǒng)中的邏輯運(yùn)算至關(guān)重要, 不同的邏輯功能(包含“與”“或”“非”等基本邏輯門電路和累加器、 比較器等復(fù)雜邏輯功能電路)可以用憶阻邏輯電路進(jìn)行替換, 進(jìn)一步減少該計(jì)算系統(tǒng)的尺寸和能源消耗. 基于文獻(xiàn)[55], 神經(jīng)形態(tài)系統(tǒng)中傳統(tǒng)二輸入邏輯“與”門和“或”門的構(gòu)建需要6個(gè)CMOS器件, 如圖11b和圖11d所示. 而基于憶阻器構(gòu)建的邏輯電路, 只需要兩個(gè)憶阻器即能實(shí)現(xiàn)二輸入邏輯“與”門和邏輯“或”門, 如圖11a和圖11c所示. 雖然構(gòu)建一個(gè)邏輯門的傳統(tǒng)元器件和憶阻器數(shù)量相差不大, 但神經(jīng)形態(tài)系統(tǒng)是一個(gè)復(fù)雜的腦啟發(fā)并行計(jì)算系統(tǒng), 內(nèi)部含有不計(jì)其數(shù)的計(jì)算單元. 相比之下, 基于憶阻器構(gòu)建的邏輯電路使用的元器件的數(shù)量明顯小于傳統(tǒng)方式構(gòu)建的邏輯電路中使用的器件數(shù), 在尺寸和能源消耗上具有很大的優(yōu)勢(shì). 圖11 基于憶阻器和CMOS技術(shù)構(gòu)建的邏輯“與”“或”門對(duì)比 基于憶阻器的邏輯電路具有小面積、 低功耗、 存算一體、 運(yùn)算速度快等特性, 不僅能夠?qū)崿F(xiàn)基本的布爾邏輯、 三值邏輯運(yùn)算電路, 還能夠?qū)崿F(xiàn)加法器、 乘法器、 編碼器、 譯碼器、 幅度比較器、 多路調(diào)制器、 線性反饋移位寄存器、 觸發(fā)器等不同功能的電路[23,43,56-66], 在數(shù)字邏輯電路中得到了廣泛的應(yīng)用(圖12). 圖12 憶阻邏輯電路在數(shù)字邏輯領(lǐng)域中的不同應(yīng)用 神經(jīng)形態(tài)系統(tǒng)需要并行處理和分析不同計(jì)算單元中的數(shù)據(jù), 其中邏輯運(yùn)算模塊是一個(gè)基本且關(guān)鍵的組成部分, 而憶阻邏輯電路為構(gòu)建一個(gè)運(yùn)算速度更快、 效率更高、 面積更小的神經(jīng)形態(tài)系統(tǒng)提供了很大的可能性. 下面介紹了憶阻邏輯電路在聯(lián)想記憶、 情感計(jì)算、 模式識(shí)別3個(gè)方面的潛在應(yīng)用. 聯(lián)想記憶[67]是神經(jīng)形態(tài)認(rèn)知系統(tǒng)的一個(gè)重要分支, 也是人類大腦所特有的功能, 通常通過一個(gè)感覺信號(hào)或兩個(gè)及以上感覺信號(hào)與一個(gè)行為操作的關(guān)聯(lián)來實(shí)現(xiàn). 巴甫洛夫條件反射[68]是生物聯(lián)想記憶中最具代表性的學(xué)習(xí)類型, 設(shè)計(jì)并實(shí)現(xiàn)巴甫洛夫聯(lián)想記憶成為了人工智能領(lǐng)域內(nèi)的研究熱點(diǎn), 對(duì)研究類腦神經(jīng)網(wǎng)絡(luò)具有重要的意義. 近年來, 有很多工作致力于將憶阻邏輯電路應(yīng)用于巴甫洛夫聯(lián)想記憶電路中. 文獻(xiàn)[69]設(shè)計(jì)了一種帶有時(shí)滯學(xué)習(xí)的巴甫洛夫聯(lián)想記憶神經(jīng)網(wǎng)絡(luò)電路, 實(shí)現(xiàn)了學(xué)習(xí)、 遺忘、 快速學(xué)習(xí)、 慢遺忘、 時(shí)滯學(xué)習(xí)等功能. 文獻(xiàn)[70]提出了一種基于二階條件反射的巴甫洛夫聯(lián)想記憶電路. 該回路可以在初始學(xué)習(xí)后對(duì)條件刺激作出反應(yīng), 并實(shí)現(xiàn)兩種遺忘功能. 此外, 該回路可以通過條件刺激間接建立條件反射, 而不是直接建立非條件刺激的條件反射. 文獻(xiàn)[71]提出了一種基于憶阻器的全功能巴甫洛夫聯(lián)想記憶電路, 如圖13a所示. 設(shè)計(jì)的巴甫洛夫聯(lián)想記憶電路為三輸入一輸出電路, 輸入信號(hào)分別表示肉、 正常鈴聲和低響度鈴聲, 輸出信號(hào)為狗是否分泌唾液, 輸入和輸出的狀態(tài)變量均為電壓, 其中電壓信號(hào)的高電平和低電平分別對(duì)應(yīng)邏輯“1”和“0”, 實(shí)現(xiàn)了聯(lián)想記憶中的兩類學(xué)習(xí)過程和3類遺忘過程. 圖13 憶阻邏輯電路在聯(lián)想記憶和情感計(jì)算中的應(yīng)用 文獻(xiàn)[72]提出情感計(jì)算的目的是通過賦予計(jì)算機(jī)識(shí)別、 理解、 表達(dá)和適應(yīng)人的情感的能力來建立和諧人機(jī)環(huán)境, 并使計(jì)算機(jī)具有更高的、 全面的智能. 情感計(jì)算與巴甫洛夫聯(lián)想記憶有著相似的生理屬性定義, 對(duì)構(gòu)建神經(jīng)形態(tài)系統(tǒng)具有重要的意義. 許多研究人員已經(jīng)使用憶阻邏輯電路來實(shí)現(xiàn)情緒記憶的模型構(gòu)建, 實(shí)現(xiàn)了對(duì)人類情感的簡單模擬, 能夠?qū)崿F(xiàn)快樂和悲傷這兩種情緒. 另外, 隨著研究的發(fā)展, 根據(jù)信息輸入的狀態(tài)來判斷情緒輸出的狀態(tài), 實(shí)現(xiàn)了情感關(guān)聯(lián)學(xué)習(xí)、 情感形成和情感表達(dá)等功能. 文獻(xiàn)[73]提出了一種新的基于憶阻器的神經(jīng)網(wǎng)絡(luò)情緒模型及其電路實(shí)現(xiàn), 該模型中有3個(gè)輸入和2個(gè)輸出, 聯(lián)想學(xué)習(xí)和3種遺忘過程共同構(gòu)成了全功能情緒模型, 設(shè)計(jì)的情感記憶電路可以調(diào)節(jié)學(xué)習(xí)速率, 為實(shí)現(xiàn)人工智能機(jī)器人提供了一個(gè)新的思路. 文獻(xiàn)[74]提出了一種學(xué)習(xí)速率可變的情緒模型, 如圖13b所示, 該模型考慮了3種遺忘方式: 只應(yīng)用無條件刺激, 只應(yīng)用中性刺激, 無條件刺激和中性刺激都不用. 文獻(xiàn)[75]基于憶阻器仿真實(shí)現(xiàn)了情緒與記憶一致性的神經(jīng)網(wǎng)絡(luò)電路. 不同于傳統(tǒng)的記憶或情緒單一的神經(jīng)網(wǎng)絡(luò), 該電路由記憶模塊、 情緒模塊和聯(lián)想神經(jīng)元模塊組成(圖13c), 具有學(xué)習(xí)、 遺忘、 快速學(xué)習(xí)、 緩慢遺忘、 精神疲勞、 情緒抑制、 情緒一致性記憶等功能. 憶阻邏輯電路在模式識(shí)別[76]和模式分類[77]領(lǐng)域也有應(yīng)用, 文獻(xiàn)[78]提出了一個(gè)由4個(gè)晶體管和1個(gè)憶阻器構(gòu)成的阻值雙向調(diào)節(jié)電路, 而后結(jié)合憶阻邏輯電路對(duì)其進(jìn)行擴(kuò)展, 構(gòu)建了蘋果的識(shí)別和特征召回電路. 文獻(xiàn)[79]在傳統(tǒng)聯(lián)想記憶的基礎(chǔ)上加入泛化和微分理論, 提出了基于微分和泛化的簡單分類和識(shí)別電路, 如圖14a所示. 該電路將對(duì)象的特征作為輸入, 將電路的輸出作為分類結(jié)果, 實(shí)現(xiàn)蘋果和梨的分類和識(shí)別的功能. 文獻(xiàn)[80]提出了一種雙模憶阻器橋接突觸電路, 并利用該電路構(gòu)建多層神經(jīng)網(wǎng)絡(luò), 結(jié)合細(xì)胞神經(jīng)網(wǎng)絡(luò)實(shí)現(xiàn)機(jī)場灰度鳥類圖像的邊緣提取, 實(shí)驗(yàn)結(jié)果如圖14b所示. 圖14 憶阻邏輯電路在模式識(shí)別和分類領(lǐng)域中的應(yīng)用 憶阻器因其良好的開關(guān)特性, 為探索新的邏輯運(yùn)算范式開辟了一條新的道路, 并為傳統(tǒng)的CMOS電路提供了一個(gè)很有前景的替代方案. 并且, 憶阻器具有非易失特性, 即使撤去兩端的電壓, 其阻值也不會(huì)發(fā)生改變, 實(shí)現(xiàn)了存算一體, 為構(gòu)建新的非馮諾依曼架構(gòu)提供了極大的可能. 然而, 目前提出的憶阻邏輯電路在操作復(fù)雜性和物理實(shí)現(xiàn)方面都存在一些限制, 亟需得到進(jìn)一步的改進(jìn). 1) 如何保證憶阻邏輯電路中模型的一致性和穩(wěn)定性. 在基于憶阻器設(shè)計(jì)的邏輯電路中, 對(duì)于納米級(jí)元器件憶阻器的一致性要求極高, 其參數(shù)的微小變化都可能造成較大的計(jì)算偏差. 使用校驗(yàn)方法或者冗余設(shè)計(jì)的方式可以在一定程度上容忍離散性帶來的誤差, 但會(huì)帶來額外的能耗和延時(shí), 削弱基于憶阻器的存內(nèi)計(jì)算的先天優(yōu)勢(shì). 其次, 邏輯計(jì)算的精確度也與憶阻器件的穩(wěn)定性有聯(lián)系, 若在調(diào)整電路中的憶阻器阻值后, 其阻值發(fā)生偏移, 對(duì)于三值邏輯電路, 其輸出結(jié)果可能不準(zhǔn)確. 由于應(yīng)用于實(shí)際電路中的計(jì)算量很大, 需要大規(guī)模高密度的憶阻邏輯電路, 然而減少憶阻存儲(chǔ)單元上的面積可能會(huì)導(dǎo)致一致性降低, 這意味著減小面積不是最有效的方法. 2) 如何解決憶阻邏輯電路時(shí)間序列冗長問題. 基于憶阻器的邏輯電路因其非易失性, 在進(jìn)行邏輯運(yùn)算操作時(shí), 要求在邏輯運(yùn)算之前不斷地對(duì)憶阻器進(jìn)行初始化操作, 從而容易引起時(shí)間序列冗長的問題. 若要將憶阻邏輯電路應(yīng)用于神經(jīng)形態(tài)系統(tǒng), 需要大數(shù)量的憶阻器, 這意味著若每一步驟前都需要初始化, 這將會(huì)是一個(gè)相當(dāng)繁瑣的過程. 故如何減少或徹底消除初始化操作是改進(jìn)憶阻邏輯電路的一個(gè)重要環(huán)節(jié), 也是未來需要研究的一個(gè)重要方向. 引入自學(xué)習(xí)系統(tǒng), 使得憶阻器能夠?qū)崟r(shí)調(diào)整自己的狀態(tài), 不再需要初始化操作, 或許是未來的一個(gè)研究方向; 同時(shí), 研究特定的憶阻值寫入和讀取機(jī)制, 也能有效解決時(shí)間序列冗長的問題. 3) 如何解決多憶阻邏輯電路的級(jí)聯(lián)問題. 目前構(gòu)建的憶阻邏輯電路大多存在著難以級(jí)聯(lián)的問題. 在一個(gè)復(fù)雜的系統(tǒng)中, 存在著不計(jì)其數(shù)的計(jì)算單元, 各個(gè)單元之間都有些許的聯(lián)系, 若不能解決級(jí)聯(lián)問題, 憶阻邏輯電路的發(fā)展將會(huì)受到很大的限制. 特別地, 對(duì)于輸出邏輯狀態(tài)為阻值的電路, 若在一個(gè)電路的輸出后級(jí)聯(lián)多個(gè)電路, 將會(huì)產(chǎn)生扇出問題, 進(jìn)而導(dǎo)致錯(cuò)誤結(jié)果的輸出. 而對(duì)于V-V型邏輯電路, 盡管憶阻器能與傳統(tǒng)CMOS元器件兼容, 兩者之間的自然差異依然存在. 在執(zhí)行級(jí)聯(lián)操作時(shí), 由于在負(fù)載容量方面的不足, 在不加放大電路的情況下易產(chǎn)生信號(hào)退化問題. 如何改進(jìn)設(shè)計(jì)已有的邏輯電路, 使得其能夠更好地級(jí)聯(lián), 進(jìn)而廣泛應(yīng)用于神經(jīng)形態(tài)系統(tǒng), 也是未來我們研究的一個(gè)有力著手點(diǎn). 4) 如何解決交叉陣列結(jié)構(gòu)的憶阻邏輯電路中漏電流問題. 應(yīng)用于神經(jīng)形態(tài)系統(tǒng)的憶阻邏輯電路多與交叉陣列相結(jié)合, 能夠在一定程度上減少電路的面積. 但交叉陣列存在一個(gè)很大的缺陷, 即存在漏電流. 目前存在增大憶阻器阻值, 反串聯(lián)憶阻器, 將憶阻器與二極管、 三極管、 開關(guān)結(jié)合構(gòu)成存儲(chǔ)單元等減少漏電流的方法, 但這些方法增加了交叉陣列的讀寫操作步驟, 如何在減少漏電流的同時(shí)簡化讀寫操作是未來工作一個(gè)很好的切入點(diǎn). 5) 如何實(shí)現(xiàn)可重構(gòu)、 多值憶阻邏輯電路. 一個(gè)計(jì)算系統(tǒng)中一般不僅僅是進(jìn)行單一的邏輯操作, 往往需要根據(jù)不同的需要, 進(jìn)行靈活的改變以實(shí)現(xiàn)邏輯功能. 故基于憶阻器的可重構(gòu)邏輯電路將會(huì)是未來計(jì)算系統(tǒng)的一個(gè)發(fā)展趨勢(shì), 我們可以加大對(duì)該方面的研究, 改進(jìn)并設(shè)計(jì)出通用的擁有完整邏輯集的電路. 目前, 憶阻邏輯電路領(lǐng)域的大多數(shù)研究都以二值邏輯為實(shí)現(xiàn)目標(biāo), 二值憶阻邏輯電路已經(jīng)趨向于成熟. 然而, 基于憶阻器實(shí)現(xiàn)三值邏輯電路的研究相對(duì)較少, 三值邏輯相對(duì)二值邏輯攜帶了更多的信息量, 并且實(shí)現(xiàn)三值邏輯的電路運(yùn)算速度更快、 面積和體積更小且功耗更低. 對(duì)三值邏輯的進(jìn)一步研究, 為未來探索多值邏輯和模糊邏輯提供了可能. 6) 如何建立憶阻邏輯電路與神經(jīng)形態(tài)系統(tǒng)的融合機(jī)制. 基于憶阻器構(gòu)建的邏輯計(jì)算系統(tǒng)和腦啟發(fā)并行神經(jīng)形態(tài)計(jì)算系統(tǒng)都是很有前途的內(nèi)存計(jì)算體系結(jié)構(gòu), 目前將憶阻邏輯電路與神經(jīng)形態(tài)系統(tǒng)相結(jié)合的研究相對(duì)較少, 大多是用憶阻邏輯電路構(gòu)建的邏輯門代替神經(jīng)形態(tài)系統(tǒng)中的傳統(tǒng)邏輯門或是在聯(lián)想記憶方面的一些應(yīng)用, 在實(shí)現(xiàn)信息檢索、 圖像識(shí)別、 語音識(shí)別等方面的應(yīng)用仍面臨著挑戰(zhàn). 因?qū)τ?jì)算速度和智能信息處理的進(jìn)一步要求, 迫切需要開發(fā)一種具有高效二進(jìn)制邏輯和神經(jīng)形態(tài)計(jì)算功能的集成計(jì)算體系結(jié)構(gòu). 未來的主要工作可以是將憶阻邏輯電路應(yīng)用于神經(jīng)形態(tài)系統(tǒng), 設(shè)計(jì)一些模擬人類大腦的緊湊電路. 憶阻器具有非易失性、 納米尺寸、 低功耗、 與傳統(tǒng)CMOS技術(shù)兼容、 阻值變換快等特性, 其在邏輯電路中的應(yīng)用在尺寸和能源消耗方面具備一定的優(yōu)勢(shì), 為探索新的計(jì)算范式和架構(gòu)提供了全新的思路. 邏輯電路是神經(jīng)形態(tài)計(jì)算硬件實(shí)現(xiàn)的基本計(jì)算單元, 故憶阻邏輯電路對(duì)于構(gòu)建新型神經(jīng)形態(tài)系統(tǒng)具有重要的意義. 本綜述首先介紹了當(dāng)前在憶阻邏輯電路中廣泛應(yīng)用的憶阻器模型. 緊接著, 介紹了近年來流行的憶阻邏輯電路, 并根據(jù)電路的輸入輸出邏輯狀態(tài)變量的不同, 將憶阻邏輯電路分為R-R型、 V-V型、 R-V/V-R型憶阻邏輯電路3類. 從這3類電路的組成部分、 計(jì)算方式、 邏輯狀態(tài)變量、 寫入/讀取變量外圍電路的復(fù)雜度、 能量損耗、 級(jí)聯(lián)能力、 延時(shí)性7個(gè)方面, 進(jìn)一步討論了各類憶阻邏輯電路的優(yōu)缺點(diǎn). 其中, 電路的組成部分和延時(shí)性是衡量邏輯電路質(zhì)量的重要指標(biāo), 電路的延時(shí)性能取決于操作脈沖的數(shù)量, 而電路的組成部分中憶阻器的數(shù)量和晶體管的數(shù)量決定了電路的尺寸和能耗. 由于V-V型憶阻邏輯電路的輸入輸出狀態(tài)變量都為電壓, 在進(jìn)行寫入和讀取變量操作時(shí)不需要再設(shè)計(jì)額外的電路. 該類型的電路對(duì)驅(qū)動(dòng)電路的要求最低, 不需要設(shè)定冗長的時(shí)間序列, 并且其與已經(jīng)成熟的CMOS技術(shù)兼容, 級(jí)聯(lián)性相較于狀態(tài)變量中有阻值的電路更好, 故目前該類型的電路的應(yīng)用最廣泛. 本文討論了憶阻邏輯電路在聯(lián)想記憶、 情感計(jì)算、 模式識(shí)別3個(gè)神經(jīng)形態(tài)系統(tǒng)領(lǐng)域中的潛在應(yīng)用. 憶阻邏輯電路可以替代神經(jīng)形態(tài)系統(tǒng)中的傳統(tǒng)邏輯電路, 能夠在一定程度上減少電路的面積與功耗, 具有廣闊的發(fā)展前景. 最后, 針對(duì)憶阻邏輯電路在操作復(fù)雜性和物理實(shí)現(xiàn)方面的缺陷, 本文總結(jié)并展望了憶阻邏輯電路及其應(yīng)用于神經(jīng)形態(tài)系統(tǒng)的發(fā)展方向.2.2 憶阻邏輯電路性能對(duì)比分析
3 憶阻邏輯電路在神經(jīng)形態(tài)系統(tǒng)中的應(yīng)用
4 展望
5 結(jié)論