kind of a "crash course" on fusesoc, the usual commands used during a FPGA development cycle. A good starting point is to watch Olof's presentation at Wosh: https://www.youtube.com/watch?v=HOFYplIBSWM
Additional documentation/tutorials:
- FuseSoC user guide
- Fun with FuseSoC (Adam Taylor @hackster.io)
fusesoc library add <library_name>
where can be a local filesystem or a git repository
fusesoc core list
fusesoc run --setup --tool vivado <core_name> cd build make <core_name>.xpr
make build-gui
- setup
- build
- run
where <target>
and <tool>
are specified in the core file
fusesoc run --target <target> --tool <tool> <system>
or fusesoc run --target <target> <system>
fusesoc library update library_name
Where a system project is a collection of HDL glue code and IP cores managed by FuseSos: (used for a Vivado project, can be easily adapted for other tools)
#
# Author: Rafael do Nascimento Pereira <[email protected]>
# Description: Makefile to generate Vivado project using FuseSoc
#
PROJ_NAME = system_name
VERSION = 0.1
BUILD_DIR = $(abspath ./build/$(PROJ_NAME)_$(VERSION)/synth-vivado)
all: bitstream
bitstream:
fusesoc run --target=synth --no-export $(PROJ_NAME)
project:
fusesoc run --setup --target=synth --no-export $(PROJ_NAME)
gui:
cd $(BUILD_DIR); make build-gui
clean:
rm -fr *.jou *.log build/ .Xil