功能单元仿真环境软件
用户指南
关于本文档
本文档描述了如何模拟为ample 加速器功能单元 (AFU) 使用 Intel
加速器功能单元 (AFU) 仿真环境 (ASE) 环境。 有关 ASE 功能和内部架构的全面详细信息,请参阅英特尔加速器功能单元 (AFU) 仿真环境 (ASE) 用户指南。
英特尔加速器功能单元 (AFU) 仿真环境 (ASE) 是适用于任何英特尔 FPGA 可编程® 加速卡(英特尔 FPGA PAC)的硬件和软件协同仿真环境。 该软件协同仿真环境目前支持以下 Intel FPGA PAC: 10 GX FPGA
- Intel FPGA 可编程加速卡 D5005
- 采用英特尔 Arria® 的英特尔可编程加速卡
ASE 为核心高速缓存接口 (CCI-P) 协议提供事务模型,并为 FPGA 连接的本地存储器提供存储器模型。
ASE 还验证加速器功能单元 (AFU) 是否符合以下协议和 API: - CCI-P 协议规范
- 阿瓦隆
内存映射 (Avalon-MM) 接口规范 - 开放式可编程加速引擎 (OPAE)®
表 1. 采用 FPGA 的英特尔至强® CPU 的加速堆栈
学期 | 缩写 | 描述 |
面向带有 FPGA 的英特尔至强® CPU 的英特尔加速堆栈 | 加速堆栈 | 一系列软件、固件和工具,可在英特尔 FPGA 和英特尔至强处理器之间提供性能优化的连接。 |
英特尔 FPGA 可编程加速卡(英特尔 FPGA PAC) | 英特尔 FPGA PAC | PCIe* FPGA 加速卡。 包含通过 PCIe 总线与英特尔至强处理器配对的 FPGA 接口管理器 (FIM)。 |
具有集成 FPGA 的英特尔至强可扩展平台 | 集成 FPGA 平台 | 英特尔至强加 FPGA 平台将英特尔至强和 FPGA 集成在一个封装中,并通过超路径互连 (UPI) 共享一致的内存缓存。 |
相关信息
英特尔加速器功能单元 (AFU) 仿真环境 (ASE) 用户指南
英特尔公司。 版权所有。 英特尔、英特尔徽标和其他英特尔标志是英特尔公司或其子公司的商标。 英特尔根据英特尔的标准保修保证其 FPGA 和半导体产品的性能符合当前规格,但保留随时更改任何产品和服务的权利,恕不另行通知。 英特尔不承担因应用或使用此处描述的任何信息、产品或服务而产生的任何责任或义务,除非英特尔明确书面同意。 建议英特尔客户在依赖任何已发布信息和下订单购买产品或服务之前获取最新版本的设备规格。
*其他名称和品牌可能是其他所有者的财产。
ISO 9001:2015注册
系统要求
以下是英特尔加速器功能单元 (AFU) 仿真环境 (ASE) 的系统要求:
- 一个 64 位 Linux 操作系统。 此版本验证了以下操作系统:
— 对于英特尔 FPGA PAC D5005: - 带有内核 7.6-3.10.0 的 RHEL 957
— 对于带有 Intel Arria 10 GX FPGA 的 Intel PAC: - 带有内核 7.6-3.10.0 的 RHEL 957
- 带有内核 18.04 的 Ubuntu 4.15
- 以下模拟器之一:
— 64 位 Synopsys* VCS-MX-2016.06-SP2-1 RTL 模拟器
— 64 位 Mentor Graphics* Modelsim SE 模拟器(版本 10.5c)
— 64 位 Mentor Graphics QuestaSim 模拟器(10.5c 版) - C编译器:GCC 4.7.0或以上
- CMake:版本 2.8.12 或以上
- GNU C 库:2.17 或更高版本
- Python:版本 2.7
- 英特尔 Quartus® Prime 专业版软件版本 19.2 (1)
设置环境
在运行 ASE 之前,您必须设置您的模拟环境并安装 OPAE 软件。
- 为您的仿真软件设置以下环境变量:
• 对于 VCS:
$ 出口 VCS_HOME=
$ 出口路径=$VCS_HOME/bin:$PATH
VCS安装目录结构如下:
确保您的系统具有有效的 VCS 许可证。
• 对于 Modelsim SE/QuestaSim:
$ 出口 MTI_HOME=
$ 出口路径=$MTI_HOME/linux_x86_64/:$MTI_HOME/bin/:$PATH
Modelsim/Questa安装目录结构如下:
确保您的系统具有有效的 Modelsim SE/QuestaSim 许可证。
• 对于 Intel Quartus Prime Pro Edition:
$ 出口 QUARTUS_HOME=
Intel Quartus Prime 安装目录结构如下:
添加环境变量以检查 Modelsim 许可证:
$ 出口 MGLS_LICENSE_FILE= - 出口:
$ 出口 LM_LICENSE_FILE= - 提取运行时存档 file,并安装 OPAE 库、二进制文件,包括 files 和 ASE 库,如适用于您的英特尔 FPGA PAC 的英特尔加速堆栈快速入门用户指南中的“安装 OPAE 软件包”部分所述。
必须正确设置您的环境才能配置和构建 AFU。 特别是,您必须正确安装 OPAE 软件开发工具包 (SDK)。 OPAE SDK 脚本必须在 PATH 上并包含 files 和 C 编译器必须可用的库。 此外,您必须确保设置了 OPAE_PLATFORM_ROOT 环境变量。 有关详细信息,请参阅安装 OPAE 软件包。
为确保正确安装 OPAE SDK 和 ASE,请在 shell 中确认您的 PATH 包含 afu_sim_setup。 afu_sim_setup 应该在 /usr/bin 目录或如果您从源代码构建 OPAE files.
相关信息
- 英特尔加速器功能单元 (AFU) 仿真环境 (ASE) 用户指南
- 安装 OPAE 软件包
对于带有 Intel Arria 10 GX FPGA 的 Intel PAC。 - 为英特尔 FPGA PAC D5005 安装 OPAE 软件包。
在客户端-服务器模式下模拟 hello_afu
hello_afu 前任ample 是一个简单的 AFU 模板,用于演示主要的 CCI-P 接口。 RTL 满足 AFU 的最低要求,响应内存映射 I/O 读取以返回设备功能标头和 AFU 的 UUID。
图 1. hello_afu 目录树
笔记:
本文档使用ample> 指前任ample设计目录,如上图中的hello_afu。
该软件演示了使用 OPAE 连接到 FPGA 的最低要求。 RTL 演示了满足 OPAE 驱动程序和 hello_afu ex 的最低要求amp乐软件。
filelist.txt 指定 files 用于 RTL 仿真和综合。
成功配置和构建 AFUamp也就是说,您的环境必须正确设置,如设置环境中所述。
相关信息
- 英特尔加速器功能单元 (AFU) 仿真环境 (ASE) 用户指南
- 设置环境(第 5 页)
使用 OPAE SDK 开发 AFU
在加速器功能单元 (AFU) 开发人员指南中
4.1。 客户端-服务器模式下的模拟
以下示例ample flow 介绍了基本的 ASE 脚本。 你可以模拟所有的前ampASE 的文件,除了 eth_e2e_e10 和 eth_e2e_e40。
仿真需要两个软件进程:一个用于 RTL 仿真,另一个用于运行连接的软件。 要构建 RTL 仿真环境,请在 $OPAE_PLATFORM_ROOT/hw/s 中运行以下命令amp莱斯/你好_afu:
$ afu_sim_setup –源硬件/rtl/filelist.txt build_sim 文件
此命令在 build_sim 子目录中构建 ASE 环境。
要构建和运行模拟器:
$ cd build_sim
$ make
$做模拟
模拟器会打印一条消息,表明它已准备好进行模拟。 它还会打印一条消息,提示您设置 ASE_WORKDIR 环境变量。
打开另一个 shell 进行软件模拟。 您必须确保设置 OPAE_PLATFORM_ROOT 环境变量。
要在新 shell 中构建和运行软件:
$ cd $OPAE_PLATFORM_ROOT
$ 出口 ASE_WORKDIR=$OPAE_PLATFORM_ROOT/hw/samp莱斯/hello_afu/build_sim/work
$ cd $OPAE_PLATFORM_ROOT/hw/samp莱斯/你好_afu/sw
$ 清理
$ 使 USE_ASE=1
$ ./hello_afu
笔记:
ASE_WORKDIR 的特定路径名可能会有所不同。 使用模拟器提示提供的路径名。
软件和模拟器运行、记录事务并退出。
4.1.1。 模拟日志 Files
仿真工作目录存储波形、CCI-P 事务和仿真日志 files.
完成以下步骤以 view 波形数据库:
- 切换到执行 make sim 命令的目录。
- 类型:
$ 制造波浪
make wave 命令调用波形 view呃。
4.1.2. 设计声明
下列 file 和目录定义 AFU 模拟:
- $OPAE_PLATFORM_ROOT/硬件/秒amp莱斯/ample>/硬件/rtl/filelist.txt 指定 RTL 源。
- <AFU example> 是前任ample 目录,如 hello_afu 目录树图中所示。
- filelist.txt 列出 SystemVerilog、VHDL 和 AFU JavaScript Object Notation (.json) file.
- AFU .json 描述了 AFU 所需的接口。 它还包括一个 UUID,用于在下载到 FPGA 后识别 AFU。
- hw/rtl/hello_afu.json 通过将 afu-top-interface 设置为 ccip_std_afu 将 ccip_std_afu 定义为顶级接口。 ccip_std_afu 是基本 CCI-P 接口,包括时钟、复位和 CCI-P TX 和 RX 结构。 更高级的前amp文件定义了其他接口选项。
- .json file 声明 AFU UUID。 OPAE 脚本会生成 UUID。 RTL 从 afu_json_info.vh 加载 UUID。
- 软件/制作file 生成 afu_json_info.h。 软件从 afu_json_info.h 加载 UUID。
4.1.3。 客户端-服务器模拟故障排除
如果 afu_sim_setup 命令失败,请确认:
- afu_sim_setup 在您的 PATH 上。 afu_sim_setup 应该在 /usr/bin 或如果您从源代码构建 OPAE files.
- 您已安装 Python 2.7 或更高版本。
如果您无法构建和执行模拟器,很可能是您没有正确安装 RTL 模拟工具。
当您尝试构建和运行该软件时,如果您看到“错误枚举 AFC”消息,则您省略了在 make 命令行上设置 USE_ASE=1。 该软件正在搜索物理 FPGA 设备。 要恢复,请重复 make clean 命令中的步骤。
AFU前amp莱斯
表 2.
AFU前amp莱斯
每个 AFU 前ample 包含详细的 README file,提供有关如何模拟设计的操作描述和注释。 为了全面了解模拟过程,请重新view 自述文件 file 在每个 AFU 前amp勒。
安福 | 描述 | |
你好_mem_afu | hello_mem_afu 演示了一个 AFU,它构建了一个简单的状态机来访问内存。 状态机能够对直接连接到 FPGA 引脚的本地存储器(例如 DDR4 DIMM)进行多种访问模式。 该内存不同于通过 CCI-P 访问的主机内存。 主机使用内存映射 I/O (MMIO) 请求来管理 hello_mem_afu 控制器状态机,以控制和状态寄存器 (CSR)。 | |
你好_intr_afu | hello_intr_afu 演示了 ASE 中的应用程序中断功能。 | |
DMA 一个 f1.1 (2) _ | dma_afu 演示了用于主机到 FPGA、FPGA 到主机以及 FPGA 到 FPGA 存储器传输的 DMA 基本构建块。 在模拟此 AFU 时,用于 DMA 传输的缓冲区大小很小,以保持模拟时间合理。 有关详细信息,请参阅 DMA 加速器功能单元 (AFU) 用户指南。 | |
nlb_模式_O | nlb_mode_O 是一个演示内存复制测试的 CCI-P 系统。 $0PAE_PLATFORM_ROOT/sw/opae—cre/ease number>/samp乐/hello_fpga 。 c 包括 nlb_mode_0。 | |
$ sh regress.sh -a -r rtl_sim -s < vcslmodelsimlquesta > [-i ) -b |
||
流媒体DMA | streaming_dma 演示了如何在主机存储器和 FPGA 流端口之间传输数据。 有关详细信息,请参阅流 DMA 加速器功能单元 (AFU) 用户指南。 | |
你好_afu | hell lo_a fu 是一个简单的 AFU,它演示了主要的 CCI-P 接口。 RTL 满足 AFU 的最低要求,响应 MMIO 读取以返回设备功能标头和 AFU 的 UUID。 |
相关信息
- DMA 加速器功能单元 (AFU) 用户指南
有关如何使用英特尔 Arria 10 GX FPGA 在英特尔 PAC 上编译和执行 dma_afu 的信息。 - 流式 DMA 加速器功能单元 (AFU) 用户指南
有关如何使用 Intel Arria 10 GX FPGA 在您的 Intel PAC 上编译和执行 streaming_dma_afu 的信息。 - DMA 加速器功能单元用户指南:英特尔 FPGA 可编程加速卡 D5005
有关如何在您的英特尔 FPGA PAC D5005 上编译和执行 dma_afu 的信息。 - 流式 DMA 加速器功能单元用户指南:英特尔 FPGA 可编程加速卡 D5005
有关如何在您的英特尔 FPGA PAC D5005 上编译和执行 dma_afu 的信息。
故障排除
如果在模拟过程中出现以下错误,请按照以下步骤进行更正。
错误信息
# [SIM] ASE 实例可能仍在当前目录中运行!
# [SIM] 检查 PID 28816
# [SIM] 模拟将退出……你可以使用 SIGKILL 来终止模拟进程。
# [SIM] 还要检查 .ase_ready.pid file 在继续之前被删除。 解决方案
- 键入 kill ase_simv 以杀死僵尸模拟进程并删除任何临时 files 因模拟过程失败或锁定而落后。
- 删除 .ase_ready.pid file,在 $ASE_WORKDIR 目录中找到。
ASE 快速入门用户指南档案
英特尔加速堆栈版本 | 用户指南 |
2.0 | 英特尔加速器功能单元 (AFU) 仿真环境 (ASE) 快速入门用户指南 |
1. | 英特尔加速器功能单元 (AFU) 仿真环境 (ASE) 快速入门用户指南 |
1. | 英特尔加速器功能单元 (AFU) 仿真环境 (ASE) 快速入门用户指南 |
1.0 | 英特尔加速器功能单元 (AFU) 仿真环境 (ASE) 快速入门用户指南 |
ASE 快速入门用户指南的文档修订历史
文档版本 | 英特尔加速堆栈版本 | 更改 |
2020.03.06 | 1.2.1 和 2.0.1 | 更新了以下内容: • 系统要求 |
2019.08.05 | 2.0 | • 更新了系统要求中的 Intel Quartus Prime Pro Edition 版本。 • 在 AFU Ex 中添加了 hello_afuamp莱斯。 • 删除了有关在回归模式下进行模拟的信息。 • 添加了一个新部分:ASE 快速入门用户指南存档。 |
2018.12.04 | 1. | 添加了 Ubuntu 支持。 |
2018.08.06 | 1. | 更新了系统要求、目录结构,以及对应的 file名字。 |
2018.04.10 | 1.0 | 初始版本。 |
683200 | 2020.03.06
发送反馈
文件/资源
![]() |
英特尔加速器功能单元仿真环境软件 [pdf] 用户指南 加速器功能单元,仿真环境软件,加速器功能单元仿真环境,软件,加速器功能单元仿真环境软件 |