999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于硬件描述語言的目標識別硬件加速器設計

2023-06-21 01:58:44嘉,
智能計算機與應用 2023年6期
關鍵詞:設計

張 嘉, 金 婕

(上海工程技術大學電子電氣工程學院, 上海 201620)

0 引 言

圖像理解在現實生活中是一種非常常見的應用。 但在邊緣化、高精度、運算量需求巨大等的智能計算機平臺的應用場景中,需要進行目標識別、姿態估計、圖像增強等基于圖像任務的復雜計算,計算機視覺系統的重要性逐漸突出,其穩定性、實時性以及便捷性也變得愈發重要。

近年來,卷積神經網絡在計算機視覺領域取得巨大進展,神經網絡處理器(Neural Network Processor,NNP)IP 在片上系統中廣泛應用,例如寒武紀的思元370 等。 然而業界進行神經網絡設計時均采用寄存器傳輸級別(Register Transfer Level, RTL)的硬件單元模塊的搭建,如神經網絡卷積處理核單元、并行處理單元以及多級靜態隨機存取存儲器(Static Random-Access Memory,SRAM)緩存存儲單元等。

本文深入研究并分析每一層的二值化卷積神經網絡結構以及網絡層算法的數學模型,運用硬件描述語言描述了算法的數學模型所一一對應的硬件電路模塊,設計并優化了二值化深度卷積神經網絡寄存器傳輸級別(Register Transfer Level, RTL)的硬件模型,實現了中小型尺寸輸入的二值化深度學習卷積神經網絡硬件加速器的設計與驗證,并在該硬件加速器中通過設計驗證測試平臺驗證了目標識別應用的準確性與速率。

1 二值化卷積神經網絡

二值化卷積神經網絡的網絡拓撲結構類似于通用的單精度浮點卷積神經網絡,同樣擁有卷積層、最大池化層、批歸一化層以及全連接層。 而與通用的單精度浮點卷積神經網絡不同的是二值化卷積神經網絡在訓練及推斷過程中所進行計算的權重閾值數據為1 或-1,且隨之對每一層網絡層做了特定優化,從而大幅度地減少了硬件內存資源以及計算資源的占用率[1]。

與其他數據類型的卷積神經網絡不同,二值化卷積神經網絡(Binary Neural Network, BNN)在網絡訓練與網絡推斷的運算過程中,網絡輸入與網絡權重閾值參數的數據類型均為1 bit 的二進制數即1或-1,而在PC 端進行網絡訓練時憑借符號函數對網絡參數數據二值化,公式(1):

其中,x為單精度浮點參數,ya為二值化參數。

因為量化的參數具有泛化性,即可將網絡輸入與網絡參數均二值化為數據1 或-1,而硬件中最為常用的二進制比特位為1 或0,故可將0 代表上述數據中的-1 以便在硬件中實現。 由此,卷積運算中的乘累加計算單元即可轉換為對硬件較為友好的異或運算和點累加計算方式,公式(2):

其中,為二進制化的權重數據;為二進制化的輸入數據;xnor即為異或運算。

2 架構設計

數據流架構如圖1 所示。 在搭載于FPGA/ASIC硬件平臺的加速器數據流體系結構中,通過為神經網絡拓撲結構中的每一層網絡層分配成比例的計算資源來實現層間并行化與層內并行化,而在各個搭載了逐級網絡層的計算單元之間插入了數據緩沖區,加速了各個計算單元之間的數據流動,更好地實現硬件資源中的數據流水化。 此外,每一個計算單元均有特定的參數接口可供配置,根據搭載于這個計算單元內的網絡層進行特定優化。 同時數據流架構中的參數存儲分布于片上內存和片外內存兩側存儲區,可根據數據訪問頻率來劃分,如將部分輸入圖像的像素數據存儲于片外內存,將權重閾值數據存儲于片上內存,由此可降低片上內存資源占用與片外內存帶寬開銷。

圖1 數據流架構Fig. 1 Dataflow architecture

3 硬件單元設計

運用并行化可綜合的硬件描述語言Verilog 將神經網絡軟件設計轉化為硬件思想并加以實現,如網絡中的乘法操作轉化為硬件中的異或陣列。 整體硬件電路的框架圖如圖2 所示。

圖2 整體硬件電路框架圖Fig. 2 Overall hardware circuit frame diagram

3.1 位寬轉換單元設計

依據算法特性,需將存儲于文件中的64 bit 像素數據轉換成24 bit 數據,即為串并數據的轉換功能。 位寬轉換的時序設計如圖3 中的時序圖所示,MERGE 即融合階段標定為串轉并,SLICE 即分割階段標定為并轉串,其中M0、M1、M2 為隨時序觸發的3 段拼接操作,S0、S1、S2、S3、S4、S5、S6、S7 即為隨時序觸發的8 段截取操作,其余陰影部分為無效數據,在實際實驗中將陰影部分的數據設置為0。

