文獻(xiàn)標(biāo)志碼:A
DOI: 10.16157/j.issn.0258-7998.223003
中文引用格式: 黃燾,閏閏,胡毅,等. 一種高能效基4-Booth編碼并行乘法器設(shè)計(jì)[J]. 電子技術(shù)應(yīng)用,2023,49(4):117-122.
英文引用格式: Huang Tao,Run Run,Hu Yi,et al. An energy efficient radix-4 Booth encoding parallel multiplier design[J]. Application of Electronic Technique,2023,49(4):117-122.
0 引言
自從2012年AlexNet[1]在ImageNet比賽中獲得冠軍以來,各種結(jié)構(gòu)的卷積神經(jīng)網(wǎng)絡(luò)被發(fā)明并廣泛應(yīng)用于圖像分類、目標(biāo)識(shí)別、語義分割等場(chǎng)景。由于任務(wù)復(fù)雜度以及對(duì)準(zhǔn)確率要求的提高,神經(jīng)網(wǎng)絡(luò)的計(jì)算量也不斷提高,從2012年AlexNet[具有次乘法運(yùn)算量,到2014年VGG-16的次乘法運(yùn)算量,再到2017年SENet的次乘法運(yùn)算量。大量的乘法運(yùn)算使得運(yùn)行神經(jīng)網(wǎng)絡(luò)的硬件消耗巨大能耗,妨礙了神經(jīng)網(wǎng)絡(luò)在移動(dòng)端硬件平臺(tái)上的實(shí)現(xiàn)。Horowitz M 在2014年ISSCC上發(fā)表的論文顯示,8 bit乘法消耗的能耗是8 bit加法的6.7倍。所以,降低乘法的能耗是降低神經(jīng)網(wǎng)絡(luò)加速器能耗的關(guān)鍵。
乘法器實(shí)現(xiàn)乘法可以分為如下三步:部分積生成、部分積壓縮和部分積最終相加。前人對(duì)乘法器能耗優(yōu)化的研究主要關(guān)注點(diǎn)放在第二步,即部分積壓縮的優(yōu)化上,通過使用4-2壓縮器或者7-3壓縮器]等新型壓縮器來降低乘法器能耗。4-2壓縮器、7-3壓縮器適用于操作數(shù)位寬較寬的乘法,例如16 bit或32 bit,而在8 bit乘法器中由于部分積行數(shù)較少,因此降低能耗效果甚微。在神經(jīng)網(wǎng)絡(luò)的移動(dòng)端應(yīng)用中,以神經(jīng)網(wǎng)絡(luò)的推理為主,而神經(jīng)網(wǎng)絡(luò)的推理過程使用8 bit精度就足夠[。所以,通過設(shè)計(jì)新型壓縮器來降低8 bit乘法器的能耗不是一個(gè)有效的方法。第三步部分積最終相加實(shí)際上是兩行部分積相加得到最終乘法結(jié)果,對(duì)于這一步能耗最低的設(shè)計(jì)已有定論,使用行波進(jìn)位加法器能夠以最低能耗完成部分積最終相加。第一步生產(chǎn)部分積的方法中,基-4 Booth編碼能夠減少一半的部分積數(shù)量,是高能效乘法器常用的方法。然而,人們采用傳統(tǒng)的取反加一的方法來實(shí)現(xiàn)基-4 Booth編碼中的求相反數(shù),使得部分積多了若干比特的“加一”補(bǔ)償位?!凹右弧毖a(bǔ)償位不僅增加了部分積的比特總數(shù),需要更多的加法器或壓縮器來完成部分積壓縮和最終相加,而且這些補(bǔ)償位出現(xiàn)在每行部分積的最低位,導(dǎo)致部分積壓縮和最終相加過程的關(guān)鍵路徑長(zhǎng)??梢?,“加一”補(bǔ)償位是導(dǎo)致8 bit乘法器能耗高、延時(shí)大的主要原因。
本文提出了一種新的高能效基4-Booth編碼并行乘法器設(shè)計(jì),通過改進(jìn)基4-Booth編碼部分積生成模塊,消除了傳統(tǒng)方法中的“加一”補(bǔ)償位,減少了部分積數(shù)目,而且使得部分積陣列規(guī)整易于壓縮,從而降低了乘法器延時(shí)和能耗。
本文詳細(xì)內(nèi)容請(qǐng)下載:http://theprogrammingfactory.com/resource/share/2000005294
作者信息:
黃燾,閏閏,胡毅,尹立,謝翔
(清華大學(xué) 集成電路學(xué)院,北京 100084)