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

一種基于國產(chǎn)嵌入式CPU 核的BP 神經(jīng)網(wǎng)絡(luò)SoC 設(shè)計

2021-04-24 11:36:50徐文亮
電子技術(shù)應(yīng)用 2021年4期
關(guān)鍵詞:設(shè)計

徐文亮

(杭州電子科技大學(xué) 電子信息學(xué)院,浙江 杭州 310018)

0 引言

人工神經(jīng)網(wǎng)絡(luò)的實現(xiàn)方法主要分為硬件實現(xiàn)[1]和軟件實現(xiàn)[2]兩種。神經(jīng)網(wǎng)絡(luò)軟件實現(xiàn)的方法具有并行度低和實現(xiàn)速度慢的特點,并且不能滿足神經(jīng)網(wǎng)絡(luò)對實時運算的要求。除此之外,最大的缺點是用軟件模擬實現(xiàn)的方法需要龐大體積的計算機作支持,這樣就很不適合應(yīng)用于嵌入式場景。基于硬件實現(xiàn)的神經(jīng)網(wǎng)絡(luò)具有運算速度快、并行性高等優(yōu)點[3],并且在實時運算方面也能滿足要求。綜合考慮,本文采用硬件實現(xiàn)的方法來設(shè)計人工神經(jīng)網(wǎng)絡(luò)。

本文設(shè)計的目的是找到一種方法——硬件實現(xiàn)的神經(jīng)網(wǎng)絡(luò)能夠進行動態(tài)調(diào)節(jié),既可以實現(xiàn)神經(jīng)網(wǎng)拓撲結(jié)構(gòu)的動態(tài)調(diào)節(jié),即每層網(wǎng)絡(luò)和每層神經(jīng)元的個數(shù)動態(tài)可調(diào),也可以實現(xiàn)輸入權(quán)值和閾值的自動更新。本文以BP神經(jīng)網(wǎng)絡(luò)為例,使用國產(chǎn)嵌入式CPU CK803S 及其SoC設(shè)計平臺SmartL-Prime,實現(xiàn)一款BP 神經(jīng)網(wǎng)絡(luò)SoC 的設(shè)計。

1 SoC 結(jié)構(gòu)設(shè)計

本文設(shè)計的BP 神經(jīng)網(wǎng)絡(luò)SoC 采用平頭哥(杭州中天微)提供的基于CK803S 嵌入式CPU 的SmartL-Prime 平臺。CK803S 是面向控制領(lǐng)域的32 位高能效嵌入式CPU核[4],采用了精簡的3 級流水線結(jié)構(gòu),具有低成本、低功耗等特點。BP 神經(jīng)網(wǎng)絡(luò)SoC 的系統(tǒng)結(jié)構(gòu)圖如圖1 所示。

圖1 BP 神經(jīng)網(wǎng)絡(luò)SoC 的系統(tǒng)框圖

圖1 中ANN IP 即為BP 神經(jīng)網(wǎng)絡(luò)加速器,通過系統(tǒng)總線掛載到SmartL-Prime 平臺上,系統(tǒng)總線使用了AHB-Lite總線為單主機結(jié)構(gòu)[5]。將CK803S 處理器作為主機,BP神經(jīng)網(wǎng)絡(luò)加速器作為從機,在處理器的控制下,通過AHB-Lite 總線實現(xiàn)對BP 神經(jīng)網(wǎng)絡(luò)加速器IP 核的訪問和數(shù)據(jù)的交互。設(shè)計的IP 經(jīng)過封裝打包完成后完成兼容AHB-Lite 的協(xié)議,將其掛載到總線上后,即可通過CK803S 作為主機,實現(xiàn)對神經(jīng)網(wǎng)絡(luò)IP 核的訪問。

