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

Subversion Repositories altor32

[/] [altor32/] [trunk/] [rtl/] [sim/] [makefile] - Blame information for rev 32

Go to most recent revision | Details | Compare with Previous | View Log

Line No. Rev Author Line
1 27 ultra_embe
 
2
# Default binary to load & run
3
TEST_IMAGE  ?= test_image.bin
4
SIMARGS     ?=
5
CYCLES      ?= -1
6
STOP_AT     ?= 0xFFFFFFFF
7
 
8
# Default core to simulate
9
RTL_CORE      ?= cpu
10
CORE_FILENAME ?= altor32.v
11
 
12
# Waveform trace disabled by default
13
TRACE?= 0
14
 
15
# Enable debug output
16
DEBUG?= 0
17
 
18
# Enable instruction trace
19
INST_TRACE?= 0
20
 
21
# Top module (without .v extension)
22
TOP_MODULE = top
23
 
24
# Additional modules which can't be auto found
25
ADDITIONAL_MODULES = ../$(RTL_CORE)/$(CORE_FILENAME)
26
 
27
# CPP Source Files
28
SRC_CPP = main.cpp top.cpp
29
 
30
# Source directories
31
INC_DIRS = -I../$(RTL_CORE) -I../soc -I../peripheral
32
 
33
# Build directory
34
BUILD_DIR = build
35
 
36
VERILATOR_OPTS =
37
 
38
ifeq ($(TRACE),1)
39
    VERILATOR_OPTS += --trace
40
endif
41
 
42
ifeq ($(DEBUG),1)
43
    VERILATOR_OPTS += +define+CONF_CORE_DEBUG+
44
endif
45
 
46
ifeq ($(INST_TRACE),1)
47
    VERILATOR_OPTS += -CFLAGS "-DINST_TRACE"
48
endif
49
 
50
VERILATOR_OPTS += +define+SIMULATION+
51
 
52
all: run
53
 
54
compile: clean
55
        verilator --cc $(TOP_MODULE).v $(ADDITIONAL_MODULES) $(SRC_CPP) $(INC_DIRS) +define+CONF_TARGET_SIM+ --exe -Mdir $(BUILD_DIR) $(VERILATOR_OPTS)
56
        make -j -f V$(TOP_MODULE).mk -C $(BUILD_DIR)
57
 
58
run: compile
59
        ./$(BUILD_DIR)/V$(TOP_MODULE) -b $(STOP_AT) -c $(CYCLES) -f $(TEST_IMAGE) $(SIMARGS)
60
 
61
ifeq ($(TRACE),1)
62
view:
63
        gtkwave wave_dump.vcd gtksettings.sav
64
endif
65
 
66
clean :
67
        -rm -rf $(BUILD_DIR) wave_dump.vcd

powered by: WebSVN 2.1.0

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