-
Notifications
You must be signed in to change notification settings - Fork 0
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
Debug SAIL for Native Triggers #8
Comments
@junambi, as you begin to start this work, I'd appreciate an outlook for when you think this work might be completed. I suggest we think about it in terms of steps and put dates for each:
|
Working on a flow for the implementation. |
@timsifive, @pdonahue-ventana, any volunteers to help here yet? |
I haven't heard from anyone. |
Comment from most recent ARC minutes (July 10) - link
Also note, this remains on the list of future DevPartners activities. It will be addressed AFTER Pointer Masking and the Floating Point gap work work (Zdinx, Zhinx). |
@UmerShahidengr, any chance that 10xEngineers has someone to pick this up and drive to conclusion? |
@UmerShahidengr, any feedback on your ability to start work here? |
@muhammad-maarij-zeeshan can you please look at it? |
Thanks, @UmerShahidengr. Can you please make sure that @muhammad-maarij-zeeshan sends an email to [email protected] to request his account? Then, I'll take care of the other DevPartner enablement. |
@UmerShahidengr, has work started here? |
@jjscheel it has not been started yet because of resource limitation, but it is in my priority list. Keep it assigned to me, I will look into it soon. |
Thanks, @UmerShahidengr. As we discussed, we will need to complete the code to the point of submitting a PR in order to be able to ratify the spec without a waiver from the TSC. Given that the spec has completed Public Review and is being updated, it could be ready for ratification within the next 1-2 months. |
@UmerShahidengr, any progress here? |
@jjscheel we will add the 1st PR within next 2 weeks. |
Update April 30th, 2024: |
@jjscheel, I have a query for this issue, We have been adding the functionality of every trigger register (Registers have been implemented) but, every trigger register is accessed by Debug Mode and Debug Mode is not implemented at all in Sail. Implementing full Debug Mode in Sail is a big problem as it has a huge spec and a huge stuff is to be implemented. |
@UmerShahidengr, my understanding of the intent of this SOW is only to implement the Trigger Module to best of the support of EVERY register possible. While we are here, if we can extend the base register support with reasonable work, please do so as a separate PR, but you need not feel like you have to cover unimplemented registers. Those can come in when ready. @billmcspadden-riscv, do you agree? @timsifive and @pdonahue-ventana , does this meet your expectations? |
I think that there's no need to implement trace-related actions and there's no need to implement Debug Mode which is not directly related to the Trigger Module. You can't get into Debug Mode without implementing non-ISA features like the Debug Module which are beyond the scope of SAIL. Therefore, the goal would be to implement triggers with action=0 and dmode=0. Just native (self-hosted) debug. |
Update June 11th, 2024: |
Thanks for update, @UmerShahidengr! @billmcspadden-riscv, how difficult is it going to be implement basic debug mode? |
Update June 25th,2024: |
Update July 23rd, 2024: |
Thanks for the update, @UmerShahidengr. I know this is unplanned, but please make this your (near) top priority to find a replacement. The waiver work has become the critical path to ratification for the Debug specification and this is one piece of it. |
Update August 6th, 2024 |
@UmerShahidengr, per my email, we need to understand who the trainee is and how soon they will be able to work with @billmcspadden-riscv to complete this work. |
@jjscheel, after your email, we (Bilal and I) had conversation, one engineer will start working on this project full time from Sept 1st, we are estimating it to complete it till mid-October. |
@YazanHussnain-10x will be working on this SoW full time from Sept 1st. CC: @jjscheel |
Please ensure that Yazan applies for a RISC-V Portal id by sending an email to [email protected] with me on cc. I'll handle everything else after that. Welcome, YazanHussnain-10x! |
Ping: Please ensure that Yazan applies for a RISC-V Portal id by sending an email to [email protected] with me on cc. I'll handle everything else after that. Welcome, YazanHussnain-10x! |
Update: September 22nd, 2024 Open Question Update
I verified the functionality with a basic test, but I need some ACTs for the Native trigger to verify it properly and to ensure that it should not behave strangely. |
Disable the trigger in question, single step, reenable the trigger, resume. |
Thank, you @pdonahue-ventana |
Note that only one of the two solutions should be enabled at any one time. No real hardware will implement both. |
Update October 1st, 2024: |
Initial ACT tests are at riscv-non-isa/riscv-arch-test#487. They're not fully reviewed but they should work. |
Update October 4th, 2024: |
It appears that the new PR is here: riscv/sail-riscv#573 What are the plans for Mudassir's older PR? riscv/sail-riscv#486 |
@jjscheel, the old one will be closed by Mudassir soon. |
Update October 29th, 2024: |
Old PR closed by @billmcspadden-riscv. THANKS! |
@rtwfroody and @pdonahue-ventana, thanks for your reviews and comments on the PR. If you've completed the review of all code in the PR, the first question we need to answer is whether we believe the test are functionally complete. If so, we can conclude the Freeze waiver for Sail. Can you share your thoughts/comments here? If your answer is no, please clearly identify what you'd like to see resolved to be considered complete. |
Is the question about whether the Sail is complete (which I think is the topic here) or whether the tests (in riscv-non-isa/riscv-arch-test#487) are complete? |
Answering my own question: I think that you just copied the text above from the ACT issue so I'll assume that the question here is about Sail. I think that the Sail is as complete as necessary. Things like VS/VU mode support are known to be missing, but Sail doesn't support those modes in general so the Sdtrig support can't be expected to add full support for the hypervisor extension. There are a few other minor things like tmexttrigger (asynchronous triggers) that are also missing but I don't expect that Sail would ever support that. I'm satisfied with what's here. |
@pdonahue-ventana, yes your assumptions and guess as to its motivation are correct. This was a copy and paster error. Indeed I was wondering if the Sail was complete as defined by this SOW (which is defined in the first entry of this issue), which in turn links to Tim's original SOW doc -- SOW link. Please review it one final time and confirm your answer. @timsifive, would love your review and thoughts too when you have a moment. |
timsifive is now @rtwfroody |
@rtwfroody, would love your review and thoughts too when you have a moment. |
I believe that the Sail work meets the SOW and actually exceeds it in some ways (e.g. support for all match types, not just three of them). I don't know whether to laugh or cry about this line from the SOW: "Needed for end of 2022 ratification" |
Technical Group
Debug TG
ratification-pkg
Debug
Technical Liaison
Tim Newsome
Task Category
SAIL model
Task Sub Category
Ratification Target
3Q2023
Statement of Work (SOW)
SOW link
SOW Signoffs: (delete those not needed)
Waiver
Pull Request Details
The text was updated successfully, but these errors were encountered: