0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

基于DE1-SOC开发板的oneAPI实验教程(1)

友晶FPGA 来源:友晶FPGA 2025-06-23 11:14 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

01 前言

在算力需求爆炸式增长的时代,异构计算已成为突破性能瓶颈的首选路径。然而,多架构编程困境、传统硬件开发高门槛(如FPGA)、硬件优化与算法快速迭代,这些无不制约着创新的效率。

而此时作为开放的、跨架构的统一编程模型英特尔 oneAPI,正是破局之钥。对于FPGA的开发来说,oneAPI让开发者能用高级语言(如C++))转换为用于硬件加速的RTL IP代码。通过oneAPI实现了FPGA开发周期大幅度缩短,编译器自动优化数据流与流水线,以及同一代码库跨CPU/GPU/FPGA无缝部署。

f670114a-4a88-11f0-b715-92fbcf53809c.png

02 基于DE1-SOC的oneAPI实验

本教程介绍如何使用Intel oneAPI工具包将高级语言代码(特别是C++风格的代码)转换为用于硬件加速的RTL(Register-Transfer Level,寄存器传输级) IP代码。关于Intel oneAPI的详细介绍可以浏览Intel oneAPI官网。

教程中的示例基于Nios II处理器嵌入式系统构建并在DE1-SoC开发板上运行,演示如何使用oneAPI工具包将用C++编写的高级直接内存访问(Direct Memory Access,DMA)代码转换为 RTL IP 代码,然后将生成的 IP 集成到Nios II嵌入式系统中。开发者按照这种方法可以为任何计算密集型任务生成 RTL IP 代码,从而显著提升硬件加速性能。

以下是运行示例所需的软硬件要求:

DE1-SoC开发板

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

本节介绍下载并安装Visual Studio Community 2022。

1. 下载Visual Studio Community。

f696c664-4a88-11f0-b715-92fbcf53809c.png

2. 下载完成后运行VisualStudioSetup.exe,点击Continue。

f6a9fd88-4a88-11f0-b715-92fbcf53809c.png

3. 在Installing界面选择Desktop&Mobile里的Desktop development with C++,保持其它默认设置不变,然后点击Install开始安装。

f6bbadee-4a88-11f0-b715-92fbcf53809c.png

4. 安装界面里取消勾选Start after installation,等待安装完成。

f6d4a786-4a88-11f0-b715-92fbcf53809c.png

5. 安装完成后关闭Visual Studio Installer。

f6e688b6-4a88-11f0-b715-92fbcf53809c.png

二、安装Intel oneAPI Base Toolkit

本节介绍下载安装Intel oneAPI Base Toolkit。Intel oneAPI Base Toolkit是一套核心工具和库,用于跨多种架构创建和部署高性能、以数据为中心的应用程序,它提供了用于高效创建高性能跨架构应用程序的基础工具。

1. 按下图所示选择下载Intel oneAPI Base Toolkit。

f6f9f5f4-4a88-11f0-b715-92fbcf53809c.png

2. 运行intel-oneapi-base-toolkit-2025.0.1.47_offline.exe,点击下图中的Extract。

f7129636-4a88-11f0-b715-92fbcf53809c.png

3. 点击Continue继续。

f72157b6-4a88-11f0-b715-92fbcf53809c.png

4. 勾选I accept the terms of the license agreement,然后点击Continue。

f7364158-4a88-11f0-b715-92fbcf53809c.png

5. 接下来一直保持默认设置安装。

f744482a-4a88-11f0-b715-92fbcf53809c.png

f75828a4-4a88-11f0-b715-92fbcf53809c.png

f76ee8dc-4a88-11f0-b715-92fbcf53809c.png

6. 等待安装完成后,点击Finish。

f7a14390-4a88-11f0-b715-92fbcf53809c.png

f7b2a7ca-4a88-11f0-b715-92fbcf53809c.png

三、安装FPGA Support Package for oneAPI

通过扩展Intel oneAPI DPC++/C++ 编译器,FPGA Support Package使开发者能够遵循简化的FPGA工作流程,它支持创建和优化 FPGA 工作负载,并通过仿真进行功能验证。此外还提供详细的报告和图形分析功能,帮助检查生成的SystemVerilog 输出。

1. 下载FPGA Support Package。

f7c905f6-4a88-11f0-b715-92fbcf53809c.png

2. 运行intel-fpga-support-for-compiler-2025.0.0.585_offline.exe,点击Extract。

f7e38bba-4a88-11f0-b715-92fbcf53809c.png

3. 点击Continue继续。

f7f3df88-4a88-11f0-b715-92fbcf53809c.png

4.勾选I accept the terms of the license agreement,点击Continue。

f805d9a4-4a88-11f0-b715-92fbcf53809c.png

5. 勾选I Consent to the collection of my information,点击Install。

f8191c6c-4a88-11f0-b715-92fbcf53809c.png

6. 等待安装完成后,点击Finish。

f82b2614-4a88-11f0-b715-92fbcf53809c.png

f83af116-4a88-11f0-b715-92fbcf53809c.png

四、安装Quartus Prime Standard v23.1.1

1. 下载Quartus Prime Standard v23.1.1以及Cyclone V FPGA器件包。

f84fc32a-4a88-11f0-b715-92fbcf53809c.png

2. 运行QuartusSetup-23.1std.1.993-windows.exe开始安装,持续点击Next保持Quartus默认方式安装。在选择安装路径界面也可以更改安装路径,并确保Cyclone V FPGA器件包也一起安装。

f863ace6-4a88-11f0-b715-92fbcf53809c.png

f87486e2-4a88-11f0-b715-92fbcf53809c.png

3. 安装完成后,修改PC的环境变量,新增变量名QUARTUS_ROOTDIR_OVERRIDE,变量值指向Quartus安装路径,比如E:intelFPGA23.1stdquartus。

f88411fc-4a88-11f0-b715-92fbcf53809c.png

五、验证软件环境

本节介绍如何验证软件是否成功安装,以及检查PC环境变量设置是否正确。

1. 在PC的开始菜单栏选择Intel oneAPI 2025-->Intel oneAPI command prompt for Intel 64 for Visual Studio 2022,打开Intel oneAPI命令行窗口。

f898037e-4a88-11f0-b715-92fbcf53809c.png

f8af7fe0-4a88-11f0-b715-92fbcf53809c.png

2. 执行clcmake -version命令,验证Visual Studio是否完全安装。

f8c3c86a-4a88-11f0-b715-92fbcf53809c.png

3. 执行icx-cl --version命令验证Intel oneAPI Base Toolkit已安装。

f8d48bd2-4a88-11f0-b715-92fbcf53809c.png

4. 执行aoc -version命令验证FPGA Support Package for oneAPI已安装。

f8e88498-4a88-11f0-b715-92fbcf53809c.png

5. 执行%QUARTUS_ROOTDIR_OVERRIDE%/bin64/quartus_sh --version命令验证Quartus已安装。

f8f6b05e-4a88-11f0-b715-92fbcf53809c.png

六、编译执行oneAPI示例--Simple DMA

oneAPI CLI Samples Browser可用于浏览在线oneAPI系列示例。在浏览oneAPI 示例时,可以将它们复制保存到PC本地文件夹。在PC主机的CPU上运行的FPGA Emulator可以生成设备端(FPGA)内核所用的线程。FPGA Emulator并非FPGA的完美复制品,运行速度也慢得多。Emulator允许我们在不启动完整器件编译的情况下检查代码的正确性。

1. 打开Intel oneAPI命令窗口,执行chcp 65001命令将语言编码更改为UTF-8。

f9061a80-4a88-11f0-b715-92fbcf53809c.png

2. 执行oneapi-cli.exe命令打开oneAPI CLI Samples Browser。

f9197e2c-4a88-11f0-b715-92fbcf53809c.png

3. 按键盘上的<>键移动光标,选择(1) Create a project再按Enter键进入Select sample language界面。

f92c1f64-4a88-11f0-b715-92fbcf53809c.png

4. 选择(1) cpp再按Enter键。

f9421008-4a88-11f0-b715-92fbcf53809c.png

5. 移动光标依次选择Toolkit > oneAPI Direct Programming > C++ SYCL FPGA > Reference Designs> Nios V,再按Enter键。

f9533e78-4a88-11f0-b715-92fbcf53809c.png

6. 在此界面可更改保存工程的路径,举例D:InteloneAPI iosv,再按Enter键可将工程保存在该路径下。

f9613a78-4a88-11f0-b715-92fbcf53809c.png

f97531a4-4a88-11f0-b715-92fbcf53809c.png

f98497ac-4a88-11f0-b715-92fbcf53809c.png

7. 按Quit键退出回到Intel oneAPI命令行窗口,使用cd命令切换到niosv/ReferenceDesigns/niosv/kernels/simple_dma工程路径。

f99737f4-4a88-11f0-b715-92fbcf53809c.png

8. 执行以下命令创建并切换到build文件夹,配置build系统并指定FPGA为Cyclone V。

mkdir build && cd build

cmake .. -G "NMake Makefiles" -DFPGA_DEVICE=CycloneV

f9a2614c-4a88-11f0-b715-92fbcf53809c.png

9. 执行nmake fpga_emu命令编译Simple DMA,使用FPGA emulator验证Simple DMA内核。

f9b9be5a-4a88-11f0-b715-92fbcf53809c.png

10. 执行simple_dma.fpga_emu.exe验证Simple DMA内核,结果显示为PASSED。

f9d40166-4a88-11f0-b715-92fbcf53809c.png

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • FPGA
    +关注

    关注

    1664

    文章

    22502

    浏览量

    639113
  • 英特尔
    +关注

    关注

    61

    文章

    10320

    浏览量

    181068
  • cpu
    cpu
    +关注

    关注

    68

    文章

    11326

    浏览量

    225873
  • soc
    soc
    +关注

    关注

    40

    文章

    4622

    浏览量

    230160

原文标题:基于DE1-SoC的My_First_oneAPI(一)

文章出处:【微信号:友晶FPGA,微信公众号:友晶FPGA】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    基于DE1-SOC开发板oneAPI实验教程(2)

    上一期我们从oneAPI CLI Samples Browser复制保存的Simple DMA是基于Quartus Pro的Nios V示例,无法直接用在DE1-SoC开发板上,因此这一节我们用
    的头像 发表于 06-23 11:17 1793次阅读
    基于<b class='flag-5'>DE1-SOC</b><b class='flag-5'>开发板</b>的<b class='flag-5'>oneAPI</b><b class='flag-5'>实验</b>教程(2)

    基于FPGA开发板DE10-Standard和T-Core的串口通信设计

    本文适用于DE10-Standard、T-Core、DE1-SOC以及DE10-Nano等有GPIO引脚外扩的FPGA开发板
    的头像 发表于 10-28 11:15 4893次阅读
    基于FPGA<b class='flag-5'>开发板</b><b class='flag-5'>DE</b>10-Standard和T-Core的串口通信设计

    基于DE1-SOC开发板的太空射击游戏

    今天继续常春藤名校之一——康奈尔大学的FPGA课程ECE 5760典型案例分享:基于DE1-SOC开发板的太空射击游戏。
    的头像 发表于 08-04 10:47 3907次阅读
    基于<b class='flag-5'>DE1-SOC</b><b class='flag-5'>开发板</b>的太空射击游戏

    求购de1-soc开发版。有的请联系我。急求呢。QQ:528369266

    求购de1-soc开发版。有的请联系我。急求呢。QQ:528369266
    发表于 12-15 16:00

    DE1-SOC新货转让

    本人研究生,在暑假期间参加了一个比赛,获得了一块DE1-SOC作为比赛奖品,于2015年12月26日拿到奖品,淘宝官网上卖价1575,现在想低价转售,暂定价格1200,可议价,开发套件还未拆封,保证
    发表于 12-27 10:43

    DE1-SoC官方自带ControlPanel代码解读与AV图像采集处理?

    DE1-SoC一段时间了,官方给的controlPanel那个示例给出了工具链的安装方式,而且给了用这块开发QT界面的一套流程,目前想在该代码上修改,想结合AV端采集图像,通过Opencv进行图像处理,可如何与Opencv进
    发表于 05-06 22:18

    DE1-Soc用户手册

    DE1-Soc用户手册
    发表于 08-05 16:08

    小弟求购Altera DE1-SOC开发板,哪位大神玩剩下了传承一下,多谢!

    小弟想自学FPGA,预购Altera DE1-SOC。哪位大神玩过了,技术了熟于胸。也别冷落了板子,赠人玫瑰手有余香,请联系小弟,让技术继续发挥余热,价格可谈。 联系方式:***注:10.22不能入手就在淘宝买了,之后就不用耽误大神时间了。非常感谢!
    发表于 11-18 15:00

    de1-soc FPGA(Quartus工程含Qsys系统) + HPS 操作步骤

    原谅我记忆力不好。。。花了好久弄明白的东西才十个小时不到就忘记了,所以趁现在记得赶紧记录下来。本文内容:重建de1-soc中HPS-FPGA工程。 PS:原工程在http
    发表于 07-03 08:10

    如何在DE1-SOC开发板上搭建NIOS II处理器运行UCOS

    介绍了如何在DE1-SOC开发板上搭建NIOS II处理器运行UCOS II,一步一步指导的,特此上传,希望能帮点忙。
    发表于 06-14 15:29 12次下载

    DE1-SoC开发工具包的详细用户和使用手册资料免费下载

    带宽互连主干与FPGA结构无缝连接。DE1-SoC开发板配备了高速DDR3存储器、视频和音频能力、以太网
    发表于 10-16 16:55 113次下载
    <b class='flag-5'>DE1-SoC</b><b class='flag-5'>开发</b>工具包的详细用户和使用手册资料免费下载

    ALTERA公司的DE1 SoC FPGA开发板的培训教程免费下载

    本文档的主要内容详细介绍的是ALTERA公司的DE1 SoC FPGA开发板的培训教程免费下载包括了:第1DE1-SOC 快速入门,第2
    发表于 07-08 08:00 51次下载
    ALTERA公司的<b class='flag-5'>DE1</b> <b class='flag-5'>SoC</b> FPGA<b class='flag-5'>开发板</b>的培训教程免费下载

    DE1-SoC结构及电路图

    DE1-SoC结构及电路图免费下载。
    发表于 04-07 11:33 49次下载

    DE1-SOC进行硬件加速的2D N-Body重力模拟器设计

    该项目的目标是创建一个用DE1-SOC进行硬件加速的2D N-Body重力模拟器。
    的头像 发表于 04-09 11:08 1785次阅读
    用<b class='flag-5'>DE1-SOC</b>进行硬件加速的2D N-Body重力模拟器设计

    在友晶DE1-SOC开发板实现Chirikov标准映射求解器

    该项目是在友晶DE1-SOC开发板实现Chirikov标准映射的求解器,并将其应用于图像加密和解密的概念验证。
    的头像 发表于 07-07 15:22 2005次阅读
    在友晶<b class='flag-5'>DE1-SOC</b><b class='flag-5'>开发板</b>实现Chirikov标准映射求解器