-
Notifications
You must be signed in to change notification settings - Fork 3
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
Read to clear registers should have default hw_precedence #24
Comments
hw_precedence
To add to @jigarsavla's description, with the default software precedence, if a hardware write occurs on the same cycle that a read does, the set field value (say, one bit flag) is neither returned in the read value, nor captured in the field state. The complete loss of the set value seems to imply that software precedence can never be a valid setting for a RWC field. It might be better to give it special treatment in the Verilog code generator, as appears to be the case for counters, etc. Here's a snippet of Verilog for a misbehaving register field (
Note that the |
#24). Update allows hardware changes to take effect when occuring in same cycle as rclr/rset (this was already the case for counter fields). If previous behavior is needed, 'precedence=hw' should be added to the rclr/rset field.
Hi Scott,
Looks like when we define a
read to clear
register, it's defaulting tosw_precedence
.These registers should rather default to
hw_precedence
.Thanks and keep up the awesome work!
-jigar
The text was updated successfully, but these errors were encountered: