Token导航 LogoToken导航TokenDH.com
Fpga MCP Servers logo
运维云端stdio官方级别未说明来源级核验

Fpga MCP Servers

MCP Server

用于Intel Quartus FPGA构建和DE10-Nano开发板管理的自动化服务,支持异步操作以避免阻塞。

工具数

14

提示词数

0

GitHub Stars

3

资源数

0
PythonClaude云端部署Claude

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

abbbe

提供方

abbbe

最后核验

2026/5/17 20:22

运行时

Python

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

python3 -m venv .venv

详细介绍

用于DE10纳米FPGA开发的MCP服务器

两个模型上下文协议(MCP)服务器,用于自动化Intel Quartus FPGA构建和DE10 Nano板管理。

服务器

夸图斯mcp

Intel Quartus项目的FPGA构建自动化。

重要提示:构建时始终使用异步模式 Quartus FPGA构建需要20-45分钟。 始终使用 quartus_build_async 以避免堵塞。 同步 quartus_build 将在整个构建期间阻止Claude-不要使用它。 异步工作流: 1. quartus_build_async() -开始构建,获取task_id,继续工作 1. quartus_task_status() -检查是否完成(定期轮询) 1. quartus_task_wait() -阻塞直到完成(当你需要结果时) 1. quartus_task_cancel() -必要时中止
工具说明
quartus_build_async(project_path, clean_first?)使用此 -在后台开始构建,立即返回。
quartus_task_status(task_id?)无阻塞地检查构建进度。
quartus_task_wait(timeout?)等待当前构建完成,返回结果。
quartus_task_cancel()取消当前正在运行的生成。
quartus_task_list()列出当前+最近完成的构建。
quartus_status(project_path)检查是否存在构建工件。
quartus_clean(project_path)清理构建工件。
quartus_build(project_path, clean_first?)同步构建- 避免 (20-45分钟)。

特征:

  • 自动配置 PATHQSYS_ROOTDIR 第24.1季度
  • 1小时构建超时
  • 分析构建日志以查找错误
  • 返回具有RBF路径和大小的结构化结果
  • 异步构建:在后台运行构建而不阻塞Claude
  • 单一构建执行:每台机器一次只能构建一个版本(通过 ~/.quartus-mcp/state.json)
  • 构建历史记录:保留最后10个已完成的构建及其结果

de10纳米mcp

DE10 Nano(Cyclone V SoC)的板管理和部署。

工具说明
board_status()快速健康检查-SSH连接、串行端口、正常运行时间。
ssh_cmd(command, timeout?, sudo?)通过SSH执行命令。
serial_cmd(command, timeout?)通过串行控制台(pyserial)执行命令。
sw_sync(local_dir, remote_dir?)将整个文件夹同步到板上(默认值:~/sw)。
fpga_verify()读取寄存器以验证比特流是否已加载。
fpga_deploy(rbf_path)完全部署:备份、复制、重新启动、等待、验证。
fpga_recover()当主板无法启动时,通过串行进行U-Boot恢复。

特征:

  • 用途 paramiko SSH(适当的超时处理)
  • 用途 pyserial 用于串行(永远不会像shell命令那样挂起)
  • fpga_deploy 重启后在线投票(90秒超时)
  • fpga_recover 自动计算U-Boot的十六进制文件大小 fatwrite

配置

默认电路板设置(硬编码 de10nano_mcp/server.py):

设置
SSH主机analog.local
SSH用户analog
SSH端口22
串行端口/dev/ttyUSB0
串行波特率115200
启动RBF/boot/soc_system.rbf

默认四分位数设置(in quartus_mcp/server.py):

设置
Quartus小径/opt/altera_lite/24.1std/quartus/bin
QSYS根/opt/altera_lite/24.1std/quartus/sopc_builder/bin
构建超时3600 秒(1小时)

安装

cd ~/Documents/dvp/mcp-servers

# Create virtual environment
python3 -m venv .venv

# Install both servers (editable mode)
.venv/bin/pip install -e quartus-mcp -e de10nano-mcp

Claude代码配置

添加到您的项目 .mcp.json:

{
  "mcpServers": {
    "quartus": {
      "command": "/home/abb/Documents/dvp/mcp-servers/.venv/bin/quartus-mcp"
    },
    "de10nano": {
      "command": "/home/abb/Documents/dvp/mcp-servers/.venv/bin/de10nano-mcp"
    }
  }
}

重新启动Claude Code以加载服务器。

用法示例

构建FPGA(异步-推荐)

# Start build in background (returns immediately)
quartus_build_async(project_path="/home/abb/de10-nanon/hdl-phase/projects/cn0579/de10nano")

# Do other work while build runs...

# Check status periodically
quartus_task_status()

# Or wait for completion when you need the result
quartus_task_wait()

部署到董事会

Use fpga_deploy with rbf_path="/home/abb/de10-nanon/hdl-phase/projects/cn0579/de10nano/cn0579_de10nano.rbf"

将软件同步到板上

Use sw_sync with local_dir="/home/abb/de10-nanon/hdl-phase/sw"

这将同步整个 sw/ 文件夹到 ~/sw/ 在董事会上。然后按以下方式运行脚本:

sudo python3 ~/sw/pll_tuner.py monitor

检查板状态

Use board_status (no arguments)

从坏比特流中恢复

如果电路板在出现错误比特流后卡在U-Boot提示符处:

Use fpga_recover (no arguments)

这将:

  1. 通过串行连接
  2. 从SD卡加载备份RBF
  3. 计算文件大小并写入主RBF
  4. 重新启动并验证

异步构建工作流

FPGA构建需要20-45分钟。始终使用异步模式以避免阻塞Claude。

1. START BUILD (returns immediately):
   quartus_build_async(project_path="/path/to/project")
   -> Returns: task_id (e.g., "build-20240122-153000")
   -> Claude can now do other work!

2. CHECK PROGRESS (non-blocking):
   quartus_task_status()
   -> Returns: RUNNING + elapsed time, or SUCCESS/FAILED + results

3. WAIT FOR COMPLETION (when you need the result):
   quartus_task_wait(timeout=3600)
   -> Blocks until build finishes, returns full result
   -> Use this when you're ready to deploy

4. CANCEL IF NEEDED:
   quartus_task_cancel()
   -> Kills the running build process

5. VIEW HISTORY:
   quartus_task_list()
   -> Shows current task + last 10 completed builds

为什么async很重要: 同步构建块Claude 20-45分钟,浪费上下文 Async允许Claude启动构建,执行其他任务(编辑代码, 运行测试,回答问题),然后在构建完成时返回查看。

测试

使用模拟模式运行测试(不需要真正的Quartus):

cd ~/Documents/dvp/mcp-servers-async
QUARTUS_MCP_MOCK=3 .venv/bin/python quartus-mcp/tests/test_quartus_mcp.py

模拟模式环境变量:

  • QUARTUS_MCP_MOCK=1 -启用10秒构建的模拟
  • QUARTUS_MCP_MOCK= -使用N秒构建启用模拟

依赖项

  • Python>=3.10
  • mcp >=1.0.0(MCP Python SDK)
  • paramiko >=3.4.0(SSH)
  • pyserial >=3.5(串行)

许可证

麻省理工学院

目录标签

目录标签

PythonClaude云端部署FPGA开发本地部署自动化构建开发板管理异步操作

支持客户端

Claude

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

none

运行时(runtime,运行环境)

Python

工具数量(toolCount,工具数)

14

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdionone部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP