-
Notifications
You must be signed in to change notification settings - Fork 177
Implement r_rst output signal for AsyncFIFO #367
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
Conversation
Codecov Report
@@ Coverage Diff @@
## master #367 +/- ##
==========================================
+ Coverage 82.56% 82.58% +0.02%
==========================================
Files 35 35
Lines 5952 5962 +10
Branches 1211 1213 +2
==========================================
+ Hits 4914 4924 +10
+ Misses 872 871 -1
- Partials 166 167 +1
Continue to review full report at Codecov.
|
nmigen/lib/fifo.py
Outdated
r_attributes="", | ||
r_attributes=""" | ||
r_rst : out | ||
Asserted when the FIFO is reset by the write-domain reset. |
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.
Asserted when? That implies to me that it's something like a 1-clock pulse. In reality it is asserted while, right?
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.
I wrote while initially, but the write domain reset pulse can technically be shorter than a read domain clock cycle, so I felt like it was inaccurate. Probably needlessly pedantic though - you're right that when implies a single pulse (which we could do, i guess).
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.
I think holding it while the reset is asserted is a lot more useful, since you can go to a pulse from that but not the other way around.
Regaring pedantry, I think pedantry around CDC is pretty much a necessity. I think it would be very useful if we wrote that it is asserted "while the write-domain reset is, but no less than one read-domain clock cycle" or something like that.
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.
(No less than two in practice, but do we want to commit to that?)
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.
OK, I agree with that. "Asserted while the FIFO is being reset by the write-domain reset (for at least one read-domain clock cycle)"
Co-Authored-By: whitequark <whitequark@whitequark.org>
Thank you! This is a very nice addition that will enable Glasgow to, finally, support async applets properly. |
This is the last bit of #181 which still needs to be done before that issue can be closed.