91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

2020DAC- SDC冠軍作品分享,充分結(jié)合FPGA數(shù)據(jù)流架構(gòu)的優(yōu)勢

FPGA之家 ? 來源:PYNQ開源社區(qū) ? 作者:PYNQ開源社區(qū) ? 2021-05-27 17:46 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

如果說上期SkrSkr隊伍的設計像是德智體美勞全面發(fā)展的“五好學生”,那么冠軍隊伍的設計則更像是“不偏科的特長生”。

作品跳出前兩屆Top3隊伍的設計思路,充分結(jié)合FPGA數(shù)據(jù)流架構(gòu)的優(yōu)勢,逐步優(yōu)化設計,最終在幀率上達到212fps,首次參賽一舉奪魁。

作品全HLS設計,采用PYNQ框架,其提高幀率的優(yōu)化流程在其他HLS設計中亦值得借鑒。

01

DAC-SDC賽事回顧

從2018年設立DAC-SDC開始,每年都會吸引全球百支知名研究團隊參與角逐,與計算機視覺類的國際知名目標檢測比賽不同,DAC-SDC對高精度、高效率的追求不僅僅停留在算法層面,其更注重考察基于軟硬件協(xié)同的系統(tǒng)構(gòu)建能力,即參賽設計不僅要提高復雜場景中小物體精準檢測的能力,還需要考慮整個硬件系統(tǒng)在圖像處理速度和功耗方面的要求。而且隨著技術(shù)迭代速度的加快,該賽項的平臺和要求也在不斷改進。2018、2019年該賽項由Nvidia、Xilinx 和 DJI 大疆創(chuàng)新贊助,賽項分為GPU和FPGA兩個方向。2020年只保留了FPGA方向。從選用平臺的角度來對比,2018年以Zynq7020作為目標平臺;2019年選用邏輯資源較多的ZU3作為目標平臺,邏輯資源的增加提升了大賽的可發(fā)揮空間。2020年仍延用19年的目標平臺Ultra96。關(guān)于賽事詳情請參考 快訊|中國團隊包攬頂會DAC-SDC競賽冠亞軍

2018年比賽情況

TX2 GPU和Zynq7020 的對比結(jié)果顯示,在同等精度條件下FPGA的處理速度較低,但FPGA平臺所需的功耗僅為GPU平臺的不到1/4。在2018年的設計中,Top3均采用了“自頂向下”的DNN設計思路(沿用目標檢測常規(guī)算法),而后再考慮算法在硬件層面的優(yōu)化。其中FPGA組的冠軍來自清華大學汪玉教授團隊,其采用了深鑒科技的硬件加速器架構(gòu) DPU、全棧式工具鏈 DNNDK 和深度壓縮技術(shù)的基礎(chǔ)上,從算法、軟件和硬件對整個目標檢測系統(tǒng)進行了全棧式的協(xié)同優(yōu)化。通過采用硬件友好的 SSD 網(wǎng)絡和多線程優(yōu)化技術(shù),結(jié)合深度壓縮和定點訓練,在保證識別精度的前提下,滿足了低功耗和實時性的要求。

2019年比賽情況

FPGA組升級到邏輯資源較多的ZU3(Ultra96)平臺。與2018年相比,在精度和速度方面的表現(xiàn)均有一定的提升。特別值得一提的是,2019年 GPU和FPGA的冠軍來自同一團隊,其由UIUC Deming Chen教授課題組聯(lián)合了 IBM、Inspirit IoT和新加坡 ADSC 的研究人員組成。該網(wǎng)絡架構(gòu)采用“自底向上”的DNN設計思路,以硬件資源限制為約束進行網(wǎng)絡結(jié)構(gòu)搜索得到架構(gòu)的優(yōu)化設計,而后將其部署在目標平臺上。因此,冠軍團隊的工作實質(zhì)上是同一網(wǎng)絡架構(gòu)(SkyNet)在不同平臺的優(yōu)化設計實現(xiàn)。

