Revamp the config system for Top/Harness (#347)
* Refactor how Configs parameterize the Top and TestHarnesses * Bump sha3, testchipip, icenet, firesim
This commit is contained in:
@@ -56,7 +56,7 @@ The ``software`` directory of the generator includes the aforementioned library
|
||||
The Gemmini generator generates a C header file based on the generator parameters. This header files gets compiled together with the matrix multiplication library to tune library performance. The generated header file can be found under ``software/gemmini-rocc-tests/include/gemmini_params.h``
|
||||
|
||||
Build and Run Gemmini Tests
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
To build Gemmini tests:
|
||||
|
||||
|
||||
@@ -78,6 +78,6 @@ this mixin is shown here:
|
||||
:end-before: DOC include end: Sha3Rocket
|
||||
|
||||
The SHA3 example baremetal and Linux tests are located in the SHA3 repository.
|
||||
Please refer to its `README.md<https://github.com/ucb-bar/sha3/blob/master/README.md>`__ for more information on how to run/build the tests.
|
||||
Please refer to its `README.md <https://github.com/ucb-bar/sha3/blob/master/README.md>`_ for more information on how to run/build the tests.
|
||||
|
||||
|
||||
|
||||
@@ -20,17 +20,11 @@ To integrate one of these devices in your SoC, you will need to define a custom
|
||||
|
||||
.. literalinclude:: ../../generators/example/src/main/scala/ConfigMixins.scala
|
||||
:language: scala
|
||||
:start-after: DOC include start: WithGPIO
|
||||
:end-before: DOC include end: WithGPIO
|
||||
:start-after: DOC include start: gpio mixin
|
||||
:end-before: DOC include end: gpio mixin
|
||||
|
||||
Additionally, if the device requires top-level IOs, you will need to define a mixin to change the top-level configuration of your SoC.
|
||||
When adding a top-level IO, you should also be aware of whether it interacts with the test-harness.
|
||||
For example, a GPIO device would require a GPIO pin, and therefore we would write a mixin to augment the top level as follows:
|
||||
|
||||
.. literalinclude:: ../../generators/example/src/main/scala/ConfigMixins.scala
|
||||
:language: scala
|
||||
:start-after: DOC include start: WithGPIOTop
|
||||
:end-before: DOC include end: WithGPIOTop
|
||||
|
||||
This example instantiates a top-level module with include GPIO ports (``TopWithGPIO``), and then ties-off the GPIO port inputs to 0 (``false.B``).
|
||||
|
||||
|
||||
Reference in New Issue
Block a user