-
Notifications
You must be signed in to change notification settings - Fork 15
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
Review comments/questions on IO-MTT v0.1 #66
Comments
|
This was not the intent. For IO, things will basically have to be ripped out and redone to support >64 bit addresses. I see the unfortunate correlation with MXL. Will try to rename to something else.
Omission was not intentional.
The operand-1 was designed such that a RV32 implementation can hardwire the bits 63:32 to 0. Aligning to bit 12 would mean that for RV32, the PPNs will be held in bits 33:12. It would also require RV32 to do two stores to setup operand-1.
TEE_FLT is a WARL field and is not expected to be implemented when PCIe IDE is not implemented.
Agree. Now that the walk algorithm has been written up, will add a reference to that section.
They were intended to be entirely separate. While SDID in the hart is hart local, IOs are global. Will rename the field to IOSDID to avoid a confusion.
Yes, we can mirror them with MINVAL.SPA now. Though invalidating a PPN usually would only affect a single SDID but sharing access to a PPN is possible. The MTTINVAL as specified does not ignore the SDID. It uses the SDID specified by the RULEID or when RULEID is 0 operates on all SDIDs.
Yes. |
Thanks, these answers make sense. One follow-up beyond #87:
Right, I had missed that it used RULEID, which could be used to derive an SDID. After the changes in #87, RULEID is no longer used for MTTINVAL, so I don't think there are any cases left where RULEID can be 0. Maybe we should remove this special case handling of RULEID==0? |
This special case does not apply to any of the defined operations. Follow-up from issue riscv#66.
capabilities.MXL
have the same encoding asmisa.MXL
.SET_ENTRY
.operand-1.PPN
field start at bit 12, so writing an address to the field requires only masking and not a shift operation?The text was updated successfully, but these errors were encountered: