《電子技術應用》
您所在的位置:首頁 > 人工智能 > 解決方案 > Achronix創新的機器學習處理器(MLP)突破傳統FPGA時序性能瓶頸

Achronix創新的機器學習處理器(MLP)突破傳統FPGA時序性能瓶頸

2020-04-27
作者:楊宇,Achronix資深現場應用工程師
來源:Achronix

MLP_Conv2D是功能齊全的設計,可將2D輸入圖像與多個內核同時進行卷積。 該設計充分利用了MLP和BRAM模塊,每個MLP一個周期執行12個int8乘法。此外,MLP列和BRAM塊均等級聯以有效地將圖像數據傳遞,從而允許同時處理多個內核。

該設計使用NoC接入點(NAP)從片上網絡(NoC)讀取或寫入數據。NoC連接到Speedster7t器件中的GDDR6控制器再到外部存儲器。

AlexNet

盡管最初為AlexNet圖像和內核大小配置了MLP_Conv2D設計,但是2D卷積是一個通用過程,因此可以重新配置該設計并使其適應許多不同的2D方法。

2D卷積的一般原理是在圖像(實際上是另一個2D矩陣)上傳遞內核(2D矩陣)。對于每次計算,內核均以輸入圖像的像素為中心,并對每個內核值(稱為權重)與其當前對齊的像素執行乘法運算。這些乘法的總和給出了原始圖像像素的特定卷積結果。然后將內核移至下一個像素,并重復該過程。

經過訓練的內核,2D卷積生成一個輸出結果圖像,突出顯示輸入圖像的特定特征,例如垂直線,水平線,變化角度的對角線和變化半徑的曲線。然后可以將這些特征輸入到其他處理層(包括其他2D卷積),然后可以將其標識為(通常在軟件中)為特定對象。

因此,二維卷積處理不應被視為圖像識別的完整解決方案,而應被視為處理操作鏈中的單個關鍵組件。

乘法密度

2D卷積的挑戰是所需的乘法數量,這就是MLP中專用的乘法器陣列。對于AlexNet配置,每個內核為11×11= 121個權重值。但是,卷積實際上是3D的,因為輸入圖像具有三層(RGB),因此一組內核有121×3 = 363個乘法來產生單個輸出結果。AlexNet輸入圖像為227×227;但是,此圖像的stride為4(在計算之間內核移動了四個像素)。此過程導致輸出結果矩陣為54×54 = 2916個結果。因此,對于一幅圖像需要363×2916 = 1,058,508次乘法;即處理一個圖像需要進行一百萬次以上的累加運算。其中單個Kernel進行2D卷積的動態示意圖如下:

 

圖片1.png

圖表 1 單個Kernel進行2D卷積的動態示意圖

對于MLP_Conv2D,其設計旨在一次處理一幅圖像中的60個內核,單次執行超過6000萬次乘法累加操作。

性能

MLP_Conv2D設計可以以750 MHz的頻率運行。單個MLP能夠在137 μs內對具有11×11內核的單個227×227 RGB輸入圖像進行卷積,相當于每秒15.4GOPS(包含乘和加)。 但一個MLP_Conv2D實例由60個并行運行的MLP構成,可以同時對60個輸入圖像進行卷積,相當于924GOPS。 最后,將多達40個MLP_Conv2D實例化到單個器件中,每個實例都通過自己的NAP將數據傳輸到GDDR6存儲器,從而實現了組合高達37 TOPS的性能-相當于每秒處理28,8000張圖像(本設計主要針對卷積核)。

資源

MLP_Conv2D圍繞MLP和BRAM塊功能而設計,并使用它們各自的內部級聯走線。 同樣,NAP允許直接從外部存儲器路由數據互聯。這些功能可實現最小的附加邏輯或路由要求,利用率表如下:

 

圖片2.png

圖表 2 單個MLP_Conv2D實例資源使用

 

圖片3.png

圖表 3 并行40個MLP_Conv2D實例資源使用

 

圖片4.png

圖表 4 MLP_Conv2D框圖

數據流:單個MLP

