I am trying to write executable programs to simulate using Verilator, but it seems like I am doing something wrong, as even the most simple program doesn't seem to run on the TinyRocketConfig.
The C code of the program:
#include <stdio.h>
#include <inttypes.h>
#include "mmio.h"
int main(void)
{
uint32_t uint_32bits = 0x0FU;
printf("%#x", uint_32bits);
return 0;
}
When I run this program on Verilator on the normal RocketConfig it works, but when I try to do the same on the TinyRocketConfig it gets stuck forever without giving any output:
./simulator-chipyard-TinyRocketConfig-debug ../../tests/32b_test.riscv run-binary
This emulator compiled with JTAG Remote Bitbang client. To enable, use +jtag_rbb_enable=1.
Listening on port 35177
[UART] UART0 is here (stdin/stdout).
Having to cancel the execution manually after some time, any idea of why? Thanks for any answer and sorry for my little knowledge on the topic.
-march=rv32i -mabi=ilp32toriscv64-unknown-elf-gccand see if that works. As described here github.com/ucb-bar/chipyard/issues/23