AMD Ross™ Agentic AI Assistant 简介与适用场景

本文作者:AMD 工程师 Shengjie Li,文章来源:Xilinx开发者社区

一、引言:FPGA 开发中的常见挑战

在日常 FPGA 开发中,以下场景较为常见:

场景一:时序收敛。 实现完成后时序未收敛,报告中列出数百条违例路径。工程师通常需要反复执行以下步骤:

1.打开时序报告,逐条分析违例路径;

2.查阅 UG949、UG903 或相关 AR,确定处理方法;

3.修改约束或 RTL,重新运行实现;

4.若仍未收敛,返回第 1 步。

场景二:工程创建。 创建工程、添加源文件、配置 IP、搭建 Block Design、编写 Tcl 脚本,每个新工程都需要重复这些操作;Tcl 命令繁多,常常需要查阅文档。

场景三:板级调试。 配置 ILA 触发条件、采集并导出波形、分析异常,步骤繁琐,且高度依赖个人经验。

场景四:经验传承。 资深工程师掌握“某类违例应优先检查哪些因素”“某个 IP 如何配置可避免问题”等经验,但这些经验往往仅存在于个人头脑中,难以在团队内沉淀和复用。

AMD 将上述问题归纳为四类:

这些工作技术难度不高,但琐碎耗时,挤占了用于设计创新的时间。AMD Ross™ Agentic AI Assistant(下文简称 Ross)的目标,是将其中一部分工作交由 AI 完成,使工程师能够通过自然语言完成设计、调试与优化。

二、核心概念回顾

为便于理解后文,下表简要回顾本文涉及的 AI 概念:

需要强调的是:仅有大脑(LLM)只能“思考”和“表达”,无法“执行”。 要使其真正完成工作,还需要知识库、工具、MCP 与 Skill 的配合。Ross 正是将这几部分整合在一起、面向 AMD 工具的 Agent。

三、AMD Ross Agentic AI Assistant 概述

AMD Ross Agentic AI Assistant 是面向 AMD 嵌入式开发的 AI 助手,以 Agent 方式工作,使工程师能够通过自然语言完成设计、调试与优化。 名称中的 “Agentic” 即表示“以 Agent 方式工作”。

3.1 核心组成

Ross 由四个部分组成,分别对应前文介绍的概念:

大脑(LLM)不由 Ross 提供,由用户自行选择。其中,MCP Server 与 Agent Skills 即 MCP 与 Agent Skills 两项开放标准在 AMD 工具上的具体实现。AMD 对二者分工的表述为:MCP 提供信息,Skill 提供行动能力。

3.2 MCP Server

将 AMD Vivado™、AMD Vitis™ HLS 等工具封装为 MCP 服务,连接用户正在使用的实际工程。支持 Tcl(无界面批处理)与 GUI 两种模式,不要求用户精通 Tcl 脚本。权限由用户控制,并支持多个 Agent 会话并行运行。其提供四项能力:

3.3 知识库

收录用户指南(UG)、产品指南(PG)、白皮书、AR 等 AMD 公开文档,构建为向量数据库,支持云端访问,也可部署于本地服务器。官方给出了不同角色的提问示例:

3.4 Agent Skills 与设计示例

Agent Skills 由 AMD 专家编写,遵循 Agent Skills 开放标准,将 AMD 工具的方法学与最佳实践转化为 Agent 可执行的流程。官方对比了使用 Skill 前后的差异:

上述 Skill 发布于 AMD 官方 GitHub 仓库,目前覆盖以下方向:

设计示例同样发布于 GitHub 仓库,每个示例独立完整、按 Skill 分类,适合用户按步骤运行以熟悉使用方法。

3.5 主要特点

  • 不限定客户端:基于 MCP 标准,VS Code、Claude Code、Cursor、Devin、OpenCode CLI 等支持 MCP 的客户端均可使用。
  • 不限定模型:可使用 Claude、GPT、Gemini、Qwen、Llama 等云端模型,或在本地运行的开源模型。
  • 支持离线部署:知识库与 MCP Server 可部署在本地,适用于内网或对数据安全有较高要求的环境。
  • 基于开放标准:MCP 与 Agent Skills 均非 AMD 私有格式,相关知识可迁移至其他场景。

四、Ross 的工作原理

本章先介绍 Ross 的整体工作流程,再通过一个时序违例分析示例,展示各组成部分如何协同工作。

4.1 工作流程概述

AMD 将 Ross 的工作流程概括为四个步骤:

4.2 示例:时序违例分析

下面以“分析该 post-route DCP 的时序违例”为例,展示 Ross 结合 MCP、Skill 与知识库后的完整处理过程:

