精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

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

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

3天內不再提示

在X86處理器上跑嵌入式應用程序的Software Emulation

XILINX開發者社區 ? 來源:XILINX開發者社區 ? 2023-08-09 10:32 ? 次閱讀

本文作者:AMD 工程師Garce Sun

在 Vitis 流程中,編譯的目標分為軟件仿真(software emultion),硬件仿真(hardware emulation)以及硬件(hardware)。

軟件仿真是通過用戶創建的自定義主機代碼測試系統的第一步,主要目標是確保主機程序和內核的功能正確性。其中,內核代碼始終在本機編譯和運行。應用程序代碼根據平臺的不同,編譯方式為:

? 在 x86 處理器上本地編譯和運行(數據中心平臺)

? 交叉編譯到 Arm 處理器并在仿真器中運行(嵌入式平臺)

軟件仿真通常用于改進算法、調試功能問題,并讓開發人員快速迭代代碼以進行改進。軟件仿真是一個抽象模型,不使用任何 petalinux 驅動程序,如 Zynq OpenCL (ZOCL)、中斷控制器或設備樹二進制文件 (DTB)。 對于嵌入式平臺來說,軟件仿真創建 sd_card.img、在完整 QEMU 機器上啟動 petalinux 的開銷太重。

為了避免這部分開銷,提高軟件仿真運行效率,我們可以使用 x86 GCC(而不是 ARM-GCC)編譯相同的嵌入式應用程序,從而實現在 x86 處理器上跑嵌入式應用程序的軟件仿真。對于這種方法,用戶不需要提供諸如 sysroot、rootfs 和 sd_card Image 等字段,從而能啟用更快的軟件仿真。

總的來說,與 QEMU 做軟件仿真相比,編譯過程中涉及到以下改動:

用戶需要在 host 安裝 XRT,不需要 Petalinux/SYSROOT。

關于 XRT 的安裝指導,請參考 UG1393 的相關章節內容

用 x86 的 GCC 編譯器而不是 ARM GCC 來編譯 host 代碼。

在 2023.1 Vitis 版本中,x86 編譯需要 GCC 8.3 或更高版本。

v++ -package 以及啟動仿真的流程不盡相同。

下表描述了在 QEMU 下和在 x86 上運行軟件仿真時,構建 PS 應用程序和.xclbin 的差異。

575013ee-35db-11ee-9e74-dac502259ad0.png

對于包含 AIE 的設計,基于上表的選項有所調整,請參考以下表格:

578cd6bc-35db-11ee-9e74-dac502259ad0.png57ae6aca-35db-11ee-9e74-dac502259ad0.png

以上對比適用于 Vitis 2023.1,不同版本的命令行選項可能會有改動。

比如,2022.1 里的 v++ package 選項--package.ps_on_x86 在新版本替換成了—package.emu_ps x86/qemu。

5812a2ba-35db-11ee-9e74-dac502259ad0.png

對于嵌入式應用程序運行 x86 編譯也有局限性,主要表現為主機代碼不支持 ARM-only 的數據類型或庫。

以下是使用 _fp16數據類型的主機代碼示例,該數據類型僅在基于 ARM-GCC 的編譯器中受支持,x86 編譯器在編譯相同的主機代碼時會出錯。

在這種情況下,建議使用 PS 的 QEMU 模型,并使用基于 ARM-GCC 的編譯器來編譯 PS 應用程序。

5825c6ce-35db-11ee-9e74-dac502259ad0.png

另外,目前并不支持從 Vitis GUI 啟動 PS on x86 的仿真模式,需要從命令行完成。

GitHub 上有使用此功能運行軟件仿真的示例供參考:

https://github.com/Xilinx/Vitis_Accel_Examples/tree/2023.1/emulation/aie_adder_hybrid_swemu

審核編輯:湯梓紅

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

    關注

    68

    文章

    18907

    瀏覽量

    227160
  • 嵌入式
    +關注

    關注

    5044

    文章

    18805

    瀏覽量

    298374
  • Xilinx
    +關注

    關注

    70

    文章

    2136

    瀏覽量

    120362
  • 應用程序
    +關注

    關注

    37

    文章

    3195

    瀏覽量

    57351
  • Vitis
    +關注

    關注

    0

    文章

    145

    瀏覽量

    7310

原文標題:在 X86 處理器上跑嵌入式應用程序的 Software Emulation

