国产精品久久久aaaa,日日干夜夜操天天插,亚洲乱熟女香蕉一区二区三区少妇,99精品国产高清一区二区三区,国产成人精品一区二区色戒,久久久国产精品成人免费,亚洲精品毛片久久久久,99久久婷婷国产综合精品电影,国产一区二区三区任你鲁

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

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

3天內不再提示

如何導出IP以供在Vivado Design Suite中使用?

YCqV_FPGA_EETre ? 來源:XILINX ? 作者:Aoife Marsh ? 2021-04-26 17:32 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

在 AXI 基礎第 6 講 - Vitis HLS 中的 AXI4-Lite 簡介中,使用 C 語言在 HLS 中創建包含 AXI4-Lite 接口的 IP。

在本篇博文中,我們將學習如何導出 IP 以供在 Vivado Design Suite 中使用、如何將其連接到其它 IP 核與處理器以及如何在板上運行工程。

本篇博文將分為 3 個部分:

1. 從 Vitis HLS 導出 IP。

2. 使用Vivado Design Suite創建硬件。

3. 在Vitis 統一軟件平臺中編寫軟件并在板上運行。

01

導出 IP

在AXI 基礎第 6 講 - Vitis HLS 中的 AXI4-Lite 簡介中,我們創建了 1 個包含 AXI4-Lite 接口的 IP。如果要把新 IP 連接到任何其它 IP 或者連接到 PS,則首先需要將軟件代碼綜合成 RTL(即,將其轉換為硬件)。隨后,我們就可以將 RTL IP 導出到 Vivado Design Suite,以便在其中將其連接到其它 IP 核或者連接到 PS。

1.1. 按如下所示編輯代碼,然后保存。

int example(char *a, char *b, char *c)

{

#pragma HLS INTERFACE s_axilite port=a bundle=BUS_A

#pragma HLS INTERFACE s_axilite port=b bundle=BUS_A

#pragma HLS INTERFACE s_axilite port=c bundle=BUS_A

#pragma HLS INTERFACE s_axilite port=return bundle=BUS_A

*c += *a + *b;

int result = 0;

result = *c;

return result;

}

1.2. 鑒于我們將在板上運行此代碼,因此需要將綜合設置更改為對應于可用的開發板的設置。

我這里選擇的是 Zynq UltraScale+ ZCU106 評估板。要更改所使用的開發板,請轉至“解決方案 (Solution) -》 解決方案設置 (Solution Settings) -》 綜合設置 (Synthesis Settings)”,然后選擇如下所示高亮的“。..”即可選擇可用的開發板。

1.3. 選擇屏幕頂部的綠色運行按鈕 即可運行 C 語言綜合。這樣即可將代碼轉換為 RTL:

1.4. 完成綜合后,您可選擇“導出 RTL (ExportRTL)”工具欄按鈕,或者也可以單擊“解決方案 (Solution) -》 導出 RTL (Export RTL)”以打開“Export RTL”對話框。

1.5. 打開的對話框應如下截屏所示。

本文包含有關所有可用選項的詳細解釋。

選擇“配置 (configuration)”選項,為新 RTL IP 添加詳細信息。將顯示名稱更改為“Example”,然后選擇“確定 (OK)”。當您在 Vivado Design Suite 中打開自己的 IP 時,將顯示此名稱。

選擇“瀏覽 (Browse)”按鈕以選擇 Vivado IP (.zip) 文件的輸出位置及其名稱。輸出的 ZIP 文件將包含您的 RTL IP,您可將其導入 Vivado Design Suite。

1.6. 等待工具完成導出,然后打開 Vivado Design Suite。選擇“創建新工程”選項:

1.7. 對于后續所有其它步驟,請選擇“下一步 (Next)”。選擇器件時,請務必選擇您在創建工程時所選的器件。如果您不確定,可在 Vitis HLS 中的“解決方案設置 (solution settings) -》 綜合設置 (synthesis settings)”下找到該器件。如果您選擇其它器件,那么將您的 IP 導入 Vivado Design Suite 時可能會出現問題。

