Re: H-extension PoC Done requirements - follow-up from RISC-V Hypervisor Sync-up Call


Sandro Pinto
 

Hi Greg,

Thank you for sharing your views.

Under the light of what you have written, please let me add:

On #1, we can add Bao as well.  

On #2, we can definitely help with the "completed RTL implementation" since we already have the modified Rocket core with the H extension running Bao and two VMs (Linux + FreeRTOS) on a Xilinx ZCU104.

@ Anup & Atish
If you agree, I would take the opportunity of an upcoming sync-up call (Oct 13th ?!) to give a small presentation about our PoC and share our experience through this journey. 
Our goal is to get feedback and understand the best way to share with all of you what we have done. 
We are more than happy to make the RTL available so that we can enable any member to run their own experiences and setups. 
Eventually we could get KVM and Xvisor up and running in the "completed RTL implementation", and get #2 (and the overall goal) sooner than expected.

Thanks
Sandro


On Tue, Sep 29, 2020 at 5:54 PM Greg Favor <gfavor@...> wrote:
Following up from this morning's RISC-V Hypervisor Sync-up Call, one key remaining issue that gates being able to freeze the H-extension spec - which gates a lot of things being able to get into Linux/gcc/etc. - is the Proof of Concept task in the official Done Policy.

I believe the goals of this Done task is:

1) Flushing out any functional deficiencies in the extension's architecture.
2) Flushing any unexpected complexities for a hardware implementation.

On #1 I believe a lot of work has occurred based on running KVM on QEMU (all based on the latest draft of the H-extension).  I think Xvisor support is also in a similar state (?).  Overall, my impression is that this has reached a point that one can say that #1 has been satisfied.  Anup and Atish, would you agree?  (Or what remains to be done to reach a sufficient level of confidence?)

On #2 I suggest that it would be sufficient to have at least one "real-world" RTL implementation of the H-extension completed.  Requiring that an implementation actually be running KVM on an FPGA or emulator is a higher bar that doesn't really offer any further useful feedback on this goal, while practically speaking pushing spec freeze by a couple of quarters.  So I propose that we agree on "completed RTL implementation" as being the criterion for the H-extension to satisfy the PoC Done task.  Any disagreements or thoughts otherwise?

Btw, if Anup and Atish are positive on #1 and we agree on what I proposed for #2, then I think we can be looking at freezing the spec sooner than later (but very much also subject to Andrew and John not wanting to keep the spec open a little longer for some other reason(s)).  If I had to speculate, maybe this all nets out to freezing the spec by the end of the year (tbd).  But let's first settle this PoC issue.  Then I can talk with John and Andrew about the overall path to freeze.

Greg

Join {tech-unixplatformspec@lists.riscv.org to automatically receive all group messages.