mirror of https://github.com/YosysHQ/yosys.git
Docs: Initial build_verific.rst
From verific.md Co-authored-by: Miodrag Milanovic <mmicko@gmail.com>
This commit is contained in:
parent
d97a243c22
commit
53b223f0df
|
@ -1,2 +1,158 @@
|
||||||
Compiling with Verific library
|
Compiling with Verific library
|
||||||
------------------------------
|
==============================
|
||||||
|
|
||||||
|
YosysHQ creates build for TabbyCAD Suite that includes Verific with additional
|
||||||
|
patches and our own extensions library. However, if you have licensed Verific
|
||||||
|
library in source or binary form you can still compile Yosys and have at least
|
||||||
|
partial support.
|
||||||
|
|
||||||
|
Compile options
|
||||||
|
---------------
|
||||||
|
|
||||||
|
To enable Verific support ``ENABLE_VERIFIC`` has to be set to ``1`` and
|
||||||
|
``VERIFIC_DIR`` needs to point to location where library is located.
|
||||||
|
|
||||||
|
============== ========================== ===============================
|
||||||
|
Parameter Default Description
|
||||||
|
============== ========================== ===============================
|
||||||
|
ENABLE_VERIFIC 0 Enable compilation with Verific
|
||||||
|
VERIFIC_DIR /usr/local/src/verific_lib Library and headers location
|
||||||
|
============== ========================== ===============================
|
||||||
|
|
||||||
|
Since there are multiple Verific library builds and they can have different
|
||||||
|
features, there are compile options to select them.
|
||||||
|
|
||||||
|
================================= ======= ===================================
|
||||||
|
Parameter Default Description
|
||||||
|
================================= ======= ===================================
|
||||||
|
ENABLE_VERIFIC_SYSTEMVERILOG 1 SystemVerilog support
|
||||||
|
ENABLE_VERIFIC_VHDL 1 VHDL support
|
||||||
|
ENABLE_VERIFIC_HIER_TREE 1 Hierarchy tree support
|
||||||
|
ENABLE_VERIFIC_YOSYSHQ_EXTENSIONS 1 YosysHQ specific extensions support
|
||||||
|
ENABLE_VERIFIC_EDIF 0 EDIF support
|
||||||
|
ENABLE_VERIFIC_LIBERTY 0 Liberty file support
|
||||||
|
================================= ======= ===================================
|
||||||
|
|
||||||
|
Supported build
|
||||||
|
---------------
|
||||||
|
|
||||||
|
Default options values are created in such way to represent supported build.
|
||||||
|
This one includes SystemVerilog and VHDL support with RTL elaboration, hierarchy
|
||||||
|
tree and static elaboration for both languages.
|
||||||
|
|
||||||
|
Fully supported build includes additional YosysHQ patch that can be bought for
|
||||||
|
**only** this Verific library configuration.
|
||||||
|
|
||||||
|
NOTE: TabbyCAD builds also have additional EDIF and Liberty file support enabled
|
||||||
|
as well. YosysHQ extensions library is only part of TabbyCAD as a product.
|
||||||
|
|
||||||
|
Partialy supported builds
|
||||||
|
-------------------------
|
||||||
|
|
||||||
|
Note that these builds can be used with Yosys but will miss some of important
|
||||||
|
features.
|
||||||
|
|
||||||
|
1. SystemVerilog + RTL elaboration
|
||||||
|
|
||||||
|
================================= =======
|
||||||
|
Parameter Default
|
||||||
|
================================= =======
|
||||||
|
ENABLE_VERIFIC_SYSTEMVERILOG 1
|
||||||
|
ENABLE_VERIFIC_VHDL 0
|
||||||
|
ENABLE_VERIFIC_HIER_TREE 0
|
||||||
|
ENABLE_VERIFIC_YOSYSHQ_EXTENSIONS 0
|
||||||
|
================================= =======
|
||||||
|
|
||||||
|
2. VHDL + RTL elaboration
|
||||||
|
|
||||||
|
================================= =======
|
||||||
|
Parameter Default
|
||||||
|
================================= =======
|
||||||
|
ENABLE_VERIFIC_SYSTEMVERILOG 0
|
||||||
|
ENABLE_VERIFIC_VHDL 1
|
||||||
|
ENABLE_VERIFIC_HIER_TREE 0
|
||||||
|
ENABLE_VERIFIC_YOSYSHQ_EXTENSIONS 0
|
||||||
|
================================= =======
|
||||||
|
|
||||||
|
3. SystemVerilog + VHDL + RTL elaboration
|
||||||
|
|
||||||
|
================================= =======
|
||||||
|
Parameter Default
|
||||||
|
================================= =======
|
||||||
|
ENABLE_VERIFIC_SYSTEMVERILOG 1
|
||||||
|
ENABLE_VERIFIC_VHDL 1
|
||||||
|
ENABLE_VERIFIC_HIER_TREE 0
|
||||||
|
ENABLE_VERIFIC_YOSYSHQ_EXTENSIONS 0
|
||||||
|
================================= =======
|
||||||
|
|
||||||
|
3. SystemVerilog + RTL elaboration + Static elaboration + Hier tree
|
||||||
|
|
||||||
|
================================= =======
|
||||||
|
Parameter Default
|
||||||
|
================================= =======
|
||||||
|
ENABLE_VERIFIC_SYSTEMVERILOG 1
|
||||||
|
ENABLE_VERIFIC_VHDL 0
|
||||||
|
ENABLE_VERIFIC_HIER_TREE 1
|
||||||
|
ENABLE_VERIFIC_YOSYSHQ_EXTENSIONS 0
|
||||||
|
================================= =======
|
||||||
|
|
||||||
|
3. VHDL + RTL elaboration + Static elaboration + Hier tree
|
||||||
|
|
||||||
|
================================= =======
|
||||||
|
Parameter Default
|
||||||
|
================================= =======
|
||||||
|
ENABLE_VERIFIC_SYSTEMVERILOG 0
|
||||||
|
ENABLE_VERIFIC_VHDL 1
|
||||||
|
ENABLE_VERIFIC_HIER_TREE 1
|
||||||
|
ENABLE_VERIFIC_YOSYSHQ_EXTENSIONS 0
|
||||||
|
================================= =======
|
||||||
|
|
||||||
|
4. SystemVerilog + VHDL + RTL elaboration + Static elaboration + Hier
|
||||||
|
tree
|
||||||
|
|
||||||
|
================================= =======
|
||||||
|
Parameter Default
|
||||||
|
================================= =======
|
||||||
|
ENABLE_VERIFIC_SYSTEMVERILOG 1
|
||||||
|
ENABLE_VERIFIC_VHDL 1
|
||||||
|
ENABLE_VERIFIC_HIER_TREE 1
|
||||||
|
ENABLE_VERIFIC_YOSYSHQ_EXTENSIONS 0
|
||||||
|
================================= =======
|
||||||
|
|
||||||
|
NOTE:
|
||||||
|
|
||||||
|
In case your Verific build have EDIF and/or Liberty support, you can enable
|
||||||
|
those options, these are not mentioned above for simplification and since they
|
||||||
|
are disabled by default.
|
||||||
|
|
||||||
|
NOTE: To be able to compile Yosys+Verific you need Verific library that have at
|
||||||
|
least one of HDL languages support with RTL elaboration enabled. Please note
|
||||||
|
that without YosysHQ specific extensions of Verific library, support is limited.
|
||||||
|
|
||||||
|
Verific Features that should be enabled in your Verific library
|
||||||
|
===============================================================
|
||||||
|
|
||||||
|
Please be aware that next Verific configuration build parameter needs to be
|
||||||
|
enabled in order to create fully supported build.
|
||||||
|
|
||||||
|
::
|
||||||
|
|
||||||
|
database/DBCompileFlags.h:
|
||||||
|
DB_PRESERVE_INITIAL_VALUE
|
||||||
|
|
||||||
|
Additional features included with Yosys Verific patch
|
||||||
|
=====================================================
|
||||||
|
|
||||||
|
New cells
|
||||||
|
---------
|
||||||
|
|
||||||
|
============== ===========
|
||||||
|
Cell Description
|
||||||
|
============== ===========
|
||||||
|
$initstate
|
||||||
|
$set_tag
|
||||||
|
$get_tag
|
||||||
|
$overwrite_tag
|
||||||
|
$original_tag
|
||||||
|
$future_ff
|
||||||
|
============== ===========
|
||||||
|
|
Loading…
Reference in New Issue