systemc-clang parses SystemC 2.3.3. It parses RTL constructs and some TLM 2.0 constructs.
- llvm/clang (version 11.0.0)
- SystemC version 2.3.3. Please see SystemC Installation notes
- c++14 is required. We are using some features that necessitate c++14. Down-porting it is also possible, but not supported.
To compile with the HDL plugin, run cmake with the -DHDL=on
flag.
- https://systemc-clang.readthedocs.io
- It is possible to build the documentation by specifying the
-DBUILD_DOC=ON
flag. This will provide the following targets **doxygen
: Builds Doxygen documentation. **sphinx
: Builds Sphinx documentation.
To enable compilation of tests, run cmake with the -DENABLE_TESTS=on
flag and also the -DSYSTEMC_DIR=<path>
flag to pass the location for SystemC. Without specifying the SYSTEMC_DIR path, it will not be possible to run the unit tests.
For information about running verilog conversion tests, see this file.
If you encounter problems, please create issues with a minimally working example that illustrates the issue.
We build all the dependencies necessary for systemc-clang
in a Docker image that you may use.
- Maya B. Gokhale
- Zhuanhao Wu
systemc-clang
follows the same licensing as clang. Please look at LICENSE.