BP 神經(jīng)網(wǎng)絡(luò)加速器的AHB-Lite 總線連接方式如圖2所示。BP 神經(jīng)網(wǎng)絡(luò)加速器為從機,主機CK803S 輸出BP神經(jīng)網(wǎng)絡(luò)加速器的地址,譯碼器產(chǎn)生了選通信號使能BP神經(jīng)網(wǎng)絡(luò)加速器,其余的地址輸出到多路復(fù)用器中,用于選通從機的輸出,從而通過系統(tǒng)總線讀取到BP 神經(jīng)網(wǎng)絡(luò)加速器的數(shù)據(jù)。對BP 神經(jīng)網(wǎng)絡(luò)加速器的寫操作與讀操作類似,地址穩(wěn)定之后有效,給BP 神經(jīng)網(wǎng)絡(luò)加速器發(fā)送寫使能信號,接收到就緒響應(yīng)后,往寫數(shù)據(jù)總線上輸出數(shù)據(jù),即可完成對BP 神經(jīng)網(wǎng)絡(luò)加速器的寫操作。

圖2 主機和BP 神經(jīng)網(wǎng)絡(luò)加速器的AHB-Lite 總線連接

圖3 所示為從機的選通信號通過譯碼器生成框圖。AMBA 的交互總線結(jié)構(gòu)和統(tǒng)一編址設(shè)計方便了系統(tǒng)的尋址,AHB-Lite 的單主結(jié)構(gòu)也簡化了總線的復(fù)雜度,減少了復(fù)雜的仲裁邏輯。

圖3 從機選通信號生成圖

2 BP 神經(jīng)網(wǎng)絡(luò)加速器的設(shè)計

2.1 神經(jīng)元設(shè)計

為實現(xiàn)BP 神經(jīng)網(wǎng)絡(luò)的硬件設(shè)計,首先應(yīng)該完成神經(jīng)網(wǎng)絡(luò)的基本單元,即人工神經(jīng)元的硬件設(shè)計[6-8]。圖4是單個神經(jīng)元的運算過程示意圖。

圖4 神經(jīng)元運算過程示意圖

控制模塊的控制參數(shù)通過軟件可配置,來控制數(shù)據(jù)流在模塊間的傳輸,并最后將數(shù)據(jù)通過神經(jīng)元狀態(tài)模塊傳輸出去。首先控制模塊控制數(shù)據(jù)流從權(quán)值存儲模塊開始,權(quán)值和輸入向量一起被加載到乘累加模塊進行乘累加運算,接著將計算結(jié)果輸入到激活函數(shù)模塊,經(jīng)過該模塊計算后輸出到神經(jīng)元狀態(tài)模塊。

CPS(Connections-Per-Second)即每秒的連接率,是對神經(jīng)網(wǎng)絡(luò)硬件性能評估的一種重要的方法。為了測試訓(xùn)練的速度,往往通過每秒鐘聯(lián)接的更新率來評估。此外學(xué)習(xí)的速率也與選用的學(xué)習(xí)算法有關(guān)。

針對不同神經(jīng)網(wǎng)絡(luò)的設(shè)計,激活函數(shù)的選擇可以是不同的。本設(shè)計中,使用的激活函數(shù)是Sigmoid 函數(shù)和Guass 函數(shù)[9-10]。此外學(xué)習(xí)的速率也與選用的學(xué)習(xí)算法有關(guān)。神經(jīng)元具體的硬件設(shè)計如圖5 所示。

2.2 BP 神經(jīng)網(wǎng)絡(luò)設(shè)計

一個三層的BP 神經(jīng)網(wǎng)絡(luò)由輸入層、隱含層和輸出層組成[11]。如果具有足夠的隱含層神經(jīng)元數(shù),它就能以任意精度逼近任何連續(xù)的非線性函數(shù),所以BP 神經(jīng)網(wǎng)絡(luò)通常用來進行函數(shù)逼近和分類問題[12-13]。神經(jīng)網(wǎng)絡(luò)每進行一次完整的訓(xùn)練,BP 神經(jīng)網(wǎng)絡(luò)硬件都會進行一次誤差反向運算和前向運算,并會修改相應(yīng)的權(quán)值矩陣。隱含層和輸出層使用的函數(shù)分別是Sigmoid 函數(shù)和線性函數(shù)。本設(shè)計中將BP 神經(jīng)網(wǎng)絡(luò)的整個計算過程總結(jié)為以下幾個功能:激活函數(shù)運算Sigmod 模塊,誤差運算Error 模塊,權(quán)值修正與更新Updata 模塊,輸入輸出層RAM 存儲模塊以及功能可復(fù)用的神經(jīng)元乘累加模塊。

