Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Examples of implementation of lessons 15, 16 and 18 from the Bruno Levy course are added
(https://github.com/BrunoLevy/learn-fpga/blob/master/FemtoRV/TUTORIALS/FROM_BLINKER_TO_RISCV/README.md).
These are parts devoted to the use of inferred BRAM for reading (15), for writing (16) and a complex example with the output of the Malderbrot set via UART (18). Lessons are implemented for Tangnano4k, Tangnano9k and Tangnano20k boards.
The main function of these three examples is to serve as a canary in the mine, to detect regressions when making changes - like attosoc, but with the possibility of gradually simplifying the design - in particularly difficult cases, you can move along the original lessons from the 15th down to the 1st.
Since no new primitives are used there, there is no point in including them in the unpacking.
It might be worth implementing them for other boards where there are enough LUTs for this riscv.
Also a minor change so that new versions of Python do not swear at regular expressions.
Another purpose of including a small riscv is that it is useful for demonstrating the operation of DSP primitives via UART - when working with 18-bit numbers, the LEDs are no longer enough very quickly.