在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

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

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

3天內不再提示

HLS優化設計的最關鍵指令

YCqV_FPGA_EETre ? 來源:FPGA開發圈 ? 作者:FPGA開發圈 ? 2021-01-14 09:41 ? 次閱讀

HLS 優化設計的最關鍵指令有兩個:一個是流水線 (pipeline)指令,一個是數據流(dataflow)指令。正確地使用好這兩個指令能夠增強算法地并行性,提升吞吐量,降低延遲但是需要遵循一定的代碼風格。展開 (unroll) 指令是只針對 for 循環的展開指令,和流水線指令關系密切,所以我們放在一起首先我們來看一下這三個指令在 Xilinx 官方指南中的定義:

Unroll:Unroll for-loops to create multiple instances of the loopbody and its instructions that can then be scheduled independently.

Pipeline:Reduces the initiation interval by allowing theoverlapped execution of operations within a loop or function.

Dataflow:Enables task level pipelining, allowing functions andloops to execute concurrently. Used to optimize through output and/or latency.

Unroll 指令在 for 循環的代碼區域進行優化,這個指令不包含流水線執行的概念,單純地將循環體展開使用更多地硬件資源實現,保證并行循環體在調度地過程中是彼此獨立的。

Pipeline 指令在循環和函數兩個層級都可以使用,通過增加重復的操作指令(如增加資源使用量等等)來減小初始化間隔。

Dataflow 指令是一個任務級別的流水線指令,從更高的任務層次使得循環或函數可以并行執行,目的在于減小延遲增加吞吐量。

Unroll 和 Pipeline 指令相互重合的關系在于,當對函數進行流水線處理時,以下層次結構中的所有循環都會自動展開,而使用展開指令的循環并沒有給定對II的約束。在最新版本的 Vitis HLS 工具中,工具會自動分析數據之間的流水線操作關系,以II=1為目標優化,但是還是會受限于設計本身的算法和代碼風格。下圖非常清晰地闡明了Unroll 和 Pipeline 指令的關系,Pipeline 指令放置的循環層次越高,循環展開的層次也越高,最終會導致使用更大面積的資源去實現,同時并行性也更高。

7728e698-51a7-11eb-8b86-12bb97331649.png

這里如果循環的邊界是變量的話,則無法展開。這將組織函數被流水線化,可以通過添加tripcount 等指令,指定循環在綜合時大概的最大最小邊界。

在循環流水線優化的過程中,有一個完美循環,半完美循環和非完美循環的代碼風格概念,只有當流水線循環完美或半完美時,才可以將嵌套循環徹底并行展開。

完美循環:只有最里面的循環才具有主體內容,在循環語句之間沒有指定邏輯,循環界限是恒定的。

半完美循環:只有最里面的循環才具有主體 (內容), 在循環語句之間沒有指定邏輯,只有最外面的循環邊界可以是可變的。

非完美循環:循環的主體內容分布在循環的各個層次或內層循環的邊界是變量。

779a5dc8-51a7-11eb-8b86-12bb97331649.png

當我們要爭去最大流水線循環的成功執行,就需要將非完美循環手動修改成完美或半完美循環。以下代碼例子給出了完美循環(左邊)和非完美循環(右邊)在Vitis HLS 中的執行結果。

Perfect_loop

#include "loop_perfect.h"

void loop_perfect (din_t A[N], dout_t B[N]) {

int i,j;

dint_t acc;

LOOP_I:for (i=0; i < 20; i++) {?

LOOP_J: for (j=0; j < 20; j++) {?

if(j==0) acc = 0;

acc += A[j] * j;

if(j==19) {

if (i%2 == 0)

B[i] = acc / 20;

else

B[i] = 0;

}

}

}

}

void loop_imperfect (din_t A[N], dout_t B[N]) {

int i,j;

dint_t acc;

LOOP_I:for(i=0; i < 20; i++){?

acc = 0;

LOOP_J: for (j=0; j < 20; j++) {?

acc += A[j] * j;

}

if (i%2 == 0)

B[i] = acc / 20;

else

B[i] = 0;

}

}

77d756e2-51a7-11eb-8b86-12bb97331649.png

78f8c790-51a7-11eb-8b86-12bb97331649.png

792ca6d2-51a7-11eb-8b86-12bb97331649.png

7962a03e-51a7-11eb-8b86-12bb97331649.png