图 1  AMD Ross 的工作流程

与仅具备工具调用能力的一般 Agent 相比,此流程增加了三项关键能力:

  • Skill 提供流程指导(步骤 2~5):客户端在系统提示词中附带已安装 Skill 的“名片”。LLM 判断当前为时序分析任务后,请求加载 timing-methodology-checks,由 Agent 读取其详细步骤。此后调用哪些命令、检查哪些指标,均依据 Skill 执行,而非由模型自行摸索。
  • MCP 负责执行(步骤 7、10):命令通过 Ross 的 MCP Server 在实际的 Vivado 会话中执行,执行结果如实返回。
  • 知识库提供依据(步骤 12~14):需要查阅文档时,通过 MCP 检索 AMD 知识库,最终建议附带 UG949 等文档出处。

最终,用户获得一份违例分类结果与修复建议,是否采纳及如何修改由用户决定。

在整个过程中,用户仅需下达一条指令,而每个步骤均基于实际工具输出与官方文档,而非模型的推测。

五、与通用 AI 工具的对比

通用 AI 工具(如网页版 Chat)在 FPGA 开发中同样可以提供帮助,但受限于其工作方式,在专业场景中往往难以直接落地。下面从五个方面,结合具体场景说明二者的差异。

5.1 信息来源:训练数据与官方文档

当工程师询问“如何为 AMD Versal™ 器件的 NoC 配置 QoS 以获得最佳带宽”时,通用 AI 只能依据训练数据作答。训练数据可能早于当前工具版本,也可能混入其他器件系列的做法,因此回答中可能出现已废弃的属性,甚至并不存在的参数,且通常不注明出处,工程师难以判断其可靠性。

Ross 则先检索 AMD 知识库,基于 UG1388、PG313 等官方文档的相关段落作答,并在回答中注明文档编号。工程师可以直接翻到原文核对,判断该方法是否适用于当前器件与工具版本。

5.2 工程访问:复制粘贴与直接读取

使用通用 AI 分析时序问题,工程师需要先在 Vivado 中生成报告,再将内容复制到对话框中。一份完整的时序报告往往有数千行,粘贴后容易超出上下文长度,工程师只能自行截取一部分,而被舍弃的部分可能恰好包含问题根源。

Ross 通过 MCP 直接连接 Vivado 会话,由 Agent 按需执行报告命令,并只提取分析所需的信息,例如最差路径的时钟关系、逻辑级数与扇出情况。模型看到的始终是当前工程的真实数据,而非经过人工筛选的片段。

5.3 操作执行:给出建议与完成操作

通用 AI 通常以 Tcl 脚本或操作步骤的形式给出建议,由工程师自行执行。若脚本运行报错,工程师需要将错误信息复制回对话框,等待修正,再重新执行,如此往复。

Ross 可以直接执行操作,并根据执行结果自行调整。以第六章的 AMD MicroBlaze™ V 案例为例,执行过程中遇到 Block 配置不匹配时,Ross 读取错误信息、调整配置后自动重试,无需工程师在两个窗口之间来回传递信息。对于修改约束、代码等影响较大的操作,Ross 会在执行前请求用户确认。

5.4 结果一致性:自由发挥与固定流程

向通用 AI 提出同样的时序问题,不同工程师、不同时间得到的分析角度往往不同:有时从时钟约束入手,有时直接讨论 RTL 结构,检查项可能遗漏,结果也难以在团队内横向比较。

Ross 的 Skill 规定了固定的分析流程,例如先运行方法学检查,再按类别对违例路径分组,最后逐类给出处理建议。每次分析都覆盖相同的检查项,输出格式也保持一致,便于团队复核与积累。

5.5 使用成本:冗长提示词与简短指令

为了让通用 AI 给出有针对性的回答,工程师需要在提示词中交代器件型号、工具版本、当前所处的设计阶段以及希望遵循的分析方法,提示词往往长达数百字,且每次都要重新说明。

使用 Ross 时,这些方法论已经写在 Skill 中,器件与工程信息也可以由 Agent 从工程中直接读取。工程师只需一句“分析该 post-route DCP 的时序违例”,即可启动完整的分析流程。

5.6 小结

六、应用场景与官方案例

本章介绍早期用户最认可的能力,以及 AMD 官方发布的三个应用案例。案例均来自 AMD 官方资料,仅供参考,实际效果因工程与模型而异。

6.1 用户评价最高的能力

据 AMD 公布,已有 800 余家客户参与早期试用。在试用后的问卷调查中,用户评价最有价值的能力包括:

1.分析综合、实现与时序结果

2.检索 AMD 官方文档

3.自动执行重复性的 Vivado 操作

