diff --git a/docs/Generators/index.rst b/docs/Generators/index.rst index c917db05..f48e24f8 100644 --- a/docs/Generators/index.rst +++ b/docs/Generators/index.rst @@ -1,12 +1,19 @@ +.. _generator-index: + Generators ============================ -Generator can be thought of as a generalized RTL design, written using a mix of meta-programming and standard RTL. +A Generator can be thought of as a generalized RTL design, written using a mix of meta-programming and standard RTL. This type of meta-programming is enabled by the Chisel hardware description language (see :ref:`Chisel`). A standard RTL design is essentially just a single instance of a design coming from a generator. However, by using meta-programming and parameter systems, generators can allow for integration of complex hardware designs in automated ways. The following pages introduce the generators integrated with the Chipyard framework. +Chipyard bundles the source code for the generators, under the ``generators`` directory. +It builds them from source each time (although the build system will cache results if they have not changed), +so changes to the generators themselves will automatically be used when building with Chipyard and propagate to software simulation, FPGA-accelerated simulation, and VLSI flows. + + .. toctree:: :maxdepth: 2 :caption: Generators: diff --git a/docs/Quick-Start.rst b/docs/Quick-Start.rst index 570b841f..f37f6597 100644 --- a/docs/Quick-Start.rst +++ b/docs/Quick-Start.rst @@ -52,3 +52,5 @@ This depends on what you are planning to do with Chipyard. * If you intend to build one of the vanilla Chipyard examples, go to :ref:`build-a-chip` and follow the instructions. * If you intend to run a VLSI flow using one of the vanilla Chipyard examples, go to <> and follow the instructions. + +* If you intend to change the generators (BOOM, Rocket, etc) themselves, see :ref:`generator-index`.