aboutsummaryrefslogtreecommitdiffstats
path: root/README.md
diff options
context:
space:
mode:
Diffstat (limited to 'README.md')
-rw-r--r--README.md47
1 files changed, 25 insertions, 22 deletions
diff --git a/README.md b/README.md
index 0232a5ed0..f3a63cbec 100644
--- a/README.md
+++ b/README.md
@@ -505,6 +505,18 @@ Verilog Attributes and non-standard features
module. Modules with such cells will be reprocessed during the ``hierarchy``
pass once the referenced module definition(s) become available.
+- The ``smtlib2_module`` attribute can be set on a blackbox module to specify a
+ formal model directly using SMT-LIB 2. For such a module, the
+ ``smtlib2_comb_expr`` attribute can be used on output ports to define their
+ value using an SMT-LIB 2 expression. For example:
+
+ (* blackbox *)
+ (* smtlib2_module *)
+ module submod(a, b);
+ input [7:0] a;
+ (* smtlib2_comb_expr = "(bvnot a)" *)
+ output [7:0] b;
+ endmodule
Non-standard or SystemVerilog features for formal verification
==============================================================
@@ -584,31 +596,22 @@ Building the documentation
==========================
Note that there is no need to build the manual if you just want to read it.
-Simply download the PDF from https://yosyshq.net/yosys/documentation.html
-instead.
-
-On Ubuntu, texlive needs these packages to be able to build the manual:
-
- sudo apt-get install texlive-binaries
- sudo apt-get install texlive-science # install algorithm2e.sty
- sudo apt-get install texlive-bibtex-extra # gets multibib.sty
- sudo apt-get install texlive-fonts-extra # gets skull.sty and dsfont.sty
- sudo apt-get install texlive-publishers # IEEEtran.cls
+Simply visit https://yosys.readthedocs.io/en/latest/ instead.
-Also the non-free font luximono should be installed, there is unfortunately
-no Ubuntu package for this so it should be installed separately using
-`getnonfreefonts`:
+In addition to those packages listed above for building Yosys from source, the
+following are used for building the website:
- wget https://tug.org/fonts/getnonfreefonts/install-getnonfreefonts
- sudo texlua install-getnonfreefonts # will install to /usr/local by default, can be changed by editing BINDIR at MANDIR at the top of the script
- getnonfreefonts luximono # installs to /home/user/texmf
+ $ sudo apt-get install pdf2svg faketime
-Then execute, from the root of the repository:
+PDFLaTeX, included with most LaTeX distributions, is also needed during the
+build process for the website.
- make manual
+The Python package, Sphinx, is needed along with those listed in
+`docs/source/requirements.txt`:
-Notes:
+ $ pip install -U sphinx -r docs/source/requirements.txt
-- To run `make manual` you need to have installed Yosys with `make install`,
- otherwise it will fail on finding `kernel/yosys.h` while building
- `PRESENTATION_Prog`.
+From the root of the repository, run `make docs`. This will build/rebuild yosys
+as necessary before generating the website documentation from the yosys help
+commands. To build for pdf instead of html, call
+`make docs DOC_TARGET=latexpdf`.