git-svn-id: svn+ssh://asterix.ieap.uni-kiel.de/home/subversion/stephan/solo/eda@8884 bc5caf13-1734-44f8-af43-603852e9ee25
216 lines
7 KiB
Makefile
216 lines
7 KiB
Makefile
|
|
VERILOG=/usr/local/bin/iverilog
|
|
#VERILOG=/usr/bin/iverilog
|
|
|
|
VERILOGFLAGS = -v -Wall -Wno-timescale -DSIMULATION $($*_FLAGS) $(IVLFLAGS)
|
|
%.vvp:
|
|
$(VERILOG) $(VERILOGFLAGS) -o $@ $(filter %.v, $^)
|
|
|
|
vcd/%.lxt: %.vvp
|
|
$< -lxt2 | tee $*.log
|
|
|
|
.PRECIOUS: vcd/%.lxt
|
|
|
|
VPATH=.:./l3:./encode:./hk:../../flyrena/altera:../../hetept/altera:../../altera:../../altera/mega:../../altera/actel:../../stein/altera:../../nm64/altera:../../µirena/altera
|
|
|
|
SIRENA_DEFS = -DChangE4 -DUART_PARITY=1 -DEVGEN_EPT_HET
|
|
sirena_FLAGS = -s sirena_test -DSIRENACORE -DUART3MHZ -DGENSRAM -DINFERRED_SRAM $(SIRENA_DEFS)
|
|
|
|
sirena.vvp: sirena.v sirenacore.v sirena_test.v icucore.v \
|
|
evgen.v floats.v \
|
|
frontend.v spi_slave.v spififo_sim.v conf_reg.v packetfifo.v countbits.v \
|
|
frontend_test.v fifo8_sim.v serializer.v \
|
|
heteptcore.v backend.v opheater.v \
|
|
message.v uart.v crc.v \
|
|
msg_regs.v ppsschedule.v l3code.v hamming.v \
|
|
ppsschedule.hex memport.v eeprom.v \
|
|
compression.v encode.v itof.v log2by8.v \
|
|
processor.v l3regfifo.v log7to4.v adder.v trim.v cmp.v \
|
|
adderi.v mult.v bitrange.v \
|
|
mem.v l3registerfile.v counters.v fifo.v pha.v \
|
|
ept.l3v no_het.l3v por.v
|
|
|
|
QUARTUS=/usr/local/quartus/altera13.1/quartus
|
|
export PATH:=$(PATH):$(QUARTUS)/bin
|
|
|
|
QDIR=quartus
|
|
$(QDIR)/%.rbf: %.qpf %.qsf %.sdc
|
|
quartus_map $<
|
|
quartus_fit $<
|
|
quartus_asm $<
|
|
quartus_sta $<
|
|
grep -i warning $(QDIR)/$*.*.rpt > $*.warnings
|
|
|
|
FRONTEND = conf_reg.v spi_slave.v pll96.v spififo.v frontend.v packetfifo.v
|
|
|
|
SIRENA_SOURCES = sirena.v \
|
|
sirenacore.v sirena_test.v \
|
|
evgen.v floats.v \
|
|
frontend.v spi_slave.v spififo_sim.v conf_reg.v packetfifo.v \
|
|
frontend_test.v fifo8_sim.v \
|
|
heteptcore.v backend.v opheater.v \
|
|
message.v uart.v crc.v \
|
|
msg_regs.v ppsschedule.v l3code.v hamming.v \
|
|
ppsschedule.hex memport.v eeprom.v \
|
|
compression.v encode.v itof.v \
|
|
processor.v l3regfifo.v log7to4.v adder.v trim.v cmp.v \
|
|
adderi.v mult.v bitrange.v \
|
|
mem.v l3registerfile.v counters.v fifo.v pha.v
|
|
|
|
SPW_SOURCES = spwirena_core.v SpW.v serializer.v
|
|
|
|
$(QDIR)/sirena.rbf: $(SIRENA_SOURCES)
|
|
$(QDIR)/sirena_ce4.rbf: $(SIRENA_SOURCES)
|
|
$(QDIR)/icucore.rbf: sirena.v $(FRONTEND)
|
|
$(QDIR)/spwsirena.rbf: $(SIRENA_SOURCES) $(SPW_SOURCES)
|
|
$(QDIR)/sirenaspw.rbf: $(SIRENA_SOURCES) $(SPW_SOURCES)
|
|
|
|
uart.vvp: uart.v fifo8_sim.v
|
|
uart_FLAGS = -DUART_TEST -DALTERA_FIFO8 $(UART_DEFS) -s uart_test
|
|
|
|
MESSAGE_FIFO = fifo.v hamming.v mem.v
|
|
# MESSAGE_FIFO = fifo8_sim.v
|
|
message.vvp: message.v crc.v uart.v $(MESSAGE_FIFO)
|
|
message_FLAGS = -DMESSAGE_TEST -DINFERRED_SRAM -s message_test
|
|
SpW_message.vvp: message.v crc.v uart.v SpW.v serializer.v
|
|
SpW_message_FLAGS = -DMESSAGE_TEST -DCCSDS_APID="11'h666" -s SpW_message_test
|
|
|
|
memory_FLAGS = -DMEMORY_TEST -s memory_test
|
|
|
|
l3registerfile.vvp: l3registerfile.v hamming.v mem.v
|
|
l3registerfile_FLAGS = -DL3REG_TEST -s l3registerfile_test -DINFERRED_SRAM
|
|
|
|
l3code.vvp: l3code.v hamming.v message.v uart.v crc.v fifo.v
|
|
l3code_FLAGS = -DL3CODE_TEST -s l3code_test -DINFERRED_SRAM
|
|
|
|
hkspi_FLAGS = -DHKSPI_TEST -s hkspi_test
|
|
|
|
fifo.vvp: fifo.v hamming.v mem.v
|
|
fifo_FLAGS = -DFIFO_TEST -s fifo_test -DINFERRED_SRAM
|
|
|
|
MEM=CE4
|
|
memport_FLAGS = -DMEMPORT_TEST -DM24MHZ -DMEM_$(MEM) -DINFERRED_SRAM -s memport_test
|
|
memport.vvp: memport.v hamming.v eeprom.v mem.v
|
|
|
|
backend_FLAGS = -DBACKEND_TEST -s backend_test
|
|
l3win_FLAGS = -s l3win_test -DM24MHZ
|
|
ifeq ($(RAM_ACTEL),No)
|
|
RAMS=mem.v
|
|
backend_FLAGS += -DINFERRED_SRAM
|
|
l3win_FLAGS += -DINFERRED_SRAM
|
|
else
|
|
RAMS=mem.v \
|
|
RAM64K36_sim.v memWxActel.v mem36x128.v mem36x512.v mem72x128.v mem72x256.v \
|
|
mem36x2048.v mem72x1024.v mem72x2048.v mem72x512.v \
|
|
mem36x1024.v mem36x256.v
|
|
backend_FLAGS += -DTARGET_ACTEL
|
|
l3win_FLAGS += -DTARGET_ACTEL
|
|
endif
|
|
|
|
backend.vvp: backend.v hamming.v l3code.v l3registerfile.v ppsschedule.v memport.v fifo.v \
|
|
message.v pha.v eeprom.v msg_regs.v counters.v $(RAMS) \
|
|
compression.v encode.v itof.v log2by8.v \
|
|
processor.v l3regfifo.v log7to4.v adder.v trim.v cmp.v adderi.v mult.v bitrange.v \
|
|
test.l3v
|
|
|
|
l3win.vvp: l3win_test.v backend.v hamming.v l3code.v l3registerfile.v ppsschedule.v memport.v fifo.v \
|
|
message.v pha.v eeprom.v msg_regs.v counters.v $(RAMS) \
|
|
compression.v encode.v itof.v log2by8.v \
|
|
processor.v l3regfifo.v log7to4.v adder.v trim.v cmp.v adderi.v mult.v bitrange.v \
|
|
ept.l3v ept_dps.iv
|
|
|
|
L3TEST_UNIT = STEP
|
|
l3test_FLAGS = -s l3test -DM24MHZ -DINFERRED_SRAM -D$(L3TEST_UNIT)_PHA
|
|
|
|
l3test.vvp: l3test.v backend.v hamming.v l3code.v l3registerfile.v ppsschedule.v memport.v fifo.v \
|
|
message.v pha.v eeprom.v msg_regs.v counters.v $(RAMS) \
|
|
compression.v encode.v itof.v log2by8.v \
|
|
processor.v l3regfifo.v log7to4.v adder.v trim.v cmp.v adderi.v mult.v bitrange.v \
|
|
l3test.l3v l3test.ev stein_pha.v countbits.v
|
|
|
|
mult.vvp: mult.v
|
|
mult_FLAGS = -DMULT_TEST
|
|
|
|
l3regfifo_FLAGS = -DL3REGFIFO_TEST -s fifo_tb
|
|
|
|
processor.vvp: processor.v l3regfifo.v log7to4.v adder.v trim.v cmp.v adderi.v mult.v bitrange.v
|
|
processor_FLAGS = -DPROCESSOR_TEST -s processor_test
|
|
|
|
L3C = l3/l3.py
|
|
L3DIS = l3/l3dis.py
|
|
%.l3c: %.l3 $(L3C) .%.forward
|
|
$(L3C) -g hex -o $@ $<
|
|
%.l3v: %.l3 $(L3C) .%.forward
|
|
$(L3C) -g verilog -vv -o $@ -l $*.l3d $<
|
|
%.l3py: %.l3 $(L3C) .%.forward
|
|
$(L3C) -g python -vv -o $@ -l $*.l3d $<
|
|
.%.forward: %.l3 $(L3C)
|
|
$(L3C) -g hex -o /dev/null $<
|
|
touch $@
|
|
|
|
.ept.forward: hetept_config.l3 hetept_pha.l3 ept_calib.l3
|
|
.step.forward: step_config.l3 step_pha.l3 step_calib.l3
|
|
|
|
%.l3dis: %.l3c $(L3DIS)
|
|
$(L3DIS) -F 'R%(addr)-3d= %(cond)-3s %(mnem)-5s %(args)-25s # 0x%(instr)08x' $< > $@
|
|
|
|
%.l3cc: %.l3dis
|
|
$(L3C) -g hex -o $@ $<
|
|
-diff -u $*.l3c $*.l3cc
|
|
|
|
clean:
|
|
rm -f *.l3[cdv] *.l3dis *.l3cc .*.forward *.vvp
|
|
|
|
pps_gen_FLAGS = -DPPS_GEN_TEST -s pps_gen_test
|
|
pps_gen.vvp: icucore.v
|
|
|
|
$(QDIR)/icucore.rbf: sirena.v icucore.v $(FRONTEND) memory.v uart.v secondcyclone.v
|
|
|
|
itof_FLAGS = -DITOF_TEST -s itof_test
|
|
itof.vvp: itof.v
|
|
|
|
crc_FLAGS = -DCRC_TEST
|
|
crc.vvp: crc.v
|
|
|
|
s72_test.vvp: hamming.v
|
|
s72_test_FLAGS = -DS72_TEST -s s72_test
|
|
s18_test.vvp: hamming.v
|
|
s18_test_FLAGS = -DS18_TEST -s s18_test
|
|
s56_test.vvp: hamming.v
|
|
s56_test_FLAGS = -DS56_TEST -s s56_test
|
|
s64_test.vvp: hamming.v
|
|
s64_test_FLAGS = -DS64_TEST -s s64_test
|
|
|
|
evgen.vvp: evgen.v crc.v floats.v
|
|
evgen_FLAGS = -DEVGEN_TEST -s evgen_test
|
|
|
|
uf.vvp: floats.v
|
|
uf_FLAGS = -DUF_TEST -s uf_test
|
|
|
|
log2by8.vvp: log2by8.v
|
|
log2by8_FLAGS = -DLOG2BY8_TEST -s log2by8_test
|
|
|
|
encschedule.vvp: compression.v encode.v ppsschedule.v
|
|
encschedule_FLAGS = -DENCSCHEDULE_TEST -s encschedule_test
|
|
|
|
counters.vvp: counters.v mem.v hamming.v pha.v itof.v
|
|
counters_FLAGS = -s counters_test -DCOUNTERS_TEST -DINFERRED_SRAM
|
|
|
|
sirenacntr_FLAGS = -s sirenacntr_test -DSIRENACNTR -DSIRENACNTR_TEST \
|
|
-DINFERRED_SRAM
|
|
sirenacntr.vvp: sirenacntr.v memport.v \
|
|
frontend.v spi_slave.v spififo_sim.v conf_reg.v packetfifo.v countbits.v \
|
|
frontend_test.v fifo8_sim.v serializer.v nmcounter.v mem.v
|
|
|
|
$(QDIR)/sirenacntr.rbf: sirenacntr.v memport.v \
|
|
frontend.v spi_slave.v spififo_sim.v conf_reg.v packetfifo.v countbits.v \
|
|
nmcounter.v mem.v
|
|
|
|
baudgen.vvp: baudgen_test.v uart.v
|
|
baudgen_FLAGS = -s baudgen_test
|
|
|
|
encode_FLAGS = -DENCODE_TEST -s encode_test
|
|
encode.vvp: encode.v
|
|
|
|
mem_sqi_FLAGS = -DMEM_SQI_TEST -s mem_ifc_test
|
|
mem_sqi.vvp: memport.v
|