Hi all,
I see this same issue, for about 6mo now. I had thought it was because I was running the Risc-V from external DDR3. However, I eventually built a reduced case that had nothing but the minimum required for Risc-V, running from internal blockram. Still the issue persists. Only way to get it to work is reload the SOF.
A similar issue it that the processor traps on a bad event when loading the elf and running. Often just hitting restart several times will get it to make it to main().
Nios-II never exhibited this behavior. A working theory is that the Risc-V core is executing garbage or still executing your elf from the last run. I've noticed that stopping or disconnecting seems to release the processor to run from there (I don't think the Nios-II did that). In any event, something seems to not get reset correctly in the Risc-V core when reloading.