Files
eb001/Makefile
2025-09-11 18:57:58 +08:00

103 lines
2.2 KiB
Makefile

TARGET=riscv64-unknown-elf
RVCC=$(TARGET)-gcc
RVCCVERSION=$(shell $(RVCC) --version | grep ^$(RVCC) | sed 's/^.* //g')
ISR_MARCH=-march=rv32i -mabi=ilp32
APP_MARCH=-march=rv32i -mabi=ilp32
ISR_CFLAGS=-O2
APP_CFLAGS=-O2
ifeq "$(RVCCVERSION)" "12.2.0"
ISR_MARCH=-march=rv32izicsr -mabi=ilp32
APP_MARCH=-march=rv32izicsr -mabi=ilp32
endif
.PHONY: compile tb wave
shin:
rm -f ./generated/shin/*
rm -f ./generated/SimCDR/*
sbt "test:runMain test.testShinModule"
testShin:
python3 ./tb/shinTest/gen_pkt.py
mkdir -p generated/log
rm -rf generated/log/*
iverilog -Wall \
-o ./tb/build/shinTest.iverilog \
-y ./generated/shin \
-I ./generated/shin \
-D RANDOMIZE_REG_INIT \
-D IVERILOG_COMPILE \
./tb/shinTest/ShinTopSpiTb.v
vvp -N ./tb/build/shinTest.iverilog -lxt2 -fst || true
python3 ./tb/shinTest/check_testcase.py
testShin8b10b:
python3 ./tb/shinTest/gen_pkt.py -8b10b
mkdir -p generated/log
rm -rf generated/log/*
iverilog -Wall \
-o ./tb/build/shinTest.iverilog \
-y ./generated/shin \
-I ./generated/shin \
-D RANDOMIZE_REG_INIT \
-D IVERILOG_COMPILE \
./tb/shinTest/ShinTopSpiTb.v
vvp -N ./tb/build/shinTest.iverilog -lxt2 -fst || true
python3 ./tb/shinTest/check_testcase.py
testShinClk:
python3 ./tb/shinTest/gen_pkt_clk.py --dev1 0 92 --dev2 0 -92 -8b10b
mkdir -p generated/log
rm -rf generated/log/*
iverilog -Wall \
-o ./tb/build/shinTest_clk.iverilog \
-y ./generated/shin \
-I ./generated/shin \
-D RANDOMIZE_REG_INIT \
-D IVERILOG_COMPILE \
./tb/shinTest/ShinTopSpiTb_clk.v
vvp -N ./tb/build/shinTest_clk.iverilog -lxt2 -fst || true
python3 ./tb/shinTest/check_testcase.py
testCDR:
iverilog -Wall \
-o ./tb/build/simCDR.iverilog \
-y ./generated/SimCDR \
-I ./generated/SimCDR \
-D RANDOMIZE_REG_INIT \
-D IVERILOG_COMPILE \
./tb/shinTest/SimCDRTb.v
vvp -N ./tb/build/simCDR.iverilog -lxt2 -fst
testFilter:
./tb/shinTest/test_filter.py
vcdFilter:
gtkwave ./tb/build/test_filter.vcd 1>/dev/null 2>&1 &
fstShin:
gtkwave ./generated/wave.fst 1>/dev/null 2>&1 &
fstShinClk:
gtkwave ./generated/wave_clk.fst 1>/dev/null 2>&1 &
ef:
sbt "test:runMain test.testModule"
fst:
gtkwave ./tb/build/wave.fst &
debug_hlm:
gtkwave -S ./tb/sw/src/view_signal.tcl ./tb/build/wave.fst 1>/dev/null 2>&1 &