This version of TileLinkIO does not contain network headers, but
every channel does include an extra client_id subbundle.
It is intended for use within Management agents.
Managers need to track where uncore.Acquire and uncore.Release messages
originated so that they can send a uncore.Grant to the right place.
Similarly they must be able to issues Probes to particular clients.
However, we'd still prefer to have uncore.ManagerTileLinkNetworkPort fill in
the header.src to enable hierarchical p-and-r of the managers. Additionally,
coherent clients might be mapped to random network port ids, and we'll leave it to the
uncore.ManagerTileLinkNetworkPort to apply the correct mapping. Managers do need to
see Finished so they know when to allow new transactions on a cache
block to proceed.
This version of TileLinkIO does not contain network headers, but every channel does include an extra client_id subbundle. It is intended for use within Management agents.
Managers need to track where uncore.Acquire and uncore.Release messages originated so that they can send a uncore.Grant to the right place. Similarly they must be able to issues Probes to particular clients. However, we'd still prefer to have uncore.ManagerTileLinkNetworkPort fill in the header.src to enable hierarchical p-and-r of the managers. Additionally, coherent clients might be mapped to random network port ids, and we'll leave it to the uncore.ManagerTileLinkNetworkPort to apply the correct mapping. Managers do need to see Finished so they know when to allow new transactions on a cache block to proceed.