ucb-bar / riscv-sodor

educational microarchitectures for risc-v isa
Other
660 stars 154 forks source link

make run emulator error #58

Open hz0ne opened 3 years ago

hz0ne commented 3 years ago

the make process is finished, and make run-emulator error shown as follow:

hessen@ParaComp:~/risc-v/riscv-sodor$ make run-emulator

running basedir/Makefile: make run-emulator

make -C emulator/rv32_1stage/ run
make[1]: Entering directory '/home/hessen/risc-v/riscv-sodor/emulator/rv32_1stage'
make -C /home/hessen/risc-v/riscv-sodor/emulator/rv32_1stage/fesvr libfesvr.a
make[2]: Entering directory '/home/hessen/risc-v/riscv-sodor/emulator/rv32_1stage/fesvr'
make[2]: 'libfesvr.a' is up to date.
make[2]: Leaving directory '/home/hessen/risc-v/riscv-sodor/emulator/rv32_1stage/fesvr'
verilator --cc --exe  --top-module Top +define+PRINTF_COND=1 --assert --output-split 20000 --x-assign unique -I/home/hessen/risc-v/riscv-sodor/vsrc -O3 -CFLAGS "-O1 -std=c++11 -g -I/home/hessen/risc-v/riscv-sodor/emulator/common -I/home/hessen/risc-v/riscv-sodor/riscv-isa-sim -DVERILATOR -include /home/hessen/risc-v/riscv-sodor/emulator/common/verilator.h" -LDFLAGS " /home/hessen/risc-v/riscv-sodor/emulator/rv32_1stage/fesvr/libfesvr.a -lpthread" -o /home/hessen/risc-v/riscv-sodor/emulator/rv32_1stage/emulator generated-src/Top.v /home/hessen/risc-v/riscv-sodor/vsrc/SimDTM.v /home/hessen/risc-v/riscv-sodor/emulator/common/emulator.cpp /home/hessen/risc-v/riscv-sodor/emulator/rv32_1stage/SimDTM.o
make -C /home/hessen/risc-v/riscv-sodor/emulator/rv32_1stage/obj_dir -f VTop.mk
make[2]: Entering directory '/home/hessen/risc-v/riscv-sodor/emulator/rv32_1stage/obj_dir'
make[2]: Nothing to be done for 'default'.
make[2]: Leaving directory '/home/hessen/risc-v/riscv-sodor/emulator/rv32_1stage/obj_dir'
./emulator +max-cycles=30000 /home/hessen/risc-v/riscv-sodor/install/riscv-tests/rv32ui-p-simple 3>&1 1>&2 2>&3 | /home/hessen/risc-v/riscv-sodor/emulator/common/tracer.py > output/rv32ui-p-simple.out
/home/hessen/risc-v/riscv-sodor/emulator/common/Makefile.include:225: recipe for target 'output/rv32ui-p-simple.out' failed
make[1]: *** [output/rv32ui-p-simple.out] Error 255
make[1]: Leaving directory '/home/hessen/risc-v/riscv-sodor/emulator/rv32_1stage'
Makefile:99: recipe for target 'emulator/rv32_1stage/generated-src/timestamp' failed
make: *** [emulator/rv32_1stage/generated-src/timestamp] Error 2

in output/rv32ui-p-simple.out this file, show a error

*** FAILED *** (timeout) after 30000 cycles
lxu28973 commented 3 years ago

The same problem to me. Is it a bug?

hz0ne commented 3 years ago

The same problem to me. Is it a bug?

I guess the problem is about G++ version. I changed the version of fedora, run emulator without FAILED.

usmnzain commented 3 years ago

What version of G++ did you use? You can also try and change the chisel version. check #57

lxu28973 commented 3 years ago

I changed the chisel version but it does not help. Here is my g++ version:

lei@lei-virtual-machine:~/G/riscv-sodor$ g++ --version
g++ (Ubuntu 9.3.0-17ubuntu1~20.04) 9.3.0
Copyright (C) 2019 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

Do I need to change g++ version?

hz0ne commented 3 years ago

I changed the chisel version but it does not help. Here is my g++ version:

lei@lei-virtual-machine:~/G/riscv-sodor$ g++ --version
g++ (Ubuntu 9.3.0-17ubuntu1~20.04) 9.3.0
Copyright (C) 2019 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

Do I need to change g++ version?

Sorry, may be that's version is not the key of problem. I use this verion

hessen@hessen-PC:~/Desktop$ g++ --version 
g++ (Uos 8.3.0.3-3+rebuild) 8.3.0
Copyright (C) 2018 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

Or you can install a virtual machine with deepin OS

hessen@hessen-PC:~$ cat /etc/*release
DISTRIB_ID=Deepin
DISTRIB_RELEASE=20
DISTRIB_DESCRIPTION="Deepin 20"
DISTRIB_CODENAME=apricot
PRETTY_NAME="Deepin 20"
NAME="Deepin"
VERSION_ID="20"
VERSION="20"
ID=Deepin
HOME_URL="https://www.deepin.org/"
BUG_REPORT_URL="https://bbs.deepin.org/"

and you should change the git branch to cs152-sp20

sequencer commented 3 years ago

I think you should directly install Debian instead. Deepin is not a good environment from my experience.

ZJUOrange commented 2 years ago

so have you solve the problem? I have same problem with you,

1026508651 commented 4 months ago

The problem might be the eversion of cheisel in build.sbt. I used the latest version and had the same issue. I changed to 3.3.0 and got all tests passed.