文章出處:【微信號:gh_2d1c7e2d540e,微信公眾號:XILINX開發者社區】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    國產X86處理器與國際CPU有多大差距?有人做了個測試

    國產處理器何時能夠達到世界領先水平?這個問題幾乎是每一個關心國產半導體的人都在期待的,尤其是國產的X86處理器
    的頭像 發表于 02-04 11:35 ?7752次閱讀

    AMD x86核心SoC搶攻嵌入式應用市場

    x86處理器市場中,以AMD與Intel兩家業者為首,AMD則以加速處理單元搭配自家的Radeon顯示核心進行整合,連嵌入式應用產品需求也
    發表于 01-29 14:33 ?1911次閱讀

    arm還是x86?未來工業SBC數字誰可以脫穎而出

    `在過去的30年里,工業PC市場一直由x86處理器占據主導地位,考慮到其在臺式PC中的應用,這應該不足為奇。從無風扇堅固的箱式計算機到PC / 104和Mini-ITX等工業板標準,x86架構提供了
    發表于 04-23 15:06

    適用于x86架構的快速啟動步驟是什么?

    x86架構通常會喚起人們對家用電腦或企業服務的思索。這并不出人意料,因為x86處理器的功耗通常較大。最近,英特爾公司開始以嵌入式、低功耗和
    發表于 03-20 06:38

    μCOS-III怎么Cortex-M3處理器移植?

    處理器體系上。本文主要完成基于Cortex-M3處理器的μC/OS-III移植,通過本次移植,加深對嵌入式操作系統原理的理解。此外,μC/OS-III移植成功的基礎上進行
    發表于 03-31 08:19

    基于嵌入式X86的數控系統的設計與實現

    為了降低開發成本,縮短開發周期,提高系統性能和穩定性,本文采用嵌入式X86 CPU和嵌入式ARM處理器上下位機的硬件結構形式。按照Linux操作系統下設備驅動
    發表于 06-23 13:35 ?24次下載

    英特爾:Core Duo進軍x86嵌入式平臺市場

        英特爾于15日宣布Core Duo處理器(Yonah雙核心處理器)將進軍x86嵌入式平臺市場,工業計算機(
    發表于 03-13 13:00 ?514次閱讀

    獲Zen架構授權,國產X86處理器即將問世

    國內的處理器廠商MIPS、ARM及Alpha等架構搞的還可以,但在桌面市場上,因為Wintel聯盟的門檻限制,沒有X86處理器是玩不轉的
    發表于 06-12 14:27 ?1567次閱讀

    嵌入式應用程序:遷移到Intel x86架構

    嵌入式應用 - 遷移到Intel的x86架構
    的頭像 發表于 11-07 06:49 ?3684次閱讀

    全球首款集成AI協處理器x86處理器實照公布 采用LGA觸點封裝方式

    2019年11月,通用x86處理器領域沉寂多年的威盛(VIA)高調歸來,旗下已有24年歷史的處理器研發部門CenTaur開發出了世界上第一個集成AI協
    的頭像 發表于 02-19 15:15 ?2660次閱讀

    什么是x86嵌入式工控主板,x86嵌入式主板該如何選擇

    什么是x86嵌入式工控主板?x86嵌入式主板就是嵌入式工控機內常用到的主板,它跟嵌入式工控機一樣
    發表于 12-09 12:50 ?3103次閱讀

    x86處理器如何處理MSI-X中斷請求

    x86處理器如何處理MSI-X中斷請求PCIe設備發出MSI-X中斷請求的方法與發出MSI中斷請求的方法類似,都是向Message Addr
    發表于 12-17 18:28 ?9次下載
    <b class='flag-5'>x86</b><b class='flag-5'>處理器</b>如何<b class='flag-5'>處理</b>MSI-<b class='flag-5'>X</b>中斷請求

    英特爾x86處理器市占率為68.7%,AMD則上升至31.3%

    雖然英特爾依然穩居x86處理器市場龍頭寶座,近年來卻被AMD搶走部分市占率。Mercury Research數據顯示,去年Q4,英特爾x86處理器
    發表于 02-14 10:28 ?1132次閱讀

    常見嵌入式處理器對比

    X86和ARM、MIPS相比,X86架構的嵌入式處理器應用范圍要狹窄一些。它主要應用于桌面端和低端服務
    發表于 02-24 11:25 ?1060次閱讀

    INT8量子化PyTorch x86處理器

    INT8量子化PyTorch x86處理器
    的頭像 發表于 08-31 14:27 ?742次閱讀
    INT8量子化PyTorch <b class='flag-5'>x86</b><b class='flag-5'>處理器</b>