BP 神經(jīng)網(wǎng)絡(luò)的硬件實現(xiàn)整體結(jié)構(gòu)如圖6 所示。

從硬件實現(xiàn)框圖可以看出,BP 神經(jīng)網(wǎng)絡(luò)的層內(nèi)的執(zhí)行過程是并行的。整個神經(jīng)網(wǎng)絡(luò)的硬件實現(xiàn)過程如下:

(1)開始時把初始權(quán)值分別存放于隱含層權(quán)值RAM和輸出層權(quán)值RAM 中以及訓(xùn)練用到的樣本集存放在輸入層RAM 中,作為訓(xùn)練使用。

(2)根據(jù)對輸入層RAM 中的輸入和對于隱含層權(quán)值RAM 中的數(shù)值,對隱含層神經(jīng)元進行計算,送到MAC模塊進行累加計算,并將運算完成的結(jié)果輸出到激活函數(shù)模塊。

圖5 神經(jīng)元的硬件實現(xiàn)結(jié)構(gòu)

圖6 BP 神經(jīng)網(wǎng)絡(luò)的硬件實現(xiàn)整體結(jié)構(gòu)圖

(3)把激活函數(shù)的計算結(jié)果存放到隱含層輸出RAM 中。

(4)分別讀取隱含層輸出RAM 中的數(shù)據(jù)和輸出層權(quán)值RAM 中的權(quán)值數(shù)據(jù),輸出到MAC 模塊進行第二次乘累加運算,最終得到輸出層的輸出數(shù)據(jù)。至此,前向運算階段結(jié)束。

(5)誤差運算單元Error 用來計算隱含層的輸出和輸出層的輸出數(shù)據(jù)。至此,誤差反向傳播階段完成。

(6)將得到的誤差、輸入以及隱含層輸出送到權(quán)值修正和更新單元,得到新的權(quán)值,重新存入權(quán)值RAM 中[13]。

至此,整個神經(jīng)網(wǎng)絡(luò)完成一次完整的訓(xùn)練過程,接著重復(fù)訓(xùn)練其他樣本,直到滿足指定的訓(xùn)練步數(shù)或者是誤差滿足要求為止。這樣完成了對整個BP 神經(jīng)網(wǎng)絡(luò)硬件的實現(xiàn)。

3 驗證和分析

神經(jīng)網(wǎng)絡(luò)加速器使用VHDL 實現(xiàn),通過Synopsys VCS的驗證環(huán)境,驗證神經(jīng)網(wǎng)絡(luò)IP 核的功能和邏輯[14-15],并使用了Assertion 方式進行了誤差分析。對于SoC 的測試軟硬件的協(xié)同設(shè)計,本文使用基于FPGA 的FMX7AR3B平臺,在基于CK803S 的SmartL-Prime 平臺進行設(shè)計之后,使用FPGA 平臺進行配置實現(xiàn)。使用CDK 工具鏈進行軟硬件協(xié)同設(shè)計和驗證[16]。

SoC 設(shè)計和驗證完成之后,本文使用Vivado 分析工具進行PPA(Perfromance Power Area,即性能、功耗和面積)分析。性能分析結(jié)果如圖7 所示,是Dhrystone 的基準跑分測試;當波特率設(shè)置為115 200Bd,數(shù)據(jù)位為8 位,無校驗位,停止位為1 位的情況下,結(jié)果為0.34 DMIPS/MHz,滿足設(shè)計要求。

