-
Notifications
You must be signed in to change notification settings - Fork 24
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Full set of sign variants (signed/unsigned/selected) for multiplier operands #144
Conversation
…integer multiplication
This is awesome stuff!! |
…ers for inputs, resultIsSigned API addition
Do I need to protect getters? I just realized I left protectors in place when I converted inputs declarations to getters. |
You should generally mark |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks great!! Awesome!
Description & Motivation
This updates the compression tree mulitplication components to fully handle variations in sign for multiplicand and multiplier.
This includes separate fixed signs for both, as well as a select signal for both and all valid combinations. When select is enabled for an operand, the fixed sign input parameter is false..
The core parameters are:
These parameters are enabled for the CompressionTreeMultiplier and CompressionTreeMultiplyAccumulate.
Major cleanup of the testing routines to ensure solid coverage and reduce testing time.
Related Issue(s)
#143
Testing
Sweep testing of the PartialProductGenerators for all combinations of signed/selected operands and all sign extension methods, across all radix settings.
Backwards-compatibility
Yes. The signed parameter is now split into signedMultiplicand and signedMultiplier.
Documentation
Yes. Documentation for the Multipliers is updated. The configurator is also updated.