2023-06-20 18:26:59 +08:00
|
|
|
|
2024-09-10 18:39:35 +08:00
|
|
|
.PHONY: compile tb wave
|
2023-06-20 18:26:59 +08:00
|
|
|
|
|
|
|
|
compile:
|
2023-08-01 15:50:53 +08:00
|
|
|
rm -rf ./generated/
|
2023-10-19 15:24:26 +08:00
|
|
|
rm -rf ./rocket-chip/vsim/generated-src/
|
|
|
|
|
mkdir -p ./generated/
|
|
|
|
|
cd ./rocket-chip/ && rm -f rocketchip.jar
|
|
|
|
|
cd ./rocket-chip/vsim && make verilog CONFIG=freechips.rocketchip.system.UserFPGAConfig
|
|
|
|
|
cp ./rocket-chip/vsim/generated-src/freechips.rocketchip.system.UserFPGAConfig.v ./generated/UserFPGAConfig.v
|
|
|
|
|
cp ./rocket-chip/vsim/generated-src/freechips.rocketchip.system.UserFPGAConfig.behav_srams.v ./generated/behav_srams.v
|
|
|
|
|
# sbt "test:runMain test.testModule"
|
2023-12-07 11:10:05 +08:00
|
|
|
|
|
|
|
|
back:
|
2024-05-24 17:31:49 +08:00
|
|
|
rm -f ./generated/back/*
|
2024-10-16 16:17:52 +08:00
|
|
|
rm -f ./generated/cdr/*
|
2023-12-07 11:10:05 +08:00
|
|
|
sbt "test:runMain test.testModule"
|
2024-05-24 17:31:49 +08:00
|
|
|
cp ./src/main/verilog/backBoardMstTop.v ./generated/back/
|
|
|
|
|
cp ./src/main/verilog/oser_rst.v ./generated/back/
|
|
|
|
|
cp ./src/main/verilog/di16_top.v ./generated/back/
|
|
|
|
|
cp ./src/main/verilog/do16_top.v ./generated/back/
|
2024-07-16 15:36:40 +08:00
|
|
|
cp ./src/main/verilog/do16inv_top.v ./generated/back/
|
2024-06-25 16:44:19 +08:00
|
|
|
cp ./src/main/verilog/qei_top.v ./generated/back/
|
2024-06-27 18:47:46 +08:00
|
|
|
cp ./src/main/verilog/spi_top.v ./generated/back/
|
2024-05-24 17:31:49 +08:00
|
|
|
cp ./src/main/verilog/defineParam.v ./generated/back/
|
2024-04-07 10:30:02 +08:00
|
|
|
|
|
|
|
|
|
2023-12-07 11:10:05 +08:00
|
|
|
|
2023-11-14 17:03:19 +08:00
|
|
|
ef:
|
|
|
|
|
sbt "test:runMain test.testModule"
|
2023-07-17 09:26:20 +08:00
|
|
|
|
|
|
|
|
VSimTop:
|
|
|
|
|
rm -rf ./tb/build/
|
|
|
|
|
mkdir -p ./tb/build/
|
|
|
|
|
verilator -Wno-fatal \
|
|
|
|
|
--timescale "1 ns / 1 ps" \
|
|
|
|
|
-y ${PWD}/tb/ \
|
|
|
|
|
-y ${PWD}/tb/vtb/ \
|
|
|
|
|
--top-module SimTop \
|
|
|
|
|
--trace-fst \
|
|
|
|
|
--cc ./tb/behav_srams.v \
|
|
|
|
|
--cc ./tb/UserFPGAConfig.v \
|
|
|
|
|
--cc ./tb/vtb/SimTop.v \
|
|
|
|
|
+define+RANDOMIZE_GARBAGE_ASSIGN \
|
|
|
|
|
+define+RANDOMIZE_INVALID_ASSIGN \
|
|
|
|
|
+define+RANDOMIZE_REG_INIT \
|
|
|
|
|
+define+RANDOMIZE_MEM_INIT \
|
|
|
|
|
+define+RANDOMIZE_DELAY=0 \
|
|
|
|
|
+define+USE_POWER_PINS \
|
|
|
|
|
--exe --build \
|
|
|
|
|
${PWD}/tb/sim_main.cpp \
|
|
|
|
|
-Mdir ./tb/build/ \
|
|
|
|
|
-j 30
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
test:
|
|
|
|
|
./tb/build/VSimTop -w -l -f ./tb/sw/build/test
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
sw:
|
2024-11-05 11:09:40 +08:00
|
|
|
rm ./tb/sw/build/* -f
|
2024-10-29 17:32:17 +08:00
|
|
|
|
2024-10-29 11:21:04 +08:00
|
|
|
riscv64-unknown-elf-gcc -Os -ggdb -march=rv32i -mabi=ilp32 -Wall -mcmodel=medany -mexplicit-relocs -mcmodel=medany -mexplicit-relocs \
|
|
|
|
|
-I ./tb/sw/ -I ./tb/sw/src \
|
|
|
|
|
-c ./tb/sw/src/mstStartup.S \
|
|
|
|
|
-o ./tb/sw/build/mstStartup.o
|
|
|
|
|
|
2024-11-04 16:07:06 +08:00
|
|
|
riscv64-unknown-elf-gcc -O3 -ggdb -march=rv32i -mabi=ilp32 -Wall -mcmodel=medany -mexplicit-relocs \
|
2024-10-29 11:21:04 +08:00
|
|
|
-I ./tb/sw/ -I ./tb/sw/src \
|
2024-11-04 16:07:06 +08:00
|
|
|
-c ./tb/sw/src/mstMain.c \
|
2024-10-29 11:21:04 +08:00
|
|
|
-o ./tb/sw/build/mstMain.o
|
|
|
|
|
|
2024-11-04 16:07:06 +08:00
|
|
|
# riscv64-unknown-elf-gcc -Os -ggdb -march=rv32i -mabi=ilp32 -Wall -mcmodel=medany -mexplicit-relocs -mcmodel=medany -mexplicit-relocs \
|
|
|
|
|
# -I ./tb/sw/ -I ./tb/sw/src \
|
|
|
|
|
# -c ./tb/sw/src/mstMain.S \
|
|
|
|
|
# -o ./tb/sw/build/mstMain.o
|
|
|
|
|
|
2024-10-29 11:21:04 +08:00
|
|
|
riscv64-unknown-elf-gcc -Os -ggdb -march=rv32i -mabi=ilp32 -Wall -mcmodel=medany -mexplicit-relocs -nostdlib -nodefaultlibs -nostartfiles \
|
|
|
|
|
-T ./tb/sw/linker.lds \
|
|
|
|
|
./tb/sw/build/mstStartup.o \
|
|
|
|
|
./tb/sw/build/mstMain.o \
|
|
|
|
|
-o ./tb/sw/build/mstTest.elf
|
|
|
|
|
|
|
|
|
|
riscv64-unknown-elf-objcopy -O binary ./tb/sw/build/mstTest.elf ./tb/sw/build/mstTest.bin
|
|
|
|
|
|
|
|
|
|
riscv64-unknown-elf-objdump --disassemble-all --disassemble-zeroes --section=.text --section=.text.startup --section=.text.init --section=.data --section=.bss --section=.rodata --section=.trap_entry ./tb/sw/build/mstTest.elf > ./tb/sw/build/mstTest.dump
|
|
|
|
|
|
|
|
|
|
riscv64-unknown-elf-objcopy -O verilog ./tb/sw/build/mstTest.elf ./tb/sw/build/mstTest.verilog
|
|
|
|
|
sed -i 's/@800/@000/g' ./tb/sw/build/mstTest.verilog
|
2023-07-17 09:26:20 +08:00
|
|
|
|
|
|
|
|
|
2024-10-29 17:32:17 +08:00
|
|
|
|
2024-10-30 17:11:59 +08:00
|
|
|
riscv64-unknown-elf-gcc -O3 -ggdb -march=rv32i -mabi=ilp32 -Wall -mcmodel=medany -mexplicit-relocs \
|
2024-10-29 17:32:17 +08:00
|
|
|
-I ./tb/sw/ -I ./tb/sw/src \
|
|
|
|
|
-c ./tb/sw/src/slvMain.c \
|
|
|
|
|
-o ./tb/sw/build/slvMain.o
|
|
|
|
|
|
2024-10-25 17:46:21 +08:00
|
|
|
riscv64-unknown-elf-gcc -Os -ggdb -march=rv32i -mabi=ilp32 -Wall -mcmodel=medany -mexplicit-relocs -mcmodel=medany -mexplicit-relocs \
|
2024-10-28 15:51:12 +08:00
|
|
|
-I ./tb/sw/ -I ./tb/sw/src \
|
2024-10-29 11:21:04 +08:00
|
|
|
-c ./tb/sw/src/slvStartup.S \
|
|
|
|
|
-o ./tb/sw/build/slvStartup.o
|
2023-07-17 09:26:20 +08:00
|
|
|
|
2024-10-29 17:32:17 +08:00
|
|
|
# riscv64-unknown-elf-gcc -Os -ggdb -march=rv32i -mabi=ilp32 -Wall -mcmodel=medany -mexplicit-relocs -mcmodel=medany -mexplicit-relocs \
|
|
|
|
|
# -I ./tb/sw/ -I ./tb/sw/src \
|
|
|
|
|
# -c ./tb/sw/src/slvMain.S \
|
|
|
|
|
# -o ./tb/sw/build/slvMain.o
|
2024-10-28 15:51:12 +08:00
|
|
|
|
2024-10-25 17:46:21 +08:00
|
|
|
riscv64-unknown-elf-gcc -Os -ggdb -march=rv32i -mabi=ilp32 -Wall -mcmodel=medany -mexplicit-relocs -nostdlib -nodefaultlibs -nostartfiles \
|
2023-07-17 09:26:20 +08:00
|
|
|
-T ./tb/sw/linker.lds \
|
2024-10-29 11:21:04 +08:00
|
|
|
./tb/sw/build/slvStartup.o \
|
|
|
|
|
./tb/sw/build/slvMain.o \
|
|
|
|
|
-o ./tb/sw/build/slvTest.elf
|
2023-07-17 09:26:20 +08:00
|
|
|
|
2024-10-29 11:21:04 +08:00
|
|
|
riscv64-unknown-elf-objcopy -O binary ./tb/sw/build/slvTest.elf ./tb/sw/build/slvTest.bin
|
2023-07-17 09:26:20 +08:00
|
|
|
|
2024-10-29 11:21:04 +08:00
|
|
|
riscv64-unknown-elf-objdump --disassemble-all --disassemble-zeroes --section=.text --section=.text.startup --section=.text.init --section=.data --section=.bss --section=.rodata --section=.trap_entry ./tb/sw/build/slvTest.elf > ./tb/sw/build/slvTest.dump
|
2023-07-17 09:26:20 +08:00
|
|
|
|
2024-10-29 11:21:04 +08:00
|
|
|
riscv64-unknown-elf-objcopy -O verilog ./tb/sw/build/slvTest.elf ./tb/sw/build/slvTest.verilog
|
|
|
|
|
sed -i 's/@800/@000/g' ./tb/sw/build/slvTest.verilog
|
2023-07-17 09:26:20 +08:00
|
|
|
|
2024-11-05 11:09:40 +08:00
|
|
|
python3 ./tb/sw/bin_to_hex.py
|
|
|
|
|
|
2023-07-17 09:26:20 +08:00
|
|
|
|
|
|
|
|
fst:
|
|
|
|
|
gtkwave ./tb/build/wave.fst &
|
|
|
|
|
|
2023-07-28 15:38:46 +08:00
|
|
|
|
|
|
|
|
|
|
|
|
|
VSimBack:
|
|
|
|
|
rm -rf ./tb/build/
|
|
|
|
|
mkdir -p ./tb/build/
|
|
|
|
|
verilator -Wno-fatal \
|
|
|
|
|
--timescale "1 ns / 1 ps" \
|
|
|
|
|
-y ${PWD}/tb/ \
|
|
|
|
|
-y ${PWD}/generated/ \
|
2023-08-09 16:34:29 +08:00
|
|
|
--top-module BackPlaneChainTest \
|
2023-07-28 15:38:46 +08:00
|
|
|
--trace-fst \
|
2023-08-09 16:34:29 +08:00
|
|
|
--cc ./generated/BackPlaneChainTest.v \
|
2023-07-28 15:38:46 +08:00
|
|
|
+define+RANDOMIZE_GARBAGE_ASSIGN \
|
|
|
|
|
+define+RANDOMIZE_INVALID_ASSIGN \
|
|
|
|
|
+define+RANDOMIZE_REG_INIT \
|
|
|
|
|
+define+RANDOMIZE_MEM_INIT \
|
|
|
|
|
+define+RANDOMIZE_DELAY=0 \
|
|
|
|
|
--exe --build \
|
2023-08-09 16:34:29 +08:00
|
|
|
${PWD}/tb/sim_backChain.cpp \
|
2023-07-28 15:38:46 +08:00
|
|
|
-Mdir ./tb/build/ \
|
|
|
|
|
-j 30
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2024-09-10 18:39:35 +08:00
|
|
|
tb:
|
|
|
|
|
iverilog -Wall \
|
|
|
|
|
-o ./build/wave.iverilog \
|
|
|
|
|
-y ./tb \
|
2024-10-16 16:17:52 +08:00
|
|
|
-y ./generated/cdr/ \
|
2024-09-10 18:39:35 +08:00
|
|
|
-I ./tb \
|
2024-10-16 16:17:52 +08:00
|
|
|
-I ./generated/cdr/ \
|
2024-09-10 18:39:35 +08:00
|
|
|
-D RANDOMIZE_REG_INIT \
|
2024-10-25 17:46:21 +08:00
|
|
|
./tb/backSys_tb.v
|
2024-09-10 18:39:35 +08:00
|
|
|
vvp -N ./build/wave.iverilog -lxt2
|
|
|
|
|
|
|
|
|
|
vcd:
|
|
|
|
|
gtkwave ./build/wave.vcd &
|
2023-07-28 15:38:46 +08:00
|
|
|
|