亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于憶阻器的脈沖神經(jīng)網(wǎng)絡(luò)硬件加速器架構(gòu)設(shè)計(jì)*

        2022-07-28 07:33:30武長(zhǎng)春周莆鈞王俊杰李國(guó)胡紹剛于奇劉洋
        物理學(xué)報(bào) 2022年14期
        關(guān)鍵詞:阻器膜電位加速器

        武長(zhǎng)春 周莆鈞 王俊杰 李國(guó) 胡紹剛 于奇 劉洋

        (電子科技大學(xué)電子科學(xué)與工程學(xué)院,成都 610054)

        脈沖神經(jīng)網(wǎng)絡(luò)(spiking neural network,SNN)作為第三代神經(jīng)網(wǎng)絡(luò),其計(jì)算效率更高、資源開銷更少,且仿生能力更強(qiáng),展示出了對(duì)于語(yǔ)音、圖像處理的優(yōu)秀潛能.傳統(tǒng)的脈沖神經(jīng)網(wǎng)絡(luò)硬件加速器通常使用加法器模擬神經(jīng)元對(duì)突觸權(quán)重的累加.這種設(shè)計(jì)對(duì)于硬件資源消耗較大、神經(jīng)元/突觸集成度不高、加速效果一般.因此,本工作開展了對(duì)擁有更高集成度、更高計(jì)算效率的脈沖神經(jīng)網(wǎng)絡(luò)推理加速器的研究.阻變式存儲(chǔ)器(resistive random access memory,RRAM)又稱憶阻器(memristor),作為一種新興的存儲(chǔ)技術(shù),其阻值隨電壓變化而變化,可用于構(gòu)建crossbar 架構(gòu)模擬矩陣運(yùn)算,已經(jīng)在被廣泛應(yīng)用于存算一體(processing in memory,PIM)、神經(jīng)網(wǎng)絡(luò)計(jì)算等領(lǐng)域.因此,本次工作基于憶阻器陣列,設(shè)計(jì)了權(quán)值存儲(chǔ)矩陣,并結(jié)合外圍電路模擬了LIF(leaky integrate and fire)神經(jīng)元計(jì)算過程.之后,基于LIF 神經(jīng)元模型實(shí)現(xiàn)了脈沖神經(jīng)網(wǎng)絡(luò)硬件推理加速器設(shè)計(jì).該加速器消耗了0.75k 憶阻器,集成了24k 神經(jīng)元和192M 突觸.仿真結(jié)果顯示,在50 MHz 的工作頻率下,該加速器通過部署三層的全連接脈沖神經(jīng)網(wǎng)絡(luò)對(duì)MNIST (mixed national institute of standards and technology)數(shù)據(jù)集進(jìn)行推理加速,其最高計(jì)算速度可達(dá)148.2 frames/s,推理準(zhǔn)確率為96.4%.

        1 引言

        近年來,隨著深度學(xué)習(xí)的發(fā)展,神經(jīng)網(wǎng)絡(luò)已經(jīng)得到了廣泛的應(yīng)用.通過反向傳播、梯度下降等方法訓(xùn)練出神經(jīng)網(wǎng)絡(luò)可以協(xié)助人類完成復(fù)雜的工作[1],有時(shí)甚至可以做出優(yōu)于人類的決策[2].傳統(tǒng)的人工神經(jīng)網(wǎng)絡(luò)(ANN)使用了MP(McCulloch and Pitts)神經(jīng)元模型[3],通過對(duì)前一層神經(jīng)元信號(hào)的加權(quán)累加和非線性激活輸出來模擬神經(jīng)元的行為,但是其生物置信度差、計(jì)算效率低、硬件資源開銷大.為了構(gòu)建一種具有更高生物置信度的神經(jīng)元模型,1952 年,Hodgkin 和Huxley[4]基于神經(jīng)元細(xì)胞膜電位生理現(xiàn)象的非線性微分方程,提出Hodgkin-Huxley(HH)模型.HH 模型可以更加精確地模擬生物神經(jīng)元膜電壓變化和脈沖發(fā)放,但是由于其存在大量的微分、積分操作,硬件實(shí)現(xiàn)難度大.相比于HH 模型,LIF(leaky integrate and fire)神經(jīng)元模型[5]在保留一定程度仿生能力的同時(shí),極大地降低了計(jì)算復(fù)雜度,使之可以輕易部署到硬件平臺(tái)上,具有更強(qiáng)的硬件友好性.基于LIF 神經(jīng)元模型的SNN[6,7]作為第三代神經(jīng)網(wǎng)絡(luò),相比于傳統(tǒng)的單層感知器和多層感知器具有更強(qiáng)的生物合理性及處理時(shí)空信息時(shí)潛在的更優(yōu)計(jì)算效率,同時(shí)具有相對(duì)較低的硬件設(shè)計(jì)資源開銷.

        近年來,基于SNN 的神經(jīng)形態(tài)計(jì)算[8,9]受到了廣泛關(guān)注并得到極大發(fā)展.神經(jīng)形態(tài)計(jì)算的一個(gè)重要目標(biāo)是通過硬件模擬生物神經(jīng)網(wǎng)絡(luò)計(jì)算.基于馮·諾依曼架構(gòu)的硬件計(jì)算平臺(tái)(CPU,GPU 等)是實(shí)現(xiàn)神經(jīng)形態(tài)計(jì)算的重要途徑之一.但是馮·諾依曼架構(gòu)存在存算分離導(dǎo)致的馮·諾依曼瓶頸[10,11],這使得其在實(shí)現(xiàn)神經(jīng)形態(tài)計(jì)算時(shí)效率低下,且擁有極為龐大的功耗、面積開銷.ASIC 設(shè)計(jì)是實(shí)現(xiàn)神經(jīng)形態(tài)計(jì)算的另一個(gè)重要途徑.相比于通用計(jì)算平臺(tái),ASIC 設(shè)計(jì)具有高的專用性,其計(jì)算效率更高[12]、功耗更低、硬件資源開銷更少.相比于基于模擬ASIC 設(shè)計(jì)的類腦計(jì)算芯片[13],基于數(shù)字ASIC 設(shè)計(jì)的類腦計(jì)算芯片[14-17]可以實(shí)現(xiàn)更高的集成度,因此受到了更加廣泛的關(guān)注.為了解決馮·諾伊曼瓶頸對(duì)計(jì)算效率的影響,數(shù)字ASIC 設(shè)計(jì)中往往使用寄存器作為存算單元,實(shí)現(xiàn)存算一體的神經(jīng)形態(tài)芯片設(shè)計(jì).但是隨著設(shè)計(jì)規(guī)模的不斷增加,寄存器陣列及其外圍電路的復(fù)雜度不斷上升、資源開銷迅速增長(zhǎng).

        近年來,基于憶阻器的存算一體技術(shù)[18]由于其資源開銷低、計(jì)算效率高等特點(diǎn)受到了廣泛的關(guān)注.相比于數(shù)字集成電路中基于寄存器的存算一體架構(gòu),基于憶阻器的crossbar 架構(gòu)復(fù)雜度更低,且集成度更高.同時(shí),基于憶阻器crossbar 架構(gòu)的類腦計(jì)算[19-22]可以并行輸入多組脈沖,通過對(duì)輸出電流的統(tǒng)計(jì)、求和,從而實(shí)現(xiàn)對(duì)多路突觸的并行計(jì)算.但是,其輸出往往是電流形式,需要外加運(yùn)算放大器和ADC 才能實(shí)現(xiàn)模擬電流到數(shù)字電壓的轉(zhuǎn)換,其外圍電路復(fù)雜度高且不易集成.2020 年,國(guó)防科技大學(xué)憶阻器研究團(tuán)隊(duì)[23]提出了使用N位等值邏輯比較電路實(shí)現(xiàn)憶阻器陣列的數(shù)字電壓輸出,其在一定程度上降低了外圍電路的復(fù)雜程度,但是需要更多的時(shí)間步長(zhǎng)進(jìn)行計(jì)算.此外,隨著突觸集成度的增加,憶阻器陣列規(guī)模需要不斷擴(kuò)大,資源開銷隨之增加.通過突觸復(fù)用的方式可以有效地解決資源開銷隨設(shè)計(jì)規(guī)模增擴(kuò)大而增加的問題,但是這需要對(duì)憶阻器反復(fù)擦寫來更新突觸權(quán)值.盡管這種設(shè)計(jì)方法降低了設(shè)計(jì)資源開銷,但是其犧牲了較多的計(jì)算效率.

        在本次工作中,致力于解決硬件資源開銷與計(jì)算效率之間的矛盾,采用硬件設(shè)計(jì)語(yǔ)言(Verilog)構(gòu)建了基于憶阻器的crossbar 陣列作為類腦計(jì)算的權(quán)值存儲(chǔ)陣列.基于crossbar 陣列設(shè)計(jì),提出了基于權(quán)值共享技術(shù)的緊湊化權(quán)值存儲(chǔ)陣列設(shè)計(jì),并通過神經(jīng)元、突觸復(fù)用技術(shù)減少憶阻器陣列的擦寫頻率,僅使用0.25k 憶阻器單元模擬8k 神經(jīng)元和64M 突觸計(jì)算.此外,通過在憶阻器陣列的輸出端進(jìn)行串聯(lián)電阻分壓實(shí)現(xiàn)了憶阻器陣列輸出從電流到電壓的轉(zhuǎn)換.憶阻器陣列的輸出結(jié)果可以直接通過數(shù)字電路采集.基于權(quán)值存儲(chǔ)陣列的設(shè)計(jì),構(gòu)建了緊湊化計(jì)算核心.隨后,基于緊湊化計(jì)算核心設(shè)計(jì)了推理加速器,并使用通用驗(yàn)證方法學(xué)(UVM)搭建驗(yàn)證平臺(tái).通過GPU 對(duì)784×1024×1024×10規(guī)模的全連接網(wǎng)絡(luò)進(jìn)行了訓(xùn)練,并將其部署到加速器平臺(tái)對(duì)MNIST 數(shù)據(jù)集進(jìn)行推理驗(yàn)證實(shí)驗(yàn).實(shí)驗(yàn)結(jié)果表明,該加速器可以實(shí)現(xiàn)148.2 frams/s 的圖像識(shí)別速率,同時(shí)識(shí)別精度達(dá)到了96.4%.最后,基于硬件加速設(shè)計(jì)部署了不同規(guī)模的網(wǎng)絡(luò)進(jìn)行推理測(cè)試,總結(jié)了該設(shè)計(jì)對(duì)于不同規(guī)模網(wǎng)絡(luò)的加速效果并對(duì)結(jié)果進(jìn)行了分析.

        2 脈沖神經(jīng)網(wǎng)絡(luò)相關(guān)架構(gòu)介紹

        2.1 脈沖神經(jīng)網(wǎng)絡(luò)LIF 模型結(jié)構(gòu)介紹

        LIF 神經(jīng)元模型是實(shí)現(xiàn)脈沖神經(jīng)網(wǎng)絡(luò)的一個(gè)重要神經(jīng)元模型.其相比于傳統(tǒng)的MP 神經(jīng)元模型,LIF 神經(jīng)元模型可以通過更少硬件資源來實(shí)現(xiàn),并且可以更好地模擬生物神經(jīng)元工作原理.(1)式所示為L(zhǎng)IF 神經(jīng)元膜電位與輸入脈沖的關(guān)系:

        式中,Vmp是神經(jīng)元膜電位;Oi是輸入脈沖;Wi是與輸入脈沖對(duì)應(yīng)的權(quán)重;VL是神經(jīng)元的泄漏電壓;Vth是膜電位的閾值;Vreset是神經(jīng)元膜電位的復(fù)位值;N是神經(jīng)元個(gè)數(shù).同時(shí)將膜電位恢復(fù)至,其膜電位升高.在一個(gè)“time step”的計(jì)算中,神經(jīng)元完成所有突觸的計(jì)算,其膜電位將與閾值電壓作對(duì)比.當(dāng)神經(jīng)元的膜電位達(dá)到閾值電壓(Vth)時(shí),其將發(fā)放一個(gè)脈沖,同時(shí)將膜電位恢復(fù)至靜息值(Vreset);否則,神經(jīng)元將不會(huì)發(fā)放脈沖,并將當(dāng)前膜電位與泄漏電壓VL相加并保存,用于下一個(gè)“time step”計(jì)算.

        基于LIF 神經(jīng)元模型的四層全連SNN 結(jié)構(gòu)如圖1 所示.該網(wǎng)絡(luò)由一個(gè)輸入層、兩個(gè)隱藏層和一個(gè)輸出層組成,輸入層與各隱藏層分別由5 個(gè)神經(jīng)元組成,輸出層由兩個(gè)神經(jīng)元組成.相比于傳統(tǒng)的ANN,該SNN 網(wǎng)絡(luò)中神經(jīng)元的輸入和輸出都是脈沖形式的,即0/1 脈沖電平.輸出端統(tǒng)計(jì)兩個(gè)輸出神經(jīng)元的脈沖發(fā)放數(shù)量,經(jīng)過n個(gè) time step”的脈沖統(tǒng)計(jì)后,根據(jù)脈沖統(tǒng)計(jì)結(jié)果進(jìn)行分類.脈沖發(fā)放最多的神經(jīng)元表示其激活程度最高,即意味著輸入的脈沖序列最有可能對(duì)應(yīng)該神經(jīng)元所代表的類別.

        圖1 基于LIF 模型的全連接脈沖神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)圖Fig.1.Structure diagram of fully connected spiking neural network based on LIF model.

        2.2 LIF 神經(jīng)元的硬件設(shè)計(jì)方法

        一個(gè)典型的LIF 神經(jīng)元模型的硬件結(jié)構(gòu)如圖2(a)所示.其主要實(shí)現(xiàn)了脈沖輸入、膜電位累加、膜電位比較及脈沖發(fā)放.輸入脈沖與對(duì)應(yīng)權(quán)值相乘并類形成膜電位,在膜電位計(jì)算完畢后,神經(jīng)元通過將之與閾值電壓相比較判斷是否發(fā)放脈沖輸出.其在硬件中的計(jì)算原理圖如圖2(b)所示.輸入的脈沖序列由1/0 脈沖串組成.輸入脈沖通過多路選擇器實(shí)現(xiàn)與權(quán)值的“乘”操作,選擇結(jié)果作為突觸的輸入.神經(jīng)元將初始膜電位(即上一個(gè)“time step”結(jié)束后保存的膜電位)與所有突觸的輸入相累加,形成總的膜電位,并與閾值電壓相比較,如果膜電位超出閾值電壓,則將膜電位清零并保存用作下一個(gè)“time step”的初始膜電位,同時(shí)發(fā)放一個(gè)脈沖輸出;反之,膜電位將加上一個(gè)泄露電壓并保存,同時(shí)不產(chǎn)生脈沖輸出.

        2.3 基于突觸復(fù)用技術(shù)及權(quán)值共享技術(shù)的LIF 神經(jīng)元模型硬件設(shè)計(jì)方法

        圖3 所示為基于突觸復(fù)用技術(shù)及權(quán)值共享技術(shù)的LIF 神經(jīng)元模型架構(gòu).與傳統(tǒng)LIF 神經(jīng)元架構(gòu)不同,其只有一個(gè)脈沖輸入通道,通過分時(shí)復(fù)用的技術(shù)實(shí)現(xiàn)所有突觸的計(jì)算.所有突觸共享M個(gè)權(quán)值,因此,每個(gè)突觸的脈沖輸入同時(shí)伴隨一組權(quán)值索引輸入,通過對(duì)應(yīng)的權(quán)值索引來獲取其對(duì)應(yīng)的權(quán)值數(shù)據(jù).當(dāng)神經(jīng)元依次完成對(duì)所有突觸的膜電位累加后,神經(jīng)元會(huì)對(duì)膜電位進(jìn)行判斷并控制脈沖發(fā)放.

        圖3 基于突觸復(fù)用技術(shù)及權(quán)值共享技術(shù)的LIF 神經(jīng)元模型架構(gòu)Fig.3.The LIF neuron model architecture based on synapse multiplexing technology and weight sharing technology.

        3 基于憶阻器陣列的脈沖神經(jīng)網(wǎng)絡(luò)加速器設(shè)計(jì)

        3.1 基于憶阻器陣列的權(quán)重矩陣設(shè)計(jì)方法

        憶阻器由上下兩塊電極及其中間起隔離作用的氧化層組成,如圖4(a)所示.當(dāng)其兩端加正向電壓,氧化層中會(huì)出現(xiàn)氧空位,從而組成導(dǎo)電細(xì)絲,使得憶阻器導(dǎo)電能力增強(qiáng),呈現(xiàn)低阻特性,其阻值為RL.當(dāng)其兩端加反向電壓,導(dǎo)電細(xì)絲會(huì)斷裂,憶阻器呈現(xiàn)高阻特性,其阻值為RH.本次工作主要利用了憶阻器的這兩種工作狀態(tài),將其作為二值器件使用,其中憶阻器的高阻與低阻的阻值相差千倍以上.

        基于憶阻器單元A,設(shè)計(jì)了crossbar 結(jié)構(gòu),如圖4(b)所示.crossbar 的行數(shù)代表了權(quán)值的數(shù)量,每一行代表了一個(gè)權(quán)值,每一個(gè)憶阻器代表權(quán)值的一位,其高阻態(tài)代表邏輯0,低阻態(tài)代表邏輯1.列數(shù)則代表了權(quán)值的位寬.當(dāng)輸入端有高電平脈沖輸入時(shí),其對(duì)應(yīng)的權(quán)值被激活,并以電流形式從輸出端輸出.每一列的輸出端串聯(lián)一個(gè)分壓電阻RD,從而將輸出電流轉(zhuǎn)化成電壓數(shù)據(jù),其中串聯(lián)電阻的阻值因?yàn)镽D遠(yuǎn)大于憶阻器的低阻阻值且遠(yuǎn)小于憶阻器的高阻阻值,因此,當(dāng)RD對(duì)應(yīng)列被激活的憶阻器阻值為RL時(shí),即可認(rèn)為輸出端是邏輯電平“1”;當(dāng)RD對(duì)應(yīng)列被激活的憶阻器阻值為RH時(shí),即可認(rèn)為輸出端是邏輯電平“0”.用這樣的方式即可通過數(shù)字電路直接對(duì)crossbar 陣列的輸出進(jìn)行結(jié)果采集,而不需要使用運(yùn)算放大器、數(shù)模轉(zhuǎn)換器等模擬電路,降低了其外圍電路的復(fù)雜度,同時(shí)提升了計(jì)算效率.

        圖4 (a) 憶阻器的建立/擦除示意圖;(b) 基于憶阻器的crossbar 陣列Fig.4.(a) The set/reset operation of the memristor;(b) the crossbar structure based on the memristor.

        3.2 權(quán)值共享技術(shù)

        在神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)中,一個(gè)神經(jīng)元需要與多個(gè)突觸相連接,每個(gè)突觸都對(duì)應(yīng)有一個(gè)權(quán)值用來表示連接關(guān)系的強(qiáng)弱.隨著網(wǎng)絡(luò)規(guī)模的增加,突觸的數(shù)量急劇增加,憶阻器陣列的資源開銷隨之增加.為了減少權(quán)值數(shù)量從而降低硬件資源開銷,本工作提出了一種基于憶阻器陣列的權(quán)值共享技術(shù).一層網(wǎng)絡(luò)中所有突觸的權(quán)值被聚類成16 個(gè)16-bit 權(quán)值Wi,有{Wi∈W0,W1···W15}.突觸通過一個(gè)4-bit 的索引Sj對(duì)權(quán)值進(jìn)行索引,有{Si∈S0,S1···S15}.

        本次工作基于784 × 1024 × 1024 × 10 的全連接網(wǎng)絡(luò)開展了對(duì)權(quán)值共享技術(shù)的應(yīng)用與分析.實(shí)驗(yàn)結(jié)果如圖5 所示,相比于聚類前,聚類后的權(quán)值占用的存儲(chǔ)開銷從28.4 Mb (784 × 1024 × 16 bit +1024 × 1024 × 16 bit+1024 × 10 × 16 bit)下降至0.75 kb,但網(wǎng)絡(luò)推理精度僅下降了約1%.同時(shí),由于聚類后權(quán)值精度固定為16-bit,軟件到硬件的映射過程不存在截?cái)嗾`差或舍入誤差造成的精度損失,因此,權(quán)值聚類后的網(wǎng)絡(luò)可以以同樣的精度從軟件平臺(tái)映射到硬件平臺(tái).

        圖5 權(quán)值共享技術(shù)對(duì)精度的影響Fig.5.The influence of weight sharing technology on accuracy.

        權(quán)值量化、權(quán)值共享技術(shù)通過犧牲很少的網(wǎng)絡(luò)精度大幅度降低了權(quán)值數(shù)量與硬件平臺(tái)資源開銷,是一種對(duì)硬件設(shè)計(jì)十分友好的技術(shù).通過分析該技術(shù)與網(wǎng)絡(luò)精度的變化發(fā)現(xiàn),聚類使得突觸的權(quán)值向不同方向偏移產(chǎn)生±ΔW,但是宏觀上權(quán)值偏移量存在互補(bǔ),因此網(wǎng)絡(luò)精度變化不明顯.從另一方面來講,神經(jīng)網(wǎng)絡(luò)的連接關(guān)系相比于權(quán)值大小更為關(guān)鍵,在一定的網(wǎng)絡(luò)架構(gòu)下輕微調(diào)整權(quán)值大小不會(huì)對(duì)網(wǎng)絡(luò)精度造成較大影響.

        3.3 基于憶阻器陣列的計(jì)算核設(shè)計(jì)

        基于憶阻器陣列的計(jì)算核架構(gòu)如圖6 所示,其中包含一個(gè)脈沖整形單元、一個(gè)多位的D 觸發(fā)器、一個(gè)由憶阻器構(gòu)成的權(quán)重矩陣、多位行波計(jì)數(shù)器和一個(gè)憶阻器控制器.脈沖整形單元實(shí)現(xiàn)了對(duì)輸入脈沖進(jìn)行計(jì)數(shù),并依據(jù)每個(gè)脈沖對(duì)應(yīng)的索引值,將輸入脈沖序列轉(zhuǎn)換成16 個(gè)通道的脈沖數(shù)據(jù)流,每個(gè)通道內(nèi)的脈沖對(duì)應(yīng)相同的索引.16 個(gè)通道中的脈沖數(shù)據(jù)通過D 觸發(fā)器傳遞給權(quán)重矩陣進(jìn)行計(jì)算.多位行波計(jì)數(shù)器統(tǒng)計(jì)每個(gè)突觸的權(quán)重,并進(jìn)行膜電位累加.憶阻器控制器可以對(duì)憶阻器的阻值進(jìn)行擦寫,同時(shí)也可以將每個(gè)“time step”計(jì)算后的膜電位與閾值電壓進(jìn)行對(duì)比,從而控制輸出脈沖的發(fā)放.

        圖6 基于憶阻器陣列的計(jì)算核架構(gòu)Fig.6.Computing core architecture based on resistive random access memory matrix.

        在一次計(jì)算過程中,脈沖整形器首先對(duì)輸入脈沖計(jì)數(shù),并將其整形并預(yù)存到不同通道對(duì)應(yīng)的緩存區(qū)間中.每一個(gè)通道的脈沖依次送入到權(quán)值矩陣中進(jìn)行權(quán)值索引,同時(shí)多位行波計(jì)數(shù)器對(duì)權(quán)值進(jìn)行累加.直至所有脈沖輸入完畢,憶阻器控制器會(huì)將行波計(jì)數(shù)器的加結(jié)果與上一個(gè)“time sep”保存的膜電位相加,并與閾值電壓相對(duì)比,控制脈沖發(fā)放.如果膜電位超過閾值電壓,憶阻器控制器會(huì)發(fā)放一個(gè)脈沖輸出,同時(shí)清零并保存膜電位;如果膜電位小于等于閾值電壓,其會(huì)保存當(dāng)前膜電位用于下一個(gè)“time step”的計(jì)算,且不會(huì)發(fā)放脈沖.

        3.4 整體結(jié)構(gòu)

        基于計(jì)算核的設(shè)計(jì),構(gòu)建了具有三個(gè)計(jì)算核的硬件加速器架構(gòu),并設(shè)計(jì)了完整的應(yīng)用架構(gòu),如圖7所示.軟件層通過泊松編碼將原始MNIST 數(shù)據(jù)集的幀圖像轉(zhuǎn)換成脈沖圖像,并送入硬件加速器進(jìn)行計(jì)算.硬件加速器包含三個(gè)前文所述計(jì)算核心,可以同時(shí)進(jìn)行三層網(wǎng)絡(luò)計(jì)算.硬件加速器在計(jì)算完成后,其脈沖輸出被采集、統(tǒng)計(jì)并分析,最終得出計(jì)算結(jié)果.

        圖7 基于硬件加速器的應(yīng)用架構(gòu)圖Fig.7.Application architecture diagram based on hardware accelerator.

        3.5 推理網(wǎng)絡(luò)模型到硬件加速的映射

        推理網(wǎng)絡(luò)模型到硬件加速的映射關(guān)系示意圖如圖8 所示.示例中,輸入的幀圖像為“9”,其通過編碼轉(zhuǎn)換成N個(gè)“time step”的脈沖圖像,并輸入到硬件加速器中.硬件加速器中的三個(gè)計(jì)算核組成了一個(gè)三層的計(jì)算網(wǎng)絡(luò),第一層接受輸入的圖像脈沖數(shù)據(jù)并啟動(dòng)計(jì)算,最后一層將輸出脈沖作為計(jì)算結(jié)果輸出至片外.軟件層統(tǒng)計(jì)硬件加速器的輸出脈沖數(shù),當(dāng)N個(gè)“time step”的脈沖數(shù)據(jù)計(jì)算完畢后,軟件層將輸出脈沖數(shù)量做對(duì)比,選擇累計(jì)發(fā)放脈沖最多的神經(jīng)元所對(duì)應(yīng)的標(biāo)簽為本次輸入對(duì)應(yīng)的計(jì)算結(jié)果.圖8 中,輸出層對(duì)應(yīng)標(biāo)簽為“9”的神經(jīng)元累計(jì)發(fā)放的脈沖數(shù)量最多,因此,軟件層將本次計(jì)算結(jié)果統(tǒng)計(jì)為“9”,與輸入脈沖圖像標(biāo)簽相符,是一次正確的計(jì)算.

        圖8 推理網(wǎng)絡(luò)模型到硬件加速的映射示意圖Fig.8.Mapping diagram of network to hardware accelerator.

        4 仿真結(jié)果及分析

        為驗(yàn)證加速器的效果,采用Verilog 對(duì)模擬憶阻器陣列設(shè)計(jì),并實(shí)現(xiàn)整體硬件加速器平臺(tái)設(shè)計(jì),通過SPICE 仿真獲取內(nèi)部延時(shí);采用UVM 搭建驗(yàn)證平臺(tái);采用Synopsis 公司的VCS2018 軟件進(jìn)行編譯、仿真,并對(duì)MNIST 數(shù)據(jù)集中的10000 張圖片進(jìn)行識(shí)別.

        4.1 識(shí)別精度

        在軟件層訓(xùn)練了784×1024×1024×10 的全連接ANN 網(wǎng)絡(luò),并通過脈沖轉(zhuǎn)換的方法,將其轉(zhuǎn)換成SNN 網(wǎng)絡(luò).軟件仿真表明,其在測(cè)試集推理精度為96.5%.之后,在軟件層通過3.2 節(jié)所述的權(quán)值量化的方法,分別將三層網(wǎng)絡(luò)的突觸權(quán)值量化成16 個(gè)16-bit 的權(quán)值數(shù)據(jù),同時(shí)為每個(gè)突觸生成一個(gè)4-bit 的索引數(shù)據(jù).憶阻器控制器通過對(duì)憶阻器陣列的掃描,將權(quán)值數(shù)據(jù)寫入到憶阻器陣列中.閾值電壓、泄漏電壓等配置參數(shù)被配置到憶阻器控制器中.軟件仿真表明,權(quán)值量化后的SNN 網(wǎng)絡(luò)在測(cè)試集的推理精度為96.4%,相比于量化前,精度下降了1%,但是存儲(chǔ)開銷降低了約99.997%.

        4.2 識(shí)別速度

        為驗(yàn)證加速器對(duì)不同規(guī)模網(wǎng)絡(luò)的加速效果,在不考慮精度的前提下,本工作分別將4 種不同規(guī)模的網(wǎng)絡(luò)部署到硬件加速器平臺(tái),對(duì)MNIST 數(shù)據(jù)集進(jìn)行推理測(cè)試.4 種不同的網(wǎng)絡(luò)規(guī)模分別為784 ×1024 × 1024 × 10,784 × 1024 × 2048 × 10,784 ×1024 × 4096 × 10 和784 × 1024 × 8192 × 10.

        測(cè)試結(jié)果如圖9 所示.實(shí)驗(yàn)結(jié)果表明,加速器對(duì)于784 × 1024 × 1024 × 10 的網(wǎng)絡(luò)計(jì)算速率為148.2 frames/s,隨著網(wǎng)絡(luò)規(guī)模的增長(zhǎng),其計(jì)算速率呈線性下降.通過理論分析發(fā)現(xiàn),由于硬件加速器的三個(gè)計(jì)算核心通過并行計(jì)算對(duì)網(wǎng)絡(luò)推理進(jìn)行加速,因此加速器對(duì)網(wǎng)絡(luò)的加速效率取決于規(guī)模最大的一層網(wǎng)絡(luò),即計(jì)算量最大的一層網(wǎng)絡(luò).硬件加速器的加速效率隨著神經(jīng)網(wǎng)絡(luò)中最大規(guī)模的一層網(wǎng)絡(luò)的規(guī)模增加而線性下降.

        圖9 硬件加速器對(duì)不同規(guī)模神經(jīng)網(wǎng)絡(luò)計(jì)算的加速效率Fig.9.Acceleration efficiency of hardware accelerator for different scale neuron networks.

        此外,該加速器對(duì)小規(guī)模網(wǎng)絡(luò)表現(xiàn)出了優(yōu)秀的加速效果,而對(duì)大規(guī)模網(wǎng)絡(luò)的加速效果不明顯.因此,該硬件加速器架構(gòu)更適用于計(jì)算量相對(duì)較小、資源相對(duì)匱乏的邊緣計(jì)算.

        4.3 與其他類似工作的對(duì)比

        表1 所列為本次工作與近年來其類似工作的對(duì)比.從表1 中可以看出,本次工作相較于其他工作,使用憶阻器實(shí)現(xiàn)了更為簡(jiǎn)單的LIF 神經(jīng)元模型,通過更少的憶阻器資源開銷(0.75k)集成了更大規(guī)模的神經(jīng)元/突觸.同時(shí),在MNIST 數(shù)據(jù)集的識(shí)別工作中擁有相對(duì)較高的推理準(zhǔn)確率(96.4%).

        表1 本次工作與其他類似工作的對(duì)比Table 1.Comparison of this work with other works.

        5 總結(jié)與展望

        在本次工作中,對(duì)基于LIF 神經(jīng)元模型的脈沖神經(jīng)網(wǎng)絡(luò)進(jìn)行了詳細(xì)闡述,并基于憶阻器陣列及其外圍電路實(shí)現(xiàn)了LIF 神經(jīng)元的硬件設(shè)計(jì).基于神經(jīng)元/突觸復(fù)用技術(shù)和權(quán)值共享技術(shù)的權(quán)值存儲(chǔ)陣列可以通過0.25k 的憶阻器存儲(chǔ)64M 突觸的權(quán)值.此外,通過電阻分壓的方式對(duì)憶阻器陣列輸出進(jìn)行電流-電壓轉(zhuǎn)換,并通過數(shù)字電路進(jìn)行采集.基于憶阻器陣列設(shè)計(jì),提出了神經(jīng)形態(tài)計(jì)算核設(shè)計(jì).計(jì)算核可以實(shí)現(xiàn)至多8k 神經(jīng)元、64M 突觸的計(jì)算.最終,通過三個(gè)神經(jīng)形態(tài)計(jì)算核構(gòu)建了脈沖神經(jīng)網(wǎng)絡(luò)推理加速器設(shè)計(jì),并開展了仿真、驗(yàn)證工作.在加速器中部署了784 × 1024 × 1024 × 10的三層全連接脈沖神經(jīng)網(wǎng)絡(luò),并對(duì)MNIST 數(shù)據(jù)集進(jìn)行了推理驗(yàn)證.試驗(yàn)結(jié)果表明,該加速器設(shè)計(jì)可以實(shí)現(xiàn)148.2 frames/s 的推理計(jì)算,同時(shí)擁有96.4%的推理準(zhǔn)確率.

        受限于憶阻器存儲(chǔ)材料的工作頻率,該架構(gòu)的硬件加速器最高工作頻率為50 MHz,未來隨著工藝的發(fā)展,憶阻器的工作主頻將進(jìn)一步提升,硬件加速器的性能也能隨之得以提升.此外,隨著部署在加速器中的網(wǎng)絡(luò)規(guī)模不斷提升,加速器的計(jì)算效率逐漸下降,因此,該加速器設(shè)計(jì)適合部署在資源匱乏、算力需求低的邊緣設(shè)備中進(jìn)行加速工作.在算力需求較高的應(yīng)用環(huán)境下,則需要擴(kuò)大設(shè)計(jì)規(guī)模,這也就意味著需要更大規(guī)模的憶阻器陣列和外圍電路.

        猜你喜歡
        阻器膜電位加速器
        輪滑加速器
        化學(xué)工業(yè)的“加速器”
        有關(guān)動(dòng)作電位的“4坐標(biāo)2比較”
        參芪復(fù)方對(duì)GK大鼠骨骼肌線粒體膜電位及相關(guān)促凋亡蛋白的影響研究
        全民小康路上的“加速器”
        真實(shí)憶阻器數(shù)學(xué)建模以及電學(xué)仿真
        電子制作(2017年24期)2017-02-02 07:14:25
        等待“加速器”
        魚藤酮誘導(dǎo)PC12細(xì)胞凋亡及線粒體膜電位變化
        具有脈沖的憶阻器神經(jīng)網(wǎng)絡(luò)周期解的穩(wěn)定性
        紅細(xì)胞膜電位的光學(xué)測(cè)定方法
        久久久伊人影院| 日本女优免费一区二区三区| 很黄很色的女同视频一区二区| 国产av剧情一区二区三区| 四虎成人精品在永久免费| 国产精品无码一区二区在线观一 | 国产精品一区二区三区免费视频| 成人aaa片一区国产精品| 饥渴的熟妇张开腿呻吟视频| 国产精品视频一区二区三区四 | 中文字幕日韩欧美一区二区三区 | 亚洲 卡通 欧美 制服 中文| 久久久久99精品成人片试看| 亚洲国产精品悠悠久久琪琪| 午夜亚洲精品一区二区| 青青草成人免费在线观看视频| 红桃av一区二区三区在线无码av| 国产亚洲午夜高清国产拍精品| 日本少妇人妻xxxxx18| 无码不卡一区二区三区在线观看| 国产一区二区三区视频免费在线| 国产激情在线观看视频网址| 三上悠亚亚洲精品一区| 内射白浆一区二区在线观看| 国产熟女露脸大叫高潮| 岛国精品一区二区三区| 国内自拍视频在线观看| 国产剧情一区二区三区在线 | 人成午夜大片免费视频77777| 少妇av射精精品蜜桃专区| 欧美日韩精品一区二区三区不卡| 91亚洲欧洲日产国码精品| 最新亚洲视频一区二区| 国产自国产自愉自愉免费24区| gv天堂gv无码男同在线观看| 在线免费观看韩国a视频| 日本一区二区三区精品不卡| 97一期涩涩97片久久久久久久| 欧美极品jizzhd欧美| 国产喷水福利在线视频| 99久久久精品免费|