01 前言
在算力需求爆炸式增長的時代,異構計算已成為突破性能瓶頸的首選路徑。然而,多架構編程困境、傳統(tǒng)硬件開發(fā)高門檻(如FPGA)、硬件優(yōu)化與算法快速迭代,這些無不制約著創(chuàng)新的效率。
而此時作為開放的、跨架構的統(tǒng)一編程模型英特爾 oneAPI,正是破局之鑰。對于FPGA的開發(fā)來說,oneAPI讓開發(fā)者能用高級語言(如C++))轉(zhuǎn)換為用于硬件加速的RTL IP代碼。通過oneAPI實現(xiàn)了FPGA開發(fā)周期大幅度縮短,編譯器自動優(yōu)化數(shù)據(jù)流與流水線,以及同一代碼庫跨CPU/GPU/FPGA無縫部署。
02 基于DE1-SOC的oneAPI實驗
本教程介紹如何使用Intel oneAPI工具包將高級語言代碼(特別是C++風格的代碼)轉(zhuǎn)換為用于硬件加速的RTL(Register-Transfer Level,寄存器傳輸級) IP代碼。關于Intel oneAPI的詳細介紹可以瀏覽Intel oneAPI官網(wǎng)。
教程中的示例基于Nios II處理器嵌入式系統(tǒng)構建并在DE1-SoC開發(fā)板上運行,演示如何使用oneAPI工具包將用C++編寫的高級直接內(nèi)存訪問(Direct Memory Access,DMA)代碼轉(zhuǎn)換為 RTL IP 代碼,然后將生成的 IP 集成到Nios II嵌入式系統(tǒng)中。開發(fā)者按照這種方法可以為任何計算密集型任務生成 RTL IP 代碼,從而顯著提升硬件加速性能。
以下是運行示例所需的軟硬件要求:
DE1-SoC開發(fā)板
Win 10/11 PC
Visual Studio Community 2022
Intel oneAPI Base Toolkit
FPGA Support Package for oneAPI
Altera Quartus Prime Standard v23.1
一、 安裝Visual Studio Community 2022
本節(jié)介紹下載并安裝Visual Studio Community 2022。
1. 下載Visual Studio Community。
2. 下載完成后運行VisualStudioSetup.exe,點擊Continue。
3. 在Installing界面選擇Desktop&Mobile里的Desktop development with C++,保持其它默認設置不變,然后點擊Install開始安裝。
4. 安裝界面里取消勾選Start after installation,等待安裝完成。
5. 安裝完成后關閉Visual Studio Installer。
二、安裝Intel oneAPI Base Toolkit
本節(jié)介紹下載安裝Intel oneAPI Base Toolkit。Intel oneAPI Base Toolkit是一套核心工具和庫,用于跨多種架構創(chuàng)建和部署高性能、以數(shù)據(jù)為中心的應用程序,它提供了用于高效創(chuàng)建高性能跨架構應用程序的基礎工具。
1. 按下圖所示選擇下載Intel oneAPI Base Toolkit。
2. 運行intel-oneapi-base-toolkit-2025.0.1.47_offline.exe,點擊下圖中的Extract。
3. 點擊Continue繼續(xù)。
4. 勾選I accept the terms of the license agreement,然后點擊Continue。
5. 接下來一直保持默認設置安裝。
6. 等待安裝完成后,點擊Finish。
三、安裝FPGA Support Package for oneAPI
通過擴展Intel oneAPI DPC++/C++ 編譯器,F(xiàn)PGA Support Package使開發(fā)者能夠遵循簡化的FPGA工作流程,它支持創(chuàng)建和優(yōu)化 FPGA 工作負載,并通過仿真進行功能驗證。此外還提供詳細的報告和圖形分析功能,幫助檢查生成的SystemVerilog 輸出。
1. 下載FPGA Support Package。
2. 運行intel-fpga-support-for-compiler-2025.0.0.585_offline.exe,點擊Extract。
3. 點擊Continue繼續(xù)。
4.勾選I accept the terms of the license agreement,點擊Continue。
5. 勾選I Consent to the collection of my information,點擊Install。
6. 等待安裝完成后,點擊Finish。
四、安裝Quartus Prime Standard v23.1.1
1. 下載Quartus Prime Standard v23.1.1以及Cyclone V FPGA器件包。
2. 運行QuartusSetup-23.1std.1.993-windows.exe開始安裝,持續(xù)點擊Next保持Quartus默認方式安裝。在選擇安裝路徑界面也可以更改安裝路徑,并確保Cyclone V FPGA器件包也一起安裝。
3. 安裝完成后,修改PC的環(huán)境變量,新增變量名QUARTUS_ROOTDIR_OVERRIDE,變量值指向Quartus安裝路徑,比如E:intelFPGA23.1stdquartus。
五、驗證軟件環(huán)境
本節(jié)介紹如何驗證軟件是否成功安裝,以及檢查PC環(huán)境變量設置是否正確。
1. 在PC的開始菜單欄選擇Intel oneAPI 2025-->Intel oneAPI command prompt for Intel 64 for Visual Studio 2022,打開Intel oneAPI命令行窗口。
2. 執(zhí)行cl和cmake -version命令,驗證Visual Studio是否完全安裝。
3. 執(zhí)行icx-cl --version命令驗證Intel oneAPI Base Toolkit已安裝。
4. 執(zhí)行aoc -version命令驗證FPGA Support Package for oneAPI已安裝。
5. 執(zhí)行%QUARTUS_ROOTDIR_OVERRIDE%/bin64/quartus_sh --version命令驗證Quartus已安裝。
六、編譯執(zhí)行oneAPI示例--Simple DMA
oneAPI CLI Samples Browser可用于瀏覽在線oneAPI系列示例。在瀏覽oneAPI 示例時,可以將它們復制保存到PC本地文件夾。在PC主機的CPU上運行的FPGA Emulator可以生成設備端(FPGA)內(nèi)核所用的線程。FPGA Emulator并非FPGA的完美復制品,運行速度也慢得多。Emulator允許我們在不啟動完整器件編譯的情況下檢查代碼的正確性。
1. 打開Intel oneAPI命令窗口,執(zhí)行chcp 65001命令將語言編碼更改為UTF-8。
2. 執(zhí)行oneapi-cli.exe命令打開oneAPI CLI Samples Browser。
3. 按鍵盤上的<和>鍵移動光標,選擇(1) Create a project再按Enter鍵進入Select sample language界面。
4. 選擇(1) cpp再按Enter鍵。
5. 移動光標依次選擇Toolkit > oneAPI Direct Programming > C++ SYCL FPGA > Reference Designs> Nios V,再按Enter鍵。
6. 在此界面可更改保存工程的路徑,舉例D:InteloneAPI iosv,再按Enter鍵可將工程保存在該路徑下。
7. 按Quit鍵退出回到Intel oneAPI命令行窗口,使用cd命令切換到niosv/ReferenceDesigns/niosv/kernels/simple_dma工程路徑。
8. 執(zhí)行以下命令創(chuàng)建并切換到build文件夾,配置build系統(tǒng)并指定FPGA為Cyclone V。
mkdir build && cd build
cmake .. -G "NMake Makefiles" -DFPGA_DEVICE=CycloneV
9. 執(zhí)行nmake fpga_emu命令編譯Simple DMA,使用FPGA emulator驗證Simple DMA內(nèi)核。
10. 執(zhí)行simple_dma.fpga_emu.exe驗證Simple DMA內(nèi)核,結(jié)果顯示為PASSED。
-
FPGA
+關注
關注
1644文章
21998瀏覽量
615631 -
英特爾
+關注
關注
61文章
10184瀏覽量
174200 -
cpu
+關注
關注
68文章
11057瀏覽量
216335 -
soc
+關注
關注
38文章
4360瀏覽量
222030
原文標題:基于DE1-SoC的My_First_oneAPI(一)
文章出處:【微信號:友晶FPGA,微信公眾號:友晶FPGA】歡迎添加關注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
基于DE1-SOC開發(fā)板的oneAPI實驗教程(2)

求購de1-soc開發(fā)版。有的請聯(lián)系我。急求呢。QQ:528369266
DE1-SOC新貨轉(zhuǎn)讓
DE1-SoC官方自帶ControlPanel代碼解讀與AV圖像采集處理?
大神幫忙看看,為什么我的開發(fā)板無法用電腦進行配置
小弟求購Altera DE1-SOC開發(fā)板,哪位大神玩剩下了傳承一下,多謝!
de1-soc FPGA(Quartus工程含Qsys系統(tǒng)) + HPS 操作步驟
Altera DE2 開發(fā)板測試說明
如何在DE1-SOC開發(fā)板上搭建NIOS II處理器運行UCOS
DE1-SoC開發(fā)工具包的詳細用戶和使用手冊資料免費下載

ALTERA公司的DE1 SoC FPGA開發(fā)板的培訓教程免費下載

評論