最后,選擇“完成 (Finish)”以打開空工程。

1.8. 要使用 Vivado 工程中生成的 IP,首先必須將新 IP 存儲庫添加到 Vivado 工程中。此處所示文件夾包含從 Vitis HLS 導出的 .zip 文件。要添加存儲庫,請選擇“設置 (Settings) -》 IP -》 存儲庫 (Repository)”。選擇 + 按鈕并在 Vitis HLS 中選擇 IP 導出的位置(即,以上第 6 步)。

選擇位于對話框底部的“應用 (Apply)”按鈕,然后選擇“確定 (OK)”。

1.9. 選擇 IP 目錄 (Select IP Catalog)。現在,您的新存儲庫應已顯示在目錄中。

如已成功導入 IP,那么詳細信息窗口中所列出的 IP 數量應為“1”。

注:如果列出的 IP 數量為 0,那么您可右鍵單擊自己的新存儲庫并選擇“將 IP 添加到存儲庫中 (Add IP to Repository)”。選擇您從 Vitis HLS 導出的 ZIP 文件。隨后,存儲庫中的 IP 數量應已顯示為“1”。如果未顯示正確數量,請檢查您在 Vitis HLS 中所選的板/器件與您在 Vivado 中所使用的是否相同,否則,則表示您的 IP 可能不兼容。

1.10. 在 Flow Navigator 中,選擇“創建模塊設計 (Create Block Design)”。

在顯示的選項卡中,選擇 + 按鈕并搜索您在第 6 步中在 Vitis HLS 中指定的 IP 名稱(即,Example)。

祝賀您!您已成功創建了 IP、將其從 Vitis HLS 導出并已添加到 Vivado Design Suite 中的模塊設計中。

單擊 s_axi_BUS_A 旁的 + 按鈕即可展開端口。如需獲取更多相關信息,請參閱 (PG155 )中的 “端口描述”。

02

創建硬件

您可能會想要連接到 PS 以便充分利用其功能。添加 PS IP(如 ZCU106 評估板上提供的 Zynq UltraScale+ MPSoC IP)即可支持您執行此操作。

2.1. 將 Zynq UltraScale+ MPSoC IP 添加到模塊框圖中。添加完成后,將在屏幕頂部出現一條提示信息。選擇“運行自動連接功能 (Run Connection Automation)”。

2.2. 這樣即可得到如下圖示。或者,您可為此 IP 手動添加所有器件,并如該圖所示連接這些器件。這樣即可得到如下圖示:

efa3f348-a4b2-11eb-aece-12bb97331649.png

2.3. 右鍵單擊“源 (Source)”選項卡下的《design_name》.bd 以創建 HDL 封裝器 (wrapper)。運行綜合、運行實現,然后生成比特流。下一步,選擇“文件 (File) -》 導出 (Export) -》 導出硬件 (Export Hardware)”。請務必選中包含比特流的選項,并記下所選導出位置。這樣即可創建包含所有硬件信息的 XSA 文件?,F在,您可以關閉 Vivado。

03

編寫軟件

鑒于您的硬件已完成創建并導出,我們需要編寫軟件以向硬件提供操作指示。我們將在Vitis中編寫軟件。

3.1. 打開 Vitis。在打開的菜單中,選擇“創建平臺工程 (Create Platform Project)”。這將生成工程基本信息,我們將在其中添加硬件信息(XSA 文件)并編寫一些軟件定義。出現提示時,請選中“從 XSA 文件創建 (create from XSA file)”選項。隨后,我們需要選擇以上步驟 2.3 中的 XSA 文件導出位置。繼續完成其它設置,最后單擊“完成 (Finish)”。

3.2. 下一步,我們需要創建包含軟件的應用工程。它將基于我們的平臺工程,因此其中包含我們的硬件信息,并且我們需要使用該應用工程在目標板上運行應用。選擇“文件 (File) -》 新建 (New) -》 新建應用工程 (New Application Project)”。