圖8 所示為在Vivado 下查看的資源使用情況。從圖中可以看出Look Up Table 的資源使用率約為18%,BRAM 的資源使用率約為78%,IO 的資源使用率約為87%。

圖7 benchmark 跑分結(jié)果

圖8 資源使用情況

猜你喜歡
設(shè)計
二十四節(jié)氣在平面廣告設(shè)計中的應(yīng)用
河北畫報(2020年8期)2020-10-27 02:54:06
何為設(shè)計的守護之道?
《豐收的喜悅展示設(shè)計》
流行色(2020年1期)2020-04-28 11:16:38
基于PWM的伺服控制系統(tǒng)設(shè)計
電子制作(2019年19期)2019-11-23 08:41:36
基于89C52的32只三色LED搖搖棒設(shè)計
電子制作(2019年15期)2019-08-27 01:11:50
基于ICL8038的波形發(fā)生器仿真設(shè)計
電子制作(2019年7期)2019-04-25 13:18:16
瞞天過海——仿生設(shè)計萌到家
設(shè)計秀
海峽姐妹(2017年7期)2017-07-31 19:08:17
有種設(shè)計叫而專
Coco薇(2017年5期)2017-06-05 08:53:16
從平面設(shè)計到“設(shè)計健康”
商周刊(2017年26期)2017-04-25 08:13:04
主站蜘蛛池模板: 特级做a爰片毛片免费69| 日韩高清一区 | 在线观看的黄网| 2020精品极品国产色在线观看 | 日韩中文精品亚洲第三区| 国产精品v欧美| 在线日韩日本国产亚洲| 91福利国产成人精品导航| 精品少妇人妻一区二区| 国产成人综合在线视频| 日本黄色a视频| 国产成+人+综合+亚洲欧美| 综合色婷婷| 欧美激情福利| 99热国产这里只有精品无卡顿"| 中国一级特黄视频| 青青草一区二区免费精品| 日本三级黄在线观看| 国产精品视频导航| 这里只有精品免费视频| 福利片91| 欧美精品综合视频一区二区| 欧美第二区| 中文字幕无线码一区| 亚洲精品无码在线播放网站| 一区二区午夜| 欧美视频二区| 欧美第一页在线| 国产免费怡红院视频| 国产又大又粗又猛又爽的视频| 国产精品自拍合集| 国产精品自在在线午夜| 国内熟女少妇一线天| 午夜不卡视频| 亚洲区视频在线观看| 久久亚洲国产视频| 国产在线啪| 精品人妻系列无码专区久久| 中文字幕一区二区人妻电影| 免费在线国产一区二区三区精品 | 亚洲精品大秀视频| 综合色88| 在线免费看黄的网站| 亚洲天堂视频在线观看免费| 国产亚洲精品无码专| 97国产在线视频| 找国产毛片看| 五月婷婷精品| 精品国产Av电影无码久久久| 欧美在线视频不卡第一页| 久久亚洲高清国产| 国产国产人在线成免费视频狼人色| 国产日韩欧美视频| 午夜视频免费试看| 91青草视频| 一级不卡毛片| 久久五月天国产自| 欧美精品三级在线| 中文字幕第1页在线播| 乱人伦99久久| 国产91色| 成人夜夜嗨| 国产爽妇精品| 91小视频在线播放| 久久夜色精品| aaa国产一级毛片| 玩两个丰满老熟女久久网| 国产欧美视频综合二区 | 亚洲69视频| 丁香六月激情综合| 日本少妇又色又爽又高潮| 美女潮喷出白浆在线观看视频| 一本大道视频精品人妻| 久久久久久久久久国产精品| 国产成人综合网| 欧美日本在线观看| 国产美女无遮挡免费视频网站| 99精品在线视频观看| 成人va亚洲va欧美天堂| 国产天天色| av一区二区三区高清久久| 无遮挡国产高潮视频免费观看|