4.创建工程、配置 IP

5.在运行失败后给出后续处理建议

(注:该问卷共收到 34 份有效回复。)

6.2 设计案例:创建 MicroBlaze V 微控制器

  • 输入:“为 AMD Spartan™ UltraScale+™ 评估板创建一个 AMD MicroBlaze V 微控制器”。
  • AI 首先确认目标板卡,随后制定 11 步执行计划。
  • 执行过程中遇到 Block 配置不匹配,AI 自行调整后重试。
  • 应用微控制器预设,配置本地存储器与时钟,最终完成包含 GPIO、UART 的最小系统。

该案例体现了 Agent 的任务规划与自主纠错能力:先制定计划再逐步执行,遇到错误时根据工具返回的信息自行调整。

6.3 实现案例:时序违例分析

  • 输入:“分析我的时序违例”。
  • AI 调用时序相关 Skill,执行可重复的 post-route 分析流程。
  • 对 735 条失败路径逐一分类。
  • 经修复与验证,失败路径降至 0 条。

该案例体现了 Skill 的价值:分析按固定流程进行,每条失败路径都被归入明确的类别,便于逐类处理和复核,其过程与第四章的示例一致。

6.4 算法优化案例:去马赛克算法的 HLS 实现

  • 应用:图像传感器去马赛克流水线,以 MATLAB 实现为起点,性能目标为 300 Mpixels/s。
  • 对比对象:专家手工编写的 Vitis HLS C++ 实现。
  • 据官方介绍,传统流程(算法 → 可综合 C++ → pragma 调优 → RTL)通常需要 3~6 周。

上述数据来自 AMD 内部测试(2026 年 9 月),为单一案例的对比结果,实际结果因流程与配置而异。

该案例体现了 Agent 在算法实现场景中的作用:从 MATLAB 算法出发,经可综合 C++ 转换、HLS 综合与 pragma 调优,在满足相同吞吐率目标的前提下缩短了开发周期,并降低了资源占用。

七、使用须知

7.1 前提条件

  • 已安装并获得授权的 Vivado / Vitis;
  • 支持 MCP 的客户端(如 VS Code、Claude Code、Cursor 等);
  • 可用的大语言模型(云端或本地);
  • AMD 账号(下载 MCP Server 与扩展时需要登录)。

7.2 快速上手

1.准备 AMD 工具、客户端与大语言模型;

2.登录 AMD 账号,下载对应操作系统的 MCP Server,并在客户端中完成配置;

3.从 GitHub 克隆 Skill 与设计示例,放置于客户端可识别的目录;

4.按设计示例完整运行一遍,再将其应用到日常工作中。

对于 VS Code 用户,AMD 提供了专用的 VS Code 扩展,内置 Vivado MCP Server 与知识库访问能力,下载安装即可使用。

7.3 部署方式

离线部署时需自行准备大语言模型。

7.4 当前支持范围

据官方介绍,其他工具与流程能力将按月陆续发布,具体以官方公告为准。

7.5 注意事项

  • 输出存在不确定性:AI 的输出具有一定随机性,相同问题在不同时间可能得到不同结果。关键结论应由工程师复核,修改建议应经评审后再采纳。
  • 先审阅计划,再授权执行:涉及修改文件、约束或驱动硬件的操作尤须注意。
  • 定位为辅助工具:技术判断与决策仍由工程师负责。

八、总结

  • 仅有大脑(LLM)只能“思考”和“表达”,完整的人(Agent)才能“执行”。
  • MCP 如同神经与双手,负责连接工具、获取信息;Skill 如同肌肉记忆,负责按正确步骤完成任务;知识库如同眼睛与书架,负责提供有出处的答案。
  • Ross 将上述三者整合,面向 FPGA 日常开发,不限定客户端与模型,并支持离线部署。

参考资料

AMD Ross 官方资源:

  • 产品主页:Ross 的介绍、功能概览与相关入口
    https://www.amd.com/en/products/software/ross-agentic-ai.html
  • 产品概述(PDF):官方产品介绍资料,本文的组成部分、案例与数据均出自此文档
    https://www.amd.com/content/dam/amd/en/documents/products/software-tools/amd-ross-agentic-ai-assistant-product-overview.pdf
  • 下载页:MCP Server、VS Code 扩展等下载(需登录 AMD 账号)
    https://www.amd.com/en/support/downloads/ross-agentic-ai.html
  • 在线 Chat:网页版 Ross Chat 入口
    https://ross.amd.com/chat
  • GitHub 仓库:Agent Skills 与设计示例
    https://github.com/xilinx/ross-ai-assistant
👍 点赞 · 0