tum-ei-eda / muriscv-nn

muRISCV-NN is a collection of efficient deep learning kernels for embedded platforms and microcontrollers.
Apache License 2.0
65 stars 7 forks source link

RV64 support + baremetal binaries #73

Open jerryz123 opened 2 months ago

jerryz123 commented 2 months ago

Chipyard now supports simulating two different vector units:

PhilippvK commented 2 months ago

Hi,

the library itself is not limited to XLEN=64. What needs some work is the CMake config and the Scripts in the repository.

There are already some WIP branches which implement support for 64bit targets in some degree

I am currently working on toolchain refactorings to support RV64/RV32 on the same branch in a generic fashion. This will make the two mentioned branches obsolete.

Regarding the baremetal targets it should be feasible, but for spike I have no experience regarding how the target would report benchmark results or test failures (I expect we would need to use tohost? Are there other baremetal targets you have in mind?

We also have a project going on to bring muRISCV-NN to real RVV 1.0 hardware such as the CanMV K230 using an RTOS or Linux.

I hope this answers you questions!

jerryz123 commented 2 months ago

Thanks Phillipp, I look forwards to support for selectable RV64/RV32.

Regarding baremetal targets, the main differences would be