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

[proposal] add rtl/test_setups #136

Merged
merged 13 commits into from
Aug 14, 2021
Merged

[proposal] add rtl/test_setups #136

merged 13 commits into from
Aug 14, 2021

Conversation

stnolting
Copy link
Owner

@stnolting stnolting commented Aug 7, 2021

This is a "spin-off" of #131

This PR is a proposal to add a rtl/test_setups folder, which provides two minimal test setup SoC configuration intended to be used as FPGA-, board- and toolchain-independent top entity for "first encounters". These setups are used in the updated User Guide (section "General Hardware Setup").

Both setups only provide an 8-bit wide GPIO.output port, clock, reset and UART RX & TX (only for the bootloader setup). Both setups also provide a minimal set of configuration generics: internal memory size configurations, clock speed.

  • rtl/test_setups/neorv32_test_setup_approm.vhd uses internal IMEM as ROM, pre-initialized with software application
  • rtl/test_setups/neorv32_test_setup_bootloader.vhd uses internal IMEM as RAM, software application upload vie UART + bootloader

The documentation (data sheet and user guide; READMEs) and the GHDL setup script have been modified accordingly.

@stnolting stnolting changed the title Add rtl/test_setups folder Add rtl/test_setups Aug 7, 2021
@stnolting stnolting added DOC Improvements or additions to documentation enhancement New feature or request labels Aug 7, 2021
@stnolting stnolting changed the title Add rtl/test_setups Add rtl/test_setups proposal Aug 7, 2021
@stnolting stnolting changed the title Add rtl/test_setups proposal [proposal] add rtl/test_setups Aug 7, 2021
Copy link
Collaborator

@umarcor umarcor left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Athough not ready yet, I wonder how would the "load app from SPI flash" fit in these test_setups. Would that be included in the "direct" case, or would it be a third test setup?

Other than that, I like where this is heading!

docs/userguide/content.adoc Show resolved Hide resolved
docs/userguide/content.adoc Show resolved Hide resolved
docs/userguide/content.adoc Show resolved Hide resolved
docs/userguide/content.adoc Outdated Show resolved Hide resolved
rtl/test_setups/README.md Outdated Show resolved Hide resolved
sim/ghdl.setup.sh Show resolved Hide resolved
@stnolting
Copy link
Owner Author

Athough not ready yet, I wonder how would the "load app from SPI flash" fit in these test_setups. Would that be included in the "direct" case, or would it be a third test setup?

I intentionally left this out. Booting from SPI flash seems like a "pro option". The idea of these (basic) test setups is to be as minimalist as possible to only show the basic configuration (and boot) setups.

Other than that, I like where this is heading!

🎉 😄 👍

@stnolting
Copy link
Owner Author

stnolting commented Aug 11, 2021

I think this can be merged, right? The changes shouldn't interfere with anything (I think).

@stnolting
Copy link
Owner Author

For the records:

  • fixed typo in new test setups' VHDL file (entity & architecture names = file names)
  • the Vivado and Quartus example setups now use the new rtl/test_setups/neorv32_test_setup_bootloader.vhd test setup template, which is pretty much identical to the old test setup from templates/
  • removed the now-obsolete rtl/templates/processor/neorv32_ProcessorTop_Test.vhd

@stnolting stnolting merged commit 9b6303c into master Aug 14, 2021
@stnolting stnolting deleted the add_rtl_test_setups branch August 14, 2021 17:37
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
DOC Improvements or additions to documentation enhancement New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants