VS Code extension for Nexys A7 projects on Windows. The setup flow is pure native Windows only. It does not install Ubuntu or WSL. Building for Nexys A7-100T requires a complete native XC7 bundle, but programming an existing .bit file can still work with the native Windows programmer alone.
What It Does
Detects whether native Windows FPGA tools are available
Downloads native Windows FPGA tools automatically on first run where upstream Windows builds exist
Verifies that a complete native XC7 bundle is installed before enabling builds
Starts Windows-native setup automatically on first activation
Builds projects from your normal Windows workspace when the native XC7 toolchain is complete
Programs existing .bit files with the native Windows programmer
Keeps the UI simple with a status bar, clear prompts, and one-click recovery
Quick Start
Install the extension.
Open a Verilog project folder in VS Code.
Let the extension bootstrap the native Windows tools automatically.
If the XC7 bundle is missing, setup now tries a native MSYS2-based openXC7 source build on Windows.
If you already have a .bit file, use FPGA: Program Board.
If you already have a prebuilt bundle, you can still import it directly on Windows.
Commands
FPGA: Check Setup
FPGA: Set Up Toolchain
FPGA: Build Bitstream
FPGA: Program Board
FPGA: Clean Build
Requirements
Windows 10/11
VS Code 1.110.0 or newer
Internet connection for first-time setup
Enough disk space for the FPGA toolchain
Notes
For this Windows-only flow, full Nexys A7-100T build requires the full XC7 bundle.
For a truly self-contained VSIX, place bundled native tools under backend/tools/ inside the extension package.
After dropping them in, run npm run check:bundled-tools to verify the package layout.
On normal first run, the extension tries to download OSS CAD Suite into %LOCALAPPDATA%\fpga-tools and makes the native Windows programmer available for existing .bit files.
If the full XC7 bundle is not already present, setup now attempts a Windows-native openXC7 source build by using MSYS2 under %LOCALAPPDATA%\fpga-tools\msys64.
Native Windows builds require the full native XC7 bundle:
yosys
nextpnr-xilinx
openFPGALoader
XRAY_DATABASE_DIR
XRAY_PART_YAML
XRAY_CHIPDB
XRAY_FASM2FRAMES
XRAY_XC7FRAMES2BIT
Native Windows programming of an existing .bit file works when openFPGALoader or another supported native programmer is available.
The native backend checks bundled .tools folders and %LOCALAPPDATA%\fpga-tools\openxc7.
No WSL or Ubuntu path is used by this setup flow.
For board programming, use the native Windows USB driver path for your board and cable.
If you already have a complete Windows XC7 bundle, import it with npm run import:xc7-bundle -- -Source C:\path\to\bundle.
If you have the individual Windows XC7 artifacts instead of a ready bundle, assemble one with npm run assemble:xc7-bundle -- ....
Or prepare the full bundle in one pass with npm run prepare:xc7-bundle -- ....
After validation, package that bundle with npm run package:xc7-bundle -- ....
Once that bundle is present, the extension is designed to use it for synthesis, implementation, and bitstream generation on Windows.