First steps with openFPGALoader¶
Install¶
Packages are available for Linux distributions, Windows (MSYS2) and macOS:
Arch Linux:
sudo pacman -S openfpgaloader
Fedora:
sudo dnf copr enable mobicarte/openFPGALoader; sudo dnf install openFPGALoader
MSYS2:
pacman -S mingw-w64-ucrt-x86_64-openFPGALoader
macOS:
brew install openfpgaloader
More instructions for other installation scenarios are available in Installing openFPGALoader.
Programming a development board¶
Just simply replace my_fpga_board
with any FPGA board from Boards
(or openFPGALoader --list-boards
) in any of the two commands below, depending on if you want to program the volatile
part of your FPGA (faster but not persistent) or the flash part of your FPGA (slower but persistent):
openFPGALoader -b my_fpga_board my_bitstream.bit # Program to SRAM
openFPGALoader -b my_fpga_board -f my_bitstream.bit # Program to flash
Note
When a bitstream file is compatible with both memory load and FLASH write, the default behavior is to load bitstream in memory.
Programming an “standalone” FPGA¶
If your FPGA doesn’t come with a built-in programmer or if you prefer to use an external cable, you can specify a cable
to use from Cables (or openFPGALoader --list-cables
):
openFPGALoader -c my_cable my_bitstream.bit # Program to SRAM
openFPGALoader -c my_cable -f my_bitstream.bit # Program to flash
Note
For some cable (like digilent adapters) signals from the converter are not just directly to the FPGA.
For this case, the -c
must be added.
Hint
FTDI/FTDI-compatible cable users: the -d
option lets you specify a specific FTDI device:
openFPGALoader -d /dev/ttyUSBX
When the -d
option is not provided, openFPGALoader will opens the first FTDI adapter it finds.
Therefore it is preferable to use this flag if your computer is connected to multiple FTDI devices.
Troubleshooting¶
Please refer to Troubleshooting.