加入星計劃,您可以享受以下權(quán)益:

  • 創(chuàng)作內(nèi)容快速變現(xiàn)
  • 行業(yè)影響力擴(kuò)散
  • 作品版權(quán)保護(hù)
  • 300W+ 專業(yè)用戶
  • 1.5W+ 優(yōu)質(zhì)創(chuàng)作者
  • 5000+ 長期合作伙伴
立即加入
  • 正文
    • 隨機(jī)計算基本原理
    • 隨機(jī)計算的發(fā)展
    •  
    • 隨機(jī)計算的優(yōu)點
    • 隨機(jī)計算存在的問題
    • 技術(shù)應(yīng)用
    • 未來在芯片領(lǐng)域應(yīng)用的趨勢
  • 相關(guān)推薦
  • 電子產(chǎn)業(yè)圖譜
申請入駐 產(chǎn)業(yè)圖譜

隨機(jī)計算:芯片新型計算架構(gòu)的未來

2022/06/06
2952
閱讀需 16 分鐘
加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點資訊討論

特邀作者:金瑞祥上海交通大學(xué) 電子信息科學(xué)與電氣工程學(xué)院

為了緩解CMOS工藝達(dá)到極限而導(dǎo)致的可靠性問題,發(fā)展新計算架構(gòu)、新技術(shù)和促進(jìn)編碼多樣化來提升集成電路性能成為熱點,人們逐漸由傳統(tǒng)的精確計算范式轉(zhuǎn)向隨機(jī)計算范式。

過去半個世紀(jì)以來,電子產(chǎn)品一直在穩(wěn)步地從模擬向數(shù)字邁進(jìn)。計算引領(lǐng)著電話、音樂錄制和播放、攝像機(jī)以及無線電和電視廣播的發(fā)展,在20 世紀(jì)中葉基本實現(xiàn)了數(shù)字化。

然而,計算機(jī)和人類大腦處理的許多信號都是模擬信號。模擬信號具有一些固有優(yōu)點:即使包含一些小的錯誤,通常也并不重要。例如,沒人會在意錄制的交響樂中某個音符比實際上的更響亮或者更柔和,也不會有人介意圖像中某個區(qū)域比現(xiàn)實中的稍稍明亮。人類聽力和視力沒有敏感到能識別這些微小的差異。在許多情況下,電子電路不需要為了精確和可完全重復(fù)的處理方式而首先將這些模擬量轉(zhuǎn)換為二進(jìn)制數(shù)。如果可以將這些從模擬到數(shù)字的轉(zhuǎn)換減到最少,那么就可以節(jié)省大量的能量。如果你能想出如何以節(jié)能的方式處理模擬信號,那么你就將先人一步。在電力稀缺的應(yīng)用中,此項能力尤其重要,例如用于恢復(fù)聽力或視力的生物醫(yī)學(xué)植入物。

而數(shù)字技術(shù)的好處多于模擬技術(shù)是不可否認(rèn)的,這也是為什么通常使用數(shù)字計算機(jī)來處理信號,而且處理精度比實際需求高得多——所用能量亦是如此。一種有趣且不太常見的折中方法被稱為隨機(jī)計算,它通過數(shù)字電路來處理模擬概率。舉兩個我們已經(jīng)研究過的應(yīng)用,這種基本已被遺忘的技術(shù)可以顯著改進(jìn)未來的視網(wǎng)膜植入物和機(jī)器學(xué)習(xí)電路,這就是我們認(rèn)為隨機(jī)計算即將卷土重來的原因。