縱觀前兩年的工作,2018年解決的問題主要集中在限定資源條件下如何部署DNN模型;2019年冠軍組的工作則體現(xiàn)了限定資源條件下如何搜索最優(yōu)模型架構(gòu)。上述工作更多考慮的是算法的本身和資源的約束,而沒有充分發(fā)揮FPGA平臺自身優(yōu)勢。

02

我們的工作

基本設計思路

我們團隊主要從FPGA的架構(gòu)特點入手對任務處理進行優(yōu)化設計。FPGA的優(yōu)勢在于其靈活、高效地并行化設計架構(gòu),適于處理流式、計算密集型任務,適于不同字節(jié)寬度的調(diào)節(jié)等。針對本賽項待處理的目標檢測任務特點,我們選用了卷積神經(jīng)網(wǎng)絡算法,其中包含多層結(jié)構(gòu),需要依次計算各層,且計算密集。結(jié)合待處理任務的特點,為了充分發(fā)揮FPGA的優(yōu)勢,我們提出了以下設計思路:

l 算法設計優(yōu)化:壓縮神經(jīng)網(wǎng)絡的參數(shù)量,且采用低bit量化技術(shù),使得參數(shù)量較少且每個參數(shù)所需要的儲存空間減少,從而使所有的參數(shù)能夠置于FPGA片內(nèi)BRAM中,減少加速過程中參數(shù)頻繁調(diào)入/出帶來的開銷。

l 硬件設計優(yōu)化:基于FPGA資源構(gòu)建高效流水結(jié)構(gòu),將卷積神經(jīng)網(wǎng)絡中的所有層都置于片上,使得所有層能夠以流水線的形式并行進行計算;設計高效的低bit的矩陣計算單元,在有限資源的約束下最大化并行度。

基于上述設計構(gòu)想,數(shù)據(jù)輸入加速器能直接輸出計算結(jié)果,中間結(jié)果不必搬運到外部RAM,減少了不必要的時延和能耗。低bit計算減少了單個計算單元的資源開銷,從而提高了整體并行度,進而提高了整個神經(jīng)網(wǎng)絡計算的速率。

設計方案

1、目標檢測算法的設計

基于上述基本設計思想,我們自行構(gòu)建了適于Ultra96平臺資源限定條件的網(wǎng)絡模型。其中主干網(wǎng)絡選用類VGG架構(gòu),為了降低所需的參數(shù)量和計算量,我們嚴格控制了各層濾波器的數(shù)量,后端采用類yolo 架構(gòu)設計,整個網(wǎng)絡模型如下圖2所示。與2019年的第一名相比,我們的算法雖然精度略低,但計算量和參數(shù)量都有大幅度地降低。

2、網(wǎng)絡量化設計

量化技術(shù)是整個解決方案中重要的一個環(huán)節(jié)。我們量化了整個神經(jīng)網(wǎng)絡,包括權(quán)值量化,激活量化等。量化方法如下:

782da56a-be3f-11eb-9e57-12bb97331649.png

我們對所有的權(quán)值(W)和激活后的數(shù)據(jù)進行了歸一化處理,使得所有的數(shù)據(jù)在尺度上是統(tǒng)一的。而后將權(quán)值和特征圖數(shù)據(jù)都量化到了4bit,雖然算法精度上有所降低,平均IoU從0.701降低了到0.649,但所需參數(shù)的儲存空間降為原來的八分之一。我們只需要花費0.105 MB片上空間就能將所有參數(shù)置于片上,而Ultra 96 v2板上FPGA芯片中共有0.95 MB BRAM空間。

3、 自定義數(shù)據(jù)流的AI加速器設計

