OpenCores
URL https://opencores.org/ocsvn/theia_gpu/theia_gpu/trunk

Subversion Repositories theia_gpu

[/] [theia_gpu/] [branches/] [icarus_version/] [simulation/] [Makefile] - Diff between revs 177 and 195

Only display areas with differences | Details | Blame | View Log

Rev 177 Rev 195
VERILOGEX = .v # Verilog file extension
VERILOGEX = .v # Verilog file extension
# testbench path TESTBENCH is passed from the command line
# testbench path TESTBENCH is passed from the command line
SCENEPATH =
SCENEPATH =
TESTBENCH = TestBench_verilog
TESTBENCH = TestBench_verilog
TESTBENCHPATH = ../testbench/${TESTBENCH}$(VERILOGEX)
TESTBENCHPATH = ../testbench/${TESTBENCH}$(VERILOGEX)
SOURCEPATH = ../rtl
SOURCEPATH = ../rtl
GPUCONFIGURATIONSCRIPT=../scripts/configure_gpu.pl
GPUCONFIGURATIONSCRIPT=../scripts/configure_gpu.pl
INPUTCONFIGURATIONSCRIPT=../scripts/configure_params.pl
INPUTCONFIGURATIONSCRIPT=../scripts/configure_params.pl
#iverilog CONFIG
#iverilog CONFIG
VERILOG_CMD = iverilog
VERILOG_CMD = iverilog
GPUCORES = 4
GPUCORES = 4
 
WIDTH = 200
 
HEIGHT = 200
GPUMEMBANKS = $(GPUCORES)
GPUMEMBANKS = $(GPUCORES)
#VERILOG_FLAGS  =
#VERILOG_FLAGS  =
# VVP (iverilog runtime engine)
# VVP (iverilog runtime engine)
VVP_CMD = vvp
VVP_CMD = vvp
#VVP_FLAGS =
#VVP_FLAGS =
#Simulation Vars
#Simulation Vars
SIMDIR = .
SIMDIR = .
DUMPTYPE = none
DUMPTYPE = none
DEBUG_CORE_ID =
DEBUG_CORE_ID =
SCENEPATH =
SCENEPATH =
#Viewer
#Viewer
WAVEFORM_VIEWER = gtkwave # Waveform viewer executable
WAVEFORM_VIEWER = gtkwave # Waveform viewer executable
all: compile run view
all: compile run view
file_check:
file_check:
ifeq ($(strip $(FILES)),)
ifeq ($(strip $(FILES)),)
                @echo "FILES not set. Use FILES=value to set it. Put mutltiple files in quotes"
                @echo "FILES not set. Use FILES=value to set it. Put mutltiple files in quotes"
                @exit 2
                @exit 2
endif
endif
testbench_check:
testbench_check:
ifeq ($(strip $(TESTBENCH)),)
ifeq ($(strip $(TESTBENCH)),)
                @echo "TESTBENCH not set. Use TESTBENCH=value to set it."
                @echo "TESTBENCH not set. Use TESTBENCH=value to set it."
                @exit 2
                @exit 2
endif
endif
check:
check:
        $(VERILOG_CMD) -t null $(FILES)
        $(VERILOG_CMD) -t null $(FILES)
# Setup up project directory
# Setup up project directory
new :
new :
        echo "Setting up project ${PROJECT}"
        echo "Setting up project ${PROJECT}"
        mkdir rtl testbench simulation
        mkdir rtl testbench simulation
compile : testbench_check
compile : testbench_check
        perl $(GPUCONFIGURATIONSCRIPT) $(GPUCORES) $(GPUMEMBANKS)
        perl $(GPUCONFIGURATIONSCRIPT) $(GPUCORES) $(GPUMEMBANKS)
        cp $(SOURCEPATH)/aDefinitions.v .
        cp $(SOURCEPATH)/aDefinitions.v .
ifeq ($(strip $(DEBUG_CORE_ID)),)
ifeq ($(strip $(DEBUG_CORE_ID)),)
        $(VERILOG_CMD) -o  $(SIMDIR)/$(TESTBENCH) $(TESTBENCHPATH) $(SOURCEPATH)/*
        $(VERILOG_CMD) -o  $(SIMDIR)/$(TESTBENCH) $(TESTBENCHPATH) $(SOURCEPATH)/*
else
else
         $(VERILOG_CMD) -DDEBUG=1 -DDUMP_CODE=1 -DDEBUG_CORE=$(DEBUG_CORE_ID) -o  $(SIMDIR)/$(TESTBENCH) $(TESTBENCHPATH) $(SOURCEPATH)/*
         $(VERILOG_CMD) -DDEBUG=1 -DDUMP_CODE=1 -DDEBUG_CORE=$(DEBUG_CORE_ID) -o  $(SIMDIR)/$(TESTBENCH) $(TESTBENCHPATH) $(SOURCEPATH)/*
endif
endif
        rm -f aDefinitions.v
        rm -f aDefinitions.v
run : testbench_check
run : testbench_check
ifeq ($(strip $(SCENEPATH)),)
ifeq ($(strip $(SCENEPATH)),)
                @echo "SCENEPATH not set. Use SCENEPATH=value to set it"
                @echo "SCENEPATH not set. Use SCENEPATH=value to set it"
                @exit 2
                @exit 2
endif
endif
        cp -f $(SCENEPATH)/*.mem .
        cp -f $(SCENEPATH)/*.mem .
        perl $(INPUTCONFIGURATIONSCRIPT) $(GPUCORES)
        perl $(INPUTCONFIGURATIONSCRIPT) $(GPUCORES) $(WIDTH) $(HEIGHT)
        $(VVP_CMD) ./$(TESTBENCH) -$(DUMPTYPE) $(VVP_FLAGS)
        $(VVP_CMD) ./$(TESTBENCH) -$(DUMPTYPE) $(VVP_FLAGS)
view : testbench_check
view : testbench_check
        $(WAVEFORM_VIEWER)  $(SIMDIR)/$(TESTBENCH).$(DUMPTYPE)
        $(WAVEFORM_VIEWER)  $(SIMDIR)/$(TESTBENCH).$(DUMPTYPE)
clean :
clean :
        rm *.{mem,ppm,log}
        rm *.{mem,ppm,log}
 
 

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.