Nios® V 处理器开发者中心
Nios® V 嵌入式处理器系统开发和调试文档和支持。
1.前提条件
创建我的英特尔®帐户
- 从英特尔® 账户注册页面创建您的英特尔® 帐户。
- 使用英特尔账户,您可以提交服务请求、注册课程、下载软件、访问资源等。
设计注意事项
为何要选择 Nios® V 处理器?
Nios® V 处理器专为英特尔® FPGA 设备设计,并基于 RISC-V 规范开发。有关处理器性能基准测试等更多信息,请参阅《Nios® V 处理器参考手册》。
下表显示 Nios® V 处理器支持的功能。
Nios® V 处理器 |
RISC-V ISA |
微架构功能 |
启用 |
支持英特尔® FPGA 设备 |
|
---|---|---|---|---|---|
Nios® V/c 紧凑型微控制器 |
RISC-V 32I
|
|
|
|
|
Nios® V/m 微控制器 |
RISC-V 32I
|
|
|
|
|
Nios® V/g 通用处理器 |
RISC-V 32IMF Zicbom
|
|
|
|
|
我应该选择哪个操作系统 (OS)?
裸机
裸机是基于应用程序的系统,无需任何操作系统支持。
裸机方式可实现:
- 对硬件进行绝对控制
- 提升效率
- 最大程度地减小尺寸(闪存和内存占用率)
- 不依赖于其他源代码或库
- 易于验证和代码覆盖率分析。
以下情况下您也可以考虑进行逻辑开发:
- 不需要多任务或多线程操作
- 正在执行板卡启动且需要单独关注每个外设
- 正在复用已作为裸机开发的现有旧版代码
要为 Nios® V 处理器开发裸机应用程序,您必须熟悉运行时功能的开发,确保您的应用程序有效地利用 CPU 子系统中的可用资源。必要条件的示例如下:
- 深入了解硬件平台
- 由于典型裸机应用程序仅使用一个核心,如果您希望充分利用 CPU 子系统,应该能够开发运行时功能,以便管理核心与缓存子系统之间的进程
- 开发管理和调度进程、处理进程间通信以及同步应用程序内事件的功能
对于您计划的项目,如果没有足够的时间来熟悉以上几点,建议您考虑使用其他替代方案。
英特尔® 硬件抽象层 (HAL) 和实时操作系统 (RTOS)
考虑到以上陈述,使用抽象层或操作系统来努力实现 Nios® V 处理器的最大性能是有意义的。
下表展示了英特尔® HAL 和 RTOS 的特点。
标准 |
英特尔® HAL |
RTOS |
---|---|---|
主要差异 |
英特尔® HAL 是一个轻量级嵌入式运行时环境,为程序提供一个简单设备驱动接口,可连接到潜在的英特尔® FPGA 外围设备。英特尔® HAL 应用程序接口 (API) 与 ANSI C 标准库集成。 | RTOS 是基于优先级的系统,可提供抢占式任务调度,以确保及时、确定地响应事件或中断。高优先级且时间紧迫的线程比优先级较低的线程先行执行。RTOS 中的线程具有有限延迟。流程或线程在指定时间限制内执行。 |
应用 |
基于英特尔® FPGA 外围设备应用的理想选择。 |
需要较快速且可预测响应的应用程序的理想选择。 |
资源 |
轻量级,内存占用小。 |
轻量级,内存占用小。 |
编码实践 |
使用英特尔® HAL 设备驱动程序时,遵从英特尔® HAL API 库。 |
由于代码必须始终如一地持续执行,因此遵守严格的编码策略。 |
文档 | ||
其它资源 |
2.入门
选择目标板
我们建议在英特尔® FPGA 开发套件上启动开发,因为 Nios® V 处理器设计示例将在这些板上运行。请参阅设计考虑因素部分中关于支持的英特尔® FPGA 设备信息。
请参阅英特尔® FPGA 开发套件中关于可用板列表的信息。
安装开发工具
您将需要安装 Quartus® Prime 软件以及 Ashling* RiscFree* IDE,英特尔 FPGA开始开发 Nios® V 处理器系统。导航至 FPGA 软件下载中心安装最新版的软件。
创建您的第一个 Nios® V 处理器系统
《Nios® V 嵌入式处理器设计手册》可向您介绍 Nios® V 处理器系统开发流程。使用面向英特尔® FPGA的 Quartus® Prime 软件和 Ashling* RiscFree* IDE,您可以构建一个由硬件系统设计和软件程序组成的完整解决方案,该软件在 Nios® V 处理器上运行并与英特尔®开发板上的组件通过接口连接。
3.创建您自己的项目
项目类型
Nios® V 处理器开发工具包含面向英特尔® FPGA 的板级支持包编辑器和 Ashling* RiscFree* IDE,用于构建基于 Nios® 处理器的项目。Nios® V 支持两种不同类型的项目:基于 GUI 和基于 CLI 的项目。
下表比较了两个项目之间的差异。
特性 |
基于 GUI 的项目 |
基于 CLI 的项目 |
---|---|---|
项目简介 |
|
|
项目源文件管理 |
|
|
调试 |
|
|
与自定义 Shell 脚本和工具流集成 |
|
|
文档 |
设计流程
下图展示了常规 Nios® V 处理器系统开发流程。
Nios® V 处理器开发流程由以下三个要素组成:
- 系统设计,包括硬件和软件
- 硬件设计
- 软件设计
开始 Nios® V 处理器开发时,首先确定系统概念并执行系统需求分析。接下来,在 Platform Designer 中创建并生成系统,并产生一个 Platform Designer 文件。Platform Designer 文件包括 Nios® V 处理器核心和标准组件。生成系统后,即可启动硬件和软件流程。
- 对于 Nios® V 处理器硬件开发,您必须:
- 根据系统要求选择目标 FPGA。请参阅设计考虑因素部分。
- 将 Platform Designer 系统与 Quartus® Prime 软件项目集成。
- 分配引脚位置。
- 配置时序要求和其他设计约束。
- 编译硬件设计后,将 .sof 文件下载到目标板。
对于 Nios® V 处理器软件开发,您必须:
- 使用面向英特尔® FPGA 的 Nios® V 处理器工具和 Ashling* RiscFree* IDE 集成开发环境开发软件。Nios® V 软件包含 HAL、外设驱动程序、用户 C/C++ 应用程序代码和自定义库。
- 构建应用程序和板级支持包 (BSP) 后,将 .elf 文件下载到目标板上的 Nios® V 处理器系统。Nios® V 处理器系统已准备好进行测试和调试。
如果在测试过程中发现您的软件不符合规范,请返回到软件流程的起始位置,检查应用程序代码、驱动程序和 BSP 以纠正任何错误,同时确保 Nios® V 处理器系统正常运行。
如果硬件不符合规范,请返回至 Platform Designer 系统定义和生成步骤,并重新启动硬件和软件流程。产生应用软件所需的关键文件是 Platform Designer 系统文件。由于此文件描述了硬件组件和连接,如果进行硬件更改,必须重新生成此文件。当软件和硬件均符合规范时,此系统即完成。
4.设计示例
有大量设计示例可帮助您入门英特尔® FPGA 产品。所有示例都可作为您自己的设计起点,并且它们可定制,以实施其他特定用例。
Nios® V 处理器英特尔® FPGA IP 提供了一系列设计示例,以开始 Nios® V 处理器旅程。
详细文档可参阅《Nios® V 处理器软件开发手册》中的 “Nios® V 处理器设计示例脚本”。
如何在英特尔 HAL、µC/OS-II RTOS 和 FreeRTOS 中运行 Nios® V 处理器“Hello World”应用程序?
- 了解如何在英特尔 HAL、μC/OS-II RTOS 和 FreeRTOS 中运行 Nios® V 处理器“Hello World”应用程序:
如何在 Zephyr RTOS 中运行 Nios® V 处理器“Hello World”应用程序?
- 有关如何在 V Hello World 设计示例Nios生成 Zephyr Hello World 应用程序的快速入门指南。
- Nios® V/g
- Nios® V/m
如何使用 MicroC/TCP-IP 软件程序包运行 Nios® V 处理器?
- 若要了解如何使用 MicroC/TCP-IP 软件包运行 Nios® V 处理器,请参阅“Nios® V 处理器 - 使用 Micro/TCP-IP 堆栈”。
如何在基于 SDM 的设备中运行具有远程系统更新功能的 Nios® V 处理器?
- 若要了解如何在基于 SDM 的设备中通过远程系统更新运行 Nios® V 处理器,请参阅“基于 SDM 的设备中的 Nios® V 处理器 RSU 快速入门指南”。
- 文档和设计示例: 基于 SDM 的设备中的 Nios® V 处理器 RSU 快速入门指南
如何用自定义指令运行 Nios® V 处理器?
- 若要了解如何使用自定义指令运行 Nios® V 处理器,请参阅“Nios® V 处理器 — 使用自定义指令”。
5.更多资源
文档
以下文档可作为 Nios® V 处理器的主要参考。
文档标题 |
说明 |
---|---|
描述为 Nios® V 处理器开发嵌入式软件所需的基础信息。本手册中的章节介绍了 Nios® V 处理器的软件开发环境、可用的 Nios® V 处理器工具以及开发软件的过程。 |
|
补充嵌入式系统开发的主要文档。它介绍了如何最有效地利用工具,并提出了使用英特尔提供的工具开发、调试和优化嵌入式系统的建议设计风格和做法。本手册还向新用户介绍了英特尔嵌入式解决方案的概念,并可帮助有经验的用户提高设计效率。 |
|
描述 Nios® V 处理器从高层概念说明到低层实施细节的流程。本手册的相关章节描述了 Nios® V 处理器架构、编程模型和指令集。 |
|
描述英特尔提供的 IP 内核,与 Quartus® Prime 设计软件中的 Nios® V 处理器无缝结合。IP 内核针对英特尔® 设备进行优化,并可轻松实施,以缩短设计和测试时间。 |
|
描述 Ashling* RiscFree* IDE 开发工具的最新功能。用户指南提供了详细解释,以及相关功能的用例。 |
|
针对在 Nios® V 处理器中的自定义指令实施进行了说明。本应用说明介绍了自定义指令功能,并且指导如何将其实例化到您的系统中。 |
|
针对从 Nios® II 处理器到 Nios® V 处理器的迁移工作进行了说明。本应用说明介绍了执行处理器迁移时系统设计(硬件和软件设计)的差异。 |
|
AN 980:Nios® V 处理器 Quartus® Prime 软件支持 | 介绍在开发 Nios V 处理器系统时 Quartus® Prime Pro 和 Quartus® Prime Standard 之间的差异。 |
AN985:Nios® V 处理器教程 | 提供生成、仿真、编程和调试 Nios® V 处理器系统的快速入门指南。 |
演示视频
视频标题 |
说明 |
---|---|
概述 Nios® V 处理器所提供的功能。 |
|
Nios® V 处理器产品组合视频 | 了解 Quartus® Prime Pro Edition 软件版本 23.3 中提供的 Nios® V 处理器产品组合 |
观看 Hello world 设计演练,了解如何为您的应用选择合适的 Nios® V 处理器。 |
|
了解如何在 Nios® V/m 处理器的 Platform Designer 中生成和构建简单的 hello world 示例设计。 |
|
了解如何下载和设置 Nios® V/m 处理器的开源软件开发工具。 |
|
了解如何使用开源生态系统在 Nios® V/m 处理器上进行软件开发。 |
|
了解如何使用面向英特尔® FPGA 的 Ashling RiscFree IDE 调试 Nios® V 处理器。 |
快速链接
资源 | 说明 |
---|---|
Nios® V 处理器 - 英特尔® FPGA | 获取最新功能和更新,探索 Nios® V 处理器的全新可能性。 |
自助服务授权中心 | 您可以免费获得Nios® V/m 处理器的 IP 许可。有关英特尔® FPGA软件安装和许可的文档可在 英特尔® FPGA软件安装和许可页面 上找到。 |
英特尔® FPGA 支持资源 | 提供从培训课程到设计示例再到论坛的在线技术资源,可指导您完成设计过程中的每个步骤。 |
FPGA 知识库 | 提供海量支持解决方案、参考文章、错误消息和故障排除指南。它还实现了完全可搜索。 |
英特尔 FPGA 社区 | 支持英特尔® FPGA用户之间协作的社区网站。使用搜索引擎查找相关材料。我们还鼓励您进行更新和投稿。 |
英特尔账户 | 英特尔账户允许您提出服务请求,以获取特定主题的帮助。您还可以使用它注册培训课程并访问其它资源。 |