根據(jù)待處理任務特點,我們基于目標平臺(Ultra96)資源特點,設計和實現(xiàn)一套“硬件函數(shù)庫”,將pytorch中的CNN算法映射到FPGA中(如下圖5)。其中,我們將pytorch中的卷積計算(Conv2d_Q)拆分成兩個部分——滑動窗口單元(SWU)和矩陣向量乘單元(MVU),SWU負責將卷積計算展開為矩陣向量計算,MVU則負責接收SWU輸出的數(shù)據(jù)流并計算。為減少片上存儲空間(緩存)使用量,我們將原CNN算法中的批正則化層(BatchNorm2d)與激活量化層(ReLu_Q)合為一個模塊Bn_Relu進行處理。為了便于構(gòu)建流水處理架構(gòu),原pytorch中采用的四個層(卷積層、批正則化層、激活量化層和池化層)就變?yōu)槲覀兌x的新四層(SWU層、MVU層、Bn_Relu層和MaxPool層),且每層中的Bn_Relu和MaxPool是可選的(圖中用虛線框標出),每層都有獨立緩存空間存儲對應層參數(shù)。同時,為了提高效率,每層內(nèi)部也最大程度展開為流水形式。

我們將所有層都置于片上,當上一層有計算輸出時,下一層立即開始計算,各層同時運行。通過計算量分配各層所需要的邏輯資源,使得每層的時延趨向一致,使加速器運行效率最大化。

系統(tǒng)框架及優(yōu)化設計

基于上述設計思想,最終實現(xiàn)的系統(tǒng)框圖如下。其中,我們采用DMA搬運數(shù)據(jù),CPU負責任務調(diào)度工作。為了實現(xiàn)加速器IP與CPU之間的并行,我們在外部RAM中開辟了兩塊緩沖區(qū)輪流為加速器提供圖片數(shù)據(jù)。

由于計時規(guī)則在五月份做出了調(diào)整,將讀入圖片的時間和功耗也計入在內(nèi),而我們在五月版提交代碼的速度瓶頸主要卡在讀圖(Load image)時延。針對這個問題,我們對于系統(tǒng)待處理的任務重新進行了更為細致的優(yōu)化部署。由于待處理任務分為四個部分:Load image、Resize image(簡寫為Resize)、Compute CNN(簡寫為CNN)、Calculate bounding box(簡寫為Calc bbox)。我們分別在PS端進行多核并行優(yōu)化處理,在PS-PL端進行了負載均衡處理,從而優(yōu)化了任務在PS和PL端的部署,該過程對最終成績中FPS提升貢獻很大。

我們的成績

基于上述設計,最終的實現(xiàn)的加速方案性能如下:

79766830-be3f-11eb-9e57-12bb97331649.png

。

跟前兩年的結(jié)果相比,雖然我們的精度(IoU)略有損失,但在速度方面我們有了大幅度地提升。

03

總結(jié)

上述是我們在2020DAC-SDC中所做的一些努力。這是我們團隊第一次參加DAC-SDC國際大賽,從關(guān)注該賽項到今天,我們一邊摸索一邊前進,很感謝組委會提供了這樣的平臺給我們實踐鍛煉和摸索提升的機會。身處計算機體系結(jié)構(gòu)發(fā)展的黃金時代是我們這代人的幸運,相信未來系統(tǒng)設計必然將向著更精準、更高效、更低耗的方向邁進,我們也希望能夠通過努力與各位同仁共同見證這個時代的輝煌。同時,我們的設計也已經(jīng)開源在:https://github.com/heheda365/ultra_net

04

團隊介紹

2020DAC-SDC Top-3的BJUT_Runner團隊來自北京工業(yè)大學信息學部張文博老師和包振山老師帶領(lǐng)的異構(gòu)計算研究小組。參加本次比賽的團隊成員包括:詹康(圖中右下)、郭俊南和宋秉彥(圖中左下)。受2020年新型冠狀病毒疫情(COVID-19)影響,在整個參賽環(huán)節(jié),團隊成員一直采用在線研討方式進行溝通(下圖為本組指導教師和所有成員在線合影)。

原文標題:打破常規(guī),深度結(jié)合FPGA架構(gòu)優(yōu)勢|2020DAC- SDC冠軍作品開源與技術(shù)分享

文章出處:【微信公眾號:FPGA之家】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

