fix docs
This commit is contained in:
@@ -11,39 +11,50 @@ The ReBAR framework provides wrappers for two common software RTL simulators: th
|
||||
|
||||
Verilator
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
Verilator is an open-source RTL simulator. We run Verilator simulations from within the `sims/verisim` directory.
|
||||
In order to construct the simulator with our custom design, we run the following command within the `sims/verisim` directory:
|
||||
Verilator is an open-source RTL simulator. We run Verilator simulations from within the ``sims/verisim`` directory. Therefore, we will start by entering that directory:
|
||||
|
||||
.. code-block:: shell
|
||||
|
||||
cd sims/verisim
|
||||
|
||||
In order to construct the simulator with our custom design, we run the following command within the ``sims/verisim`` directory:
|
||||
|
||||
.. code-block:: shell
|
||||
|
||||
..
|
||||
make TOP=<my_top_level_name> CONFIG=<my_config_name> SBT_PROJECT=<my_sbt_package_name> MODEL=<my_test_environment>
|
||||
|
||||
Where `<my_top_level_name>` is the class name of the top level design, `<my
|
||||
The `make` command my have additional parameters (such as `CONFIG_PACKAGE` or `MODEL_PACKAGE`) depending on the complexity of the design and integration with multiple sub-project repositories in the sbt-based build system.
|
||||
Where ``<my_top_level_name>`` is the class name of the top level design, ``<my_config_name>`` is the name of the class we create for our parameters configuration, ``<my_sbt_package_name>`` is the name of the sbt package the include both our top-level class and our config class, and ``<my_test_environment>`` is the name of the class which defines the test harness for our system.
|
||||
The ``make`` command may have additional parameters (such as ``CONFIG_PACKAGE`` or ``MODEL_PACKAGE``) depending on the complexity of the design and integration with multiple sub-project repositories in the sbt-based build system.
|
||||
|
||||
Common configurations are package using a `SUB_PROJECT` make variable. There, in order to simulate a simple Rocket-based example system we can use:
|
||||
Common configurations are package using a ``SUB_PROJECT`` make variable. There, in order to simulate a simple Rocket-based example system we can use:
|
||||
|
||||
.. code-block:: shell
|
||||
|
||||
..
|
||||
make SUB_PROJECT=example
|
||||
|
||||
Alternatively, if we would like to simulate a simple BOOM-based example system we can use:
|
||||
|
||||
..
|
||||
.. code-block:: shell
|
||||
|
||||
make SUB_PROJECT=exampleboom
|
||||
|
||||
|
||||
Once the simulator has been constructed, we would like to run RISC-V programs on it. In the `sims/verisim` directory, we will find an executable file called `TODO`. We run this executable with out target RISC-V program as a command line argument. For example:
|
||||
|
||||
..
|
||||
.. code-block:: shell
|
||||
|
||||
TODO
|
||||
|
||||
Alternatively, we can run a pre-packaged suite of RISC-V assembly tests, by adding the make target run-asm-tests. For example
|
||||
|
||||
..
|
||||
.. code-block:: shell
|
||||
|
||||
make run-asm-tests TOP=<my_top_level_name> CONFIG=<my_config_name> SBT_PROJECT=<my_sbt_package_name> MODEL=<my_test_environment>
|
||||
|
||||
or
|
||||
|
||||
..
|
||||
.. code-block:: shell
|
||||
|
||||
make run-asm-tests SUB_PROJECT=example
|
||||
|
||||
|
||||
@@ -51,39 +62,51 @@ or
|
||||
VCS
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
VCS is a proprietry RTL simulator. This guide assumes that the VCS installation is found on our PATH. We run VCS simulations from within the `sims/vsim` directory.
|
||||
In order to construct the simulator with our custom design, we run the following command within the `sims/vsim` directory:
|
||||
VCS is a proprietry RTL simulator. This guide assumes that the VCS installation is found on our PATH. We run VCS simulations from within the ``sims/vsim`` directory. Therefore, we will start by entering the directory:
|
||||
|
||||
.. code-block:: shell
|
||||
|
||||
cd sims/vsim
|
||||
|
||||
|
||||
In order to construct the simulator with our custom design, we run the following command within the ``sims/vsim`` directory:
|
||||
|
||||
.. code-block:: shell
|
||||
|
||||
..
|
||||
make TOP=<my_top_level_name> CONFIG=<my_config_name> SBT_PROJECT=<my_sbt_package_name> MODEL=<my_test_environment>
|
||||
|
||||
Where `<my_top_level_name>` is the class name of the top level design, `<my
|
||||
The `make` command my have additional parameters (such as `CONFIG_PACKAGE` or `MODEL_PACKAGE`) depending on the complexity of the design and integration with multiple sub-project repositories in the sbt-based build system.
|
||||
Where ``<my_top_level_name>`` is the class name of the top level design, ``<my_config_name>`` is the name of the class we create for our parameters configuration, ``<my_sbt_package_name>`` is the name of the sbt package the include both our top-level class and our config class, and ``<my_test_environment>`` is the name of the class which defines the test harness for our system.
|
||||
The ``make`` command my have additional parameters (such as ``CONFIG_PACKAGE`` or ``MODEL_PACKAGE``) depending on the complexity of the design and integration with multiple sub-project repositories in the sbt-based build system.
|
||||
|
||||
Common configurations are package using a `SUB_PROJECT` make variable. There, in order to simulate a simple Rocket-based example system we can use:
|
||||
Common configurations are package using a ``SUB_PROJECT`` make variable. There, in order to simulate a simple Rocket-based example system we can use:
|
||||
|
||||
.. code-block:: shell
|
||||
|
||||
..
|
||||
make SUB_PROJECT=example
|
||||
|
||||
Alternatively, if we would like to simulate a simple BOOM-based example system we can use:
|
||||
|
||||
..
|
||||
.. code-block:: shell
|
||||
|
||||
make SUB_PROJECT=exampleboom
|
||||
|
||||
|
||||
Once the simulator has been constructed, we would like to run RISC-V programs on it. In the `sims/vsim` directory, we will find an executable file called `TODO`. We run this executable with out target RISC-V program as a command line argument. For example:
|
||||
Once the simulator has been constructed, we would like to run RISC-V programs on it. In the ``sims/vsim`` directory, we will find an executable file called ``TODO``. We run this executable with out target RISC-V program as a command line argument. For example:
|
||||
|
||||
.. code-block:: shell
|
||||
|
||||
..
|
||||
TODO
|
||||
|
||||
Alternatively, we can run a pre-packaged suite of RISC-V assembly tests, by adding the make target run-asm-tests. For example
|
||||
|
||||
..
|
||||
.. code-block:: shell
|
||||
|
||||
make run-asm-tests TOP=<my_top_level_name> CONFIG=<my_config_name> SBT_PROJECT=<my_sbt_package_name> MODEL=<my_test_environment>
|
||||
|
||||
or
|
||||
|
||||
..
|
||||
.. code-block:: shell
|
||||
|
||||
make run-asm-tests SUB_PROJECT=example
|
||||
|
||||
|
||||
@@ -94,7 +117,7 @@ FireSim enables simulations at 1000x-100000x the speed of standard software simu
|
||||
|
||||
To run an FPGA-accelerated simulation using FireSim, a we need to clone the ReBAR repository (or our fork of the ReBAR repository) to an AWS EC2, and follow the setup instructions specificied in the FireSim Initial Setup documentation page.
|
||||
|
||||
After setting up the FireSim environment, we now need to generate a FireSim simulation around our selected digital design. We will work from within the `sims/firesim` directory.
|
||||
After setting up the FireSim environment, we now need to generate a FireSim simulation around our selected digital design. We will work from within the ``sims/firesim`` directory.
|
||||
|
||||
TODO: Continue from here
|
||||
|
||||
|
||||
Reference in New Issue
Block a user