-
Notifications
You must be signed in to change notification settings - Fork 8
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
Wishbone constraint random testing #38
Comments
I've got a few points of discussion, overall I think this is the way to go. I'll prefix them with a number for ease of communication :-).
-- | M2S
Signal dom (WishboneM2S conf bytes addrWidth) ->
-- | S2M
Signal dom (WishboneS2M conf bytes) isn't: Circuit (Wishbone conf bytes addrWidth) () ?
wishBoneSlave ::
-- | Slave configuration (fixed/given)
SSlaveConf conf ->
-- | Responses to CYC + STB high (generated)
[M2SResp] ->
-- | Data to return on ACK high
(WishboneM2S conf bytes addrWidth -> State s (BitVector (bytes * 8))) ->
-- | Wait cycle duration when CYC + STB are high (generated)
[Wait] ->
-- | M2S
Signal dom (WishboneM2S conf bytes addrWidth) ->
-- | S2M
Signal dom (WishboneS2M conf bytes)
|
One more thing I don't immediately find obvious: how would you compose the proposed function to an actual test case? I imagine that -once designs under test start to be more complex- we'd use the Plugin to compose designs. However, using |
This issue is meant to start a discussion, not as a way to dictate how things should be.
Wishbone master testing
In full wishbone, a slave can respond to a master in four ways:
This means a slave can exist in four configurations:
To then generate a constraint random slave I imagine:
The text was updated successfully, but these errors were encountered: