pulp-platform / snitch_cluster

An energy-efficient RISC-V floating-point compute cluster.
https://pulp-platform.github.io/snitch_cluster/
Apache License 2.0
52 stars 54 forks source link

Banshee simulator error: Unsupported instruction #169

Closed hakukohaku closed 4 months ago

hakukohaku commented 4 months ago

I want to simulate sw/apps/blas/gemm/build/gemm.elf with src/banshee.yaml by banshee, but encountered the following errors:

ERROR banshee::tran > Unsupported instruction 0x800027b8: <illegal 0xf60b80d3> ERROR banshee::tran > Unsupported instruction 0x800027c0: <illegal 0xe6010bd3> ERROR banshee::tran > Unsupported instruction 0x800027e0: <illegal 0xf60c01d3> ERROR banshee::tran > Unsupported instruction 0x800027e4: <illegal 0xf6078253> ERROR banshee::tran > Unsupported instruction 0x800027e8: <illegal 0xf60b82d3> ERROR banshee::tran > Unsupported instruction 0x800027f4: <illegal 0xe6028bd3> ......

All these unsupported instructions are fmv.b.x and fmv.x.b. How to resolve these errors? By the way, banshee's README suggests using .bin files as input, but the snitch_cluster tutorial uses .elf files as input for banshee. What's the difference? And how to run banshee simulation for sw testcases in snitch_cluster correctly? I tried using llvm_objcopy to convert the .elf file into a .bin file, but the generated bin file could not be properly received by banshee.

colluca commented 4 months ago

Please post Banshee-related issues in the Banshee repository. https://github.com/pulp-platform/banshee