那曲檬骨新材料有限公司

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

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

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

在X86處理器上跑嵌入式應(yīng)用程序的Software Emulation

XILINX開發(fā)者社區(qū) ? 來源:XILINX開發(fā)者社區(qū) ? 2023-08-09 10:32 ? 次閱讀

本文作者:AMD 工程師Garce Sun

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

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

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

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

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

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

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

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

關(guān)于 XRT 的安裝指導,請參考 UG1393 的相關(guān)章節(jié)內(nèi)容

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

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

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

下表描述了在 QEMU 下和在 x86 上運行軟件仿真時,構(gòu)建 PS 應(yīng)用程序和.xclbin 的差異。

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

對于包含 AIE 的設(shè)計,基于上表的選項有所調(diào)整,請參考以下表格:

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

對于嵌入式應(yīng)用程序運行 x86 編譯也有局限性,主要表現(xiàn)為主機代碼不支持 ARM-only 的數(shù)據(jù)類型或庫。

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

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

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

審核編輯:湯梓紅

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

    關(guān)注

    68

    文章

    19407

    瀏覽量

    231183
  • 嵌入式
    +關(guān)注

    關(guān)注

    5092

    文章

    19177

    瀏覽量

    307665
  • Xilinx
    +關(guān)注

    關(guān)注

    71

    文章

    2171

    瀏覽量

    122134
  • 應(yīng)用程序
    +關(guān)注

    關(guān)注

    38

    文章

    3292

    瀏覽量

    57912
  • Vitis
    +關(guān)注

    關(guān)注

    0

    文章

    147

    瀏覽量

    7497

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

文章出處:【微信號:gh_2d1c7e2d540e,微信公眾號:XILINX開發(fā)者社區(qū)】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

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

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

    AMD x86核心SoC搶攻嵌入式應(yīng)用市場

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

    arm還是x86?未來工業(yè)SBC數(shù)字誰可以脫穎而出

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

    適用于x86架構(gòu)的快速啟動步驟是什么?

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

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

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

    基于嵌入式X86的數(shù)控系統(tǒng)的設(shè)計與實現(xiàn)

    為了降低開發(fā)成本,縮短開發(fā)周期,提高系統(tǒng)性能和穩(wěn)定性,本文采用嵌入式X86 CPU和嵌入式ARM處理器上下位機的硬件結(jié)構(gòu)形式。按照Linux操作系統(tǒng)下設(shè)備驅(qū)動
    發(fā)表于 06-23 13:35 ?24次下載

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

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

    獲Zen架構(gòu)授權(quán),國產(chǎn)X86處理器即將問世

    國內(nèi)的處理器廠商MIPS、ARM及Alpha等架構(gòu)搞的還可以,但在桌面市場上,因為Wintel聯(lián)盟的門檻限制,沒有X86處理器是玩不轉(zhuǎn)的
    發(fā)表于 06-12 14:27 ?1714次閱讀

    嵌入式應(yīng)用程序:遷移到Intel x86架構(gòu)

    嵌入式應(yīng)用 - 遷移到Intel的x86架構(gòu)
    的頭像 發(fā)表于 11-07 06:49 ?3841次閱讀

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

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

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

    什么是x86嵌入式工控主板?x86嵌入式主板就是嵌入式工控機內(nèi)常用到的主板,它跟嵌入式工控機一樣
    發(fā)表于 12-09 12:50 ?3356次閱讀

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

    x86處理器如何處理MSI-X中斷請求PCIe設(shè)備發(fā)出MSI-X中斷請求的方法與發(fā)出MSI中斷請求的方法類似,都是向Message Addr
    發(fā)表于 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%

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

    常見嵌入式處理器對比

    X86和ARM、MIPS相比,X86架構(gòu)的嵌入式處理器應(yīng)用范圍要狹窄一些。它主要應(yīng)用于桌面端和低端服務(wù)
    發(fā)表于 02-24 11:25 ?1263次閱讀

    INT8量子化PyTorch x86處理器

    INT8量子化PyTorch x86處理器
    的頭像 發(fā)表于 08-31 14:27 ?944次閱讀
    INT8量子化PyTorch <b class='flag-5'>x86</b><b class='flag-5'>處理器</b>
    百家乐真人赌场娱乐网规则| 百家乐官网最新心得| 巨星百家乐官网的玩法技巧和规则| 全讯网新2| 百家乐官网赌博在线娱乐| 疯狂百家乐游戏| 百家乐官网的路子怎么| 大发888下载 客户端| 百家乐官网网络娱乐场开户注册| 德州扑克哪个平台好| 百家乐最新心得| 安义县| 赌场百家乐网站| 大发888官方下载网站| 广州百家乐官网娱乐场开户注册| 德州扑克打法| 真人百家乐开户须知| 百家乐官网中P代表| 顶尖百家乐的玩法技巧和规则| 百家乐官网透视牌靴价格| 青岛棋牌英雄| 百家乐官网德州| 通河县| 百合百家乐的玩法技巧和规则| 南宁百家乐官网赌| 博彩开户| 百家乐送18元彩金| 功夫百家乐官网的玩法技巧和规则| 维也纳国际娱乐城| 黄金百家乐的玩法技巧和规则| 百家乐官网完美一对| 太阳城亚洲开户| 百家乐是娱乐场| 缅甸百家乐网站| 百家乐官网在发牌技巧| 大发888娱乐城qq服务| 百家乐官网澳门技巧| 欧洲娱乐场| 威尼斯人娱乐城 色情| 百家乐看不到视频| 高档百家乐官网桌|