From 17fb1b213dd9bf79506bbe33c369988f4d0707ce Mon Sep 17 00:00:00 2001 From: Myfro9 <36755290+Myfro9@users.noreply.github.com> Date: Sat, 9 May 2026 01:37:44 -0500 Subject: [PATCH] =?UTF-8?q?=E5=90=8C=E6=AD=A5=E4=BA=86=20fpga=5Fflash,=20v?= =?UTF-8?q?ivado-prj-create=20=E4=B8=A4=E4=B8=AAskill?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .stfolder/syncthing-folder-594de7.txt | 5 + fpga_flash/SKILL.md | 150 +++ fpga_flash/Task01.md | 73 ++ fpga_flash/scripts/check_flash_csv.py | 80 ++ fpga_flash/scripts/gen_mcs.py | 88 ++ fpga_flash/scripts/program_flash.py | 118 ++ fpga_flash/scripts/step3_write_mcs.tcl | 16 + fpga_flash/scripts/step4_5_program.tcl | 47 + vivado-prj-create/RF_switch_bd.tcl | 1229 ++++++++++++++++++++ vivado-prj-create/SKILL.md | 609 ++++++++++ vivado-prj-create/emv9_atsc3_bd.tcl | 1421 ++++++++++++++++++++++++ vivado-prj-create/evals/evals.json | 35 + vivado-prj-create/ipots_bd.tcl | 596 ++++++++++ 13 files changed, 4467 insertions(+) create mode 100644 .stfolder/syncthing-folder-594de7.txt create mode 100644 fpga_flash/SKILL.md create mode 100644 fpga_flash/Task01.md create mode 100644 fpga_flash/scripts/check_flash_csv.py create mode 100644 fpga_flash/scripts/gen_mcs.py create mode 100644 fpga_flash/scripts/program_flash.py create mode 100644 fpga_flash/scripts/step3_write_mcs.tcl create mode 100644 fpga_flash/scripts/step4_5_program.tcl create mode 100644 vivado-prj-create/RF_switch_bd.tcl create mode 100644 vivado-prj-create/SKILL.md create mode 100644 vivado-prj-create/emv9_atsc3_bd.tcl create mode 100644 vivado-prj-create/evals/evals.json create mode 100644 vivado-prj-create/ipots_bd.tcl diff --git a/.stfolder/syncthing-folder-594de7.txt b/.stfolder/syncthing-folder-594de7.txt new file mode 100644 index 0000000..93dcc42 --- /dev/null +++ b/.stfolder/syncthing-folder-594de7.txt @@ -0,0 +1,5 @@ +# This directory is a Syncthing folder marker. +# Do not delete. + +folderID: ggxeg-zoyv2 +created: 2026-05-09T01:23:05-05:00 diff --git a/fpga_flash/SKILL.md b/fpga_flash/SKILL.md new file mode 100644 index 0000000..e39ce0d --- /dev/null +++ b/fpga_flash/SKILL.md @@ -0,0 +1,150 @@ +--- +name: fpga_flash +description: | + 烧写 Artix-7 系列 FPGA 的外部 Flash(SPI NOR Flash)。适用于 EMV7.1 等 Artix-7 板卡,支持 Micron mt25ql128 和 Winbond w25q128bv 两种 Flash 型号。 + 当用户提到"烧写 flash"、"flash 编程"、"固化 bit 文件"、"下载到 flash"、"program flash"、"write flash"、"burn flash"、"Vivado flash"、"SPI flash 烧写"时,必须触发此 skill。 +--- + +# FPGA Flash 烧写流程(Artix-7 / EMV7.1) + +本 skill 由 Claude **全自动执行**完整的 Flash 烧写流程。除了向用户确认必要信息外,所有操作(文件检查、CSV 修改、Vivado 命令执行、硬件编程)均由 Claude 直接完成,不要求用户手动执行任何命令。 + +--- + +## 执行规范 + +**自动执行原则:** +- 每个需要调用 Vivado 的步骤,Claude 通过 Bash 工具调用 skill `scripts/` 目录下的 Python 脚本 +- **禁止**在用户工程目录或系统临时目录(`%TEMP%`、`/tmp`)下创建任何脚本文件 +- 所有可执行脚本已预置在 skill 目录的 `scripts/` 子目录中,Claude 只需传入正确的参数调用 + +**定位 skill 脚本目录:** + +Claude 在执行前需先确认脚本的完整路径。使用 Glob 工具查找: +``` +C:/Users/<当前用户>/.claude/skills/fpga_flash/scripts/gen_mcs.py +``` +或直接使用默认路径:`C:/Users/bowei/.claude/skills/fpga_flash/scripts/` + +**scripts/ 目录内容:** +``` +scripts/ + check_flash_csv.py # 第一步:检查/更新 Vivado Flash 器件表 + gen_mcs.py # 第三步:生成 .mcs 文件 + program_flash.py # 第四、五步:连接目标板并烧写 Flash + step3_write_mcs.tcl # gen_mcs.py 使用的 Tcl 模板(勿手动修改) + step4_5_program.tcl # program_flash.py 使用的 Tcl 模板(勿手动修改) +``` + +**调用方式(Bash 工具):** +```bash +python "C:/Users/bowei/.claude/skills/fpga_flash/scripts/