From 8b7dd6d9ffa5f4cdbf0de97df5f90b623f0af5e3 Mon Sep 17 00:00:00 2001 From: bacon Date: Mon, 3 Feb 2025 10:10:40 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E6=B3=A8=E9=87=8A=EF=BC=9B?= =?UTF-8?q?=E5=A2=9E=E5=8A=A0Makefile=E8=84=9A=E6=9C=AC=EF=BC=8C=E7=94=A8?= =?UTF-8?q?=E4=BA=8E=E7=94=9F=E6=88=90=E7=8B=AC=E7=AB=8B=E7=9A=84cpu0~cpu3?= =?UTF-8?q?=E7=9A=84=E4=BB=BF=E7=9C=9F=E6=97=A5=E5=BF=97=E6=96=87=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Makefile | 11 +++++++---- tb/sw/src/mstStartup.S | 6 +++--- 2 files changed, 10 insertions(+), 7 deletions(-) diff --git a/Makefile b/Makefile index 2d01fcb..ea08863 100644 --- a/Makefile +++ b/Makefile @@ -62,10 +62,13 @@ VSimTop: # +define+RANDOMIZE_MEM_INIT test: - ./tb/build/VSimTop -w -l -f ./tb/sw/build/mstTest - - - + -./tb/build/VSimTop -w -l -f ./tb/sw/build/mstTest >./tb/sw/build/log.txt 2>&1 + @echo "Processing simulation log..." + @cat ./tb/sw/build/log.txt | grep '^\[\ \ 0\]' 1>./tb/sw/build/cpu0_log.txt + @cat ./tb/sw/build/log.txt | grep '^\[\ \ 1\]' 1>./tb/sw/build/cpu1_log.txt + @cat ./tb/sw/build/log.txt | grep '^\[\ \ 2\]' 1>./tb/sw/build/cpu2_log.txt + @cat ./tb/sw/build/log.txt | grep '^\[\ \ 3\]' 1>./tb/sw/build/cpu3_log.txt + @echo "done!" sw: rm ./tb/sw/build/* -f diff --git a/tb/sw/src/mstStartup.S b/tb/sw/src/mstStartup.S index 1a12508..d7c183f 100644 --- a/tb/sw/src/mstStartup.S +++ b/tb/sw/src/mstStartup.S @@ -71,10 +71,10 @@ _prog_start: #la a4, flag_intRxEnd call mst_svr_code - mv t0, a0 + mv t0, a0 #这里选择不同的trap_entry服务函数,这个是RV32I的代码 - #la t0, trap_entry - #la t0, opt_trap_entry + #la t0, trap_entry #这个是最初版的trap_entry,仅做了RV32E的改造 + #la t0, opt_trap_entry #这个是做了汇编优化的,也做了RV32E的改造 csrw mtvec, t0 li t0, 1 << 11 csrw mie, t0