責任編輯:haq

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • FPGA
    +關(guān)注

    關(guān)注

    1660

    文章

    22412

    瀏覽量

    636345
  • dac
    dac
    +關(guān)注

    關(guān)注

    44

    文章

    2713

    瀏覽量

    197091
  • 開源
    +關(guān)注

    關(guān)注

    3

    文章

    4207

    瀏覽量

    46144

原文標題:打破常規(guī),深度結(jié)合FPGA架構(gòu)優(yōu)勢|2020DAC- SDC冠軍作品開源與技術(shù)分享

文章出處:【微信號:zhuyandz,微信公眾號:FPGA之家】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    MD657B高速DAC特性與替代型號分析

    采樣率架構(gòu)差異:其他品牌的高速DAC通常采用JESD204B串行接口或需要外部FPGA實現(xiàn)MUX功能,與MD657B的并行LVDS+內(nèi)置MUX架構(gòu)差異較大,替換需要重新設計PCB和邏輯
    發(fā)表于 03-04 09:20

    MD662H高速DAC替代方案全解析:采樣率、復用與性能權(quán)衡

    數(shù)據(jù)流合并輸出。封裝:TQFP128,適合中等密度電路設計。應用領(lǐng)域:雷達信號生成、通信測試設備、高速數(shù)據(jù)采集回放系統(tǒng)。二、替代方案分析1. 采樣率與分辨率優(yōu)先:TI DAC5682采樣率
    發(fā)表于 01-21 09:42

    使用簡儀科技產(chǎn)品構(gòu)建高速數(shù)據(jù)流盤與回放系統(tǒng)解決方案

    本案例面向國產(chǎn)自主可控PXI軟硬件平臺,構(gòu)建了一套運行于銀河麒麟實時操作系統(tǒng)環(huán)境下的高速數(shù)據(jù)流盤與回放系統(tǒng)。系統(tǒng)以高速數(shù)字化儀為核心,實現(xiàn)多通道高速信號的實時采集、連續(xù)盤存儲及離線回放分析,保障
    的頭像 發(fā)表于 12-30 10:52 ?540次閱讀
    使用簡儀科技產(chǎn)品構(gòu)建高速<b class='flag-5'>數(shù)據(jù)流</b>盤與回放系統(tǒng)解決方案

    采用Prefetch+Cache架構(gòu)有什么優(yōu)勢

    我看官方說,采用Prefetch+Cache架構(gòu)同頻CoreMark 計算力/功耗比超越同類產(chǎn)品,這優(yōu)勢就是低功耗么?要是具體芯片比較的話,應該怎么比?
    發(fā)表于 12-11 07:35

    歐姆龍推出全新數(shù)據(jù)流邊緣控制器DX1

    2025年11月,歐姆龍自動化(中國)有限公司發(fā)布新品【數(shù)據(jù)流控制器DX1】。DX1作為一款數(shù)據(jù)流邊緣控制器,面對生產(chǎn)現(xiàn)場數(shù)據(jù)采集與活用困難、數(shù)據(jù)需求因人/設備而異、需關(guān)停設備才能引入
    的頭像 發(fā)表于 11-26 18:02 ?1269次閱讀
    歐姆龍推出全新<b class='flag-5'>數(shù)據(jù)流</b>邊緣控制器DX1

    在以下嵌入式軟件設計模型中,屬于數(shù)據(jù)流模型的是,哪里有設計模型的介紹?

    在以下嵌入式軟件設計模型中,屬于數(shù)據(jù)流模型的是()。A. CCSB. CSPC. FSMD. Petri Net
    發(fā)表于 11-24 15:55

    誰家在低成本MCU中集成CPLD/FPGA,這有何優(yōu)勢呢?

    海振遠推薦的AG32系列MCU作為高性價比異構(gòu)計算平臺,其獨特架構(gòu)和功能特性在嵌入式領(lǐng)域具有顯著優(yōu)勢。以下是核心特性分析: 1、FPGA+MCU融合設計? 內(nèi)置2K邏輯單元的FP
    發(fā)表于 11-06 11:15

    25年11月上海FPGA算法實現(xiàn)與應用技術(shù)高級研修分享

    的案例對離散傅里葉變換進行深入說明,同時對時域和頻域的功率計算統(tǒng)一評估。   第三章: 通信基站數(shù)據(jù)流概論:介紹無線通信物理層的數(shù)據(jù)流設計架構(gòu)與關(guān)鍵技術(shù)。   第四章: 基帶信號的產(chǎn)生與檢測:以OFDM為
    發(fā)表于 10-11 11:55

    用IS8000軟件和WT5000功率分析儀的DS波形數(shù)據(jù)流功能分析形數(shù)據(jù)

    橫河IS8000集成軟件平臺,將功率分析儀的波形采集與示波器的波形數(shù)據(jù)分析融為一體,提高測試效率。下面我們將為您揭曉如何通過IS8000軟件和WT5000的DS波形數(shù)據(jù)流功能輕松保存并分析相關(guān)波形數(shù)據(jù)
    的頭像 發(fā)表于 07-03 18:30 ?638次閱讀
    用IS8000軟件和WT5000功率分析儀的DS波形<b class='flag-5'>數(shù)據(jù)流</b>功能分析形<b class='flag-5'>數(shù)據(jù)</b>

    Altera FPGA與高速ADS4249和DAC3482的LVDS接口設計

    引言: 本文以TI的ADS4249(ADC)和DAC3482(DAC)之間的接口為例,介紹Altera FPGA與ADC/DAC之間的DDR LVDS接口設計以及時序約束詳細設計。本文
    的頭像 發(fā)表于 06-19 10:05 ?3190次閱讀
    Altera <b class='flag-5'>FPGA</b>與高速ADS4249和<b class='flag-5'>DAC</b>3482的LVDS接口設計

    FX3板是否兼容2k和4k分辨率的視頻數(shù)據(jù)流

    ,實現(xiàn)了 1920 * 1080 @ 60 fps 的設計,但現(xiàn)在我想檢查與上述更高分辨率的兼容性。 關(guān)于這一點,我有幾個問題 1.FX3 板是否兼容 2k 和 4k 分辨率的視頻數(shù)據(jù)流? 2.視頻數(shù)據(jù)流
    發(fā)表于 05-23 06:35

    通過 FX3 以 5200*3900 分辨率、15fps 的速度從我的 fpga 傳輸視頻數(shù)據(jù)流,但無法設置最小/最大比特率描述符值,怎么解決?

    我正試圖通過 FX3 以 5200*3900 分辨率、15fps 的速度從我的 fpga 傳輸視頻數(shù)據(jù)流,但無法設置最小/最大比特率描述符值,因為描述符大小只有 32 位。 描述符的預期值應該是
    發(fā)表于 05-23 06:35

    使用FX3測試程序中的數(shù)據(jù)流時,遇到了每8個字節(jié)重復的場景,是什么原因?qū)е碌模?/a>

    我在使用 FX3 測試程序中的數(shù)據(jù)流時,遇到了每 8 個字節(jié)重復的場景。
    發(fā)表于 05-21 06:59

    FPGA開發(fā)任務

    1、FPGA載板設計 提供串口、2.5Gbps網(wǎng)口(自適應100Mb、1000Mb、2.5Gb)、5V或12V供電。 2、FPGA PL編程 1)提供鏈路層數(shù)據(jù)處理功能,2.5Gbps網(wǎng)口接收
    發(fā)表于 04-22 18:46

    如何使用FPGA驅(qū)動并行ADC和DAC芯片,使用不同編碼方式的ADC與DAC時的注意事項

    ADC和DACFPGA與外部信號的接口,從數(shù)據(jù)接口類型的角度劃分,有低速的串行接口和高速的并行接口。FPGA經(jīng)常用來采集中高頻信號,因此使用并行ADC和
    的頭像 發(fā)表于 03-14 13:54 ?2196次閱讀
    如何使用<b class='flag-5'>FPGA</b>驅(qū)動并行ADC和<b class='flag-5'>DAC</b>芯片,使用不同編碼方式的ADC與<b class='flag-5'>DAC</b>時的注意事項