圖3 位寬轉換時序圖Fig. 3 Timing diagram of bit width conversion

3.2 零填充單元設計

零填充單元維持了特征圖邊緣信息的完整性以及特征圖形狀大小的穩定性。 在零值填充單元之前,已通過位寬轉換單元將數據整合為每一個像素數據為24 bit 位寬的形式,并通過設定為1 的填充維度對整個像素矩陣的周圍進行零元素的填充。 因為輸入像素矩陣為特定的特征圖維度,假定該維度為224,則在該特征圖周圍填充維度為1 的零元素后,整體特征圖維度則變為226。 本設計通過特征圖邊緣檢測算法,配合位寬轉換單元中的細粒度有限狀態機,利用計數器對該模塊的輸入輸出數據進行控制,零填充時序圖如圖4 所示。

圖4 零填充時序圖Fig. 4 Timing diagram of zero padding

3.3 滑動窗口地址生成器單元設計

滑動窗口主要針對于輸入特征圖進行資源優化。 滑動窗口地址生成器單元的設計如圖5 所示,設定滑動窗口大小為4 乘以圖像寬度,因為采用的卷積核尺寸為3×3,故系統啟動時可采用初始化3乘以圖像寬度初始化緩沖區,類似于乒乓(Pingpong)操作,在最大化利用緩沖區以及提升數據處理速度的同時,在3×3 卷積核進行滑動時,可緩沖覆蓋4 行中的剩余一行,緩沖區即為雙口隨機存取存儲器可同時輸入輸出,但需要非常嚴格的地址輸入。故在內存資源優化架構中,到T5 操作時,即可開啟特征圖中第一行的覆蓋操作,即緩沖新數據進入特征圖第一行內,將已經計算過的一行舊數據覆蓋,即將數據0,1,2,3,4,5 覆蓋。

圖5 滑動窗口地址生成圖Fig. 5 Sliding window address generation

3.4 矩陣乘法單元設計

二值化卷積神經網絡中的矩陣乘法所用到硬件邏輯資源非常少,且不同的網絡層需定制化矩陣乘法運算單元。 本文研究的二值化神經網絡在第一層網絡層中并未將輸入特征圖向量進行二值化,在算法層面上將輸入特征圖向量進行強制類型轉換,并進行定點量化,所以在硬件層面的實現上,仍需要高占比的內存資源進行中間結果的存儲,即整個二值化神經網絡硬件加速器的內存占用瓶頸在第一層卷積層。 因為第一層的權值仍可以通過取權值中單個單指令多數據(Single Instruction Multiple Data,SIMD)中的某個值進行權值兩比特的量化,求得帶符號位的2 bit 位寬的權值,并與特征圖中的定點數像素數據進行乘累加運算,即取特征圖數據的正數與負數進行累加運算。

而在二值化卷積神經網絡中除第一層的其他網絡層,均是將權值與輸入向量約束在SIMD 位寬范圍內,并以相同的位寬即相同的數據長度進行按位異或并取反,實際上即為二值數據乘累加過程中的同或操作,并使用點累加算法計算乘法過后的無符號數據單比特加法,進行矩陣運算乘累加中的無符號位累加計算。

3.5 控制單元設計

在整個二值化卷積神經網絡硬件電路設計過程中,控制單元的設計尤為關鍵。 數字電路設計中的兩大通路,數據通路和控制通路相輔相成,缺一不可。 本文深入分析了整個二值化卷積神經網絡層的數據通路中數據運算方式以及針對權值與特征圖數據所采用的不同的量化方法,但是在硬件底層電路方面,對于例如編碼器譯碼器等組合邏輯電路以及觸發器寄存器等時序邏輯電路的精細控制,并未進行深層次的研究。 通過較為底層的貼近硬件邏輯器件的硬件描述語言Verilog/System Verilog 進行算法的設計以及二值化神經網絡結構的編寫時,需要較多的考慮到數字電路時序邏輯與組合邏輯之間的交互,所以在控制單元硬件設計的過程中,需要使用可緊密聯系組合邏輯與時序邏輯的狀態轉移圖表示數字電路設計進程,如圖6 所示。

圖6 控制單元設計的狀態轉移圖Fig. 6 State transition of control unit

4 實現

在電子設計自動化軟件VCS 以及Verdi 中進行仿真實驗,得到仿真時序圖如圖7 所示。

圖7 目標識別硬件加速器輸出結果Fig. 7 Output of object recognition hardware accelerator

當輸入5 張圖片時,所消耗的一次性權重數據存儲并計算識別得出的時間約為467 ms,即當進行小批量的圖片輸入時可達到的識別速率為10.7 FPS,且此時輸入圖片的數量很小,故所承擔的權重閾值數據導入的比例系數較大,而當輸入大批量圖片時,速率效果則更為優勝,表明了本文所設計出的目標識別二值化卷積神經網絡硬件加速器的性能有較大的提升空間。 與此同時,通過腳本大批量測試識別,計算得出識別結果,與10.7 FPS 識別速率相比較,均有所提高,進一步驗證了硬件加速器目標識別的功能正確性。

5 結束語

本文深入研究了二值化卷積神經網絡算法模型的數學模型與硬件實現方式,通過設計算法模型中多個模塊化的硬件單元并組合,設計了一種中大型尺寸輸入特征圖像的可綜合的目標識別二值化卷積神經網絡硬件加速器,達到了較為可觀的目標識別加速器性能。

猜你喜歡
設計
二十四節氣在平面廣告設計中的應用
河北畫報(2020年8期)2020-10-27 02:54:06
何為設計的守護之道?
現代裝飾(2020年7期)2020-07-27 01:27:42
《豐收的喜悅展示設計》
流行色(2020年1期)2020-04-28 11:16:38
基于PWM的伺服控制系統設計
電子制作(2019年19期)2019-11-23 08:41:36
基于89C52的32只三色LED搖搖棒設計
電子制作(2019年15期)2019-08-27 01:11:50
基于ICL8038的波形發生器仿真設計
電子制作(2019年7期)2019-04-25 13:18:16
瞞天過海——仿生設計萌到家
藝術啟蒙(2018年7期)2018-08-23 09:14:18
設計秀
海峽姐妹(2017年7期)2017-07-31 19:08:17
有種設計叫而專
Coco薇(2017年5期)2017-06-05 08:53:16
從平面設計到“設計健康”
商周刊(2017年26期)2017-04-25 08:13:04
主站蜘蛛池模板: 国产一级妓女av网站| 青青草原国产一区二区| 午夜福利亚洲精品| 精品国产电影久久九九| 精品无码一区二区三区电影| 91精品国产自产91精品资源| 日韩精品欧美国产在线| 欧美区国产区| 国产国产人在线成免费视频狼人色| 在线视频97| 九色国产在线| 亚洲最猛黑人xxxx黑人猛交| 四虎影院国产| 国产在线精彩视频二区| 99久视频| 精品国产毛片| 国产精品大白天新婚身材| 亚洲久悠悠色悠在线播放| 国产亚洲欧美日韩在线观看一区二区 | 免费国产无遮挡又黄又爽| 真实国产精品vr专区| 国产亚洲男人的天堂在线观看| 国产日韩欧美在线视频免费观看 | 91九色视频网| 免费不卡视频| 国产xxxxx免费视频| 色哟哟国产精品一区二区| 亚洲一区二区三区麻豆| 国产JIZzJIzz视频全部免费| а∨天堂一区中文字幕| 日韩天堂视频| 热这里只有精品国产热门精品| 日本午夜三级| 日韩资源站| 国产精品久久久久婷婷五月| 欧美第一页在线| 日本高清免费不卡视频| 97se亚洲综合| 性色在线视频精品| 91视频青青草| 国产精品美女自慰喷水| 97精品国产高清久久久久蜜芽 | 91精品啪在线观看国产| 最新日本中文字幕| 真实国产乱子伦视频| 国产一区二区三区精品久久呦| 国产在线观看高清不卡| 精品久久高清| 中文字幕无码电影| 东京热高清无码精品| 精品免费在线视频| 欧美精品亚洲日韩a| 国产精品成| 国产精品免费p区| 五月婷婷综合网| 直接黄91麻豆网站| 国产小视频网站| 国产呦精品一区二区三区下载| 国产亚洲精久久久久久无码AV| 久久精品丝袜| 在线免费看片a| 亚洲精品色AV无码看| 高清无码不卡视频| 日韩精品一区二区三区中文无码| 久久鸭综合久久国产| 国内自拍久第一页| 在线观看国产精美视频| 日韩欧美一区在线观看| 成人亚洲天堂| 国产成人精品男人的天堂下载| 亚洲欧美成人网| 欧洲高清无码在线| 亚洲精品动漫在线观看| 91黄视频在线观看| 午夜国产精品视频| 99热这里只有精品在线播放| 亚洲国产日韩视频观看| 91成人在线观看| 91精品国产自产91精品资源| 在线亚洲天堂| 青青草一区| 国产精品成人一区二区不卡 |