Skip to content
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

Use ProcessorTop templates in non osflow examples #77

Closed
umarcor opened this issue Jun 16, 2021 · 4 comments
Closed

Use ProcessorTop templates in non osflow examples #77

umarcor opened this issue Jun 16, 2021 · 4 comments

Comments

@umarcor
Copy link
Collaborator

umarcor commented Jun 16, 2021

Currently, the non osflow examples (radiant, quartus) do not use a ProcessorTop or SystemTop template. Quartus is trying to use neorv32_test_setup.vhd (which was renamed and does not exist) and radiant is instantiating the NEORV32 top directly.

It would be nice to update these examples for using neorv32_ProcessorTop_Test and neorv32_ProcessorTop_UP5KDemo (or MinimalBoot).

Vivado examples use neorv32_ProcessorTop_Test already.

@stnolting
Copy link
Owner

Good point!
Maybe should rename all those top templates, hm?! Somehow, I got lost dealing with "minimal" and "minimalBoot" while dealing with the memory issues.

Two ideas come to mind:

  1. make tiny, small, medium, large and extreme configurations; tiny has nearly no options enabled (CPU + GPIO) while extreme provides the full package
  2. just make up 3 to 5 names for pre-configured setups that fit most of our current needs; the names should not imply any ideas about the actual configuration

Some more:

@umarcor
Copy link
Collaborator Author

umarcor commented Jun 16, 2021

While I acknowledge that Minimal vs MinimalBoot might be confusing, the main idea is that Minimal has the bootloader disabled and no other output than the PWM. Conversely, in MinimalBoot the usage of the bootloader is optional, as it is connecting the UART or GPIO. Therefore, I think that "indirectboot" and "directboot" are not descriptive enough. The purpose of MinimalBoot is to be used for both indirect and direct boot. It is correct that Minimal is direct only.

Other than that, I think that Tiny, Small, Medium, etc. might be as good as any other naming you pick.

maybe we could add _wishbone and _axilite to highlight connectivity if a certain setup provides a bus interface

We are already doing that: https://github.com/stnolting/neorv32/blob/master/rtl/templates/system/neorv32_SystemTop_axi4lite.vhd. So, yes.

@stnolting
Copy link
Owner

I was just thinking out loud 😅

Other than that, I think that Tiny, Small, Medium, etc. might be as good as any other naming you pick.

I am still not sure about this...
Anyway, I think it is a good idea to change the current Intel and Xilinx setups so they use one of the template instances. 👍

@stnolting
Copy link
Owner

Fixed ✔️

Other than that, I think that Tiny, Small, Medium, etc. might be as good as any other naming you pick.

I am still struggling with this 😅 but that might be stuff for a different issue.

I think this can be closed now.

@umarcor umarcor closed this as completed Jun 30, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants