增加了一个c语言查询版本的代码,便于沟通调试;如果编译C语言版本,Makefile中控制系统都采用rv32i的march编译即可。
This commit is contained in:
54
Makefile
54
Makefile
@@ -1,13 +1,13 @@
|
||||
TARGET=riscv64-unknown-elf
|
||||
RVCC=$(TARGET)-gcc
|
||||
RVCCVERSION=$(shell $(RVCC) --version | grep ^$(RVCC) | sed 's/^.* //g')
|
||||
RV32I_MARCH=-march=rv32i -mabi=ilp32
|
||||
RV32E_MARCH=-march=rv32e -mabi=ilp32e
|
||||
RV32I_CFLAGS=-O2 -D__RV32I_MARCH__
|
||||
RV32E_CFLAGS=-O2
|
||||
ISR_MARCH=-march=rv32i -mabi=ilp32
|
||||
APP_MARCH=-march=rv32i -mabi=ilp32
|
||||
ISR_CFLAGS=-O2
|
||||
APP_CFLAGS=-O2
|
||||
ifeq "$(RVCCVERSION)" "12.2.0"
|
||||
RV32I_MARCH=-march=rv32izicsr -mabi=ilp32
|
||||
RV32E_MARCH=-march=rv32ezicsr -mabi=ilp32e
|
||||
ISR_MARCH=-march=rv32izicsr -mabi=ilp32
|
||||
APP_MARCH=-march=rv32izicsr -mabi=ilp32
|
||||
endif
|
||||
|
||||
.PHONY: compile tb wave
|
||||
@@ -80,13 +80,13 @@ sw:
|
||||
mkdir -p ./tb/sw/build/
|
||||
|
||||
#这是主站的中断服务程序,以及初始化程序
|
||||
$(RVCC) -ggdb $(RV32I_MARCH) $(RV32I_CFLAGS) -Wall -mcmodel=medany -mexplicit-relocs -mcmodel=medany -mexplicit-relocs \
|
||||
$(RVCC) -ggdb $(ISR_MARCH) $(ISR_CFLAGS) -Wall -mcmodel=medany -mexplicit-relocs -mcmodel=medany -mexplicit-relocs \
|
||||
-I ./tb/sw/ -I ./tb/sw/src \
|
||||
-I ./tb/sw/tl2cdr \
|
||||
-c ./tb/sw/src/mstSvr.S \
|
||||
-o ./tb/sw/build/mstSvr.o
|
||||
|
||||
$(RVCC) -ggdb $(RV32I_MARCH) $(RV32I_CFLAGS) -Wall -mcmodel=medany -mexplicit-relocs -nostdlib -nodefaultlibs -nostartfiles \
|
||||
$(RVCC) -ggdb $(ISR_MARCH) $(ISR_CFLAGS) -Wall -mcmodel=medany -mexplicit-relocs -nostdlib -nodefaultlibs -nostartfiles \
|
||||
-T ./tb/sw/linker.lds \
|
||||
./tb/sw/build/mstSvr.o \
|
||||
-o ./tb/sw/build/mstSvr.elf
|
||||
@@ -96,36 +96,43 @@ sw:
|
||||
python3 ./tb/sw/bin_2_c_array.py ./tb/sw/build/mstSvr.bin ./tb/sw/build/mstSvr.c
|
||||
|
||||
#这是主站的程序
|
||||
$(RVCC) -ggdb $(RV32E_MARCH) $(RV32E_CFLAGS) -Wall -mcmodel=medany -mexplicit-relocs \
|
||||
$(RVCC) -ggdb $(APP_MARCH) $(APP_CFLAGS) -Wall -mcmodel=medany -mexplicit-relocs \
|
||||
-I ./tb/sw/ -I ./tb/sw/src \
|
||||
-I ./tb/sw/tl2cdr \
|
||||
-c ./tb/sw/build/mstSvr.c \
|
||||
-o ./tb/sw/build/mstSvr.o
|
||||
|
||||
$(RVCC) -ggdb $(RV32E_MARCH) $(RV32E_CFLAGS) -Wall -mcmodel=medany -mexplicit-relocs -mcmodel=medany -mexplicit-relocs \
|
||||
$(RVCC) -ggdb $(APP_MARCH) $(APP_CFLAGS) -Wall -mcmodel=medany -mexplicit-relocs -mcmodel=medany -mexplicit-relocs \
|
||||
-I ./tb/sw/ -I ./tb/sw/src \
|
||||
-I ./tb/sw/tl2cdr \
|
||||
-c ./tb/sw/src/mstStartup.S \
|
||||
-o ./tb/sw/build/mstStartup.o
|
||||
|
||||
$(RVCC) -ggdb $(RV32E_MARCH) $(RV32E_CFLAGS) -Wall -mcmodel=medany -mexplicit-relocs \
|
||||
$(RVCC) -ggdb $(APP_MARCH) $(APP_CFLAGS) -Wall -mcmodel=medany -mexplicit-relocs \
|
||||
-I ./tb/sw/ -I ./tb/sw/src \
|
||||
-I ./tb/sw/tl2cdr \
|
||||
-c ./tb/sw/src/halfLvdsMacSvr.c \
|
||||
-o ./tb/sw/build/halfLvdsMacSvr.o
|
||||
|
||||
$(RVCC) -ggdb $(APP_MARCH) $(APP_CFLAGS) -Wall -mcmodel=medany -mexplicit-relocs \
|
||||
-I ./tb/sw/ -I ./tb/sw/src \
|
||||
-I ./tb/sw/tl2cdr \
|
||||
-c ./tb/sw/tl2cdr/tl2cdr.c \
|
||||
-o ./tb/sw/build/tl2cdr.o
|
||||
|
||||
$(RVCC) -ggdb $(RV32E_MARCH) $(RV32E_CFLAGS) -Wall -mcmodel=medany -mexplicit-relocs \
|
||||
$(RVCC) -ggdb $(APP_MARCH) $(APP_CFLAGS) -Wall -mcmodel=medany -mexplicit-relocs \
|
||||
-I ./tb/sw/ -I ./tb/sw/src \
|
||||
-I ./tb/sw/tl2cdr \
|
||||
-c ./tb/sw/src/MstMain.c \
|
||||
-o ./tb/sw/build/mstMain.o
|
||||
|
||||
$(RVCC) -ggdb $(RV32E_MARCH) $(RV32E_CFLAGS) -Wall -mcmodel=medany -mexplicit-relocs -nostdlib -nodefaultlibs -nostartfiles \
|
||||
$(RVCC) -ggdb $(APP_MARCH) $(APP_CFLAGS) -Wall -mcmodel=medany -mexplicit-relocs -nostdlib -nodefaultlibs -nostartfiles \
|
||||
-T ./tb/sw/linker.lds \
|
||||
./tb/sw/build/mstStartup.o \
|
||||
./tb/sw/build/mstMain.o \
|
||||
./tb/sw/build/mstSvr.o \
|
||||
./tb/sw/build/tl2cdr.o \
|
||||
./tb/sw/build/halfLvdsMacSvr.o \
|
||||
-o ./tb/sw/build/mstTest.elf
|
||||
|
||||
$(TARGET)-objcopy -O binary ./tb/sw/build/mstTest.elf ./tb/sw/build/mstTest.bin
|
||||
@@ -136,13 +143,13 @@ sw:
|
||||
sed -i 's/@400/@000/g' ./tb/sw/build/mstTest.verilog
|
||||
|
||||
#这是从站的中断服务程序,以及初始化程序
|
||||
$(RVCC) -ggdb $(RV32I_MARCH) $(RV32I_CFLAGS) -Wall -mcmodel=medany -mexplicit-relocs -mcmodel=medany -mexplicit-relocs \
|
||||
$(RVCC) -ggdb $(ISR_MARCH) $(ISR_CFLAGS) -Wall -mcmodel=medany -mexplicit-relocs -mcmodel=medany -mexplicit-relocs \
|
||||
-I ./tb/sw/ -I ./tb/sw/src \
|
||||
-I ./tb/sw/tl2cdr \
|
||||
-c ./tb/sw/src/slvSvr.S \
|
||||
-o ./tb/sw/build/slvSvr.o
|
||||
|
||||
$(RVCC) -ggdb $(RV32I_MARCH) $(RV32I_CFLAGS) -Wall -mcmodel=medany -mexplicit-relocs -nostdlib -nodefaultlibs -nostartfiles \
|
||||
$(RVCC) -ggdb $(ISR_MARCH) $(ISR_CFLAGS) -Wall -mcmodel=medany -mexplicit-relocs -nostdlib -nodefaultlibs -nostartfiles \
|
||||
-T ./tb/sw/linker.lds \
|
||||
./tb/sw/build/slvSvr.o \
|
||||
-o ./tb/sw/build/slvSvr.elf
|
||||
@@ -152,36 +159,43 @@ sw:
|
||||
python3 ./tb/sw/bin_2_c_array.py ./tb/sw/build/slvSvr.bin ./tb/sw/build/slvSvr.c
|
||||
|
||||
#这是从站的程序
|
||||
$(RVCC) -ggdb $(RV32E_MARCH) $(RV32E_CFLAGS) -Wall -mcmodel=medany -mexplicit-relocs \
|
||||
$(RVCC) -ggdb $(APP_MARCH) $(APP_CFLAGS) -Wall -mcmodel=medany -mexplicit-relocs \
|
||||
-I ./tb/sw/ -I ./tb/sw/src \
|
||||
-I ./tb/sw/tl2cdr \
|
||||
-c ./tb/sw/build/slvSvr.c \
|
||||
-o ./tb/sw/build/slvSvr.o
|
||||
|
||||
$(RVCC) -ggdb $(RV32E_MARCH) $(RV32E_CFLAGS) -Wall -mcmodel=medany -mexplicit-relocs \
|
||||
$(RVCC) -ggdb $(APP_MARCH) $(APP_CFLAGS) -Wall -mcmodel=medany -mexplicit-relocs \
|
||||
-I ./tb/sw/ -I ./tb/sw/src \
|
||||
-I ./tb/sw/tl2cdr \
|
||||
-c ./tb/sw/tl2cdr/tl2cdr.c \
|
||||
-o ./tb/sw/build/tl2cdr.o
|
||||
|
||||
$(RVCC) -ggdb $(RV32E_MARCH) $(RV32E_CFLAGS) -Wall -mcmodel=medany -mexplicit-relocs \
|
||||
$(RVCC) -ggdb $(APP_MARCH) $(APP_CFLAGS) -Wall -mcmodel=medany -mexplicit-relocs \
|
||||
-I ./tb/sw/ -I ./tb/sw/src \
|
||||
-I ./tb/sw/tl2cdr \
|
||||
-c ./tb/sw/src/halfLvdsMacSvr.c \
|
||||
-o ./tb/sw/build/halfLvdsMacSvr.o
|
||||
|
||||
$(RVCC) -ggdb $(APP_MARCH) $(APP_CFLAGS) -Wall -mcmodel=medany -mexplicit-relocs \
|
||||
-I ./tb/sw/ -I ./tb/sw/src \
|
||||
-I ./tb/sw/tl2cdr \
|
||||
-c ./tb/sw/src/SlvMain.c \
|
||||
-o ./tb/sw/build/slvMain.o
|
||||
|
||||
$(RVCC) -ggdb $(RV32E_MARCH) $(RV32E_CFLAGS) -Wall -mcmodel=medany -mexplicit-relocs -mcmodel=medany -mexplicit-relocs \
|
||||
$(RVCC) -ggdb $(APP_MARCH) $(APP_CFLAGS) -Wall -mcmodel=medany -mexplicit-relocs -mcmodel=medany -mexplicit-relocs \
|
||||
-I ./tb/sw/ -I ./tb/sw/src \
|
||||
-I ./tb/sw/tl2cdr \
|
||||
-c ./tb/sw/src/slvStartup.S \
|
||||
-o ./tb/sw/build/slvStartup.o
|
||||
|
||||
$(RVCC) -ggdb $(RV32E_MARCH) $(RV32E_CFLAGS) -Wall -mcmodel=medany -mexplicit-relocs -nostdlib -nodefaultlibs -nostartfiles \
|
||||
$(RVCC) -ggdb $(APP_MARCH) $(APP_CFLAGS) -Wall -mcmodel=medany -mexplicit-relocs -nostdlib -nodefaultlibs -nostartfiles \
|
||||
-T ./tb/sw/linker.lds \
|
||||
./tb/sw/build/slvSvr.o \
|
||||
./tb/sw/build/slvStartup.o \
|
||||
./tb/sw/build/slvMain.o \
|
||||
./tb/sw/build/tl2cdr.o \
|
||||
./tb/sw/build/halfLvdsMacSvr.o \
|
||||
-o ./tb/sw/build/slvTest.elf
|
||||
|
||||
$(TARGET)-objcopy -O binary ./tb/sw/build/slvTest.elf ./tb/sw/build/slvTest.bin
|
||||
|
||||
Reference in New Issue
Block a user