-
Notifications
You must be signed in to change notification settings - Fork 212
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
Adding NEORV32 Qsys/Platform Designer component and AvalonMM Master Interface wrapper #152
Conversation
Wow, this is really amazing! Thank you so much for your contribution! 👍 I will check out your files - but I am not very experienced (yet) with QSYS. However, there are two things I would like to address here:
Again, thanks for your work! It is highly appreciated! 🚀 |
I agree with both your wanted changes. For 1) I will move the Qsys component to setups/quartus that is a better place for this module. I will rebase and update to fit the new IMEM/DMEM solution once that solution is merged. For your info the AvalonMM example design does not use the Qsys component. |
👍
Thank you very much ;)
Oh, ok. I haven't looked at all new files yet. |
Hi there, I am new to this project but I work with the qsys and its ecosystem. Can I help this port in any way? all the best. |
Hey @rafaelcorsi |
I am willing to test this new Qsys component on the DE10-Nano board. This is an exciting project and a very valuable development for Qsys support! Thanks, James |
Great to hear! Thank you very much 👍 |
5e781c2
to
c1f3190
Compare
Moved Qsys component and rebased to new IMEM/DMEM split Fixed documentation
c1f3190
to
1b1ae19
Compare
I have updated the PR:
Hopefully the PR is ready to be merged. @saturn77 and @rafaelcorsi, very good if you could help test this, and any feedback would be appreciated. I have just added some parameters (that I use) to the Platform Designer GUI, but any/all parameters in the Generic section of NEORV32 could be added to the GUI. |
Look awesome! I really like the detailed READMEs 😄 👍 |
This PR is adding a NEORV32 wrapper so that the NEORV can be used as a component (Nios II replacement) in Qsys/Platform Designer designs.
As an example I have added control of some parameters in the Platform Designer GUI.
This makes is simple to configure the NEORV32 and to connect other modules to the CPU.
There is some documentation the Qsys/Platform Designer solution:
https://github.com/torerams/neorv32/tree/qsys_component/rtl/system_integration/neorv32_qsys_component
The PR also include a simple AvalonMM Master Interface wrapper for people wanting a pure VHDL solution outside the Qsys/Platform Designer solution, but still have a standard AvalonMM Master Interface.
The PR also contains 2 new demo setups. One for the Qsys/Platform Designer solution, and one for the AvalonMM wrapper. Both demo designs running on the Terasic DE0-Nano FPGA Board. The demo designs and documentation are heavily based on the de0-nano-test-setup design.
https://github.com/torerams/neorv32/tree/qsys_component/setups/quartus/de0-nano-test-setup-qsys
https://github.com/torerams/neorv32/tree/qsys_component/setups/quartus/de0-nano-test-setup-avalonmm-wrapper
I have tried not to change the files already in the repository, and have only changed the setups/README.md file.
Hope this code can be useful for others.