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
Updated description of rvfi_mem_rdata, rvfi_mem_exokay, rvfi_mem_memt… #954
Updated description of rvfi_mem_rdata, rvfi_mem_exokay, rvfi_mem_memt… #954
Conversation
…ype and rvfi_mem_err. Signed-off-by: Oystein Knauserud <Oystein.Knauserud@silabs.com>
+---------------------+---------+----------------+----------------+--------------------------------+ | ||
|
||
``rvfi_mem_rdata`` will report the read data for load instructions. In case of split misaligned transactions this read data is the combination of the two transfers. | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good to me.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
My comments are of type "notes", so I approve as it looks good to me.
docs/user_manual/source/rvfi.rst
Outdated
``rvfi_mem_err`` indicates if a load, non-bufferable store or atomic instruction got a bus error. | ||
``rvfi_mem_exokay`` indicates the status of ``data_exokay_i`` for loads, non-bufferable stores and atomic instructions. For split transactions, ``rvfi_mem_exokay`` will only | ||
be 1 if both transactions receive ``data_exokay_i == 1``. | ||
``rvfi_mem_err`` indicates if a load, non-bufferable store or atomic instruction got a bus error. :numref:`rvfi_mem_err encoding for different transaction types` shows how |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Note sure about the github rendering, it shows up correctly when built to HTML at least
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I see, looks good then.
+---------------------+---------+----------------+----------------+--------------------------------+ | ||
| Store | Yes | Yes | Yes | 0 | | ||
+---------------------+---------+----------------+----------------+--------------------------------+ | ||
| Store | Yes | Yes | No | data_err_i(2) | |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
As mentioned internally, in this case rvfi_mem_type is registrated as bufferable, and there is nothing indicating that the second obi transfer is non-bufferable. You could therefor not know if the rvfi_mem_err and rvfi_mem_exokay is "correct" or just tied off.
As we discussed this will be fixed later, but wanted to mention the seemingly problematic scenario.
…ype and rvfi_mem_err.