Skip to content
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

Make the TLBroadcast and TLSourceShinker adapters pass through user bits #2446

Merged
merged 3 commits into from
May 5, 2020

Conversation

hcook
Copy link
Member

@hcook hcook commented May 2, 2020

This change makes the TLBroadcast and TLSourceShrinker transparently pass through any user bits that are received from clients attached to them.

@hcook hcook requested review from terpstra, ingallsj and daveparry and removed request for terpstra May 2, 2020 00:29
src/main/scala/tilelink/Broadcast.scala Outdated Show resolved Hide resolved
@hcook hcook requested review from ingallsj and jsmithsf May 2, 2020 00:54
@terpstra
Copy link
Contributor

terpstra commented May 2, 2020

You've made this too complicated. You should not modify the parameters at all. All you needed to add was a 'user :<= in.user' and an 'out.user :<= in.user' ... and the same for echo.

@terpstra
Copy link
Contributor

terpstra commented May 2, 2020

(I am assuming we want to forward the request permissions from the client onwards)

@terpstra
Copy link
Contributor

terpstra commented May 2, 2020

In a real cache, it does not make sense to pass through the request since requests are merged. But here they are not.

@terpstra
Copy link
Contributor

terpstra commented May 2, 2020

OTOH, maybe we want this? 🤷

@hcook
Copy link
Member Author

hcook commented May 4, 2020

@terpstra I think it makes sense to make both of these as transparent as possible for now. Another adapter to override or provide additional information could be inserted by user code.

This produced the verilog signals I was expecting in my example, but can you re-review?

@hcook hcook changed the title Make the TLBroadcast hub unit generate AMBAProt user bits over TL Make the TLBroadcast and TLSourceShinker adapters pass through user bits May 4, 2020
echoFields = cp.echoFields,
requestFields = cp.requestFields,
responseKeys = cp.responseKeys
)},
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In contrast, you need it here b/c not copy.

Copy link
Contributor

@terpstra terpstra left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good to me.

@terpstra
Copy link
Contributor

terpstra commented May 4, 2020

👍 Minimal diff approved.

@hcook hcook merged commit f1037ef into master May 5, 2020
@hcook hcook deleted the broadcasthub-prot branch May 5, 2020 21:47
@DecodeTheEncoded
Copy link

In general, What does user bits mean? Does it mean bits that is custom added by the protocal implementer?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants