Hello,

I'm happy to announce that RISC-V is now supported by gem5!  Currently it
supports single-threaded workloads in SE mode and binaries compiled with
riscv64-unknown-elf-*.

There are two bugs that need to be fixed: binaries compiled with
riscv64-unknown-gnu-linux-* will not run (see comment chain on Oct. 20,
2016 in http://reviews.m5sim.org/r/3624/ for more information), and some
memory accesses can rarely cross a cache boundary which causes the O3 model
to crash (see the first comment chain in http://reviews.m5sim.org/r/3693/
for more information).

Beyond that, here's what needs to be implemented to bring RISC-V to
completion:

   - The TLB code was copied from MIPS, but it may need to be
   re-implemented to fit the description in RISC-V's privileged ISA reference (
   https://riscv.org/specifications/privileged-isa/).
   - Multithreaded workload support needs to be added (RISC-V may need to
   be added to m5threads).
   - Support for FS mode needs to be added.  This will at the very least
   mean adding all of the CSRs defined in the privileged ISA reference and
   implementing the ERET and EBREAK instructions so privileged code works
   properly.

Thanks to everyone who reviewed the code and helped get it included into
gem5!

Regards,
Alec Roelke
_______________________________________________
gem5-users mailing list
gem5-users@gem5.org
http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users

Reply via email to