-
Notifications
You must be signed in to change notification settings - Fork 58
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Instruction Interface not stable assertion failed #11
Comments
Thanks for the issue. I'll try digging into it over the weekend. The assertion shouldn't trigger, maybe we need to re-investigate the pre-fetching policy a bit further. I'll keep you posted. |
Thanks Noah for the report and for including a binary. I looked into it and as far as I understand, the problem is that the instructions triggering these assertions come from the bootrom, which is set to be non-cacheable. They bypass the cache and the ready signal is only asserted for one cycle while Snitch has to wait for an outstanding load. So either we change the assertion to not check non-cacheable instructions, but then we have no guarantee that they will always be stable. Or we change the bypass logic to keep the ready and the instruction stable. |
Of course @SamuelRiedel is right! At first glance it seems that this is actually a bit more problematic to handle than I would wish for.
What's your take on this @Noah95 @SamuelRiedel? |
|
Thank you for investigating this. Since I'm not familiar with the instruction fetch and cache at all I can't contribute to the discussion, sorry. But let me know if I can help testing any fixes. |
After the change of @SamuelRiedel in pulp-platform/snitch#69, i get assertion failures:
Can you reproduce this using the attached binary? Is it a concern?
ssr_intrinsic.tar.gz
The text was updated successfully, but these errors were encountered: