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

Tilelink spec query: 9.4. TL-UL and TL-UH Messages on Channel A and D #5

Open
Asutosh21 opened this issue May 19, 2023 · 3 comments
Open

Comments

@Asutosh21
Copy link

Asutosh21 commented May 19, 2023

Hi,

We have few doubts on Tilleink spec.

9.4. TL-UL and TL-UH Messages on Channel A and D

In addition to new messages, TL-C specifies implied permission transfers for these existing messages from TL-UL and TL-UH.

Get implicitly Cap the permissions as None (Invalid).
{PutFullData, PutPartialData, ArithmeticData, LogicalData} implicitly Cap the permissions as not Read+Write [Trunk] or [Tip], i.e. as None [Invalid] or Read [Branch].

From above section of the spec, we understand if a data block is already acquired and the TL-UH command is tried from one Core (i.e. M1) then it affects the permission of the Cache attached to M1.

Queries:

  1. Suppose we have Acquired a block, then send Get for that block. As per my understanding if a data block is Acquired, with at least with Read permission and assuming this access is not released then that Master/Core should not get Read miss and so should not send Get command further. So in which case this scenario might arise? Please confirm whether my understanding correct?
  2. With sending Transfer Access command from Master to Slave, does the permission automatically updated or any additional Probe command needed? Because as specified in spec the permission is capped.
  3. Does it impact other Cores as well? If yes how would slave conveys? Does it send Probe command?
  4. If we send PutFullData after a Acquire message with Read+Write permission, then the permission can be reduced to None or Read only. How we decide which permission to achieve? Who decides it whether Master or Slave?

Regards,

Asutosh

@Dolu1990
Copy link

Dolu1990 commented Jun 5, 2023

Hi ^^

This is a good question.
I kind have the same issue as you, a few things doesn't seems to be specified.
May have more luck on https://lists.chipsalliance.org/g/interconnects-wg ?

@Dolu1990
Copy link

Dolu1990 commented Jun 6, 2023

Ahh it isn't the same question.
The question on the google group is related to aquire BtoT / probe toN interaction.
This github issue seems more related to the interraction of block ownership / (get+put) emited from a given master agent.

@TommyMurphyTM1234
Copy link

TommyMurphyTM1234 commented Jun 6, 2023

Ahh it isn't the same question. The question on the google group is related to aquire BtoT / probe toN interaction. This github issue seems more related to the interraction of block ownership / (get+put) emited from a given master agent.

Apologies, I made a mistake and deleted my earlier post here to avoid confusion, but may have actually caused it! ☹️

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

No branches or pull requests

3 participants