每個MLP都有一個鄰近的BRAM。 在此設計中BRAM用于存儲內核并將其多次傳遞到MLP。 初始化時,將從輸入NAP中讀取不同的內核,并將其寫入相應的BRAM。 BRAM在寫側配置為72位,而讀取設置為144位。在操作期間,僅將96位用作內核權重,即讀取為4個權重×3層×8位。初始圖像數據從NAP讀取到輸入FIFO中,該輸入FIFO用于將圖像存儲為一系列行。盡管此輸入存儲器被列為FIFO,但仍可作為可重復讀取的FIFO,因為可以多次從中讀取行。該存儲器配置為144位寬,僅使用96位,由兩個BRAM72K組成。每個字由4個像素×3層×8位組成。初始化時,將讀取足夠的行以匹配內核中的行數加上垂直跨步所需的行數。即

 

圖片8.png

一旦加載了初始數據和內核,便開始計算。

從輸入FIFO中讀取第一條圖像行,并讀取與內核水平大小匹配的圖像數據像素數量。在讀取這些像素時,將讀取匹配的內核權重。MLP將這些96位流的每一個乘以12個int8值并累加結果。輸入FIFO前進到第二行,重復此過程,直到內核的所有行都與輸入圖像左上角的適當像素相乘。在此過程中,MLP積累了結果;現在,該結果是圖像與內核卷積的左上角的2D卷積。該結果以16位結果的形式從MLP輸出。重復此過程,輸入FIFO跨行超前STRIDE參數設置的像素數(對于當前設計,STRIDE固定為4)。在每個處理周期包括在內時,都會生成另一個結果,直到水平地獲取了適當數量的結果為止。

然后,將輸入FIFO下移STRIDE行數,然后重復該過程以生成輸入圖像中下一組線的卷積結果。當輸入FIFO向下移動時,不再需要FIFO中的初始行,因此與MLP計算并行時,將加載下一組用于輸入圖像的STRIDE行。考慮外部存儲源的帶寬要求時,可以看到映像和內核僅從內存中讀取一次。然后,它們可以從各自的BRAM中重新使用,從而減少了外部存儲器帶寬的總體負擔,其過程參考圖表1。

數據流:多個MLP

MLP的一個顯著特點是能夠將數據和結果從一個MLP或BRAM級聯到同一列中。 MLP_Conv2D通過將MLP及其關聯的BRAM放在列組中來利用這些級聯路徑。在將BRAM加載到內核時,級聯路徑用于將數據流水線傳輸到每個BRAM,并且使用BRAM塊地址模式選擇要寫入內核的BRAM。

在計算過程中,輸入的圖像數據將在MLP的列中級聯,以便每個MLP在其下一個鄰居之后的一個周期接收到圖像數據。同時,控制內核讀取的BRAM讀取地址以一個周期的延遲級聯到BRAM列中。這樣,每個MLP在其先前的MLP之后一個周期接收相同的圖像數據和相同的內核讀取地址。每個MLP的計算差異在于,其關聯的BRAM將具有不同的內核數據。結果是一個圖像并行地與多個內核卷積。并行卷積的數量稱為BATCH。

數據流:計算結果

如前所述,每個MLP為內核和圖像部分的每個卷積生成16位結果。

MLP排列在16列中,因此從該列中生成一個256位字,該字由該列中每個MLP的結果組成。然后將此256位字寫入輸出NAP。 這種安排導致卷積結果作為同一圖像的圖層存儲在內存中;因此,當三層或RGB存儲在單個輸入字中時,匹配輸入字排列。

然后,由于可以在完整的256位結果上的16個并行實例中執行激活功能,因此該安排允許將涉及的結果并行處理到激活層中。同樣,一旦256位結果通過輸出NAP寫回到存儲器中,則可以將結果讀回到另一個2D卷積電路中。

 

圖片5.png

圖表 5 MLP_Conv2D布局示意圖

布局

在Speedster7t架構中,每個NAP對應32個MLP。該設計經過優化,可使用兩個NAP,一個用于讀取,一個用于寫入,因此可以對應64個MLP。