綜合完畢后,我們可以在分析窗口和綜合報告中都很清晰的看出,完美循環在執行的時候,工具自動將內層循環LOOP_J和外層循環LOOP_I合并為一整個大循環,并實現了整個大循環的流水線操作,延遲的周期數為: (400-1) *1+8-1 =406個周期數,延遲大約為 408*2.5 = 1,020 ns

非完美循環中,內層和外層循環沒有合并,只有內層循環LOOP_J 實現了流水線執行,進出內循環的浪費的時鐘周期增加了整個循環的時鐘周期,同時還有一些命令行沒有辦法跨越循環的層級實現調度上的優化,這些因素都導致了設計的延遲的增加。

責任編輯:lq

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 算法
    +關注

    關注

    23

    文章

    4682

    瀏覽量

    94382
  • 函數
    +關注

    關注

    3

    文章

    4365

    瀏覽量

    63898
  • 數據流
    +關注

    關注

    0

    文章

    122

    瀏覽量

    14643
收藏 人收藏

    評論

    相關推薦
    熱點推薦

    激光器的多樣分類與選型關鍵指標全解析

    理解各類激光器的特點及其關鍵指標,對于確保應用效果至關重要。本文將對此進行全面解析。 激光器的多樣分類 激光器作為現代科技的重要產物,根據不同的分類標準,可以劃分為多個種類。以下是從幾個主要維度對激光器的分
    的頭像 發表于 04-23 06:26 ?151次閱讀
    激光器的多樣分類與選型<b class='flag-5'>關鍵指</b>標全解析

    Arm解讀Armv9 CPU為何是打造高性能、高能效移動計算的關鍵

    CPU 性能的關鍵指標的重要性。與主要將頻率作為性能指標的做法不同,IPC 衡量的是 CPU 每個時鐘周期內能處理的指令數。對于移動設備而言,電池續航和散熱管理是影響實際應用、用戶體驗和設備處理復雜
    的頭像 發表于 03-14 15:51 ?660次閱讀

    使用各種TensorFlow模型運行模型優化器時遇到錯誤非法指令怎么解決?

    使用各種 TensorFlow 模型運行模型優化器時遇到 [i]錯誤非法指令
    發表于 03-05 09:56

    大語言模型的解碼策略與關鍵優化總結

    的技術參考。主要涵蓋貪婪解碼、束搜索、采樣技術等核心解碼方法,以及溫度參數、懲罰機制等關鍵優化手段。大型語言模型的技術基礎大型語言模型是當代自然語言處理技術的核心
    的頭像 發表于 02-18 12:00 ?425次閱讀
    大語言模型的解碼策略與<b class='flag-5'>關鍵</b><b class='flag-5'>優化</b>總結

    SAR ADC的工作過程和關鍵指

    ADC以其低功耗、高精度、小尺寸以及適中的速度和分辨率,在中等至高分辨率應用中占據主導地位。本文將詳細介紹SAR ADC的概念、工作過程、關鍵指標以及其在不同領域的應用。
    的頭像 發表于 02-02 13:57 ?860次閱讀

    前端性能優化:提升用戶體驗的關鍵策略

    在互聯網飛速發展的今天,用戶對于網頁的加載速度和響應性能要求越來越高。前端性能優化成為了提升用戶體驗、增強網站競爭力的關鍵策略。一個性能良好的前端應用,能夠快速響應用戶的操作,減少等待時間,為用戶
    的頭像 發表于 01-22 10:08 ?331次閱讀

    數字化車間——有哪些關鍵指標?

    數字化車間是智能制造的核心引擎,通過數字化技術和信息化手段,實現生產數據的實時采集、傳輸、分析和應用,提高生產效率和管理水平,增強競爭力。影響其性能的關鍵指標包括設備綜合效率(OEE)、時間開動率、性能開動率、合格品率等。
    的頭像 發表于 12-23 11:01 ?485次閱讀
    數字化車間——有哪些<b class='flag-5'>關鍵指</b>標?

    低噪聲運算放大器的關鍵指標特點、優勢和應用場景

    低噪聲運算放大器的關鍵指標特點、優勢和應用場景。 1 低噪聲 應用場景1: 在大部分高精度放大的應用中,都需要外部增加一款運放進行電流采樣放大,而在電路應用系統中一般輸入信號幅值比較小,這樣就要求運放自身的噪聲要遠
    的頭像 發表于 12-23 10:13 ?975次閱讀
    低噪聲運算放大器的<b class='flag-5'>關鍵指</b>標特點、優勢和應用場景

    如何優化 Llama 3 的輸入提示

    優化輸入提示(prompt engineering)是提高人工智能模型輸出質量的關鍵步驟。對于Llama 3這樣的模型,優化輸入提示可以幫助模型更準確地理解用戶的意圖,從而生成更相關和高質量的內容
    的頭像 發表于 10-27 14:39 ?665次閱讀

    在選擇SD-WAN提供商時,需要關注哪些關鍵指標?

    在選擇SD-WAN提供商時,應該關注以下關鍵指標: 1、帶寬利用率:SD-WAN應能有效利用可用帶寬,確保數據傳輸的高效與穩定。 2、路徑選擇與負載均衡:SD-WAN需要能夠智能選擇最佳路徑并實現
    的頭像 發表于 09-30 12:24 ?407次閱讀

    高頻電路設計中的關鍵指

    為了確保高頻電路的高效運行和可靠性,一系列性能指標被提出并嚴格遵循。這些性能指標涵蓋了增益、通頻帶、選擇性、噪聲系數和穩定性等多個方面,下面將逐一探討這些關鍵指標及其在高頻電路設計中的重要性。 增益
    的頭像 發表于 09-20 16:31 ?990次閱讀

    您想了解的數據采集DAQ關鍵指標都在這里了

    數據采集DAQ關鍵指標有哪些
    的頭像 發表于 09-03 13:52 ?677次閱讀
    您想了解的數據采集DAQ<b class='flag-5'>關鍵指</b>標都在這里了

    優化 FPGA HLS 設計

    優化 FPGA HLS 設計 用工具用 C 生成 RTL 的代碼基本不可讀。以下是如何在不更改任何 RTL 的情況下提高設計性能。 介紹 高級設計能夠以簡潔的方式捕獲設計,從而
    發表于 08-16 19:56

    一種在HLS中插入HDL代碼的方式

    很多人都比較反感用C/C++開發(HLS)FPGA,大家第一拒絕的理由就是耗費資源太多。但是HLS也有自己的優點,除了快速構建算法外,還有一個就是接口的生成,尤其對于AXI類接口,按照標準語法就可以很方便地生成相關接口。
    的頭像 發表于 07-16 18:01 ?1283次閱讀
    一種在<b class='flag-5'>HLS</b>中插入HDL代碼的方式

    電源濾波器選擇關鍵指標解析

    在電子設備日益普及的今天,電源濾波器作為保障電源質量、抑制電磁干擾的重要器件,其選擇和應用顯得尤為重要。本文維愛普電源濾波器小編將為您詳細介紹電源濾波器選擇時需要考慮的關鍵指標,幫助您更好地理解和應用電源濾波器。
    的頭像 發表于 06-18 10:46 ?693次閱讀
    電源濾波器選擇<b class='flag-5'>關鍵指</b>標解析
    主站蜘蛛池模板: 男女爱爱福利 | 黄色大片aa | 日本在线网址 | 国产福利不卡一区二区三区 | 久久久夜色精品国产噜噜 | 亚洲精品成人久久久影院 | 亚洲欧美网 | 成人性色生活片免费看爆迷你毛片 | h黄视频在线观看 | 手机在线观看a | 色多多免费在线观看 | 在线观看免费视频一区 | 日本一区二区精品88 | 黄色一级毛片看一级毛片 | 午夜美女网站 | 国产精品主播在线 | 日韩成人午夜 | 日本一区不卡在线观看 | 成人啪啪免费视频 | 亚洲天堂资源网 | 失禁h啪肉尿出来高h健身房 | 天堂色| 天天摸天天澡天天碰天天弄 | www狠狠干| 快乐你懂的在线视频免费观看 | 手机看片福利日韩国产 | 在线麻豆国产传媒60在线观看 | 国产精品嫩草影院午夜 | 欧美成人一区亚洲一区 | 午夜激情福利视频 | 污污视频网址 | 亚洲欧美日本视频 | 四虎影视网站 | 88影视在线观看污污 | 男女一区二区三区免费 | 日本在线一级 | 国产三级免费观看 | 激情综合色综合久久综合 | 黄a在线观看 | 天天爽夜夜爽免费看 | 黑色丝袜美女被视频网站 |