3.3. 出現提示時,選中“選擇存儲庫中的平臺 (Select a platform from arepository)”選項。選擇步驟 3.1 中創建的平臺工程,然后單擊“下一步 (Next)”。

3.4. 選擇 Hello World 模板,然后單擊“完成 (Finish)”。

3.5. 現在,Hello World 代碼會顯示在《application_project_name》/src/helloworld.c下。為了執行完整性檢查,我們將通過 JTAG 把示例下載到板上,并使用 UART 終端查看 printf 信息。

為此,請連接目標板,并打開終端仿真器軟件(例如,Tera Term)以讀取輸出消息。如果您不知曉如何執行此操作,請參閱板相關的用戶指南。 編譯并運行程序。正確完成此操作后,您應可在 Tera Term 中看到 Hello World 打印信息。

3.6. 現在,確認板已正確連接后,下一步即可創建使用 HLS IP 的代碼。從Vitis_Code.c復制代碼(隨附于本教程)并將其粘貼到 helloworld.c 中,替換原有 helloworld 代碼。

保存,然后重新編譯并運行軟件。這次 Tera Term 會提示您提供 2 項輸入:A 和 B,這 2 項將作為輸入一并傳遞給 HLS IP 中,并顯示結果。

注:由于在 Vitis HLS 中,A 和 B 已定義為“char”類型,因此輸入的值上限為 127。

示例代碼使用由 Vitis 自動創建的函數,因此開發非常便捷。

在名為X《HLS_IP_name》.h的文件中以及在《platform_project》/hw/drivers/《ex_name》/src 下可找到所使用的函數。

原文標題:開發者分享 | AXI 基礎第 7 講 - 使用 AXI4-Lite 將 Vitis HLS 創建的 IP 連接到 PS

文章出處:【微信公眾號:FPGA開發圈】歡迎添加關注!文章轉載請注明出處。

責任編輯:haq

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

    關注

    183

    文章

    7644

    瀏覽量

    145570
  • AXI
    AXI
    +關注

    關注

    1

    文章

    145

    瀏覽量

    17936
  • HLS
    HLS
    +關注

    關注

    1

    文章

    135

    瀏覽量

    25830

原文標題:開發者分享 | AXI 基礎第 7 講 - 使用 AXI4-Lite 將 Vitis HLS 創建的 IP 連接到 PS

