-
Notifications
You must be signed in to change notification settings - Fork 140
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
Any way to get the RDY signal for a method? #637
Comments
There is a function For synthesized submodules, it would be safe to call
That's because, a function doesn't have implicit conditions, it's the return result of the function that has the implicit condition. I'm also not sure how Oh, I guess it's because -- to use this function -- you will need aggressive conditions. Because if you write something like this:
this code still contains a call to I also notice that back in 2010 there was a proposal to support
This primitive would return
I'm not sure why this would have been a problem for BSC, even before SMT solvers, but also maybe BSC wasn't doing much logic reduction before checking for just the expression So try |
I think personally I would prefer a simpler version of this:
This would naturally turn a If we also stole
from Haskell then you can use It would be even nicer if we could also do the reverse: that is, have a
where |
I think you can write
|
And your
And I think it can also be written currently, as follows:
The difference is that the second version would still pick up the implicit condition (but hopefully aggressive conditions would make it do what you want); with |
hmm but does
gives me this:
I also tried this:
also unexpected |
Ah, |
oh cool I didn't know about your now if i could just access the values of a module's method inputs elsewhere in the module... unless that works too somehow? my original point, though, was that in terms of potential inclusion in std libs i would prefer the variant of |
It would be very useful to have a way to test if a method can be called.
For example, FIFOF interface have
notFull
/notEmpty
methods, which can be used before accessingdeq
orenq
to prevent a rule from blocking. But we can't get the ready signal for arbitrary methods.If we can get the the ready signal for arbitrary methods, writting an fix priority arbiter will be a lot eaisier with some if statement in an single rule.
The text was updated successfully, but these errors were encountered: