Following the instructions under Section 2.1.4, I'm able to successfully generate the default simulator-chipyard-RocketConfig executable, and the followup "make run-asm-tests" and "make run-bmark-tests" commends work fine.
I've also made a simple Hello World with the riscv64-unknown-elf-gcc compiler, and verified it works with spike - running "spike pk riscv-hello" produces:
>bbl loader
>Hello world!
However, if I try to run "
./simulator-chipyard-RocketConfig riscv_hello", I get this:
>This emulator compiled with JTAG Remote Bitbang client. To enable, use +jtag_rbb_enable=1.
>Listening on port 43133
>[UART] UART0 is here (stdin/stdout).
>warning: tohost and fromhost symbols not in ELF; can't communicate with target
On which it hangs forever. And if I try "
./simulator-chipyard-RocketConfig pk riscv_hello", I get:
>This emulator compiled with JTAG Remote Bitbang client. To enable, use +jtag_rbb_enable=1.
>Listening on port 35301
>[UART] UART0 is here (stdin/stdout).
Which is similar to what happens if I run the example binary at
$RISCV/riscv64-unknown-elf/share/riscv-tests/isa/rv64ui-p-simple through the simulator executable, but instead of completing and exiting silently, the process hangs forever at the "[UART]" line.