隨著數(shù)字化產(chǎn)業(yè)的發(fā)展,計算領(lǐng)域?qū)呻娐访娣e、功耗和穩(wěn)定性的需求日益增長。由于技術(shù)的進(jìn)步,晶體管的尺寸不斷減小,從而可以在芯片上集成越來越多的晶體管。然而,晶體管尺寸的減小會增加泄漏電流,從而增加功耗和不可靠性。為了解決這些問題,要么晶體管必須被其他設(shè)備取代,要么經(jīng)典計算方式必須被其他計算技術(shù)所取代。而晶體管的材料一時難以突破,為了緩解CMOS工藝達(dá)到極限而導(dǎo)致的可靠性問題,發(fā)展新計算架構(gòu)、新技術(shù)和促進(jìn)編碼多樣化來提升集成電路性能成為熱點,人們逐漸由傳統(tǒng)的精確計算范式轉(zhuǎn)向隨機(jī)計算范式。

隨機(jī)計算(stochastic computing)是一種通過隨機(jī)比特流(bit stream)進(jìn)行計算的范式,通過對比特流的簡單位運算實現(xiàn)復(fù)雜的計算,是近似計算的一種。

隨機(jī)計算基本原理

在隨機(jī)計算中,實數(shù)由隨機(jī)二進(jìn)制比特流表示,而數(shù)字本身被解釋為概率,即這串比特流中每一個比特為1的概率,而基于伯努利大數(shù)定律,概率可以用頻率來估計,即每一位比特為1的概率可以用這串比特流中的1的個數(shù)在比特流中的占比來表示,即PX=N1/N2,其中是X中出現(xiàn)的1的數(shù)量。例如比特流1100101110表示數(shù)字0.6。由于1的位置是沒有規(guī)定的,這也就意味著許多不同的比特流可以具有相同的值。下圖為二進(jìn)制數(shù)轉(zhuǎn)換為隨機(jī)數(shù)的方式,由隨機(jī)數(shù)生成器(SNG)得到隨機(jī)二進(jìn)制數(shù)R,其中,然后與B進(jìn)行比較后采樣得到比特流X。因此一個的估計值可以簡單地通過計算X中的1來估算,估計的準(zhǔn)確性取決于X中位數(shù)的隨機(jī)性及N的長度。此外隨機(jī)數(shù)生成器通常采用邏輯電路,而非真隨機(jī)源。

B. R. Gaines定義隨機(jī)數(shù)有單極格式(區(qū)間為[0,1])及雙極格式(區(qū)間為[-1,1])兩種。通過改變變量,可以得到隨機(jī)數(shù)的單極格式與出雙極格式之間的關(guān)系如下:P*=2P-1,其中為雙極格式下的隨機(jī)數(shù)值。

隨機(jī)計算的乘法

隨機(jī)計算從剛引入開始,其第一個吸引點則是可以通過基礎(chǔ)的邏輯門搭建一個成本低的具有計算功能的電路。在隨機(jī)計算中通過單個與門即可實現(xiàn)單極中的乘法,對于雙極格式的乘法也可以通過一個XNOR門輕松實現(xiàn)。其中需要注意的是,若要AND門利用隨機(jī)計算理論準(zhǔn)確表示乘法運算,需要兩個輸入的比特流是不相關(guān)的或者獨立的。

隨機(jī)計算的加法

加法的目的是計算輸入的隨機(jī)比特流中1的總和。常見的加法硬件實現(xiàn)有兩種:基于多路復(fù)用器(MUX)的加法和基于近似并行計數(shù)器(APC)的加法。對于前一種結(jié)構(gòu),計算結(jié)果PZ=0.5(P1+P2)。

另一種方法是APC使用并行計數(shù)器對所有輸入比特流中的1進(jìn)行計數(shù),并輸出一個二進(jìn)制數(shù)。基于MUX的設(shè)計具有簡單的結(jié)構(gòu),適用于少量輸入的加法運算,但是當(dāng)輸入數(shù)量變大時,會表現(xiàn)出不準(zhǔn)確性?;贏PC的設(shè)計非常精確,適合大量輸入,但電路結(jié)構(gòu)更加復(fù)雜。

隨機(jī)計算的發(fā)展

 

起源

