859 B
859 B
ArithsGen – tool for arithmetic circuits generation
FIT BUT bachelor's degree project
Description
ArithsGen presents an open source tool that enables generation of various arithmetic circuits along with the possibility to export them to various representations which all serve their specific purpose. C language for easy simulation, Verilog for logic synthesis, BLIF for formal verification possibilities and CGP to enable further global automatization.
Usage
python3 ariths_gen.py
Example of generation
#Example of 8-bit unsigned dadda multiplier that uses rca to provide the final product
a = Bus(N=8, prefix="a_bus")
b = Bus(N=8, prefix="b_bus")
u_dadda = UnsignedDaddaMultiplier(a=a, b=b, prefix="h_u_dadda_rca8", unsigned_adder_class_name=UnsignedRippleCarryAdder)
u_dadda.get_v_code_hier(open("h_u_dadda_rca8.v", "w"))