Kactus2 is a graphical EDA toolset for designing embedded products, especially FPGA-based SoCs. The toolset is designed for reuse, exchange, and integration of Intellectual Properties (IP), thus increasing productivity of hardware development, but potentially also assisting with software development.

We believe hardware engineers deserve better design tools and to enforce this, we established the following priorities in our own development:

  1. Usability. The tool is easy to install and use.
  2. Stability. The tool works.
  3. Compatibility. The tool will respect compatibility to the standard(s).
  4. Helpful. The tool will guide the user and highlight possible errors immediately.
  5. Open-source. The tool and its development will be open to anyone.

You do not lock-in with Kactus2, because you own your data and can freely access it at any time. The tool is based on IEEE 1685-2014 “IP-XACT” standard, which enables vendor independent integration between standard compatible tools. IP-XACT standardises the description of the IP-block and the design flow metadata including IP integration and configuration. It does not depend on a specific implementation language to be used, as it only defines the XML format in which to store the information.

Standard compliance provides you the means to:

  • exchange data between vendors and work groups,
  • integrate with synthesis and simulation tools,
  • re-use the files in other IP-XACT tools, and
  • use and edit the source files in other, non-IP-XACT tools.

Kactus2 complements the current design flows, so there is no need to change the already established tools for development, synthesis or verification. The tool can import existing module headers from (System)Verilog and VHDL files to create IP-XACT packaging for them. These components can be easily integrated to hierarchical designs and configured accordingly. Finally, the hardware designs can be run through generators to produce synthesisable code for the synthesis flow.

Screencapture of the Kactus2 user interface.
Kactus2 graphical user interface provides a user-friendly editor for the hardware design.

More resources:

We welcome any feedback and take suggestions for new features. Contact the team at kactus2[at]