隨機(jī)計算最早可以追溯到20世紀(jì)50年代馮•諾依曼關(guān)于隨機(jī)邏輯的開創(chuàng)性工作,但既沒有在理論上得到發(fā)展,也沒有在實踐中加以實施。

隨著電子及計算機(jī)技術(shù)的發(fā)展,在20世紀(jì)60年代期間,通過兩組研究人員分別獨立的研究,發(fā)展出隨機(jī)計算的基本概念。其中B.R. Gaines和J.H. Andrea主要從事機(jī)器學(xué)習(xí)領(lǐng)域的研究工作,在標(biāo)準(zhǔn)電信實驗室上發(fā)表文章Stochastic Computing;同期,德國的 Ted Popplebaum 在伊利諾伊大學(xué)厄本那分校工作期間研究圖像處理系統(tǒng),與 Afuso 和 Esch一起出版了書籍Stochastic computing elements and systems。通過兩個小組共同的努力隨機(jī)計算的概念得以完善。

在當(dāng)時由于晶體管價格高昂,而隨機(jī)計算僅需要幾個晶體管或者簡單的邏輯門就可以實現(xiàn)復(fù)雜的數(shù)學(xué)函數(shù)的計算,因此深受工程師的喜愛。

低迷

到 20 世紀(jì) 70-90 年代,隨機(jī)計算的發(fā)展進(jìn)展變得緩慢,隨著晶體管的成本與價格逐漸走低,隨機(jī)計算的優(yōu)勢逐漸被削弱。1978 年在法國圖盧茲舉行了一次有關(guān)隨機(jī)計算及其應(yīng)用的專門會議,20 世紀(jì) 90 年代,隨著 FPGA現(xiàn)場可編程門陣列) 的出現(xiàn),人們對隨機(jī)計算的興趣也有了小規(guī)模的增長。

再次興起

在2005 年左右,新的錯誤檢測和錯誤糾正方案——低密度奇偶校驗(LDPC)—— 剛剛普及不久后,沒落的隨機(jī)計算迎來了一個小小的轉(zhuǎn)折。LDPC 編碼發(fā)明于20 世紀(jì)60 年代,如今廣泛用于各種通信系統(tǒng),包括Wi-Fi 網(wǎng)絡(luò)。但LDPC 解碼則是一件棘手的事情。不過由于解碼涉及概率算法,因此可以使用相對簡單的隨機(jī)計算電路來實現(xiàn)。隨機(jī)電路在上述應(yīng)用中的成功,以及控制功耗已成為芯片設(shè)計人員面臨的最大挑戰(zhàn)之一這樣一個事實,促使研究人員在重新審視隨機(jī)計算,觀察隨機(jī)計算在現(xiàn)代電子時代還能發(fā)揮什么作用。目前已通過隨機(jī)計算完成機(jī)器學(xué)習(xí)及控制中的特定任務(wù),此外隨機(jī)電路已成功用于圖像處理任務(wù),例如邊緣檢測、圖像閾值等方面。

隨機(jī)計算的優(yōu)點

漸進(jìn)式精度。隨機(jī)計算無須修改硬件即可調(diào)整計算精度,這在其他計算系統(tǒng)中是無法實現(xiàn)的,能夠通過犧牲精確度實現(xiàn)以更低能耗完成復(fù)雜功能。隨機(jī)計算的運算精度與比特流的相關(guān),比特流越長則所產(chǎn)生的數(shù)值精度就越高,隨著對比特流的擴(kuò)展,會越來越精確,能非常迅速地提供一個粗略的估計。

這就好比數(shù)字的最重要位在其最不重要位之前到達(dá);與傳統(tǒng)的算術(shù)電路不同,最重要位通常最后到達(dá)。在一些迭代系統(tǒng)中,通過漸進(jìn)式精度獲得的結(jié)果可以提供比傳統(tǒng)計算方法更快的反饋,從而帶來更快的收斂。

