]> rtime.felk.cvut.cz Git - fpga/lx-cpu1/lx-rocon.git/blob - hw/tb/Makefile
c9fcb8fdefd99a5a40d10040de7f2b22fa74939b
[fpga/lx-cpu1/lx-rocon.git] / hw / tb / Makefile
1 GHDL=ghdl
2 tumbl_SRC=mbl_pkg.vhd mem.vhd fetch.vhd exeq.vhd decode.vhd core_ctrl.vhd
3 tumbl_DIR=../tumbl
4 lx_rocon_tumbl_SRC=lx_rocon_imem.vhd lx_rocon_dmem.vhd lx_rocon_gprf_abd.vhd lx_rocon_tumbl.vhd
5 lx_rocon_tumbl_DIR=../lx-rocon_tumbl
6 lx_fncapprox_SRC=lx_fncapprox_pkg.vhd lx_fncapprox_dsp48.vhd rom_table.vhd lx_fncapprox.vhd
7 lx_fncapprox_DIR=../lx-fncapprox
8 lx_util_SRC=util_pkg.vhd lx_rocon_pkg.vhd xilinx_dualport_bram.vhd
9 lx_util_DIR=..
10 lx_rocon_SRC=dff3.vhd qcounter.vhd \
11         irc_proc_inc.vhd crc.vhd cnt_div.vhd measurement_register.vhd lxmaster_transmitter.vhd \
12         lxmaster_receiver.vhd lx_crosdom_ser_fifo.vhd irc_reader.vhd irc_proc_main.vhd \
13         dff2.vhd bus_tumbl.vhd bus_measurement.vhd bus_lxmaster.vhd bus_irc.vhd lx_rocon_top.vhd
14 lx_rocon_DIR=..
15
16 MODULES=tumbl lx_util lx_rocon_tumbl lx_rocon lx_fncapprox
17
18 SRC=$(foreach m, $(MODULES), $($(m)_SRC:%=$($(m)_DIR)/%))
19
20 $(warning SRC=$(SRC))
21
22 SRC+=lx_rocon_top_tb.vhd
23 SRC+=lx_tumbl_tb.vhd
24
25 CFLAGS += -Wall
26
27 GHDLFLAGS+=
28 ANALYZEFLAGS+=--std=93c --ieee=synopsys -fexplicit -ggdb
29
30 #SIM_FLAGS=--stop-time=1000ns #--ieee-asserts=disable
31
32 all:    test-rocon
33
34 convert_bin2bits : convert_bin2bits.o
35
36 imem.bits : imem.bin convert_bin2bits
37         ./convert_bin2bits $< >$@
38
39 test-tumbl: analyze-all imem.bits
40         $(GHDL) $(GHDLFLAGS) -m $(ANALYZEFLAGS) lx_tumbl_tb
41         $(GHDL) $(GHDLFLAGS) -r  lx_tumbl_tb --stop-time=10000ns --vcd=$@.vcd --wave=$@.ghw
42
43 test-rocon: analyze-all imem.bits
44         $(GHDL) $(GHDLFLAGS) -m $(ANALYZEFLAGS) lx_rocon_top_tb
45         $(GHDL) $(GHDLFLAGS) -r lx_rocon_top_tb --stop-time=10000ns --vcd=$@.vcd --wave=$@.ghw
46
47 analyze-all: $(SRC)
48         $(GHDL) $(GHDLFLAGS) -a $(ANALYZEFLAGS) $(SRC)
49
50
51 clean:
52         rm -f convert_bin2bits
53         rm -f *.o
54         $(GHDL) --clean
55         $(RM) work-obj93.cf