Skip to main content

gf-synth

Synthesize SystemVerilog/Verilog with Yosys. Reports area, timing, and resource utilization. Warns about unsupported SV constructs. Example: "synthesize my design for iCE40"

Quellinformationen

Repository
codejunkie99/Gateflow-Plugin
Letzte Quellaktivität
26. März 2026 um 10:52
Erkannte Sprache von SKILL.md
Englisch
Sterne
117
Forks
16

Installationsoptionen

Standardmäßig ist der Prompt ausgewählt, der zuerst die Quelle prüft. Sie können zu einem direkten Befehl wechseln oder eine lokale Kopie herunterladen.

Quelldateien prüfen

Lesen Sie SKILL.md und alle von SkillsMP angezeigten Begleitdateien, bevor Sie sich für eine Installation entscheiden.

SKILL.md wird angezeigt

SKILL.md
Quellanweisungen · Schreibgeschützte Vorschau
name
gf-synth
description
Synthesize SystemVerilog/Verilog with Yosys. Reports area, timing, and resource utilization. Warns about unsupported SV constructs. Example: "synthesize my design for iCE40"
allowed-tools
["Bash","Read","Write","Glob","Grep","Task"]
# GF-Synth — Yosys Synthesis Skill ## Tool Detection ```bash which yosys ``` If not found: ``` ---GATEFLOW-RESULT--- STATUS: ERROR DETAILS: Yosys not installed. Install to enable synthesis. macOS: brew install yosys Linux: sudo apt install yosys ---END-GATEFLOW-RESULT--- ``` ## Pre-Synthesis SV Subset Check Before synthesis, scan for unsupported constructs: ```bash grep -rn "^\s*interface\s\|^\s*modport\s\|^\s*class\s\|^\s*bind\s" <files> ``` If found, warn user. Do NOT proceed — it will produce confusing errors. ## Workflow 1. Check project context (`.gateflow/project.yaml`) for target 2. Pre-synthesis lint for unsupported SV constructs 3. Map board to Yosys synth target 4. Run synthesis via sv-synth agent or directly 5. Parse stat output for LUT/FF/BRAM/DSP 6. Report structured result ## Result Format ``` ---GATEFLOW-RESULT--- STATUS: PASS | FAIL | ERROR RESOURCES: LUTs: N FFs: N BRAM: N DSP: N TARGET: ice40 | ecp5 | gowin | xilinx | generic FILES: [synth output files] DETAILS: [summary or error explanation] ---END-GATEFLOW-RESULT--- ```
Auf GitHub ansehen