synth_opt_adders
synth_opt_adders copied to clipboard
Prefix tree adder space exploration library
I believe `synth_opt_adders` should continue to support the "legacy" way of describing adders, IE The three configuration parameters which are; - Fanout - Logic Levels - Wire tracks The reasons...
I've tried using radix=4 on forest. However I get the following error. ```python File ~/gits/synth_opt_adders/src/pptrees/ExpressionTree.py:108, in ExpressionTree.__init__(self, width, in_ports, out_ports, name, start_point, alias, no_shape, radix, idem, leaf_labels, node_defs) 106 cocycle_out_shape...
Seeing that many of the operations I'm encountering are addition of a small bit-width number to a much larger-bit-width number (e.g. to accumulating a new 8-bit width value into a...
Very interested in any links or books mentioned on the YT that may help further explore the topic of fast addition : ) Also just watched the zero2asic interview, and...
[ExpressionForest's __init__() method takes in a node_defs argument as a dictionary](https://github.com/tdene/synth_opt_adders/blob/main/src/pptrees/ExpressionForest.py#L44). [This argument is never used.](https://github.com/tdene/synth_opt_adders/blob/main/src/pptrees/ExpressionForest.py#L157) This could cause issues if a Forest class is defined for a specific operation,...
With pptrees v1.2.6 I have a simple script: ``` from pptrees.YosysAdder import YosysAdder as forest width = 9 f = forest(width, alias = "sklansky") f.hdl('adder.v') ``` This gives the following...
`node_data` is currently stored across multiple files in a separate folder. #103 raises the point that users of this library need to be able to side-load custom `node_data` for their...
#93 and subsequently #105 overhauled ExpressionTree's __getitem__ to be actually useful. This is not currently documented in any fashion, and should be, as it is a useful shorthand.
v0.4.5 had a diagram generator for classic structures, as can be seen [here](https://github.com/tdene/synth_opt_adders/blob/main/docs/diagrams/sklansky_old.png). This was good. It worked. It was useful. It made things easy to explain. It was discarded...
It has been reported that Verific causes errors when reading netlists generated by this library.