女人自慰AV免费观看内涵网,日韩国产剧情在线观看网址,神马电影网特片网,最新一级电影欧美,在线观看亚洲欧美日韩,黄色视频在线播放免费观看,ABO涨奶期羡澄,第一导航fulione,美女主播操b

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

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

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

優(yōu)化FPGA HLS設(shè)計(jì)

OpenFPGA ? 來(lái)源:OpenFPGA ? 2023-10-30 11:41 ? 次閱讀

優(yōu)化 FPGA HLS 設(shè)計(jì)

用工具用 C 生成 RTL 的代碼基本不可讀。以下是如何在不更改任何 RTL 的情況下提高設(shè)計(jì)性能。

90ddf9de-76d4-11ee-939d-92fbcf53809c.png

介紹

高級(jí)設(shè)計(jì)能夠以簡(jiǎn)潔的方式捕獲設(shè)計(jì),從而減少錯(cuò)誤并更容易調(diào)試。然而,經(jīng)常出現(xiàn)的問(wèn)題是性能權(quán)衡。在高度復(fù)雜的 FPGA 設(shè)計(jì)中實(shí)現(xiàn)高性能需要手動(dòng)優(yōu)化 RTL 代碼,而這對(duì)于HLS開發(fā)環(huán)境生成的 RTL 代碼來(lái)說(shuō)是不可能的。然而,存在一些解決方案,可以通過(guò)使用 FPGA 工具設(shè)置優(yōu)化設(shè)計(jì)本身來(lái)最大限度地減少性能損失。

高效找到正確的 FPGA 工具設(shè)置

盡管設(shè)計(jì)人員知道 FPGA 工具設(shè)置的存在,但這些設(shè)置往往沒(méi)有得到充分利用。通常,只有在出現(xiàn)設(shè)計(jì)問(wèn)題時(shí)才使用工具設(shè)置。然而,對(duì)于已達(dá)到性能目標(biāo)的設(shè)計(jì),還有額外10% 至 50% 性能改進(jìn)的巨大潛力。

上面的核心問(wèn)題在于選擇正確的工具設(shè)置,因?yàn)椴煌?FPGA 工具提供 30 到 70 種用于綜合和布局布線的設(shè)置。可能的組合太多了。可以編寫腳本來(lái)創(chuàng)建不同的運(yùn)行并嘗試推薦的標(biāo)準(zhǔn)指令/策略。

最后一個(gè)挑戰(zhàn)問(wèn)題是計(jì)算能力不足。典型的嵌入式應(yīng)用程序是在單臺(tái)計(jì)算機(jī)上設(shè)計(jì)的。運(yùn)行多個(gè)編譯需要更多的計(jì)算能力。這是與時(shí)間的權(quán)衡。如果可以同時(shí)運(yùn)行更多(使用云)綜合策略,周轉(zhuǎn)時(shí)間將會(huì)更短。

如何優(yōu)化高級(jí)設(shè)計(jì) - Sobel 濾波器

Sobel 濾波器是視頻處理中常用的參考設(shè)計(jì)。該參考設(shè)計(jì)針對(duì)具有 Dual ARM Cortex-A9 MPCore 的 FPGA。

我們使用 Xilinx HLS 工具來(lái)打開此設(shè)計(jì)。

90fd453c-76d4-11ee-939d-92fbcf53809c.png

它的時(shí)鐘周期為 5.00 ns,即 200 MHz。從時(shí)序估計(jì)(見(jiàn)下文)來(lái)看,它仍然缺少 506 ps 的時(shí)序,這相當(dāng)于 181 MHz,比目標(biāo)速度低 10%。

91020acc-76d4-11ee-939d-92fbcf53809c.png

導(dǎo)出到 RTL 項(xiàng)目

在不更改 C++ 代碼的情況下,將設(shè)計(jì)導(dǎo)出到 RTL 中的 Vivado 項(xiàng)目中。在“解決方案”下,選擇“導(dǎo)出 RTL”。

9106ab4a-76d4-11ee-939d-92fbcf53809c.png