所需的邏輯資源非常小,如,兩數(shù)之間的乘法運算可簡單地用一個二輸入與門或XNOR運算來實現(xiàn),具體取決于所采用的隨機(jī)數(shù)格式;而加法器只需要一個多路復(fù)用器。這兩種操作都可以用比它們的普通二進(jìn)制運算電路少得多的硬件來實現(xiàn)。

固有的容錯能力。由于采用隨機(jī)數(shù)作為運算數(shù)據(jù),其運算過程中的輸入噪聲或數(shù)據(jù)錯誤不會導(dǎo)致最終結(jié)果完全偏離。隨機(jī)數(shù)的每個比特具有相同的重要性,而二進(jìn)制數(shù)中比特的重要性則有很大的不同。此屬性使隨機(jī)計算通??梢苑浅:玫乇苊?ldquo;軟錯誤”,因為比特翻轉(zhuǎn)只會導(dǎo)致隨機(jī)數(shù)數(shù)值的微小變化,不會對結(jié)果產(chǎn)生重大影響,而在普通二進(jìn)制運算中,一個高有效位的比特翻轉(zhuǎn)會導(dǎo)致重大錯誤。

隨機(jī)計算存在的問題

計算精度的增長會導(dǎo)致比特流長度的指數(shù)速度增長。例如,若要求計算精度從4變成8,比特流長度需要從變成,從而也導(dǎo)致計算時間呈指數(shù)增長,使得處理時間變長。

高昂的隨機(jī)性需求。使用微小元件進(jìn)行加法和乘法是隨機(jī)計算最明顯的優(yōu)勢。然而,加法必須縮放以保持其結(jié)果在單位間隔內(nèi),而乘法則需要輸入獨立不相關(guān)的比特流。為了計算的正確性,需要保證SNG產(chǎn)生的各個隨機(jī)流序列相互獨立或不相關(guān),因此SC電路計算核心電路需要多少個輸入,就需要多少個SNG。這意味著需要大量的由獨立隨機(jī)源驅(qū)動的SNG,也就意味著高昂的成本,其門電路的優(yōu)勢將會喪失。此外SNG 引入了初始轉(zhuǎn)換錯誤及不同比特流的數(shù)據(jù)相關(guān)性引起的計算誤差是隨機(jī)計算系統(tǒng)中的兩個主要誤差源,需要通過改進(jìn) SNG 的設(shè)計來減輕此問題,以提高準(zhǔn)確性和高度不相關(guān)的隨機(jī)隨機(jī)序列生成。

技術(shù)應(yīng)用

隨著數(shù)字化產(chǎn)業(yè)的發(fā)展,計算領(lǐng)域?qū)呻娐访娣e、功耗和穩(wěn)定性的需求日益增長。而取代晶體管的材料一時難以突破,因此發(fā)展新計算架構(gòu)、新技術(shù)和促進(jìn)編碼多樣化來提升集成電路性能成為熱點。隨機(jī)計算使用和加權(quán)二進(jìn)制完全不同的數(shù)值表征系統(tǒng),它的數(shù)據(jù)是無權(quán)重的,可以使用非常簡單的邏輯電路來實現(xiàn)在加權(quán)二進(jìn)制系統(tǒng)中非常復(fù)雜的運算,這有助于降低功耗和硬件復(fù)雜度,這使得隨機(jī)計算非常適合集成電路設(shè)計

隨機(jī)計算仍在飛速發(fā)展中,有一些應(yīng)用正在進(jìn)行中,如美國普渡大學(xué)的Minsuk Koo 等人提出了隨機(jī)計算在脈沖神經(jīng)網(wǎng)絡(luò)的應(yīng)用,實現(xiàn)了高效節(jié)能和內(nèi)存壓縮的神經(jīng)形態(tài)計算實現(xiàn)。在 90nm CMOS 工藝中制作了基于隨機(jī)計算的神經(jīng)元和突觸,從而實現(xiàn)高效的圖像識別任務(wù)的片上訓(xùn)練和推理。

