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

Subversion Repositories altor32

[/] [altor32/] [trunk/] [rtl/] [sim_icarus/] [makefile] - Blame information for rev 37

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 37 ultra_embe
VERILOG_CMD = iverilog
2
VVP_CMD = vvp
3
DUMPTYPE = vcd
4
WAVEFORM_VIEWER = gtkwave
5
 
6
TEST_IMAGE ?= ./test_image.bin
7
 
8
# Cache
9
ICACHE = ENABLED
10
DCACHE = DISABLED
11
 
12
all: compile run
13
 
14
# Testbench
15
SRC+= ./top.v ./top_tb.v
16
 
17
# CPU
18
SRC+= ../cpu/altor32.v ../cpu/altor32_alu.v ../cpu/altor32_regfile_sim.v
19
SRC+= ../cpu/altor32_fetch.v ../cpu/altor32_exec.v ../cpu/altor32_lsu.v
20
SRC+= ../cpu/altor32_dfu.v ../cpu/altor32_lfu.v ../cpu/altor32_writeback.v
21
SRC+= ../cpu/altor32_icache.v ../cpu/altor32_noicache.v ../cpu/altor32_wb_fetch.v
22
SRC+= ../cpu/altor32_dcache.v ../cpu/altor32_dcache_mem_if.v
23
SRC+= ../cpu/altor32_ram_dp.v ../cpu/altor32_ram_sp.v
24
 
25
# SOC
26
SRC+= ../soc/soc.v ../soc/soc_pif8.v ../soc/dmem_mux3.v ../soc/cpu_if.v
27
 
28
# Memory
29
SRC+= ./ram.v ./ram_dp8.v
30
 
31
# Peripherals
32
SRC+= ../peripheral/timer_periph.v
33
SRC+= ../peripheral/intr_periph.v
34
SRC+= ../peripheral/uart_periph.v
35
SRC+= ../peripheral/uart.v
36
 
37
SRC_FLAGS = -DSIMULATION
38
SRC_FLAGS+= -DALTOR32_CLEAR_RAM
39
INC_DIRS  = -I. -I../soc -I../peripheral -I../cpu
40
 
41
# Cache
42
ifeq ($(ICACHE),ENABLED)
43
        SRC_FLAGS += -DICACHE_ENABLED=\"ENABLED\"
44
else
45
        SRC_FLAGS += -DICACHE_ENABLED=\"DISABLED\"
46
endif
47
ifeq ($(DCACHE),ENABLED)
48
        SRC_FLAGS += -DDCACHE_ENABLED=\"ENABLED\"
49
else
50
        SRC_FLAGS += -DDCACHE_ENABLED=\"DISABLED\"
51
endif
52
 
53
 
54
memory_img:
55
        gcc -o readmem readmem.c
56
        ./readmem -o 0 -f $(TEST_IMAGE) > mem_0.hex
57
        ./readmem -o 1 -f $(TEST_IMAGE) > mem_1.hex
58
        ./readmem -o 2 -f $(TEST_IMAGE) > mem_2.hex
59
        ./readmem -o 3 -f $(TEST_IMAGE) > mem_3.hex
60
 
61
check:
62
        $(VERILOG_CMD) -t null $(SRC) $(INC_DIRS) $(SRC_FLAGS)
63
 
64
compile :
65
        $(VERILOG_CMD) -o output.out $(SRC) $(INC_DIRS) $(SRC_FLAGS)
66
 
67
run : compile memory_img
68
        $(VVP_CMD) output.out -$(DUMPTYPE) $(VVP_FLAGS)
69
 
70
view : compile
71
        $(WAVEFORM_VIEWER) waveform.vcd gtksettings.sav
72
 
73
clean :
74
        -rm output.out waveform.vcd *.hex readmem
75
 

powered by: WebSVN 2.1.0

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