-
Notifications
You must be signed in to change notification settings - Fork 9
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
Decoding the irreversible function. #120
Conversation
… functions are changed.
Codecov Report
@@ Coverage Diff @@
## main #120 +/- ##
=======================================
+ Coverage 92.1% 92.3% +0.2%
=======================================
Files 33 33
Lines 2330 2400 +70
=======================================
+ Hits 2147 2217 +70
Misses 183 183
Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here. |
So again let me explain you the changes using an example. Consider the truth table 0 0 -> 0 0 The primary inputs (n) = 2, the primary outputs (n) = 2, the minimum no. of additional lines (k1) needed to realize the irreversible function is = 2. encoded output pattern is: after encoding, we get: 0 0 -> 0 - - the total number bits = 4 So after the encoding we need to add r = 1 additional bit for decoding purposes. based on this we augment zeros to the inputs and outputs. 0 0 0 0 -> 0 0 - - we first synthesis above encoded truthtable (the augmented zeros are passed on since they are considered as identity in our synthesis algorithm) once the encoded function is synthesized, the decoder is realized (please go through the decoder algorithm mentioned in https://www.cda.cit.tum.de/files/eda/2018_aspdac_coding_techniques_in_synthesis.pdf). once the decoder is synthesized, we get 0 0 0 0 -> 0 0 - - Also, as a new addition the don't cares/garbage bits in the decoders are not processed towards identity since it is not required. |
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.
Thanks for the explanation again. This PR still needs a bit more work before it can be merged.
You can find detailed comments down below.
… functions are changed.
…e synthesizer. Refactored tests.
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.
Although an improvement, there are still some issues to be tackled here. See the comments below.
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.
A few final change requests.
Description
In this PR, the decoder functionality is included. With the help of this decoder, the irreversible function which was in an encoded form is obtained back. The signatures of certain functions are changed accordingly. Minor changes have been made to the tests.
Checklist: