找回密码
立即注册
搜索
发回帖 发新帖

6149

积分

0

好友

754

主题
发表于 昨天 23:52 | 查看: 5| 回复: 0

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

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

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

AMD Ross Agentic AI Assistant for Embedded Development 宣传图

这套工具不只是一个能够回答 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

ROSS 是什么?

AMD Ross Agentic Workflow 架构图

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 的核心架构。

快速安装入门

先决条件

对于 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 文件。

VS Code 安装 Vivado AI Extension 界面

配置 Vivado 路径

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

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

Vivado AI Extension 配置 Vivado Path

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

开始使用

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

WorkBuddy 配置 Vivado MCP 说明

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

skills

AMD Ross Skills 列表

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

Vitis HLS Skills 列表

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

Hardware Debug 技能中的 ILA/VIO 调试

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

本地知识库

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

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

本地知识库 Embedding 模型下载文件

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

需要注意,本地知识库主要解决的是文档检索问题,并不意味着整个 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 的技能调用方式,再扩展到真实工程和板级调试场景。

本次需要的文件

AMD Ross Agentic 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

方便学习版:

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




上一篇:Docker Compose 定期更新镜像安全补丁
下一篇:从矩阵到张量:大模型底层计算原理详解
您需要登录后才可以回帖 登录 | 立即注册

手机版|小黑屋|网站地图|云栈社区 ( 苏ICP备2022046150号-2 )

GMT+8, 2026-10-3 06:36 , Processed in 0.067451 second(s), 41 queries , Gzip On.

Powered by Discuz! X3.5

© 2025-2026 云栈社区.

快速回复 返回顶部 返回列表