Documentation updates

This commit is contained in:
Ganesh Gore 2023-02-03 16:22:38 -07:00
parent f82da04932
commit 9d71b8ebd0
6 changed files with 81 additions and 54 deletions

View File

@ -185,7 +185,7 @@ texinfo_documents = [
]
bibtex_bibfiles = ["z_reference.bib"]
bibtex_bibfiles = ["./appendix/z_reference.bib"]
# -- Options for Epub output -------------------------------------------------

View File

@ -6,8 +6,6 @@
back_compatible
contributor_guidelines
cicd_setup
regression_tests

View File

@ -1,7 +1,10 @@
.. _tutorial_compile:
How to Compile
--------------
Installation
------------
Compiling Source
~~~~~~~~~~~~~~~~
.. note:: We recommend you to watch a tutorial `video <https://youtu.be/F9sMRmDewM0>`_ about how-to-compile before getting started
@ -10,7 +13,7 @@ How to Compile
.. youtube:: F9sMRmDewM0
Supported Operating Systems
~~~~~~~~~~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^^^^^^^^^^
OpenFPGA is continously tested with Ubuntu 20.04 and partially on Ubuntu 22.04
It might work with earlier versions and other distributions.
@ -24,7 +27,8 @@ In addition to continous integration, our community users have tested OpenFPGA o
- Ubuntu 22.04
Build Steps
~~~~~~~~~~~
^^^^^^^^^^^
OpenFPGA uses CMake to generate the Makefile scripts.
In general, please follow the steps to compile
@ -55,7 +59,7 @@ To quickly verify the tool is well compiled, users can run the following command
.. _tutorial_compile_build_options:
Build Options
~~~~~~~~~~~~~
^^^^^^^^^^^^^
General build targets are available in the top-level makefile. Call help desk to see details
@ -89,7 +93,7 @@ The following options are available for a custom build
.. _tutorial_compile_dependencies:
Dependencies
~~~~~~~~~~~~
^^^^^^^^^^^^
Dependencies can be installed upon the use of OpenFPGA on different systems
In general, OpenFPGA requires specific versions for the following dependencies:
@ -150,14 +154,16 @@ Ubuntu 22.04
:code: shell
Running with pre-built docker image
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Running Docker Image
~~~~~~~~~~~~~~~~~~~~
Users can skip the traditional installation process by using the Dockerized version
of the OpenFPGA tool. The OpenFPGA project maintains the docker image/Github package of
the latest stable version of OpenFPGA in the following repository
of the OpenFPGA tool. T
he OpenFPGA project maintains the docker image/Github package of every commit pushed to the `master` branch.
You can find full list of avaialble packages
`openfpga-master <https://github.com/orgs/lnis-uofu/packages/container/package/openfpga-master>`_.
This image contains precompiled OpenFPGA binaries with all prerequisites installed.
To use most recent version please use :latest tag (as shown in the following source) or you can pin to specific version by using tag `ghcr.io/lnis-uofu/openfpga-master:v1.1.541` or to specific master commit using short first 8 characters of commit SHA `ghcr.io/lnis-uofu/openfpga-master:62ec82c1`.
This image contains precompiled OpenFPGA binaries with all prerequisites already installed.
.. code-block:: bash
@ -179,3 +185,15 @@ This image contains precompiled OpenFPGA binaries with all prerequisites install
cd work
create_task _my_task yosys_vpr
Running on Binder
~~~~~~~~~~~~~~~~~
If user want to quickly evaluate the OpenFPGA functionality without any local installation, you can use the Binder service to quickly provision a low-end compute unit with docker and visual studio code.
Please click the following link to launch the Binder instance.
.. image:: https://mybinder.org/badge_logo.svg
:target: https://mybinder.org/v2/gh/lnis-uofu/OpenFPGA/master?urlpath=vscode
.. note:: The storage on Binder session is not permanent and the session is completely removed if inactive. Make sure yopu download or commit files if there are any important changes.

View File

@ -9,6 +9,8 @@ Getting Started
compile
demo
shell_shortcuts
tools

View File

@ -1,17 +1,18 @@
OpenFPGA shortcuts
------------------
OpenFPGA Shell Commands
-----------------------
OpenFPGA provides `bash`/`zsh` shell-based shortcuts to perform all essential functions and navigate through the directories. Go to the OpenFPGA directory and source ``openfpga.sh``
OpenFPGA provides `bash`/`zsh` shell-based shortcuts to perform all essential functions and navigate through the directories. Go to the OpenFPGA directory and source ``openfpga.sh``,
.. code-block:: bash
export OPENFPGA_PATH=<path-to-openfpga-repository-root>
cd ${OPENFPGA_PATH} && source openfpga.sh
.. note::
The OpenFPGA shortcut works with only a bash-like shell. e.g., `bash`/`zsh`/`fish,` etc.
Shortcut Commands
^^^^^^^^^^^^^^^^^
Commands
^^^^^^^^
Once the ``openfpga.sh`` script is sourced, you can run any following commands directly in the terminal.
@ -38,13 +39,21 @@ Once the ``openfpga.sh`` script is sourced, you can run any following commands d
for example ``create-task _my_task_copy basic_tests/generate_fabric`` create a copy of the ``basic_tests/generate_fabric`` task in
the current directory with ``_my_task_copy`` name.
.. option:: run-modelsim
.. option:: goto_task <task_name> <run_num[default 0]>
This command navigate shell to specific run-directory of the given task.
For example `goto_task lab1 2` will change directory to `run002` runt directory of `lab2`
.. option:: clear-task-run <task_name>
Clears all run diretories of the given task
.. option:: run-modelsim <task_name>
This command runs the verification using ModelSim.
The test benches are generated during the OpenFPGA run.
**Note**: users need to have ``VSIM`` installed and configured
.. option:: run-regression-local
This script runs the regression test locally using the current version of OpenFPGA.