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

        ?

        面向可重構陣列的CNN多維融合數(shù)據(jù)復用方法

        2025-08-03 00:00:00張驍帆蔣林李遠成盛明威
        計算機應用研究 2025年6期
        關鍵詞:步長重構卷積

        中圖分類號:TP183 文獻標志碼:A 文章編號:1001-3695(2025)06-027-1801-06

        doi:10.19734/j. issn.1001-3695.2024.10.0418

        CNN multidimensional fusion data reuse method for reconfigurable arrays

        Zhang Xiaofana?,Jiang Lin?,Li Yuancheng?,Sheng Mingweib (a.Colegeofiaamp;foatinTooClfompueceamp;Tcology,Xi'UiestofSee logy,Xi’an710600,China)

        Abstract:Reconfigurablearrayarchitecturescombinetheflexibilityof general-purposeprocesors withthehigh energyefficiencyof dedicated hardware,making themanidealsolution forcomputation-and memory-intensiveapplications suchasconvolutional neuralnetwork(CNN).However,ncreasingcomputationaldemandsaisememoryacessoverhead,itingeficiencygains.Toaddressthis,thispaperproposeda CNN-orientedmultidimensionaldatareuse method forreconfigurablearrays.Byutilizing intra-computing-unitdata cyclicreuseandinter-unitdata pulsationtransfer,itachieveddatareuseacross bothcomputingunitsandarraydimensions.Taskswitching wasenabledthrougharryreconfigurationtofacilitatemultidimensional datareuse.Experimentalresultsonthe VirtexUltraScale440board showthatthis methodreduces memoryaccess byup to 69.4% ,improves computational speed byover 16.2% ,and achievesa computingunitutilizationrateof 94.1% .These results demonstrate thathis method enhances datareuseforCNNonreconfigurablearrys,enabling eficienthardware acceleration.

        Key words:convolutional neural network;reconfigure structure;data reuse;paralel acceleration

        0引言

        近年來,隨著人工智能研究的興起,卷積神經(jīng)網(wǎng)絡(convo-lutionalneuralnetwork,CNN)憑借其出色的特征提取能力和良好的并行性,在圖像分類、目標檢測等領域得到了廣泛應用[1]。CNN內部包含大量重復的乘累加操作,可重構處理器[2.3],因其規(guī)則的并行結構和靈活的配置能力,在CNN計算研究中展現(xiàn)出顯著優(yōu)勢。但是,由于應用場景中的高密集計算[4]和頻繁訪存特性,自重構結構的性能受存儲容量[5]和帶寬的限制日益嚴重。在如CNN這種高密集計算應用中,數(shù)據(jù)搬移的能耗已經(jīng)超出計算開銷。中央處理器和片外存儲器間數(shù)據(jù)移動的能耗[]比浮點運算多兩至三個數(shù)量級。

        高效的數(shù)據(jù)復用是降低CNN在可重構結構上的能耗,緩解訪存矛盾和提高計算效率的一種解決方法[8]。文獻[9]提出了一種權重映射方法,實現(xiàn)了子數(shù)組中行列的復用,但存在靈活性較低的問題,無法在多個處理單元并行執(zhí)行。文獻[10]提出了基于滑窗卷積的數(shù)據(jù)復用方法,實現(xiàn)了訪存時間的降低,但缺乏對多個卷積并行執(zhí)行的討論。文獻[11]在計算單元維度利用CNN分布式存儲特點,設計了不同尺寸卷積的數(shù)據(jù)復用方法,但未充分利用不同的計算資源。文獻[12]通過數(shù)據(jù)路由臨時重用本地數(shù)據(jù),隱藏片外訪問延遲,但該方法卻難以在分支和層間這一維度進行數(shù)據(jù)重用。文獻[13]提出了一種存儲訪問優(yōu)化方案,通過數(shù)據(jù)路由臨時重用本地數(shù)據(jù),以支持跨步操作減少訪存時間。然而,其在不同層之間的數(shù)據(jù)、操作數(shù),以及理論上支持的最大數(shù)量差異很大,因此,該方法會使資源利用率較低。文獻[14]基于輸入數(shù)據(jù)的重復特征,通過多個計算單元共享相同輸入的方法重用數(shù)據(jù),但其側重于陣列內計算單元間這一維度的數(shù)據(jù)復用。文獻[15]提出了一種動態(tài)重用數(shù)據(jù)的方法,避免了CNN不同層間計算時不必要的數(shù)據(jù)搬移,降低了訪存開銷,但該方法在可重構陣列實現(xiàn)時難以在單個計算單元充分復用數(shù)據(jù)。

        綜上所述,這些方法進行數(shù)據(jù)復用時,大多側重于CNN單個卷積內部計算、多個卷積并行計算和不同層間計算銜接中的某一維度。但在可重構陣列下,單一維度的數(shù)據(jù)復用策略無法兼顧單個計算單元、計算單元間和陣列重構時的數(shù)據(jù)復用。在CNN加速過程中,這種局限導致無法充分發(fā)揮可重構陣列配置靈活、并行加速的優(yōu)勢,難以高效利用計算資源并復用數(shù)據(jù),從而顯著增加了訪存開銷。

        本文創(chuàng)新性地針對可重構陣列結構提出了一種融合的數(shù)據(jù)復用方法,實現(xiàn)在CNN多個計算維度上的數(shù)據(jù)復用。首先,通過分析卷積循環(huán)嵌套的計算特征,設計了單個處理單元循環(huán)調用重疊數(shù)據(jù)的復用方法。然后,通過數(shù)據(jù)脈動傳輸?shù)姆绞剑龟嚵兄懈魈幚韱卧⑿杏嬎?,實現(xiàn)陣列維度的數(shù)據(jù)復用。最后,通過任務切換、陣列重構的方式實現(xiàn)數(shù)據(jù)依賴算子間的數(shù)據(jù)復用,形成多維融合的數(shù)據(jù)復用方法。實驗結果表明,本文提出的多維融合數(shù)據(jù)復用方法在資源利用率和算法運算效率上都有較大提升。

        1面向可重構陣列的CNN數(shù)據(jù)復用需求分析

        1.1 CNN卷積數(shù)據(jù)復用分析

        在CNN中,計算量體現(xiàn)在對不同尺寸卷積操作的處理。卷積操作本質上是卷積核對特征圖的各小區(qū)域進行過濾,以提取區(qū)域特征,如圖1所示。卷積核在特征圖的行、列方向上以固定步長滑動窗口,直到遍歷完整個特征圖,從而完成該卷積核的卷積操作。

        圖1單個卷積核滑窗卷積

        在進行卷積操作的過程中,由于片上存儲資源的限制,特征圖中重疊部分的數(shù)據(jù)需要反復從片外存儲加載,從而帶來了很大的訪問延遲,也會過多占用片上存儲空間,造成嚴重的資源浪費。如圖1所示,當一個卷積核進行 3×3 卷積,在滑動窗口以步長 S=2 移動的過程中,相鄰兩次滑窗的重疊區(qū)域共1列,這意味著兩次卷積運算對應的像素窗口中有1/3的重疊區(qū)域,即存儲發(fā)送的數(shù)據(jù)重復率超過 30% 。當卷積核大小為 3× 3且步長 S=1 時,兩次相鄰滑窗對應的重疊區(qū)域達 2/3 ,數(shù)據(jù)重復率超過 65% 。因此,復用數(shù)據(jù)在靠近計算單元的地方保存并進行多次取用,可以很大程度上減少訪存次數(shù),提高計算效率。

        通常,特征圖的特征提取并不依賴于單一卷積核。如圖2所示,不同卷積核對特征圖進行滑窗卷積,當輸入相同,且彼此間沒有數(shù)據(jù)依賴時,輸入數(shù)據(jù)能夠在并行處理的過程中實現(xiàn)復用。

        圖2不同卷積核并行卷積Fig.2Parallel convolution with different convolution kernels

        CNN中相鄰的兩個卷積層間,數(shù)據(jù)存在緊耦合關系。上一個卷積層的輸出特征圖作為下一個卷積層的輸入特征圖,存在數(shù)據(jù)復用的可能性。一個卷積模塊完成全部計算后,其輸出如果不經(jīng)過合理排布無法直接被下一層使用,而直接輸出至片外存儲再進行數(shù)據(jù)重排,會導致訪存時間大幅增加,嚴重限制了硬件計算效率。

        通過分析CNN在執(zhí)行卷積計算時的特征,可以將其數(shù)據(jù)處理歸納為三個維度:

        a)相同卷積核在特征圖進行滑窗卷積時出現(xiàn)數(shù)據(jù)重疊;b)不同卷積核進行并行卷積時所需求的特征數(shù)據(jù)重復;c)相鄰卷積層間,輸入輸出存在依賴關系。這些計算特征本質都是數(shù)據(jù)復用。本文基于上述三個維度,創(chuàng)新性地提出了一種多維融合的數(shù)據(jù)復用策略,以實現(xiàn)各維度的協(xié)調優(yōu)化。

        1.2可重構陣列處理器對數(shù)據(jù)復用的支持

        CNN單一維度的數(shù)據(jù)復用方法存在難以充分利用可重構陣列結構存儲、計算資源的問題。本文基于H型傳輸網(wǎng)絡的可重構陣列處理器[16],創(chuàng)新性地利用其可靈活配置的計算單元和多層次的存儲機制,融合實現(xiàn)CNN多個計算維度的數(shù)據(jù)復用。

        可重構處理器如圖3所示,包括可編程總控制器、存儲控制器、可重構處理元(element,PE)陣列、PE緩存等。

        Fig.1Single convolutional kernel sliding window convolution圖3可重構處理器Fig.3Reconfigurable processor

        首先,如圖3中數(shù)據(jù)通路 ① ,總控制器中從上位機獲得配置信息。其次,總控制器進一步根據(jù)配置信息從DDR獲得可重構PE陣列、存儲控制器、輸入輸出及權重緩存單元的配置信息,按數(shù)據(jù)通路 ② 完成不同模塊配置信息的下發(fā)[17]。然后,PE陣列收到啟動信號后,從輸入、權重緩存加載數(shù)據(jù)并計算。同時,將輸出數(shù)據(jù)按數(shù)據(jù)通路 ③ 傳輸至輸出緩存,與存儲控制器交互。最后,當總控制器監(jiān)測到PE陣列處于閑態(tài)時,再次從DDR取下一次任務的配置信息,按數(shù)據(jù)通路下發(fā)各模塊新配置,實現(xiàn)任務切換。

        可重構PE陣列多樣的配置方法能夠支持CNN內部不同算子的多種計算需求。PE分為外圍雙模PE和內部數(shù)據(jù)流PE,相互之間可以采用鄰接互連方式傳遞數(shù)據(jù)。前者支持指令流和數(shù)據(jù)流兩種模式。指令流模式下可根據(jù)H樹下發(fā)指令進行向量乘、加及取數(shù)等操作。數(shù)據(jù)流模式可以根據(jù)配置信息的不同改變PE功能,支持乘加、池化、激活等操作,可在單個數(shù)據(jù)流PE中實現(xiàn)卷積、歸一、激活多個模塊的連續(xù)完整計算。

        PE陣列外圍的多層次存儲便于CNN算子調用所需數(shù)據(jù)。存儲模塊包括存儲控制器、輸人輸出數(shù)據(jù)緩存單元、權重緩存單元以及PE內部的多個寄存器。預處理的數(shù)據(jù)首先存儲在外部DDR中,存儲控制器按照指令主動發(fā)起對DDR和SRAM的讀寫操作并轉發(fā)輸入、輸出緩存數(shù)據(jù)。輸入緩存單元可被陣列外圍PE通過指令直接訪問,并將數(shù)據(jù)暫存于內部寄存器。

        PE陣列可以通過總控制器完成重構,實現(xiàn)CNN不同計算模塊的快速切換、數(shù)據(jù)復用??偪刂破髫撠熛掳l(fā)PE陣列的指令和控制信息,并接收PE陣列反饋的狀態(tài)信息。當陣列完成一輪計算時,總控根據(jù)PE陣列的狀態(tài)信息下發(fā)下一輪計算所需指令,此時上一輪計算的輸入或輸出數(shù)據(jù)暫存在可重構陣列的存儲中。

        2CNN數(shù)據(jù)復用方法的多維度設計

        2.1不同維度數(shù)據(jù)復用方法的融合

        本文針對CNN卷積計算不同階段的特征,基于數(shù)據(jù)脈動、陣列重構的方法,在可重構陣列結構的PE、陣列、陣列重配置多個維度進行數(shù)據(jù)復用方法設計。

        在單個卷積核進行卷積時,使用存儲向PE傳輸數(shù)據(jù)單發(fā)復用的策略,減小滑窗卷積反復加載相同數(shù)據(jù)帶來的訪存消耗。當多個卷積核在陣列并行執(zhí)行時,彼此之間的輸入數(shù)據(jù)完全相同。因此,結合可重構陣列結構的特性,利用輸入數(shù)據(jù)在PE間脈動策略實現(xiàn)數(shù)據(jù)復用。當不同卷積模塊切換時,耦合的卷積模塊間存在明顯的數(shù)據(jù)依賴關系。因此,可以通過可重構陣列的任務切換實現(xiàn)片上緩存的數(shù)據(jù)復用,避免重復訪問片外存儲帶來的時間開銷。

        2.2可重構陣列下多維融合的數(shù)據(jù)復用方法

        多維融合的數(shù)據(jù)復用方法在可重構結構上,統(tǒng)一實現(xiàn)CNN不同操作及任務切換的示意圖如圖4所示。圖中深色PE為負責加載數(shù)據(jù)的指令流PE,淺色PE為負責計算的數(shù)據(jù)流 PE 。

        圖4可重構結構與下多維融合數(shù)據(jù)復用Fig.4Reconfigurable structure and multi-dimensional fusion data reuse

        首先,采用7路并行方式,通過陣列左側一列指令流PE,并行獲取相鄰滑窗間卷積所需的數(shù)據(jù)。在行方向上,利用鄰接互連寄存器實現(xiàn)輸人數(shù)據(jù)的脈動傳輸,確保單個卷積核所需的輸入數(shù)據(jù)按行傳輸。同時,在列方向上,權重信息通過廣播方式并行下發(fā)至7列數(shù)據(jù)流PE中。在數(shù)據(jù)流PE內,輸入數(shù)據(jù)和權重進行對應位乘累加,實現(xiàn) 7×7=49 路的多卷積核并行計算。

        然后,當數(shù)據(jù)流PE完成乘累加操作后,在本地繼續(xù)按配置對結果進行歸一、激活操作。各數(shù)據(jù)流PE計算結果按列方向脈動傳輸至陣列上方的一行指令流PE行,按順序輸出并拼接生成輸出特征圖。在整個過程中,數(shù)據(jù)輸入、權重下發(fā)、處理計算、結果輸出均通過流水線方式同時執(zhí)行,確保高效計算。

        最后,由總控制器監(jiān)控外圍指令流PE的狀態(tài)進行任務切換。當總控檢測到PE處于閑置狀態(tài)時,總控通過H樹對各PE下發(fā)新的配置信息進行陣列重構。同時將當前層的輸出作為下一層計算的輸入,由可重構陣列左側一列PE按指令加載,開始新一輪計算。

        綜上所述,本文基于可重構陣列結構,通過PE內部重用數(shù)據(jù)、PE間脈動數(shù)據(jù)、陣列間配置切換三種方式,形成協(xié)調配合的多維度數(shù)據(jù)復用方法。

        3不同維度數(shù)據(jù)復用方法實現(xiàn)

        本文基于三個遞進的維度對數(shù)據(jù)復用方法進行系統(tǒng)設計。各維度之間的數(shù)據(jù)復用策略不僅實現(xiàn)了相互兼容,還補充了彼此的不足,從而有效地提高了CNN中間數(shù)據(jù)的復用效率,顯著

        降低了訪存開銷,并提升了計算性能。

        3.1單個卷積在PE的數(shù)據(jù)復用

        當PE執(zhí)行卷積核為 3×3 ,步長 S=2 的卷積操作時,存儲控制器連續(xù)發(fā)送橫向滑窗卷積所需的每一列數(shù)據(jù)至PE緩存。在發(fā)送完第一次滑窗的3列數(shù)據(jù)后,下一次滑窗卷積所需的第一列數(shù)據(jù)即為本次計算的第三列數(shù)據(jù)。由于需要復用的該列數(shù)據(jù)存儲在PE 緩存buffer2中,所以,可以通過配置PE陣列,讀取buffer2數(shù)據(jù)為第二次滑窗卷積計算的第一列數(shù)據(jù)。然后,再繼續(xù)讀取buffer2中的第二列數(shù)據(jù)。當讀取到buffer1數(shù)據(jù)時,buffer2中的數(shù)據(jù)后續(xù)卷積不再使用,由路由單元對其進行更新。

        PE循環(huán)復用數(shù)據(jù)指令如算法1所示,其中 s 為滑動步長,K 為循環(huán)次數(shù), X 為填充后的特征圖寬高, c 為特征圖維度, n 為滑窗卷積次數(shù), 為PE內部鄰接互連寄存器。

        算法1 S=2 復用取數(shù)指令

        輸入:循環(huán)次數(shù) K ,取數(shù)地址 x

        輸出:PE取得數(shù)據(jù)存至鄰接互連寄存器 。

        K=[(X-3)/S+1]×(c/4) ;//循環(huán)次數(shù)

        for(n=0;nn1 ,vrs1; LDB xn2 ,vrs1; LDB xn3 ,vrs1; LDB x2Γ(n+1) vrsl ;

        end for

        與步長為2的卷積不同,步長為1的 3×3 卷積在第二次滑窗時復用的數(shù)據(jù)包括第一次滑窗的第2列和第3列。這種情況下,需要復用的部分列數(shù)據(jù)在PE緩存中已被更新,無法使用步長為1的卷積數(shù)據(jù)復用方式。因此,考慮采用數(shù)據(jù)暫存在PE內部寄存器中的策略,指令如算法2所示, vrs2.3 為內部向量寄存器。在兩次滑窗卷積間,通過將重疊的兩列數(shù)據(jù)按存儲發(fā)送先后分別暫存至內部寄存器和PE緩存,避免了存儲控制器反復發(fā)送相同數(shù)據(jù),節(jié)約了片上存儲資源,緩解了訪存矛盾,提高了計算效率。

        算法2 S=1 復用取數(shù)指令

        輸入:循環(huán)次數(shù) K ,取數(shù)地址 x

        輸出:PE取得數(shù)據(jù)存至鄰接互連寄存器 。

        K=[(X-3)/S+1]×(c/4) ;//循環(huán)次數(shù)

        u r(n=0;nn1 ,vrs1; LDB xn2 : LDB xn2 vrs2 LDB xn3 : LDB xn3 ,vrs3; LDB vrs2,vrs1 : LDB vrs3,vrs1 : LDB ,vrs1;

        end for

        3.2并行卷積的可重構數(shù)據(jù)復用

        并行卷積間的數(shù)據(jù)復用如圖5所示,可重構PE陣列左側一列指令流PE,根據(jù)內部配置從PE緩存按列加載不同尺寸卷積所需的數(shù)據(jù)。單個指令流PE按上述的數(shù)據(jù)復用方法取數(shù)至鄰接互連寄存器后,向東傳輸數(shù)據(jù),以脈動的形式讓同一行的數(shù)據(jù)流PE接收輸入數(shù)據(jù)。同時,陣列向2至8列PE按列廣播下發(fā)不同卷積核的權重信息,與輸入數(shù)據(jù)在數(shù)據(jù)流PE進行乘累加計算,從而實現(xiàn)49個數(shù)據(jù)流PE并行計算一個卷模塊內不同位置的滑窗卷積。計算結果直接在數(shù)據(jù)流PE完成后續(xù)歸一、激活操作,實現(xiàn)連續(xù)計算。

        圖5脈動實現(xiàn)并行卷積的數(shù)據(jù)復用Fig.5Pulsebased parallel convolutionfor data reuse

        待完成一次滑窗卷積后,每個數(shù)據(jù)流PE將本地和下方數(shù)據(jù)流PE的計算結果通過鄰接互連向上脈動。最終由陣列最后一行指令流PE接收數(shù)據(jù),按順序輸出至PE輸出緩存中指定地址,并拼接成下一個卷積模塊所需的三維特征圖。

        3.3基于陣列重構的層間數(shù)據(jù)復用

        卷積不同卷積層間通過可重構陣列實現(xiàn)數(shù)據(jù)復用的流程,如圖6所示。當總控制器通過H樹下發(fā)配置后,PE陣列進行重構,各PE按配置信息分別執(zhí)行取數(shù)、計算、傳輸?shù)炔僮?。存儲控制器則同步更新緩存中的buffer,并將權重數(shù)據(jù)廣播下發(fā)至可重構PE陣列。計算結果隨后依次傳送至存儲控制器,以確保其中的數(shù)據(jù)順序符合下一層的輸入要求??偪刂破鞅O(jiān)測到PE陣列反饋狀態(tài)為閑態(tài)時,通過可編程控制單元執(zhí)行任務切換指令,更新各級存儲以及PE陣列的配置信息,完成陣列重構。

        圖6模塊間重構實現(xiàn)數(shù)據(jù)復用流程

        Fig.6Process for implementing data reuse through module reconstruction一輪計算完成后,當前模塊計算結果可直接作為下層輸入,在片上存儲中被調用,從而避免其輸出至片外,實現(xiàn)不同任務切換時的數(shù)據(jù)復用。

        4實驗與結果分析

        4.1 實驗環(huán)境搭建

        實驗使用NewtouchElectronics公司的VirtexUltraScale440FPGA開發(fā)板作為實驗平臺,實物如圖7所示。該開發(fā)板包含可編程邏輯單元數(shù)量約 5.54M,88.6 Mbit內存,2880個DSP資源,滿足本實驗的硬件要求。在 150MHz 時鐘下,通過對經(jīng)典CNN模型進行測試,驗證本文提出的多維融合數(shù)據(jù)復用方法在可重構陣列結構的性能

        圖7實驗環(huán)境Fig.7Experimental environment

        4.2 實驗結果分析

        實驗從三個方面對所提出的數(shù)據(jù)復用方法進行分析。首先,統(tǒng)計CNN不同尺寸卷積的訪存時間及重構切換周期,評估本文方法在各計算階段的訪存開銷。其次,通過與其他方法對比,驗證本文方法在加速典型CNN模型AlexNet時的有效性。最后,分析本文方法在可重構結構下進行CNN計算時的PE利用率及資源消耗情況,以證明其在可重構結構實現(xiàn)的優(yōu)勢。

        4.2.1訪存及重構周期分析

        實驗所用網(wǎng)絡AlexNet是一個經(jīng)典的CNN結構,如圖8所示,該網(wǎng)絡主要計算為5個不同尺寸的卷積層。前兩層使用11×11 和 5×5 大小卷積核,步長分別為4和1,提取圖像中的低級特征;后三個卷積層使用 3×3 大小卷積核,步長為1,提取更高級的特征。除此之外,實驗還選取了 3×3 和 7×7 步長為2的卷積,分析本文方法對CNN不同尺寸、不同步長卷積操作的數(shù)據(jù)復用效果。在可重構結構實現(xiàn)CNN不同尺寸卷積的訪存周期如圖9所示。輸入為 224×224×3 大小三維數(shù)據(jù)進行卷積時,與不使用本文數(shù)據(jù)復用方法相比,存儲下發(fā)數(shù)據(jù)周期降低了 32% 以上。在進行步長為1的 3×3 卷積時,PE陣列訪問存儲周期從4358下降至1290,對比原始下發(fā)周期節(jié)省了69.4% 的時間。在執(zhí)行大尺寸卷積,如 5×5.11×11 大小的卷積時,訪存周期下降也在 59% 以上??梢钥闯霰疚乃岢龅臄?shù)據(jù)復用方法在可重構陣列降低了CNN多種尺寸卷積的訪存開銷。

        圖8AlexNet卷積層結構
        Fig.8AlexNet convolutional layer structure圖9不同尺寸卷積訪存周期對比

        本文方法也兼顧了CNN層間的數(shù)據(jù)復用,使得不同層計算可緊密銜接,減小了數(shù)據(jù)遷移所帶來的時間損耗。表1體現(xiàn)了不同尺寸卷積間通過本文數(shù)據(jù)復用方法實現(xiàn)任務切換的周期數(shù)。可以看出,不同卷積核大小、不同步長的模塊平均重構時間為6個周期,占總計算周期數(shù)的 1% 以內。在如 11×11 大尺寸卷積計算時,平均重構周期占平均計算周期的 0.1% 以內。說明本文所提出的數(shù)據(jù)復用方法,在通過陣列重構實現(xiàn)不同尺寸卷積層任務切換這一維度降低了CNN訪存開銷。

        表1可重構切換周期數(shù)Tab.1Number of reconfigurable switching cycles

        4.2.2 網(wǎng)絡運行周期對比

        表2體現(xiàn)了在可重構結構下,不同數(shù)據(jù)復用方法實現(xiàn)典型CNNAlexNet卷積層的計算周期數(shù),以及本文相對其加速比。文獻18在可重構陣列結構實現(xiàn)了卷積的并行計算,但每個PE存在多個周期加載重復數(shù)據(jù)的情況,無法充分發(fā)揮自重構陣列配置靈活的優(yōu)勢。文獻[19]在行方向復用輸人數(shù)據(jù)實現(xiàn)了并行加速,但需要反復加載不同列權重數(shù)據(jù),未實現(xiàn)數(shù)據(jù)的充分復用。文獻[20]在進行層間不同尺寸的卷積切換時并不靈活,計算資源利用率較低,導致計算周期較長。對比上述方法,本文conv1層至conv5層的執(zhí)行速度均有所提升,其中conv2、conv4層速度提升最為明顯,最大分別達 50.7% 、46.9% 。這表明,本文提出的多維數(shù)據(jù)復用方法對 3×3 步長為1的卷積計算速度提升效果尤為突出,對其他尺寸的卷積速度提升也在 16.2% 以上,顯著減少了訪存時間。

        Tab.2Network operation cycle statistics

        4.2.3PE利用率及相關硬件資源開銷分析

        通過本文設計的多維融合數(shù)據(jù)復用方法,實現(xiàn)了數(shù)據(jù)在PE單元間的充分復用,使得典型CNN模型在可重構陣列上的映射具有較高的PE利用率。

        表3展示了不同網(wǎng)絡模型算子和輸人大小下的PE利用率情況,其中VGGNet、LeNet和AlexNet在可重構陣列上映射的PE利用率均達到 97.2% 。當輸入特征圖尺寸較小時,不需要所有行、列PE參與脈動傳輸,因此部分PE單元出現(xiàn)閑置。例如,MobileNet在輸入為 16×16×16 進行 3×3 步長為1的卷積時,PE利用率為 80.5% 。

        表3不同模型算子映射時的PE利用率Tab.3PE utilization rate when mapping different model operators

        圖10展示了表3中數(shù)據(jù)所得到的PE平均利用率與相關工作的對比。文獻[18]對 3×3.5×5.11×11 多個尺寸的卷積進行了并行映射并復用數(shù)據(jù),但各PE的數(shù)據(jù)復用策略無法在陣列維度上應用,導致多個PE閑置。文獻[21]通過PE共享數(shù)據(jù)提高了硬件利用率,但在卷積核尺寸變化時無法調整參數(shù),導致小尺寸卷積時寄存器資源浪費。文獻[22]采用混合數(shù)據(jù)重用方法實現(xiàn)了多尺寸卷積的數(shù)據(jù)復用,但未討論不同尺寸卷積切換時的數(shù)據(jù)復用,PE利用率仍有提升空間。采用本文提出的多維融合數(shù)據(jù)復用方法,PE平均利用率達到94.1% ,相比文獻[18,21,22],提升了 2.3~14.9 百分點。這一提升表明,該方法在可重構結構中能夠更加充分地調用計算資源,提高模型的執(zhí)行效率。

        本文方法與國內外基于FPGA實現(xiàn)CNN數(shù)據(jù)復用的硬件資源消耗對比如表4所示。文獻[23]在FPGA應用其并行映射方法實現(xiàn)CNN并開發(fā)了相應編譯工具,可適應不同的算子,但未充分結合硬件結構,功耗、硬件資源消耗遠高于本文。文獻[24]雖然功耗低于本文,但缺乏對陣列維度的數(shù)據(jù)復用討論。文獻[25]工作頻率高于本文,相關硬件資源消耗也更少,但其基于動態(tài)重構的并行加速方法陣列利用率不高,對層間數(shù)據(jù)的復用也存在限制。文獻[26]采用靜態(tài)內存分配策略,在較高的頻率下實現(xiàn)了CNN計算并進行層間數(shù)據(jù)復用,但功耗達本文的4倍以上,同時DSP資源多消耗近一倍。上述對比說明,本文方法在自重構陣列結構下能以較低功耗實現(xiàn)CNN多個維度的數(shù)據(jù)復用,同時在硬件資源消耗方面也具有優(yōu)勢。

        表4硬件資源消耗統(tǒng)計Tab.4Hardware resource consumption statistics

        5結束語

        針對可重構陣列結構中實現(xiàn)CNN訪存開銷大、計算效率低的問題,本文提出了一種多維融合的數(shù)據(jù)復用方法。該方法基于數(shù)據(jù)循環(huán)調用與脈動傳輸策略,通過充分挖掘CNN主要計算間的并行性,在陣列中實現(xiàn)數(shù)據(jù)復用。同時,通過陣列重構機制實現(xiàn)任務切換,形成多維度的數(shù)據(jù)復用方法。實驗結果表明,在可重構陣列處理器上應用該方法,典型CNN模型的PE平均利用率達 94.1% 。相比單一維度的數(shù)據(jù)復用方法,片上訪存開銷降低了 32% 以上,最高達 69.4% ,網(wǎng)絡運行速度平均提升了 16.4% 。與現(xiàn)有CNN數(shù)據(jù)復用方法相比,本文創(chuàng)新性地在可重構陣列統(tǒng)一實現(xiàn)了PE、陣列、陣列重構多個維度的數(shù)據(jù)復用,充分發(fā)揮了自重構結構配置靈活、并行加速的優(yōu)勢。在使用較少硬件資源的前提下,成功實現(xiàn)了良好的CNN加速效果,對于CNN在可重構陣列結構中的高效實現(xiàn)具有重要意義。

        參考文獻:

        [1]陶惜婷,葉青.融合CNN和Transformer的并行雙分支皮膚病灶 圖像分割[J].計算機應用研究,2024,41(8):2554-2560. (TaoXiting,YeQing.Paralleldual-branchimagesegmentationof skin lesions fusing CNN and Transformer[J]. Application ResearchofComputers,2024,41(8):2554-2560.)

        [2]蔣林,張丁月,李遠成,等.基于憶阻器的1T1M可重構陣列結 構[J].電子與信息學報,2023,45(8):3047-3056.(JiangLin, ZhangDingyue,Li Yuancheng,etal.1T1Mreconfigurablearray structure based on memristor[J].Journal of Electronicsamp; Information Technology,2023,45(8):3047-3056.)

        [3]LuYanan,LiuLeibo,ZhuJianfeng,etal.Architecture,challenges and applications of dynamic reconfigurablecomputing[J].Journal ofSemiconductors,2020,41(2):021401.

        [4]劉炎培,朱運靜,賓艷茹,等.邊緣環(huán)境下計算密集型任務調度 研究綜述[J].計算機工程與應用,2022,58(20):28-42.(Liu Yanpei,Zhu Yunjing,Bin Yanru,etal.Review of research on computing-intensive task schedulingin edge environments[J]. ComputerEngineeringand Applications,2022,58(20):28-42.)

        [5]朱家揚,蔣林,李遠成,等.基于可重構陣列的CNN數(shù)據(jù)量化方 法[J].計算機應用研究,2024,41(4):1070-1076.(ZhuJiayang,JiangLin,LiYuancheng,etal.CNN data quantizationmethod based on reconfigurable array[J].Application Research of Computers,2024,41(4):1070-1076.)

        [6]Mohaidat T,Khalil K.A survey on neural network hardware accelerators [J].IEEETranson Artificial Intelligence,2024,5(8):3801-3822.

        [7]Wei Shaojun,Lin Xinhan,Tu Fengbin,et al.Reconfigurability,why it matters in AI tasks processing:a survey of reconfigurable AI chips [J].IEEE Trans on Circuitsand Systems l:Regular Papers, 2023,70(3):1228-1241.

        [8]Lai YK,HuangLingcheng. An efficient convolutional neural network acceleratoronFPGAplatform[C]//Procof IEEE International Conference onConsumer Electronics.Piscataway,NJ:IEEE Press,2O24:1-2.

        [9]Wang Shang,Liang Feng,Cao Qi,et al.A weight mapping strategy formore fully exploiting data in CIM-based CNN accelerator[J]. IEEE Trans on Circuits and Systems Il: Express Briefs,2024, 71(4):2324-2328.

        [10]Alantali F, Halawani Y, Mohammad B,et al. SLID: exploiting spatial localityin input data as acomputational reuse method for fficient CNN[J]. IEEE Access,2021,9:57179-57187.

        [11]朱育琳,蔣林,王欣,等.可重構結構下卷積神經(jīng)網(wǎng)絡加速研究 與設計[J].傳感器與微系統(tǒng),2023,42(4):67-70.(ZhuYulin,JiangLin,Wang Xin,et al.Acceleration researchand design of CNN with reconfigurable structure [J]. Transducer and Microsystem Technologies,2023,42(4): 67-70.)

        [12] Kang D,Kang D, Ha S.Multi-bank on-chip memory management techniques for CNN accelerators [J]. IEEE Trans on Computers, 2022,71(5): 1181-1193.

        [13] Chen Liaochuan,Li Zhaofang,Lin YJ,et al. A1.93TOPS/Wdeep learning processor with areconfigurable processng element array based on SRAM access optimization [C]//Proc of IEEE Asia Pacific Conference on Circuits and Systems.Piscataway,NJ:IEEE Press, 2022:15-19.

        [14]Islam MN,SresthaR,ChowurySR.Energy-effcientadhigh throughput CNN inference engine based on memory-sharing and datareusing for edge applications[J].IEEE Trans on Circuits and Systems l: Regular Papers,2024,71(7): 3189-3202.

        [15]KimM,OhK,ChoY,etal.Alow-latencyFPGAacceleratorfor YOLOv3-tiny with flexible layerwise mapping and dataflow[J]. IEEE Trans on Circuitsand Systems l: Regular Papers,2024, 71(3) : 1158-1171.

        [16]Yang Kun,JiangLin,ShanRui,etal.RMSRM:rea-time monitoringbased self-reconfiguration mechanism in reconfigurable PE array [J]. The Journal of Supercomputing,2024,80(5): 7071-7101.

        [17]Li Kangle, Jiang Lin,Huang Xingjie,et al. DMPRA: a dynamic reconfiguration mechanism for a dual-mode programmable reconfigurable array architecture [J]. Journal of Circuits,Systems and Computers,2023,32(9):2350157.

        [18] Shan R,Jiang L,Deng JY,et al.Paralel design of convolutional neural networks for remote sensing images object recognition based on data-driven array processor[J]. The Journal of China Universities of Postsand Telecommunications,2020,27(6): 87-100.

        [19]Liu Youyao, Shi Qifei, Wang Haihao,et al. A convolutional computingdesign using pulsating arrays[C]//Proc of the19th International Conference on Natural Computation,F(xiàn)uzzy Systems and Knowledge Discovery. Piscataway,NJ: IEEE Press,2023:1-5.

        [20] Zhang Qianqian, Zhang Xin. Design of a low-latency general-purpose CNN hardware accelerator based on pulsed arrays on FPGAs [C]// Proc of the 2Oth International Conference on Natural Computation, Fuzzy Systems and Knowledge Discovery.Piscataway,NJ: IEEE Press, 2024: 1-8.

        [21]Chen K C,Liao Yisheng. A reconfigurable deep neural network on chip design with flexible convolutional operations [C]// Proc of the 15th IEEE/ACM International Workshop on Network on Chip Architectures.Piscataway,NJ:IEEE Press,2022:1-5.

        [22] Chen KJ, Yang Y C,Liao Yisheng.An arbitrary kernel-size applicable NoC-based DNN processor design with hybrid data reuse [C]// Proc of IEEE International Midwest Symposium on Circuits and Systems.Piscataway,NJ: IEEE Press,2021: 657-660.

        [23]Hadjis S,Olukotun K. TensorFlow tocloud FPGAs:tradeoffs foraccelerating deep neural networks[C]//Proc of the 29th International Conference on Field Programmable Logic and Applications.Piscataway,NJ: IEEE Press,2019: 360-366.

        [24]Vinh TQ,Hai D V. Optimizing convolutional neural network accelerator on low-cost FPGA[J].Journal of Circuits,Systems and Computers,2021,30(11) : 2150193.

        [25]Xiong Hao,SunKelin, Zhang Bing, et al.Dep-sea:areconfigurable accelerator for classic CNN[J].Wireless Communications and Mobile Computing,2022,2022(1):4726652.

        [26]Nguyen D T, Je H,Nguyen TN,et al. ShortcutFusion: from TensorFlow to FPGA-based accelerator with a reuse-aware memory allocation for shortcut data [J]. IEEE Trans on Circuits and Systems l: Regular Papers,2022,69(6):2477-2489.

        猜你喜歡
        步長重構卷積
        基于聲壓匹配法的飛機艙內聲場重構研究
        我國優(yōu)秀男子撐竿跳高運動員倒三步關鍵技術特征研究
        數(shù)字化轉型背景下高等教育治理體系的重構路徑研究
        科學導報(2025年54期)2025-08-19 00:00:00
        “雙創(chuàng)”視域下傳感網(wǎng)應用開發(fā)課程教學改革與實施
        基于時間圖卷積網(wǎng)絡的交通流時空預測模型
        基于TVF-EMD和自注意力機制LSTM的庫區(qū)邊坡變形預測算法研究
        基于圖卷積的自適應特征融合MRI腦腫瘤分割方法
        基于YOLOX的輕量化目標檢測算法及其應用
        基于三支決策的海洋捕食者算法
        基于4D-Arnold不等長映射的深度隱寫模型參數(shù)加密研究
        一区二区人妻乳中文字幕| 欧美xxxx黑人又粗又长精品| 久久狠狠高潮亚洲精品暴力打 | 亚洲精品中文字幕无码蜜桃 | 欧美性性性性性色大片免费的| 免费精品美女久久久久久久久久| 91中文字幕精品一区二区| 久久久免费看少妇高潮| 私人毛片免费高清影视院| 亚洲一区二区综合色精品| 手机av男人天堂免费网址| 亚洲中文字幕久久在线| wwww亚洲熟妇久久久久| 视频一区欧美| 黑人一区二区三区高清视频| 女色av少妇一区二区三区 | 日本a级特黄特黄刺激大片| 无码制服丝袜中文字幕| 色和尚色视频在线看网站| 精品伊人久久大香线蕉综合| 中文字幕av在线一二三区| 国产精品,在线点播影院| 一区二区三区日本伦理| 少妇性饥渴无码a区免费| 91视频免费国产成人| 一本色道久久88综合亚精品| 国产av无码专区亚洲av男同| 男女啪啪免费体验区| 国产在线视频h| 人妻在线有码中文字幕| 东京热无码av一区二区| jizz国产精品免费麻豆| 最新国产av网址大全| 麻豆文化传媒精品一区观看| 亚洲精品无码乱码成人| 国产成人精品免费视频大全| 久久精品国产9久久综合| 啦啦啦www在线观看免费视频| 91呻吟丰满娇喘国产区| 综合久久加勒比天然素人| 狠狠摸狠狠澡|