mirror of
https://github.com/openhwgroup/cva6.git
synced 2025-04-19 19:57:11 -04:00
46 lines
1.3 KiB
Makefile
46 lines
1.3 KiB
Makefile
VIVADO ?= vivado
|
|
VIVADOFLAGS ?= -nojournal -mode batch -source scripts/prologue.tcl
|
|
|
|
work-dir := work-fpga
|
|
bit := $(work-dir)/ariane_xilinx.bit
|
|
mcs := $(work-dir)/ariane_xilinx.mcs
|
|
ip-dir := xilinx
|
|
ips := xlnx_axi_clock_converter.xci \
|
|
xlnx_axi_dwidth_converter.xci \
|
|
xlnx_axi_dwidth_converter_dm_master.xci \
|
|
xlnx_axi_dwidth_converter_dm_slave.xci \
|
|
xlnx_axi_quad_spi.xci \
|
|
xlnx_axi_gpio.xci \
|
|
xlnx_clk_gen.xci \
|
|
xlnx_mig_7_ddr3.xci
|
|
|
|
ips := $(addprefix $(work-dir)/, $(ips))
|
|
ips-target := $(join $(addsuffix /ip/, $(addprefix $(ip-dir)/, $(basename $(ips)))), $(ips))
|
|
|
|
all: $(mcs)
|
|
|
|
# Generate mcs from bitstream
|
|
$(mcs): $(bit)
|
|
$(VIVADO) $(VIVADOFLAGS) -source scripts/write_cfgmem.tcl -tclargs $@ $^
|
|
|
|
$(bit): $(ips)
|
|
mkdir -p $(work-dir)
|
|
$(VIVADO) $(VIVADOFLAGS) -source scripts/run.tcl
|
|
cp ariane.runs/impl_1/ariane_xilinx* ./$(work-dir)
|
|
|
|
$(ips): %.xci :
|
|
mkdir -p $(work-dir)
|
|
@echo Generating $(@F)
|
|
@cd $(ip-dir)/$(basename $(@F)) && make clean && make
|
|
@cp $(ip-dir)/$(basename $(@F))/$(basename $(@F)).srcs/sources_1/ip/$(basename $(@F))/$(@F) $@
|
|
|
|
mcs: $(mcs)
|
|
|
|
program:
|
|
$(VIVADO) $(VIVADOFLAGS) -source scripts/program.tcl
|
|
|
|
clean:
|
|
rm -rf *.log *.jou *.str *.mif *.xpr $(work-dir) ariane.cache ariane.hw ariane.ip_user_files scripts/vivado*
|
|
|
|
.PHONY:
|
|
clean
|