文章出處:【微信號:FPGA-EETrend,微信公眾號:FPGA開發圈】歡迎添加關注!文章轉載請注明出處。

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

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    VivadoIP核被鎖定的解決辦法

    當使用不同版本的Vivado打開工程時,IP核被鎖定的情況較為常見。不同版本的VivadoIP核的支持程度和處理方式有所不同。
    的頭像 發表于 02-25 14:00 ?170次閱讀
    <b class='flag-5'>Vivado</b>中<b class='flag-5'>IP</b>核被鎖定的解決辦法

    Include File解鎖Vector Logger Suite高階功能

    Include File(inc文件)是Vector Logger Suite(VLS)中使用LTL代碼片段的關鍵機制。通過Include File,用戶可以在LTL代碼中靈活定義參數、觸發
    的頭像 發表于 12-30 09:44 ?356次閱讀
    Include File解鎖Vector Logger <b class='flag-5'>Suite</b>高階功能

    電能質量在線監測裝置的多維度統計報表支持遠程訪問導出嗎?

    裝置 IP 地址訪問內置 Web 服務器,瀏覽并導出報表 操作步驟: 確認裝置 IP(通過面板菜單或管理軟件) 在電腦瀏覽器輸入 IP 地址并登錄 導航至 "報表 / 統計" 模塊,選
    的頭像 發表于 12-17 15:39 ?341次閱讀
    電能質量在線監測裝置的多維度統計報表支持遠程訪問<b class='flag-5'>導出</b>嗎?

    AMD Vivado Design Suite 2025.2版本現已發布

    AMD Vivado Design Suite 2025.2 版本現已發布,新增對 AMD Versal 自適應 SoC 的設計支持,包含新器件支持、QoR 功能及易用性增強。
    的頭像 發表于 12-09 15:11 ?941次閱讀

    vivado中,怎么將e203內核源代碼封裝成ip核,并添加總線?

    vivado中,怎么將e203內核源代碼封裝成ip核,并添加總線?
    發表于 11-10 07:22

    vcs和vivado聯合仿真

    我們在做參賽課題的過程中發現,上FPGA開發板跑系統時,有時需要添加vivadoip核。但是vivado仿真比較慢,vcs也不能直接對添加了vivado
    發表于 10-24 07:28

    Vivado浮點數IP核的一些設置注意點

    Vivado浮點數IP核的一些設置注意點 我們在vivado2018.3中使用了Floating-point(7.1)IP核,可以自定義其
    發表于 10-24 06:25

    在AMD Versal自適應SoC上使用QEMU+協同仿真示例

    Cortex A72 (QEMU) 上運行的固件進行仿真,該固件會訪問當前 AMD Vivado Design Suite 仿真中正在進行仿真的 PL 中的 IP。本文將使用 Ver
    的頭像 發表于 08-06 17:21 ?1991次閱讀
    在AMD Versal自適應SoC上使用QEMU+協同仿真示例

    Vivado無法選中開發板的常見原因及解決方法

    在使用 AMD Vivado Design Suite 對開發板(Evaluation Board)進行 FPGA 開發時,我們通常希望在創建工程時直接選擇開發板,這樣 Vivado
    的頭像 發表于 07-15 10:19 ?1702次閱讀
    <b class='flag-5'>Vivado</b>無法選中開發板的常見原因及解決方法

    AMD Vivado Design Suite 2025.1現已推出

    AMD Vivado Design Suite 2025.1 現已推出,支持 AMD Spartan UltraScale+ 和新一代 Versal 器件。這一最新版本還新增了多項功能,可顯著提升 Versal SSIT 器件的
    的頭像 發表于 06-16 15:16 ?1497次閱讀

    如何使用AMD Vitis HLS創建HLS IP

    本文逐步演示了如何使用 AMD Vitis HLS 來創建一個 HLS IP,通過 AXI4 接口從存儲器讀取數據、執行簡單的數學運算,然后將數據寫回存儲器。接著會在 AMD Vivado Design
    的頭像 發表于 06-13 09:50 ?1865次閱讀
    如何使用AMD Vitis HLS創建HLS <b class='flag-5'>IP</b>

    如何使用One Spin檢查AMD Vivado Design Suite Synth的結果

    本文講述了如何使用 One Spin 檢查 AMD Vivado Design Suite Synth 的結果(以 Vivado 2024.2 為例)。
    的頭像 發表于 05-19 14:22 ?1292次閱讀
    如何使用One Spin檢查AMD <b class='flag-5'>Vivado</b> <b class='flag-5'>Design</b> <b class='flag-5'>Suite</b> Synth的結果

    Kepware Siemens Suite

    Siemens Suite for KEPServerEX 是 Siemens 設備驅動的集合,為了方便而將它們捆綁在一起。它提供一種簡單且可靠的方法將基于 Siemens Ethernet
    的頭像 發表于 04-25 11:13 ?748次閱讀
    Kepware Siemens <b class='flag-5'>Suite</b>

    如何將S32K312 MBDT生成的代碼導出到S32 Design Studio?

    Tool”并單擊“Build, Deploy Start”后,我的評估板開始正常工作,沒有問題。 然后,我導出了 S32 Design Studio 的示例 DIO 項目。我通過單擊“File
    發表于 03-20 07:02

    VirtualLab Fusion應用:參數掃描結果的導出

    摘要 為了詳細分析光學系統的功能和能力,需要能夠改變光學系統的參數。為此,VirtualLab Fusion的參數運行提供了多種選項和可以應用不同的變化策略。不同迭代的結果以方便緊湊的方式提供在參數
    發表于 03-06 08:57