它將在后臺(tái)執(zhí)行 Vivado 并生成項(xiàng)目文件 (XPR)。它還應(yīng)該編譯設(shè)計(jì),并且應(yīng)該在控制臺(tái)中看到實(shí)際的時(shí)序詳細(xì)信息。完成后,在/solution/impl/verilog/文件夾中找到項(xiàng)目文件。

910b09e2-76d4-11ee-939d-92fbcf53809c.png

找到一個(gè) XPR 文件。可以通過(guò)Vivado打開它來(lái)驗(yàn)證它,可以看到生成的RTL源碼。

9116cee4-76d4-11ee-939d-92fbcf53809c.png

優(yōu)化時(shí)序

下一步是使用名為InTime 的設(shè)計(jì)探索工具(https://www.plunify.com/en/free-evaluation/)。(同樣,可以自己編寫腳本來(lái)嘗試 Vivado 工具中提供的標(biāo)準(zhǔn)指令或策略)可以使用免費(fèi)評(píng)估許可證在本地運(yùn)行 InTime 。或者,使用一些免費(fèi)積分和預(yù)裝 FPGA 工具注冊(cè) Plunify云帳戶。

啟動(dòng)InTime后,打開項(xiàng)目文件。當(dāng)提示要使用的 Vivado 版本時(shí),請(qǐng)使用“相同”的 Vivado 版本。例如,如果使用2017.3 HLS,請(qǐng)使用2017.3 Vivado。

選擇“熱啟動(dòng)”。“熱啟動(dòng)”是基于之前其他設(shè)計(jì)經(jīng)驗(yàn)的推薦策略列表。

912e76c0-76d4-11ee-939d-92fbcf53809c.png

單擊“Start Recipe”開始優(yōu)化。如果在云上運(yùn)行,則應(yīng)同時(shí)運(yùn)行多個(gè)編譯以減少時(shí)間。

優(yōu)化過(guò)程和結(jié)果

在第一輪(“熱啟動(dòng)”)之后,最好的結(jié)果是“hotstart_1”策略。然而,它仍然缺少-90ps 的時(shí)序。

我們對(duì)“HotStart_1”的結(jié)果應(yīng)用了名為“Extra Opt Exploration”的第二個(gè)秘訣。這側(cè)重于優(yōu)化關(guān)鍵路徑。這是一種迭代優(yōu)化,只要每次迭代都顯示出改進(jìn),就會(huì)不斷重復(fù)。如果達(dá)到時(shí)間目標(biāo)或未能顯示出改進(jìn),它最終將自動(dòng)停止。

9133d304-76d4-11ee-939d-92fbcf53809c.png

經(jīng)過(guò)兩輪優(yōu)化,共15次編譯,該設(shè)計(jì)能夠滿足200Mhz的性能目標(biāo)。這是無(wú)需對(duì) RTL 源代碼進(jìn)行任何更改即可實(shí)現(xiàn)的。

更高水平的性能

要達(dá)到更高的性能水平,需要在所有方面進(jìn)行優(yōu)化——架構(gòu)設(shè)計(jì)、代碼和工具。工具設(shè)置探索可以克服更高級(jí)別設(shè)計(jì)的性能權(quán)衡,而不會(huì)失去它首先帶來(lái)的生產(chǎn)力優(yōu)勢(shì)。這對(duì)于高級(jí)設(shè)計(jì)師來(lái)說(shuō)是雙贏。

審核編輯:湯梓紅

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

    關(guān)注

    1643

    文章

    21959

    瀏覽量

    614058
  • 濾波器
    +關(guān)注

    關(guān)注

    162

    文章

    8068

    瀏覽量

    181014
  • RTL
    RTL
    +關(guān)注

    關(guān)注

    1

    文章

    388

    瀏覽量

    60663
  • 腳本
    +關(guān)注

    關(guān)注

    1

    文章

    397

    瀏覽量

    28348
  • HLS
    HLS
    +關(guān)注

    關(guān)注

    1

    文章

    131

    瀏覽量

    24641

原文標(biāo)題:優(yōu)化 FPGA HLS 設(shè)計(jì)

文章出處:【微信號(hào):Open_FPGA,微信公眾號(hào):OpenFPGA】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

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

    如何在不改變RTL代碼的情況下,優(yōu)化FPGA HLS設(shè)計(jì)

    InTime。 前言 高層次的設(shè)計(jì)可以讓設(shè)計(jì)以更簡(jiǎn)潔的方法捕捉,從而讓錯(cuò)誤更少,調(diào)試更輕松。然而,這種方法最受詬病的是對(duì)性能的犧牲。在復(fù)雜的 FPGA 設(shè)計(jì)上實(shí)現(xiàn)高性能,往往需要手動(dòng)優(yōu)化 RTL 代碼,這也意味著從 C 轉(zhuǎn)化得到 RTL 基本不可能。其實(shí),使用
    的頭像 發(fā)表于 12-20 11:46 ?2028次閱讀
    如何在不改變RTL代碼的情況下,<b class='flag-5'>優(yōu)化</b><b class='flag-5'>FPGA</b> <b class='flag-5'>HLS</b>設(shè)計(jì)

    如何優(yōu)化FPGA HLS設(shè)計(jì)呢?

    用工具用 C 生成 RTL 的代碼基本不可讀。以下是如何在不更改任何 RTL 的情況下提高設(shè)計(jì)性能。
    的頭像 發(fā)表于 10-30 14:34 ?1281次閱讀
    如何<b class='flag-5'>優(yōu)化</b><b class='flag-5'>FPGA</b> <b class='flag-5'>HLS</b>設(shè)計(jì)呢?

    優(yōu)化 FPGA HLS 設(shè)計(jì)

    優(yōu)化 FPGA HLS 設(shè)計(jì) 用工具用 C 生成 RTL 的代碼基本不可讀。以下是如何在不更改任何 RTL 的情況下提高設(shè)計(jì)性能。 介紹 高級(jí)設(shè)計(jì)能夠以簡(jiǎn)潔的方式捕獲設(shè)計(jì),從而
    發(fā)表于 08-16 19:56

    怎么利用Synphony HLS為ASIC和FPGA架構(gòu)生成最優(yōu)化RTL代碼?

    相比,能夠?yàn)橥ㄐ藕投嗝襟w應(yīng)用提供高達(dá)10倍速的更高的設(shè)計(jì)和驗(yàn)證能力。Synphony HLS為ASIC 和 FPGA的應(yīng)用、架構(gòu)和快速原型生成最優(yōu)化的RTL。Synphony HLS
    發(fā)表于 08-13 08:21

    【正點(diǎn)原子FPGA連載】第一章HLS簡(jiǎn)介-領(lǐng)航者ZYNQ之HLS 開發(fā)指南

    )對(duì)正點(diǎn)原子FPGA感興趣的同學(xué)可以加群討論:8767449005)關(guān)注正點(diǎn)原子公眾號(hào),獲取最新資料第一章HLS簡(jiǎn)介為了盡快把新產(chǎn)品推向市場(chǎng),數(shù)字系統(tǒng)的設(shè)計(jì)者需要考慮如何加速設(shè)計(jì)開發(fā)的周期。設(shè)計(jì)加速
    發(fā)表于 10-10 16:44

    FPGA高層次綜合HLS之Vitis HLS知識(shí)庫(kù)簡(jiǎn)析

    重要組成部分,所以我們將重點(diǎn)介紹Vitis HLS。LUT 或 SICELUT 或 SICE是構(gòu)成了 FPGA 的區(qū)域。它的數(shù)量有限,當(dāng)它用完時(shí),意味著您的設(shè)計(jì)太大了!BRAM 或 Block
    發(fā)表于 09-07 15:21

    使用Vivado高層次綜合 (HLS)進(jìn)行FPGA設(shè)計(jì)的簡(jiǎn)介

    Introduction to FPGA Design with Vivado High-Level Synthesis,使用 Vivado 高層次綜合 (HLS) 進(jìn)行 FPGA 設(shè)計(jì)的簡(jiǎn)介
    發(fā)表于 01-06 11:32 ?65次下載

    FPGA并行編程:基于HLS技術(shù)優(yōu)化硬件設(shè)計(jì)

    作為集成電路設(shè)計(jì)領(lǐng)域現(xiàn)場(chǎng)可編程門陣列 (FPGA) 技術(shù)的創(chuàng)造者之一,賽靈思一直積極推廣高層次綜合 (HLS) 技術(shù),通過(guò)這種能夠解讀所需行為的自動(dòng)化設(shè)計(jì)流程打造出可實(shí)現(xiàn)此類行為的硬件。賽靈思剛剛推出了一本專著,清晰介紹了如何使用 HL
    發(fā)表于 11-10 11:01 ?3016次閱讀

    利用FPGA工具設(shè)置優(yōu)化FPGA HLS設(shè)計(jì)

    高層次的設(shè)計(jì)可以讓設(shè)計(jì)以更簡(jiǎn)潔的方法捕捉,從而讓錯(cuò)誤更少,調(diào)試更輕松。然而,這種方法最受詬病的是對(duì)性能的犧牲。在復(fù)雜的 FPGA 設(shè)計(jì)上實(shí)現(xiàn)高性能,往往需要手動(dòng)優(yōu)化 RTL 代碼,這也意味著從 C
    發(fā)表于 12-16 11:19 ?1712次閱讀
    利用<b class='flag-5'>FPGA</b>工具設(shè)置<b class='flag-5'>優(yōu)化</b><b class='flag-5'>FPGA</b> <b class='flag-5'>HLS</b>設(shè)計(jì)

    關(guān)于優(yōu)化FPGA HLS設(shè)計(jì)的分析和介紹

    用軟件從 C 轉(zhuǎn)化來(lái)的 RTL 代碼其實(shí)并不好理解。今天我們就來(lái)談?wù)劊绾卧诓桓淖?RTL 代碼的情況下,提升設(shè)計(jì)性能。 本項(xiàng)目所需應(yīng)用與工具:賽靈思HLS、Plunify Cloud 以及 InTime。 前言 高層次的設(shè)計(jì)可以讓設(shè)計(jì)以更簡(jiǎn)潔的方法捕捉,從而讓錯(cuò)誤更少,調(diào)試更輕松。
    發(fā)表于 09-15 11:56 ?618次閱讀

    使用網(wǎng)絡(luò)實(shí)例比較FPGA RTL與HLS C/C++的區(qū)別

    HLSFPGA開發(fā)方法是只抽象出可以在C/C++環(huán)境中輕松表達(dá)的應(yīng)用部分。通過(guò)使用Vivado(Xilinx)或Intel(Quartus)工具,HLS工具流程基本上可用于任何BittWare板。
    發(fā)表于 08-02 09:18 ?1981次閱讀
    使用網(wǎng)絡(luò)實(shí)例比較<b class='flag-5'>FPGA</b> RTL與<b class='flag-5'>HLS</b> C/C++的區(qū)別

    ThunderGP:基于HLSFPGA圖形處理框架

    電子發(fā)燒友網(wǎng)站提供《ThunderGP:基于HLSFPGA圖形處理框架.zip》資料免費(fèi)下載
    發(fā)表于 10-27 16:49 ?0次下載
    ThunderGP:基于<b class='flag-5'>HLS</b>的<b class='flag-5'>FPGA</b>圖形處理框架

    FPGA基礎(chǔ)之HLS

    1、HLS簡(jiǎn)介 HLS(High-Level Synthesis)高層綜合,就是將 C/C++的功能用 RTL 來(lái)實(shí)現(xiàn),將 FPGA 的組件在一個(gè)軟件環(huán)境中來(lái)開發(fā),這個(gè)模塊的功能驗(yàn)證在軟件環(huán)境中來(lái)
    的頭像 發(fā)表于 12-02 12:30 ?6397次閱讀

    FPGA——HLS簡(jiǎn)介

    HLS ?(high-level synthesis)稱為高級(jí)綜合, 它的主要功能是用 C/C++為 FPGA開發(fā) 算法。這將提升FPGA 算法開發(fā)的生產(chǎn)力。 ?? Xilinx 最新的HLS
    的頭像 發(fā)表于 01-15 12:10 ?5734次閱讀

    如何使用HLS加速FPGA上的FIR濾波器

    電子發(fā)燒友網(wǎng)站提供《如何使用HLS加速FPGA上的FIR濾波器.zip》資料免費(fèi)下載
    發(fā)表于 06-14 15:28 ?3次下載
    如何使用<b class='flag-5'>HLS</b>加速<b class='flag-5'>FPGA</b>上的FIR濾波器