也有研究人員直接在半導(dǎo)體器件級來實現(xiàn)隨機(jī)計算,這些方法建議利用底層電路結(jié)構(gòu)的固有概率行為,如最直觀的是利用熱噪聲影響下的二進(jìn)制開關(guān)的概率行為?;谶@一原理,佐治亞州理工學(xué)院的Sureh Cheemalavagu等人提出了概率CMOS(Probabilistic CMOS,PCMOS)系列電路。

此外,由于應(yīng)用于隨機(jī)計算的熵源可靠性和自相關(guān)性問題,基于RRAM的隨機(jī)計算芯片相關(guān)的詳細(xì)研究較少。2021年中國科學(xué)院微電子重點實驗室科研人員首次在28nm HKMG CMOS平臺上制作了基于RRAM閃爍噪聲的128Kb SC芯片,通過使用該隨機(jī)計算芯片,測試的邊緣檢測應(yīng)用實現(xiàn)了極低的錯誤率(3.13%@128BSL)。

未來在芯片領(lǐng)域應(yīng)用的趨勢

隨著大數(shù)據(jù)發(fā)展,需要AI芯片處理的數(shù)據(jù)量正在呈指數(shù)級增長,芯片速度的提高正隨著摩爾定律可能的終結(jié)而漸趨緩慢。隨著越來越多的計算系統(tǒng)向嵌入式和移動設(shè)備發(fā)展,降低能耗成為AI芯片設(shè)計的頭等大事。隨機(jī)計算作為能夠有效提高芯片能效的方法之一,逐漸受到相關(guān)工作者的重視,在一些方面展現(xiàn)出了廣泛的應(yīng)用前景。

現(xiàn)場可編程門陣列(FPGA)與傳統(tǒng)的大規(guī)模集成電路相比,具有可重構(gòu)性好、并行性高的特點,成為了非線性系統(tǒng)在硬件實現(xiàn)的一種熱門選擇。但FPGA器件存在DSP資源昂貴的缺點,而大多數(shù)的非線性系統(tǒng)在硬件實現(xiàn)時,都需要相當(dāng)數(shù)量的DSP資源。隨機(jī)計算是以概率的形式對數(shù)據(jù)轉(zhuǎn)化的比特流進(jìn)行處理,可以用簡單的門電路來實現(xiàn)加減乘除和其他復(fù)雜運算,從而降低FPGA中的計算資源消耗,提高非線性系統(tǒng)在FPGA硬件實現(xiàn)時的效率。因此,開展基于隨機(jī)計算的非線性系統(tǒng)在 FPGA 的優(yōu)化與應(yīng)用研究具有重要意義。

此外類腦芯片作為AI芯片未來發(fā)展的方向之一,可以模擬人腦功能進(jìn)行感知方式、行為方式和思維方式。而生物大腦的運作具備非常好的容錯機(jī)制,并不強(qiáng)調(diào)精確計算,因此生物大腦的能耗非常低。因此是否可以從邏輯電路、存儲器到算法,借助隨機(jī)計算優(yōu)勢,接受不精確的計算結(jié)果并代入容差功能,以實現(xiàn)效能的提高?隨機(jī)計算能夠提高系統(tǒng)各個層級的容錯性,這對器件來說也非常重要,因為半導(dǎo)體芯片工藝很容易出現(xiàn)各種缺陷,如果系統(tǒng)可以把這些缺陷忽略不計,那就能夠大大提高穩(wěn)定性與可靠性。

相關(guān)推薦

電子產(chǎn)業(yè)圖譜

公眾號:半導(dǎo)體產(chǎn)業(yè)縱橫。立足產(chǎn)業(yè)視角,提供及時、專業(yè)、深度的前沿洞見、技術(shù)速遞、趨勢解析,鏈接產(chǎn)業(yè)資源,構(gòu)建IC生態(tài)圈,賦能中國半導(dǎo)體產(chǎn)業(yè),我們一直在路上。