夜雨聆风学习资料网

ARTICLE · 1116044

国庆放假,AI 替你搬砖!AMD 开源 FPGA 开发助手

国庆放假,AI 替你搬砖!AMD 开源 FPGA 开发助手

从代码生成到综合优化,再到 ILA 在线调试,AMD 开源了一套面向 FPGA 和 SoC 开发的 AI Agent 技能体系。

随着大模型逐渐进入硬件开发领域,AI 辅助编写 Verilog、生成 HLS 代码已经不算新鲜事。不过,FPGA 开发真正复杂的地方,往往并不是代码本身,而是整个开发流程:RTL 仿真、时序约束、综合实现、资源优化、板级调试,以及各种工具和技术文档之间的协同。

AMD 推出的 ROSS Agentic AI Assistant,正是希望把 AI 的应用从单纯的代码辅助,进一步扩展到实际的 FPGA 和嵌入式开发工作流中。

这套工具不只是一个能够回答 Vivado 问题的聊天机器人。它通过 Agent Skills 和 MCP 等开放标准,将 AI 与 Vivado、Vitis HLS、硬件调试工具以及 AMD 技术文档连接起来,让 AI 能够根据任务调用相应的工具,执行具体的开发操作。

项目目前已经在 GitHub 开源,包含多种面向 FPGA、HLS、硬件调试和 Vitis AI 的技能,以及示例工程和使用文档。

项目地址:

GitHub:https://github.com/xilinx/ross-ai-assistant

AMD 官方下载页面:

https://www.amd.com/en/support/downloads/ross-agentic-ai.html

AMD在线文档知识库

https://ross.amd.com/chat#setup

介绍

PS:可跳过,都是AI写的...

ROSS 是什么?

ROSS 的全称是 AMD Ross Agentic AI Assistant。AMD 将其定位为一套与具体 AI 客户端无关的 Agentic AI 助手,主要用于加速 AMD 嵌入式开发工具链中的多领域工作流。

简单理解,ROSS 的目标是让开发者通过自然语言描述设计意图,由 AI 调用工具、执行任务,并将开发流程中的多个环节串联起来。

传统 AI 编程助手主要关注代码生成与修改。例如,让 AI 编写一个 AXI4-Lite 寄存器模块,或者生成一个简单的 HLS 图像处理函数。

而 ROSS 的应用场景更进一步。

假设我们正在开发一个 FPGA 图像处理模块,需要完成以下工作:

  • 根据算法需求生成 HLS C++ 代码。
  • 设计流水线架构,优化数据流。
  • 运行 C 仿真与综合,查看资源占用和性能报告。
  • 根据目标时钟频率和资源限制,反复调整代码。
  • 生成或检查 RTL,执行仿真。

将设计部署到 FPGA 后,通过 ILA 抓取信号,分析实际硬件问题。

在传统流程中,这些任务涉及多个工具、不同类型的报告,以及大量人工操作。

使用 ROSS,开发者可以通过自然语言提出任务,AI 根据任务调用不同的技能,借助 Vivado MCP Server 与工具交互,再根据结果决定下一步操作。

需要说明的是,ROSS 并不是一个能够自动理解所有 FPGA 设计并保证一次成功的工具。它提供的是一套面向具体开发任务的自动化能力,最终设计结果仍需要工程师检查和验证。

核心技术:Agent Skills + MCP

理解 ROSS,首先要了解两个关键概念:Agent Skills 和 MCP。

1. Agent Skills:将 FPGA 开发经验封装成可调用的技能

Agent Skills 可以理解为一组面向特定任务的操作说明、知识和执行流程。

与直接向 AI 提问不同,技能会告诉 Agent:

  • 当前任务应该完成什么。
  • 需要读取哪些输入和文件。
  • 应该按照什么步骤执行。
  • 可以调用哪些工具。
  • 如何分析执行结果。
  • 任务完成后应该输出什么。

例如,ROSS 中的 hls-optimize 技能主要用于迭代优化 HLS 内核。

开发者可以给出原始代码、目标器件、时钟要求、资源限制等信息。Agent 随后根据技能定义,调用相关辅助技能,执行 HLS 编译流程,提取综合报告,并根据结果尝试调整设计。

这里的关键是:技能不只是提供一段提示词,还可以组织多个任务步骤,形成相对完整的开发工作流。

ROSS 将大量 FPGA 开发任务拆分成独立技能,再通过主技能调用辅助技能。这种结构有利于复用开发经验,也方便后续扩展。

MCP:让 AI 真正连接 Vivado

MCP(Model Context Protocol)是一种用于连接 AI 应用与外部工具、数据源的开放协议。

在 ROSS 中,MCP 的作用是为 AI 提供与开发工具交互的接口。

其中,Vivado MCP Server 是关键组件,主要支持:

  • 执行 Vivado Tcl 命令。
  • 管理 Vivado 工程。
  • 执行综合和实现流程。
  • 与 Vivado 硬件调试功能交互。

这意味着 AI 不再局限于根据开发者粘贴的代码和日志进行分析,还可以在授权和配置的环境中直接调用 Vivado 功能,获取真实的工具执行结果。

例如,开发者可以提出:

“检查当前工程中的时序违例,并分析关键路径。”

在相应的技能与工具支持下,Agent 可以调用 Vivado 获取时序报告,再根据报告中的路径、延迟和逻辑结构进行分析。

MCP 负责工具连接,Agent Skills 负责任务流程,两者配合,构成了 ROSS 的核心架构。

PS:废话结束

快速安装入门

先决条件

对于 Vivado AI Assistant(MCP 服务器):

Vivado 2026.1已安装,并设置好PATH

AMD Vivado2026.1 学习版已发布,可供下载

AMD Xilinx Vivado安装教程

以下选项之一(不可同时选择):

  • Vivado AI Assistant Extension VSIX — 适用于 IDE 设置(VS Code / Cursor)。该扩展程序捆绑了 MCP 服务器。

  • Vivado MCP 服务器二进制文件——适用于 CLI 设置(Claude Code、Copilot CLI、Codex)。安装到类似这样的目录~/tools/。

  • 正在进行的 Vivado 会话或设计检查点 (DCP) 可供使用.

适用于 Vitis HLS AI 助手(代理技能):

  • Vitis Unified IDE已安装并获得许可——在获取源代码后settings64.sh,v++ --version两者vitis-run --version应该都能正常工作。

  • 具备相应技能的 AI 客户端:VS Code、Cursor、Claude Code、Codex CLI 或 GitHub Copilot CLI

  • (可选) Vivado MCP 服务器,用于获取基于 AMD 文档的答案vivado_doc_search

版本兼容性:已测试版本为Vivado 2026.1和 Vitis 2026.1。MCP服务器通过其标准 Tcl 接口与 Vivado 通信,因此在架构上与所有已发布的 Vivado 版本兼容(2020.2以上)。各个技能和示例会注明其各自支持的最低版本(请参阅每个技能SKILL.md和每个示例的说明README.md)。

这次我们使用VS Code插件使用,打开VS Code安装插件:

转到“扩展”侧边栏 > 点击...>从 VSIX 安装...(或者直接将插件拖过去即可)

命令行:

# VS Code
code --install-extension vivado-ai-extension-<version>.vsix

# Cursor
cursor --install-extension vivado-ai-extension-<version>.vsix

选择已下载的.vsix文件

配置 Vivado 路径

安装扩展程序后,设置 Vivado 可执行文件的路径:

  • 打开设置(Ctrl+,)
  • 搜索Vivado 路径
  • 输入 Vivado 二进制文件的完整路径(例如,/tools/Xilinx/Vivado/2026.1/bin/vivado)。

如果系统上已经安装了 Vivado PATH,则此步骤为可选步骤——扩展程序会自动检测。但是,显式设置路径可以避免安装多个版本时出现问题。

开始使用

接下来就可以通过自己电脑里的AI工具调用即可,可以直接使用VS Code里的模型进行调用,也可以直接使用自己的软件进行调用,我这里使用WorkBuddy调用:

PS:给AI安装包直接让他自己安装自己设置就行,上面有点复杂了。

skills

vitis部分提供了很多hls相关的skills,这是xilinx推广AI的重要部分,在这方面多放些精力也是对的。

vivado部分提供了ip配置,版本控制,RTL lint,解析,仿真,methodology检查相关的skill

重点还是ila和vio的skills,这样就方便AI调用在线调试了。

本地知识库

对于不希望使用在线文档搜索服务的场景,AMD 还提供了本地知识库方案。

官方页面提供了包含 AMD 文档和 Embedding 模型的下载包,其中包括基于 Qwen3 Embedding 0.6B 和 EmbeddingGemma 300M 的版本。

本地知识库的主要作用是让文档检索在本地环境中运行,减少对托管文档搜索服务的依赖。

需要注意,本地知识库主要解决的是文档检索问题,并不意味着整个 AI 模型推理、MCP 服务和 Vivado 工具链都自动变成完全离线环境。实际部署时还需要单独确认 AI 客户端的模型连接和数据传输方式。

总结

从目前公开的技能体系来看,ROSS 的重点并不是替代 Vivado、Vitis HLS 或 FPGA 工程师,而是将 AI 引入开发工具链中的更多实际操作。

过去,AI 辅助 FPGA 开发主要集中在代码生成和技术问答。

现在,随着 MCP 和 Agent Skills 的引入,AI 可以进一步参与:

  • 工程管理。
  • RTL 检查和仿真。
  • HLS 架构设计与性能优化。
  • 综合报告分析。
  • ILA 波形采集。
  • VIO 在线调试。
  • 技术文档检索。
  • AI 模型编译与优化。

这让 AI 辅助开发从“给出建议”,逐渐延伸到“调用工具执行任务,再根据结果调整方案”。

对于希望尝试 AI 辅助硬件开发的工程师,可以从一个简单的 HLS 优化任务或 RTL 仿真诊断任务开始,逐步熟悉 ROSS 的技能调用方式,再扩展到真实工程和板级调试场景。

本次需要的文件

项目地址:

GitHub:https://github.com/xilinx/ross-ai-assistant

AMD 官方下载页面:

https://www.amd.com/en/support/downloads/ross-agentic-ai.html

AMD在线文档知识库

https://ross.amd.com/chat#setup

方便学习版:

通过网盘分享的文件:2026.0901 链接: https://pan.baidu.com/s/1YXQ_jB9j1vejOOg9jd5Q4g 提取码: open

相关学习资料