但是,輸入和輸出FIFO需要兩個BRAM 72K存儲塊才能創建一個256位寬的組合存儲器。因此,這些存儲器將消耗64個可用位置中的四個用于數據I / O。

設計被安排為使用與兩個NAP相關聯的四列MLP。但是,第一列和最后一列都使用14個MLP,剩下兩個MLP位置分別用于輸入和輸出FIFO。中間兩列使用所有16個可用的MLP。在平面圖中,各列的排列方式是使第一列(底部具有輸入FIFO存儲器)與NAP相鄰,以改善時序。

下面顯示了一個實例,即使用了60個MLP(Batch=60)的設計實際布局圖(突出顯示了路線):

 

圖片6.png

圖表 6 60個MLP布局圖

在全芯片構建中使用40個實例時,盡力使每個實例都使用NAP與內存進行通信。結果,FMax仍能達到750MHz,并使用掉芯片中的所有80個NAP以及94%的MLP和BRAM72K。

 

圖片7.png

圖表 7 2400個MLP布局圖

下一期將舉例介紹MLP的浮點架構和性能,敬請期待。


本站內容除特別聲明的原創文章之外,轉載內容只為傳遞更多信息,并不代表本網站贊同其觀點。轉載的所有的文章、圖片、音/視頻文件等資料的版權歸版權所有權人所有。本站采用的非本站原創文章及圖片等內容無法一一聯系確認版權者。如涉及作品內容、版權和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當措施,避免給雙方造成不必要的經濟損失。聯系電話:010-82306118;郵箱:aet@chinaaet.com。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
亚洲国产精品成人精品| 亚洲综合三区| 亚洲午夜电影| 99国内精品| 日韩亚洲欧美高清| 亚洲欧洲日本mm| 亚洲大片av| 在线欧美日韩国产| 黄色一区二区三区四区| 韩国成人精品a∨在线观看| 国产欧美精品一区二区三区介绍| 欧美午夜不卡| 欧美香蕉视频| 国产精品s色| 国产精品久久久久久久久久尿| 欧美日韩日日骚| 欧美日韩亚洲一区二区三区在线| 欧美激情一区二区三区在线视频观看| 欧美超级免费视 在线| 麻豆精品91| 欧美成人首页| 欧美激情一区二区三区| 欧美久久久久久久| 欧美日韩成人在线播放| 欧美日韩精品一区二区天天拍小说| 欧美乱在线观看| 欧美日本一区二区三区| 欧美女激情福利| 欧美色综合天天久久综合精品| 国产精品va| 国产欧美一区二区三区沐欲| 国产亚洲欧美一级| 好男人免费精品视频| 在线观看一区| 亚洲精品久久久久久久久久久| 99国产精品久久久久老师| 一本大道久久精品懂色aⅴ| 一区二区三区免费看| 亚洲欧美在线看| 久久精品99国产精品| 最新国产乱人伦偷精品免费网站| 亚洲高清资源综合久久精品| 最新高清无码专区| 亚洲性视频h| 欧美中在线观看| 美女999久久久精品视频| 欧美精品福利在线| 国产精品欧美一区二区三区奶水 | 亚洲国产经典视频| 999在线观看精品免费不卡网站| 亚洲一品av免费观看| 久久久久久久久久久久久女国产乱 | 牛夜精品久久久久久久99黑人 | 欧美午夜性色大片在线观看| 国产欧亚日韩视频| 亚洲福利在线观看| 亚洲午夜在线| 91久久国产综合久久蜜月精品| 一区二区三区**美女毛片| 亚洲欧美日韩在线播放| 蜜桃精品久久久久久久免费影院| 欧美日韩综合久久| 国精品一区二区| 99精品视频免费全部在线| 欧美一区二区三区免费大片| 亚洲久久在线| 欧美在线影院| 欧美日韩国产精品专区| 国产亚洲精品自拍| 亚洲美女诱惑| 久久精品成人一区二区三区| 中文精品一区二区三区| 久久综合电影| 国产精品丝袜xxxxxxx| 亚洲日本一区二区三区| 午夜电影亚洲| 在线亚洲激情| 裸体歌舞表演一区二区| 国产精品成人国产乱一区| 影音先锋国产精品| 亚洲欧美日韩综合国产aⅴ| 一本色道久久综合亚洲精品不| 久久亚洲精品一区| 国产美女精品人人做人人爽| 亚洲毛片一区二区| 亚洲黄色在线看| 久久国产精彩视频| 国产精品福利在线观看| 亚洲精品社区| 亚洲精品1区| 久久这里只有| 国产亚洲成av人片在线观看桃| 99热精品在线观看| 亚洲精品一区二区三区蜜桃久 | 老色鬼久久亚洲一区二区| 国产伦精品一区二区三区免费迷| 日韩视频一区二区三区在线播放免费观看 | 欧美一区二区在线看| 欧美调教vk| 日韩视频久久| 制服丝袜亚洲播放| 欧美福利视频| 伊人久久综合97精品| 久久电影一区| 欧美中文字幕第一页| 国产精品一级在线| 亚洲无线视频| 亚洲综合日本| 国产精品久久一卡二卡| 亚洲视频专区在线| 亚洲影院色在线观看免费| 欧美日韩免费一区| 亚洲精品国产精品国自产观看| 亚洲欧洲久久| 欧美成人午夜视频| 亚洲黑丝在线| 亚洲美女在线看| 欧美激情综合亚洲一二区| 亚洲人成网站在线观看播放| 亚洲靠逼com| 欧美精品尤物在线| 亚洲精品免费观看| 99这里只有精品| 欧美人与性动交a欧美精品| 亚洲经典三级| 夜夜嗨av一区二区三区网页| 欧美久久久久久| 日韩性生活视频| 亚洲在线免费观看| 国产精品毛片大码女人| 亚洲欧美一级二级三级| 久久爱www| 激情久久一区| 亚洲精品网址在线观看| 欧美区二区三区| 夜夜爽夜夜爽精品视频| 亚洲欧美综合网| 国产视频自拍一区| 久久精品国产久精国产一老狼| 久久亚洲私人国产精品va| 在线电影国产精品| 日韩亚洲欧美精品| 国产精品xxxav免费视频| 亚洲欧美中文在线视频| 久久亚洲捆绑美女| 亚洲精品视频在线观看网站| 亚洲一区日本| 国产午夜精品久久久久久久| 欧美在线影院| 欧美精品免费在线| 夜色激情一区二区| 久久久.com| 亚洲国产欧美国产综合一区| 亚洲色图在线视频| 国产欧美精品一区aⅴ影院| 亚洲高清视频中文字幕| 欧美精品v日韩精品v国产精品 | 亚洲精品韩国| 国产精品久久久99| 亚洲高清在线播放| 欧美视频免费在线| 欧美一区二区日韩一区二区| 欧美黄网免费在线观看| 亚洲午夜女主播在线直播| 久久午夜av| 日韩网站在线| 久久久国产亚洲精品| 亚洲每日在线| 久久久www成人免费毛片麻豆| 亚洲第一精品夜夜躁人人爽| 亚洲主播在线观看| 永久域名在线精品| 亚洲欧美卡通另类91av| 在线成人免费观看| 午夜精品一区二区三区电影天堂| 伊人久久综合97精品| 亚洲欧美日韩高清| 亚洲国产精品999| 午夜精品久久久久久久蜜桃app| 在线精品视频免费观看| 亚洲欧美视频在线观看| 亚洲国产裸拍裸体视频在线观看乱了中文| 亚洲小少妇裸体bbw| 伊人一区二区三区久久精品| 亚洲中字在线| 最新精品在线| 久久久无码精品亚洲日韩按摩| 日韩视频永久免费| 久久夜色撩人精品| 一本色道久久综合| 蜜臀久久99精品久久久画质超高清| 亚洲一卡久久| 欧美精品自拍偷拍动漫精品| 欧美综合77777色婷婷| 欧美色道久久88综合亚洲精品| 亚洲国产精品久久久久秋霞影院| 国产精品久久久久久久久免费| 91久久午夜| 国产原创一区二区| 亚洲欧美在线免费|