POSIT是一種新興的浮點(diǎn)數(shù)格式,可更加高效地在不同數(shù)值范圍內(nèi)分配精度。其接近0值的數(shù)據(jù)可獲得更高的計(jì)算精度,而對(duì)于極大或極小的數(shù)據(jù)值可適當(dāng)舍棄一些精度以換取更大的數(shù)據(jù)表示范圍。這種動(dòng)態(tài)精度分配的特性非常適合AI算法,在相同數(shù)據(jù)位寬下(如POSIT8相比INT8)能實(shí)現(xiàn)更好的算法性能。此前,研究者針對(duì)POSIT的特殊格式設(shè)計(jì)了高效的計(jì)算硬件,但這些設(shè)計(jì)未能充分利用POSIT尾數(shù)長(zhǎng)度可變的特性。如能設(shè)計(jì)出一種針對(duì)POSIT變長(zhǎng)尾數(shù)的特點(diǎn)、動(dòng)態(tài)節(jié)省尾數(shù)乘法計(jì)算代價(jià)的策略,將可以一種算法精度損失較小的近似計(jì)算方法來(lái)降低POSIT乘法計(jì)算中占據(jù)主導(dǎo)的尾數(shù)乘法計(jì)算功耗。
近日,中國(guó)科學(xué)院微電子研究所集成電路制造技術(shù)全國(guó)重點(diǎn)實(shí)驗(yàn)室張鋒研究員團(tuán)隊(duì)提出了一種基于動(dòng)態(tài)預(yù)測(cè)POSIT結(jié)果尾數(shù)長(zhǎng)度的SRAM存內(nèi)計(jì)算宏,在較小的算法精度損失下實(shí)現(xiàn)吞吐率和能效的共同提升。針對(duì)POSIT的變長(zhǎng)尾數(shù)特點(diǎn),提出了一種新的數(shù)字CIM宏,其可以在執(zhí)行POSIT浮點(diǎn)MAC計(jì)算之前確定乘法計(jì)算中尾數(shù)的哪些部分可以被舍棄。使用無(wú)符號(hào)Radix8 Booth的乘法計(jì)算邏輯電路和最終周期融合(FCF)技術(shù),進(jìn)一步減少了CIM宏的計(jì)算周期數(shù)量,并將能效提高了2.19-2.79倍。針對(duì)CIM結(jié)構(gòu)無(wú)法支持計(jì)算周期靈活跳過(guò)的問(wèn)題,設(shè)計(jì)了一個(gè)CIM宏級(jí)近似計(jì)算控制 (MACC) 單元來(lái)動(dòng)態(tài)調(diào)整單個(gè)CIM宏的計(jì)算周期數(shù)量,實(shí)現(xiàn)了 1.89 倍的加速效果,而近似計(jì)算的平均絕對(duì)百分比誤差 (Mean Absolute Percentage Error,MAPE) 損失僅為 3.24%。針對(duì)尾數(shù)乘法中的稀疏bit,提出了一個(gè)激活尾數(shù)對(duì)齊跳過(guò) (AMAS) 單元,幫助于減少稀疏激活數(shù)據(jù)的輸入周期數(shù)量,從而獲得 1.41 倍的性能提升。
本研究以“A 28-nm 88.3-TFLOPS/W POSIT-Approximate-Calculation-Based Digital Computing-in-Memory Macro Incorporating Final-Cycle Fusion and Joint-Skipping” 為題發(fā)表在集成電路設(shè)計(jì)領(lǐng)域旗艦期刊IEEE Journal of Solid-State Circuits上,微電子所博士研究生吳昊為第一作者、張鋒研究員與清華大學(xué)陳勇教授為通訊作者。該研究得到了科技部重點(diǎn)研發(fā)計(jì)劃、國(guó)家自然科學(xué)基金、中國(guó)科學(xué)院戰(zhàn)略先導(dǎo)專(zhuān)項(xiàng)等項(xiàng)目的支持。
全文鏈接:https://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=11113258
圖1(a)不同數(shù)據(jù)區(qū)間POSIT8近似計(jì)算誤差, (b)不同數(shù)據(jù)區(qū)間POSIT16近似計(jì)算誤差, (c)芯片性能總結(jié)表格