中圖分類號: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引言
近年來,隨著人工智能研究的興起,卷積神經網絡(convo-lutionalneuralnetwork,CNN)憑借其出色的特征提取能力和良好的并行性,在圖像分類、目標檢測等領域得到了廣泛應用[1]。CNN內部包含大量重復的乘累加操作,可重構處理器[2.3],因其規則的并行結構和靈活的配置能力,在CNN計算研究中展現出顯著優勢。但是,由于應用場景中的高密集計算[4]和頻繁訪存特性,自重構結構的性能受存儲容量[5]和帶寬的限制日益嚴重。在如CNN這種高密集計算應用中,數據搬移的能耗已經超出計算開銷。中央處理器和片外存儲器間數據移動的能耗[]比浮點運算多兩至三個數量級。
高效的數據復用是降低CNN在可重構結構上的能耗,緩解訪存矛盾和提高計算效率的一種解決方法[8]。文獻[9]提出了一種權重映射方法,實現了子數組中行列的復用,但存在靈活性較低的問題,無法在多個處理單元并行執行。文獻[10]提出了基于滑窗卷積的數據復用方法,實現了訪存時間的降低,但缺乏對多個卷積并行執行的討論。文獻[11]在計算單元維度利用CNN分布式存儲特點,設計了不同尺寸卷積的數據復用方法,但未充分利用不同的計算資源。文獻[12]通過數據路由臨時重用本地數據,隱藏片外訪問延遲,但該方法卻難以在分支和層間這一維度進行數據重用。文獻[13]提出了一種存儲訪問優化方案,通過數據路由臨時重用本地數據,以支持跨步操作減少訪存時間。然而,其在不同層之間的數據、操作數,以及理論上支持的最大數量差異很大,因此,該方法會使資源利用率較低。文獻[14]基于輸入數據的重復特征,通過多個計算單元共享相同輸入的方法重用數據,但其側重于陣列內計算單元間這一維度的數據復用。文獻[15]提出了一種動態重用數據的方法,避免了CNN不同層間計算時不必要的數據搬移,降低了訪存開銷,但該方法在可重構陣列實現時難以在單個計算單元充分復用數據。
綜上所述,這些方法進行數據復用時,大多側重于CNN單個卷積內部計算、多個卷積并行計算和不同層間計算銜接中的某一維度。但在可重構陣列下,單一維度的數據復用策略無法兼顧單個計算單元、計算單元間和陣列重構時的數據復用。在CNN加速過程中,這種局限導致無法充分發揮可重構陣列配置靈活、并行加速的優勢,難以高效利用計算資源并復用數據,從而顯著增加了訪存開銷。
本文創新性地針對可重構陣列結構提出了一種融合的數據復用方法,實現在CNN多個計算維度上的數據復用。首先,通過分析卷積循環嵌套的計算特征,設計了單個處理單元循環調用重疊數據的復用方法。然后,通過數據脈動傳輸的方式,使陣列中各處理單元并行計算,實現陣列維度的數據復用。最后,通過任務切換、陣列重構的方式實現數據依賴算子間的數據復用,形成多維融合的數據復用方法。實驗結果表明,本文提出的多維融合數據復用方法在資源利用率和算法運算效率上都有較大提升。
1面向可重構陣列的CNN數據復用需求分析
1.1 CNN卷積數據復用分析
在CNN中,計算量體現在對不同尺寸卷積操作的處理。卷積操作本質上是卷積核對特征圖的各小區域進行過濾,以提取區域特征,如圖1所示。卷積核在特征圖的行、列方向上以固定步長滑動窗口,直到遍歷完整個特征圖,從而完成該卷積核的卷積操作。
在進行卷積操作的過程中,由于片上存儲資源的限制,特征圖中重疊部分的數據需要反復從片外存儲加載,從而帶來了很大的訪問延遲,也會過多占用片上存儲空間,造成嚴重的資源浪費。如圖1所示,當一個卷積核進行 3×3 卷積,在滑動窗口以步長 S=2 移動的過程中,相鄰兩次滑窗的重疊區域共1列,這意味著兩次卷積運算對應的像素窗口中有1/3的重疊區域,即存儲發送的數據重復率超過 30% 。當卷積核大小為 3× 3且步長 S=1 時,兩次相鄰滑窗對應的重疊區域達 2/3 ,數據重復率超過 65% 。因此,復用數據在靠近計算單元的地方保存并進行多次取用,可以很大程度上減少訪存次數,提高計算效率。
通常,特征圖的特征提取并不依賴于單一卷積核。如圖2所示,不同卷積核對特征圖進行滑窗卷積,當輸入相同,且彼此間沒有數據依賴時,輸入數據能夠在并行處理的過程中實現復用。
CNN中相鄰的兩個卷積層間,數據存在緊耦合關系。上一個卷積層的輸出特征圖作為下一個卷積層的輸入特征圖,存在數據復用的可能性。一個卷積模塊完成全部計算后,其輸出如果不經過合理排布無法直接被下一層使用,而直接輸出至片外存儲再進行數據重排,會導致訪存時間大幅增加,嚴重限制了硬件計算效率。
通過分析CNN在執行卷積計算時的特征,可以將其數據處理歸納為三個維度:
a)相同卷積核在特征圖進行滑窗卷積時出現數據重疊;b)不同卷積核進行并行卷積時所需求的特征數據重復;c)相鄰卷積層間,輸入輸出存在依賴關系。這些計算特征本質都是數據復用。本文基于上述三個維度,創新性地提出了一種多維融合的數據復用策略,以實現各維度的協調優化。
1.2可重構陣列處理器對數據復用的支持
CNN單一維度的數據復用方法存在難以充分利用可重構陣列結構存儲、計算資源的問題。本文基于H型傳輸網絡的可重構陣列處理器[16],創新性地利用其可靈活配置的計算單元和多層次的存儲機制,融合實現CNN多個計算維度的數據復用。
可重構處理器如圖3所示,包括可編程總控制器、存儲控制器、可重構處理元(element,PE)陣列、PE緩存等。
首先,如圖3中數據通路 ① ,總控制器中從上位機獲得配置信息。其次,總控制器進一步根據配置信息從DDR獲得可重構PE陣列、存儲控制器、輸入輸出及權重緩存單元的配置信息,按數據通路 ② 完成不同模塊配置信息的下發[17]。然后,PE陣列收到啟動信號后,從輸入、權重緩存加載數據并計算。同時,將輸出數據按數據通路 ③ 傳輸至輸出緩存,與存儲控制器交互。最后,當總控制器監測到PE陣列處于閑態時,再次從DDR取下一次任務的配置信息,按數據通路下發各模塊新配置,實現任務切換。
可重構PE陣列多樣的配置方法能夠支持CNN內部不同算子的多種計算需求。PE分為外圍雙模PE和內部數據流PE,相互之間可以采用鄰接互連方式傳遞數據。前者支持指令流和數據流兩種模式。指令流模式下可根據H樹下發指令進行向量乘、加及取數等操作。數據流模式可以根據配置信息的不同改變PE功能,支持乘加、池化、激活等操作,可在單個數據流PE中實現卷積、歸一、激活多個模塊的連續完整計算。
PE陣列外圍的多層次存儲便于CNN算子調用所需數據。存儲模塊包括存儲控制器、輸人輸出數據緩存單元、權重緩存單元以及PE內部的多個寄存器。預處理的數據首先存儲在外部DDR中,存儲控制器按照指令主動發起對DDR和SRAM的讀寫操作并轉發輸入、輸出緩存數據。輸入緩存單元可被陣列外圍PE通過指令直接訪問,并將數據暫存于內部寄存器。
PE陣列可以通過總控制器完成重構,實現CNN不同計算模塊的快速切換、數據復用。總控制器負責下發PE陣列的指令和控制信息,并接收PE陣列反饋的狀態信息。當陣列完成一輪計算時,總控根據PE陣列的狀態信息下發下一輪計算所需指令,此時上一輪計算的輸入或輸出數據暫存在可重構陣列的存儲中。
2CNN數據復用方法的多維度設計
2.1不同維度數據復用方法的融合
本文針對CNN卷積計算不同階段的特征,基于數據脈動、陣列重構的方法,在可重構陣列結構的PE、陣列、陣列重配置多個維度進行數據復用方法設計。
在單個卷積核進行卷積時,使用存儲向PE傳輸數據單發復用的策略,減小滑窗卷積反復加載相同數據帶來的訪存消耗。當多個卷積核在陣列并行執行時,彼此之間的輸入數據完全相同。因此,結合可重構陣列結構的特性,利用輸入數據在PE間脈動策略實現數據復用。當不同卷積模塊切換時,耦合的卷積模塊間存在明顯的數據依賴關系。因此,可以通過可重構陣列的任務切換實現片上緩存的數據復用,避免重復訪問片外存儲帶來的時間開銷。
2.2可重構陣列下多維融合的數據復用方法
多維融合的數據復用方法在可重構結構上,統一實現CNN不同操作及任務切換的示意圖如圖4所示。圖中深色PE為負責加載數據的指令流PE,淺色PE為負責計算的數據流 PE 。
首先,采用7路并行方式,通過陣列左側一列指令流PE,并行獲取相鄰滑窗間卷積所需的數據。在行方向上,利用鄰接互連寄存器實現輸人數據的脈動傳輸,確保單個卷積核所需的輸入數據按行傳輸。同時,在列方向上,權重信息通過廣播方式并行下發至7列數據流PE中。在數據流PE內,輸入數據和權重進行對應位乘累加,實現 7×7=49 路的多卷積核并行計算。
然后,當數據流PE完成乘累加操作后,在本地繼續按配置對結果進行歸一、激活操作。各數據流PE計算結果按列方向脈動傳輸至陣列上方的一行指令流PE行,按順序輸出并拼接生成輸出特征圖。在整個過程中,數據輸入、權重下發、處理計算、結果輸出均通過流水線方式同時執行,確保高效計算。
最后,由總控制器監控外圍指令流PE的狀態進行任務切換。當總控檢測到PE處于閑置狀態時,總控通過H樹對各PE下發新的配置信息進行陣列重構。同時將當前層的輸出作為下一層計算的輸入,由可重構陣列左側一列PE按指令加載,開始新一輪計算。
綜上所述,本文基于可重構陣列結構,通過PE內部重用數據、PE間脈動數據、陣列間配置切換三種方式,形成協調配合的多維度數據復用方法。
3不同維度數據復用方法實現
本文基于三個遞進的維度對數據復用方法進行系統設計。各維度之間的數據復用策略不僅實現了相互兼容,還補充了彼此的不足,從而有效地提高了CNN中間數據的復用效率,顯著
降低了訪存開銷,并提升了計算性能。
3.1單個卷積在PE的數據復用
當PE執行卷積核為 3×3 ,步長 S=2 的卷積操作時,存儲控制器連續發送橫向滑窗卷積所需的每一列數據至PE緩存。在發送完第一次滑窗的3列數據后,下一次滑窗卷積所需的第一列數據即為本次計算的第三列數據。由于需要復用的該列數據存儲在PE 緩存buffer2中,所以,可以通過配置PE陣列,讀取buffer2數據為第二次滑窗卷積計算的第一列數據。然后,再繼續讀取buffer2中的第二列數據。當讀取到buffer1數據時,buffer2中的數據后續卷積不再使用,由路由單元對其進行更新。
PE循環復用數據指令如算法1所示,其中 s 為滑動步長,K 為循環次數, X 為填充后的特征圖寬高, c 為特征圖維度, n 為滑窗卷積次數, 為PE內部鄰接互連寄存器。
算法1 S=2 復用取數指令
輸入:循環次數 K ,取數地址 x
輸出:PE取得數據存至鄰接互連寄存器 。
K=[(X-3)/S+1]×(c/4) ;//循環次數
for(n=0;nn1 ,vrs1; LDB xn2 ,vrs1; LDB xn3 ,vrs1; LDB x2Γ(n+1) vrsl ;
end for
與步長為2的卷積不同,步長為1的 3×3 卷積在第二次滑窗時復用的數據包括第一次滑窗的第2列和第3列。這種情況下,需要復用的部分列數據在PE緩存中已被更新,無法使用步長為1的卷積數據復用方式。因此,考慮采用數據暫存在PE內部寄存器中的策略,指令如算法2所示, vrs2.3 為內部向量寄存器。在兩次滑窗卷積間,通過將重疊的兩列數據按存儲發送先后分別暫存至內部寄存器和PE緩存,避免了存儲控制器反復發送相同數據,節約了片上存儲資源,緩解了訪存矛盾,提高了計算效率。
算法2 S=1 復用取數指令
輸入:循環次數 K ,取數地址 x
輸出:PE取得數據存至鄰接互連寄存器 。
K=[(X-3)/S+1]×(c/4) ;//循環次數
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并行卷積的可重構數據復用
并行卷積間的數據復用如圖5所示,可重構PE陣列左側一列指令流PE,根據內部配置從PE緩存按列加載不同尺寸卷積所需的數據。單個指令流PE按上述的數據復用方法取數至鄰接互連寄存器后,向東傳輸數據,以脈動的形式讓同一行的數據流PE接收輸入數據。同時,陣列向2至8列PE按列廣播下發不同卷積核的權重信息,與輸入數據在數據流PE進行乘累加計算,從而實現49個數據流PE并行計算一個卷模塊內不同位置的滑窗卷積。計算結果直接在數據流PE完成后續歸一、激活操作,實現連續計算。
待完成一次滑窗卷積后,每個數據流PE將本地和下方數據流PE的計算結果通過鄰接互連向上脈動。最終由陣列最后一行指令流PE接收數據,按順序輸出至PE輸出緩存中指定地址,并拼接成下一個卷積模塊所需的三維特征圖。
3.3基于陣列重構的層間數據復用
卷積不同卷積層間通過可重構陣列實現數據復用的流程,如圖6所示。當總控制器通過H樹下發配置后,PE陣列進行重構,各PE按配置信息分別執行取數、計算、傳輸等操作。存儲控制器則同步更新緩存中的buffer,并將權重數據廣播下發至可重構PE陣列。計算結果隨后依次傳送至存儲控制器,以確保其中的數據順序符合下一層的輸入要求。總控制器監測到PE陣列反饋狀態為閑態時,通過可編程控制單元執行任務切換指令,更新各級存儲以及PE陣列的配置信息,完成陣列重構。
Fig.6Process for implementing data reuse through module reconstruction一輪計算完成后,當前模塊計算結果可直接作為下層輸入,在片上存儲中被調用,從而避免其輸出至片外,實現不同任務切換時的數據復用。
4實驗與結果分析
4.1 實驗環境搭建
實驗使用NewtouchElectronics公司的VirtexUltraScale440FPGA開發板作為實驗平臺,實物如圖7所示。該開發板包含可編程邏輯單元數量約 5.54M,88.6 Mbit內存,2880個DSP資源,滿足本實驗的硬件要求。在 150MHz 時鐘下,通過對經典CNN模型進行測試,驗證本文提出的多維融合數據復用方法在可重構陣列結構的性能
4.2 實驗結果分析
實驗從三個方面對所提出的數據復用方法進行分析。首先,統計CNN不同尺寸卷積的訪存時間及重構切換周期,評估本文方法在各計算階段的訪存開銷。其次,通過與其他方法對比,驗證本文方法在加速典型CNN模型AlexNet時的有效性。最后,分析本文方法在可重構結構下進行CNN計算時的PE利用率及資源消耗情況,以證明其在可重構結構實現的優勢。
4.2.1訪存及重構周期分析
實驗所用網絡AlexNet是一個經典的CNN結構,如圖8所示,該網絡主要計算為5個不同尺寸的卷積層。前兩層使用11×11 和 5×5 大小卷積核,步長分別為4和1,提取圖像中的低級特征;后三個卷積層使用 3×3 大小卷積核,步長為1,提取更高級的特征。除此之外,實驗還選取了 3×3 和 7×7 步長為2的卷積,分析本文方法對CNN不同尺寸、不同步長卷積操作的數據復用效果。在可重構結構實現CNN不同尺寸卷積的訪存周期如圖9所示。輸入為 224×224×3 大小三維數據進行卷積時,與不使用本文數據復用方法相比,存儲下發數據周期降低了 32% 以上。在進行步長為1的 3×3 卷積時,PE陣列訪問存儲周期從4358下降至1290,對比原始下發周期節省了69.4% 的時間。在執行大尺寸卷積,如 5×5.11×11 大小的卷積時,訪存周期下降也在 59% 以上。可以看出本文所提出的數據復用方法在可重構陣列降低了CNN多種尺寸卷積的訪存開銷。
本文方法也兼顧了CNN層間的數據復用,使得不同層計算可緊密銜接,減小了數據遷移所帶來的時間損耗。表1體現了不同尺寸卷積間通過本文數據復用方法實現任務切換的周期數。可以看出,不同卷積核大小、不同步長的模塊平均重構時間為6個周期,占總計算周期數的 1% 以內。在如 11×11 大尺寸卷積計算時,平均重構周期占平均計算周期的 0.1% 以內。說明本文所提出的數據復用方法,在通過陣列重構實現不同尺寸卷積層任務切換這一維度降低了CNN訪存開銷。
4.2.2 網絡運行周期對比
表2體現了在可重構結構下,不同數據復用方法實現典型CNNAlexNet卷積層的計算周期數,以及本文相對其加速比。文獻18在可重構陣列結構實現了卷積的并行計算,但每個PE存在多個周期加載重復數據的情況,無法充分發揮自重構陣列配置靈活的優勢。文獻[19]在行方向復用輸人數據實現了并行加速,但需要反復加載不同列權重數據,未實現數據的充分復用。文獻[20]在進行層間不同尺寸的卷積切換時并不靈活,計算資源利用率較低,導致計算周期較長。對比上述方法,本文conv1層至conv5層的執行速度均有所提升,其中conv2、conv4層速度提升最為明顯,最大分別達 50.7% 、46.9% 。這表明,本文提出的多維數據復用方法對 3×3 步長為1的卷積計算速度提升效果尤為突出,對其他尺寸的卷積速度提升也在 16.2% 以上,顯著減少了訪存時間。
4.2.3PE利用率及相關硬件資源開銷分析
通過本文設計的多維融合數據復用方法,實現了數據在PE單元間的充分復用,使得典型CNN模型在可重構陣列上的映射具有較高的PE利用率。
表3展示了不同網絡模型算子和輸人大小下的PE利用率情況,其中VGGNet、LeNet和AlexNet在可重構陣列上映射的PE利用率均達到 97.2% 。當輸入特征圖尺寸較小時,不需要所有行、列PE參與脈動傳輸,因此部分PE單元出現閑置。例如,MobileNet在輸入為 16×16×16 進行 3×3 步長為1的卷積時,PE利用率為 80.5% 。
圖10展示了表3中數據所得到的PE平均利用率與相關工作的對比。文獻[18]對 3×3.5×5.11×11 多個尺寸的卷積進行了并行映射并復用數據,但各PE的數據復用策略無法在陣列維度上應用,導致多個PE閑置。文獻[21]通過PE共享數據提高了硬件利用率,但在卷積核尺寸變化時無法調整參數,導致小尺寸卷積時寄存器資源浪費。文獻[22]采用混合數據重用方法實現了多尺寸卷積的數據復用,但未討論不同尺寸卷積切換時的數據復用,PE利用率仍有提升空間。采用本文提出的多維融合數據復用方法,PE平均利用率達到94.1% ,相比文獻[18,21,22],提升了 2.3~14.9 百分點。這一提升表明,該方法在可重構結構中能夠更加充分地調用計算資源,提高模型的執行效率。
本文方法與國內外基于FPGA實現CNN數據復用的硬件資源消耗對比如表4所示。文獻[23]在FPGA應用其并行映射方法實現CNN并開發了相應編譯工具,可適應不同的算子,但未充分結合硬件結構,功耗、硬件資源消耗遠高于本文。文獻[24]雖然功耗低于本文,但缺乏對陣列維度的數據復用討論。文獻[25]工作頻率高于本文,相關硬件資源消耗也更少,但其基于動態重構的并行加速方法陣列利用率不高,對層間數據的復用也存在限制。文獻[26]采用靜態內存分配策略,在較高的頻率下實現了CNN計算并進行層間數據復用,但功耗達本文的4倍以上,同時DSP資源多消耗近一倍。上述對比說明,本文方法在自重構陣列結構下能以較低功耗實現CNN多個維度的數據復用,同時在硬件資源消耗方面也具有優勢。
5結束語
針對可重構陣列結構中實現CNN訪存開銷大、計算效率低的問題,本文提出了一種多維融合的數據復用方法。該方法基于數據循環調用與脈動傳輸策略,通過充分挖掘CNN主要計算間的并行性,在陣列中實現數據復用。同時,通過陣列重構機制實現任務切換,形成多維度的數據復用方法。實驗結果表明,在可重構陣列處理器上應用該方法,典型CNN模型的PE平均利用率達 94.1% 。相比單一維度的數據復用方法,片上訪存開銷降低了 32% 以上,最高達 69.4% ,網絡運行速度平均提升了 16.4% 。與現有CNN數據復用方法相比,本文創新性地在可重構陣列統一實現了PE、陣列、陣列重構多個維度的數據復用,充分發揮了自重構結構配置靈活、并行加速的優勢。在使用較少硬件資源的前提下,成功實現了良好的CNN加速效果,對于CNN在可重構陣列結構中的高效實現具有重要意義。
參考文獻:
[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]劉炎培,朱運靜,賓艷茹,等.邊緣環境下計算密集型任務調度 研究綜述[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數據量化方 法[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].傳感器與微系統,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,Fuzzy 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.