aVDesmc
本文來源:陳巍談芯aVDesmc
隨著AI計算、自動駕駛和元宇宙進入行業(yè)快車道,全社會巨大的算力需求正在催生新的計算架構(gòu)。存算一體架構(gòu)比馮諾依曼架構(gòu)最大的優(yōu)勢,表現(xiàn)為超高的算力和能效比,是比馮氏架構(gòu)更適合AI計算的架構(gòu)。存算技術(shù)也被AspenCore預測為2022年的全球半導體行業(yè)十大技術(shù)趨勢。aVDesmc
目前存算技術(shù)正處在從學術(shù)到工業(yè)產(chǎn)品的躍遷的關(guān)鍵時期。包括阿里達摩院最近剛發(fā)布的基于SeDRAM的近存計算芯片,就充分展示了存算技術(shù)(第一代僅是近存計算)在數(shù)據(jù)中心場景的算力和能效實力。aVDesmc
aVDesmc
存算一體技術(shù)的原理及優(yōu)勢
aVDesmc
算力發(fā)展速度遠超存儲器(來源:amirgholami@github)aVDesmc
aVDesmc
存算一體技術(shù)(Computing in Memory,CIM)概念的形成,最早可以追溯到上個世紀90年代。隨著近幾年云計算和人工智能(AI)應(yīng)用的發(fā)展,面對計算中心的數(shù)據(jù)洪流,數(shù)據(jù)搬運慢、搬運能耗大等問題成為了計算的關(guān)鍵瓶頸。從處理單元外的存儲器提取數(shù)據(jù),搬運時間往往是運算時間的成百上千倍,整個過程的無用能耗大概在60%-90%之間,能效非常低,“存儲墻”成為了數(shù)據(jù)計算應(yīng)用的一大障礙。深度學習加速的最大挑戰(zhàn)就是數(shù)據(jù)在計算單元和存儲單元之間頻繁的移動。aVDesmc
aVDesmc
aVDesmc
數(shù)據(jù)搬運占據(jù)AI計算的主要能耗aVDesmc
aVDesmc
存算一體可理解為在存儲器中嵌入計算能力,以新的運算架構(gòu)進行二維和三維矩陣乘法/加法運算,而不是在傳統(tǒng)邏輯運算單元或工藝上優(yōu)化。這樣能從本質(zhì)上消除不必要的數(shù)據(jù)搬移的延遲和功耗,成百上千倍的提高AI計算效率,降低成本,打破存儲墻。aVDesmc
除了用于AI計算外,存算技術(shù)也可用于感存算一體芯片和類腦芯片,代表了未來主流的大數(shù)據(jù)計算芯片架構(gòu)。aVDesmc
aVDesmc
存算一體技術(shù)的分類
aVDesmc
aVDesmc
存算技術(shù)的分類/演進aVDesmc
aVDesmc
目前存算技術(shù)在按照以下路線在演進:aVDesmc
• 查存計算(Processing With Memory):GPU中對于復雜函數(shù)就采用了這種計算方法,是早已落地多年的技術(shù)。通過在存儲芯片內(nèi)部查表來完成計算操作。aVDesmc
• 近存計算(Computing Near Memory):典型代表是AMD的Zen系列CPU,技術(shù)方案已經(jīng)比較成熟。計算操作由位于存儲區(qū)域外部的獨立計算芯片/模塊完成。這種架構(gòu)設(shè)計的代際設(shè)計成本較低,適合傳統(tǒng)架構(gòu)芯片轉(zhuǎn)入。將HBM內(nèi)存(包括三星的HBM-PIM)與計算模組(裸Die)封裝在一起的芯片也屬于這一類。aVDesmc
• 存內(nèi)計算(Computing In Memory):典型代表是Mythic、閃憶、知存、九天睿芯等。計算操作由位于存儲芯片/區(qū)域內(nèi)部的獨立計算單元完成,存儲和計算可以是模擬的也可以是數(shù)字的。這種路線一般用于算法固定的場景算法計算。aVDesmc
• 存內(nèi)邏輯(Logic In Memory):這是較新的存算架構(gòu),典型代表包括TSMC(在2021 ISSCC發(fā)表)和千芯科技。這種架構(gòu)數(shù)據(jù)傳輸路徑最短,同時能滿足大模型的計算精度要求。通過在內(nèi)部存儲中添加計算邏輯,直接在內(nèi)部存儲執(zhí)行數(shù)據(jù)計算。aVDesmc
aVDesmc
PIM-HBM芯片架構(gòu)aVDesmc
存內(nèi)計算芯片基本架構(gòu)
aVDesmc
存算一體芯片基本架構(gòu)aVDesmc
aVDesmc
人工智能/深度學習計算中有大量的矩陣乘法計算,其本質(zhì)是乘累加(Multiply-Accumulate,MAC)運算。存算將計算直接映射到存儲結(jié)構(gòu)中,具有最高的能效比和最小的延遲。aVDesmc
如存算一體芯片基本架構(gòu)圖所示,神經(jīng)網(wǎng)絡(luò)模型的權(quán)重可以映射為子陣列中存儲單元的電導率,而輸入特征圖(Feature map)作為行電壓并行加載(圖中WL方向),然后以模擬方式進行乘法(即輸入電壓乘以權(quán)重電導),并使用列上的電流求和(圖中BL方向)來生成輸出向量。aVDesmc
CIM 可以支持多位權(quán)重/輸入/輸出精度。根據(jù)存儲單元的精度,一個多位權(quán)重可能被分成多個存儲單元。例如,如果每個單元使用 2 位,則 8 位權(quán)重可以由 4 個存儲單元表示。aVDesmc
ADC(模數(shù)轉(zhuǎn)換器)/SA(靈敏放大器) 之后的輸出可經(jīng)過“移位+加法”以重建跨多列的乘法/加法,以提升計算精度。aVDesmc
aVDesmc
存算一體中存儲單元的對比
aVDesmc
存儲單元有不同的適合場景aVDesmc
aVDesmc
目前可用于存算一體的成熟工藝存儲器有DRAM 、SRAM、Flash。aVDesmc
DRAM成本低,容量大,但是可用的eDRAM IP核工藝節(jié)點不先進,讀取延遲(Latency)也大,且需要定期刷新數(shù)據(jù)。Flash則屬于非易失性存儲器件,具有低成本優(yōu)勢,一般適合小算力場景。SRAM在速度方面具有極大優(yōu)勢,有幾乎最高的能效比,容量密度略小,在精度增強后可以保證較高精度,一般適用于云計算等大算力場景。aVDesmc
可用于存算一體新型存儲器有PCRAM、MRAM、RRAM和FRAM等。aVDesmc
目前學術(shù)界比較關(guān)注各種憶阻器(RRAM)在神經(jīng)網(wǎng)絡(luò)計算中的引入。RRAM使用電阻調(diào)制來實現(xiàn)數(shù)據(jù)存儲,讀出電流信號而非傳統(tǒng)的電荷信號,可以獲得較好的線性電阻特性。但目前RRAM工藝良率爬坡還在進行中,而且依然需要面對非易失存儲器固有的可靠性問題,因此目前還主要用于端側(cè)小算力和邊緣AI計算。aVDesmc
aVDesmc
存算技術(shù)的發(fā)展趨勢
aVDesmc
1)提升計算精度aVDesmc
模擬存內(nèi)計算精度受到信噪比的影響,精度上限在4-8 bit左右,只能做定點數(shù)計算,難以實現(xiàn)浮點計算,并不適用于需要高精度的云計算場景和訓練場景,適用于對能效比有較高要求而對于精確度有一定容忍的場景。aVDesmc
數(shù)字存算技術(shù)則不受信噪比的影響,精度可以達到32bit甚至更高,且可支持浮點計算,是云計算場景存算的發(fā)展方向。aVDesmc
2)多算法適配aVDesmc
目前大部分存算芯片還是針對特定算法的DSA(Domain Specific Accelerator),因此當客戶算法需求改變時,就很難做到算法的遷移和適配。這使得一款存算芯片可能只能適配優(yōu)先的細分市場,難以形成較大的銷量。特別是在端側(cè)市場,這一現(xiàn)象明顯。aVDesmc
為了解決多算法適配的問題,目前產(chǎn)業(yè)界開始使用可編程或可重構(gòu)的技術(shù)來擴展存算架構(gòu)的支持能力。其中可重構(gòu)存算的能效比高于可編程存算的能效比,具有更強的發(fā)展?jié)摿Α?span style="display:none">aVDesmc
3)存算/數(shù)據(jù)流編譯器的適配aVDesmc
存算一體芯片產(chǎn)業(yè)化處于起步階段,目前仍面臨編譯器的支持不足的問題。aVDesmc
目前大部分存算芯片采取DSA的方式進行落地,以規(guī)避通用編譯器的適配問題。aVDesmc
但隨著存算技術(shù)的高速發(fā)展和落地,對應(yīng)的編譯器技術(shù)也在快速進步。aVDesmc
aVDesmc
存算技術(shù)在海量數(shù)據(jù)計算場景中擁有天然的優(yōu)勢,將在云計算、自動駕駛、元宇宙等場景擁有廣闊的發(fā)展空間。aVDesmc
目前存算技術(shù)正處在從學術(shù)領(lǐng)域到工業(yè)產(chǎn)品落地的關(guān)鍵時期,隨著存算技術(shù)的不斷進步和應(yīng)用場景的不斷催生,預計存算一體技術(shù)將成為AI計算領(lǐng)域的主要架構(gòu)。aVDesmc
*聲明:本文系原作者創(chuàng)作。文章內(nèi)容系其個人觀點,我方轉(zhuǎn)載僅為分享與討論,不代表我方贊成或認同,如有異議,請聯(lián)系后臺。aVDesmc
aVDesmc
責編:Echo