c4HDL is a library of C++ classes that provides bit-accurate modelling of integer, floating point, and fixed point data types, for matching with HDL code.

The classes allow for either very small or very large numerical precision, allowing the word size of hardware simulations to be easily varied in order to analyse the effect on performance. These models can then be directly used for generating testbench data to verify the operation of HDL models of the algorithm.

The project also contains predefined models of various arithmetic hardware components, such as carry-save adders, and can generate models of items such as multipliers with carry-save outputs, along with a corresponding VHDL output.

While designed as a plug-in for c4Hardware, this library may also be used as a standalone item.

Related Content:


While it can be used in isolation, c4HDL is a subproject of the c4Hardware library. c4Hardware provides a high level interface to using custom numeric types and basic linear algebra in hardware simulations.

Free Download and More Information

For more information about the libraries and how to obtain them, visit the Bit Accurate Modelling website.