67 lines
2.3 KiB
Makefile
67 lines
2.3 KiB
Makefile
|
RTL_CORE_SRC := ../../rtl/core
|
||
|
|
||
|
NEORV32_PKG := $(RTL_CORE_SRC)/neorv32_package.vhd
|
||
|
|
||
|
NEORV32_APP_SRC := \
|
||
|
$(RTL_CORE_SRC)/neorv32_application_image.vhd \
|
||
|
|
||
|
NEORV32_MEM_ENTITIES := \
|
||
|
$(RTL_CORE_SRC)/neorv32_dmem.entity.vhd \
|
||
|
$(RTL_CORE_SRC)/neorv32_imem.entity.vhd
|
||
|
|
||
|
NEORV32_CORE_SRC := \
|
||
|
$(RTL_CORE_SRC)/neorv32_bootloader_image.vhd \
|
||
|
$(RTL_CORE_SRC)/neorv32_boot_rom.vhd \
|
||
|
$(RTL_CORE_SRC)/neorv32_bus_keeper.vhd \
|
||
|
$(RTL_CORE_SRC)/neorv32_busswitch.vhd \
|
||
|
$(RTL_CORE_SRC)/neorv32_cfs.vhd \
|
||
|
$(RTL_CORE_SRC)/neorv32_cpu.vhd \
|
||
|
$(RTL_CORE_SRC)/neorv32_cpu_alu.vhd \
|
||
|
$(RTL_CORE_SRC)/neorv32_cpu_bus.vhd \
|
||
|
$(RTL_CORE_SRC)/neorv32_cpu_control.vhd \
|
||
|
$(RTL_CORE_SRC)/neorv32_cpu_cp_bitmanip.vhd \
|
||
|
$(RTL_CORE_SRC)/neorv32_cpu_cp_fpu.vhd \
|
||
|
$(RTL_CORE_SRC)/neorv32_cpu_cp_muldiv.vhd \
|
||
|
$(RTL_CORE_SRC)/neorv32_cpu_cp_shifter.vhd \
|
||
|
$(RTL_CORE_SRC)/neorv32_cpu_decompressor.vhd \
|
||
|
$(RTL_CORE_SRC)/neorv32_cpu_regfile.vhd \
|
||
|
$(RTL_CORE_SRC)/neorv32_debug_dm.vhd \
|
||
|
$(RTL_CORE_SRC)/neorv32_debug_dtm.vhd \
|
||
|
$(RTL_CORE_SRC)/neorv32_fifo.vhd \
|
||
|
$(RTL_CORE_SRC)/neorv32_gpio.vhd \
|
||
|
$(RTL_CORE_SRC)/neorv32_gptmr.vhd \
|
||
|
$(RTL_CORE_SRC)/neorv32_icache.vhd \
|
||
|
$(RTL_CORE_SRC)/neorv32_mtime.vhd \
|
||
|
$(RTL_CORE_SRC)/neorv32_neoled.vhd \
|
||
|
$(RTL_CORE_SRC)/neorv32_pwm.vhd \
|
||
|
$(RTL_CORE_SRC)/neorv32_slink.vhd \
|
||
|
$(RTL_CORE_SRC)/neorv32_spi.vhd \
|
||
|
$(RTL_CORE_SRC)/neorv32_sysinfo.vhd \
|
||
|
$(RTL_CORE_SRC)/neorv32_top.vhd \
|
||
|
$(RTL_CORE_SRC)/neorv32_trng.vhd \
|
||
|
$(RTL_CORE_SRC)/neorv32_twi.vhd \
|
||
|
$(RTL_CORE_SRC)/neorv32_uart.vhd \
|
||
|
$(RTL_CORE_SRC)/neorv32_wdt.vhd \
|
||
|
$(RTL_CORE_SRC)/neorv32_wishbone.vhd \
|
||
|
$(RTL_CORE_SRC)/neorv32_xirq.vhd
|
||
|
|
||
|
# Before including this partial makefile, NEORV32_MEM_SRC needs to be set
|
||
|
# (containing two VHDL sources: one for IMEM and one for DMEM)
|
||
|
|
||
|
NEORV32_SRC := ${NEORV32_PKG} ${NEORV32_APP_SRC} ${NEORV32_MEM_ENTITIES} ${NEORV32_MEM_SRC} ${NEORV32_MEM_SRC_EXTRA} ${NEORV32_CORE_SRC} ${NEORV32_CORE_SRC_EXTRA}
|
||
|
NEORV32_VERILOG_ALL := ${NEORV32_VERILOG_SRC} ${NEORV32_VERILOG_SRC_EXTRA}
|
||
|
|
||
|
ICE40_SRC := \
|
||
|
devices/ice40/sb_ice40_components.vhd
|
||
|
|
||
|
ECP5_SRC := \
|
||
|
devices/ecp5/ecp5_components.vhd
|
||
|
|
||
|
ifeq ($(DEVICE_SERIES),ecp5)
|
||
|
DEVICE_SRC := ${ECP5_SRC}
|
||
|
else
|
||
|
DEVICE_SRC := ${ICE40_SRC}
|
||
|
endif
|
||
|
|
||
|
# Optionally NEORV32_VERILOG_SRC can be set to a list of Verilog sources
|