End-to-end flow control in system on chip interconnects
AssigneeApplied Micro Circuits Corporation
InventorsMillind Mittal, Phil Mitchell
Life of this patent
Estimating the term…
Abstract
Provided is an end-to-end flow control management for a system on chip interface. As tokens are injected into agents arranged in a computer network, the input point for the token is dynamically changed such that tokens are not always injected into the same agent. Additionally or alternatively, as tokens are injected into a token ring, the tokens are initially not activated until a predetermined event occurs (e.g., after a specific number of hops). Additionally or alternatively, also provided is a free pool manager that can keep at least some high priority slots available by consuming lower priority slots first.
Claims23
A system, comprising:
- a processor configured to select a first agent and a second agent from a plurality of agents in a computer network;
- and
- a token allocator configured to inject a first token into the first agent and a second token into the second agent, wherein the first token and the second token comprise respective priority request identifiers and the processor is further configured to process the first token and the second token based on its priority request identifier.
A method, comprising:
- identifying a plurality of agents arranged in a computer network;
- and
- inserting a plurality of slot availability tokens into the plurality of agents, wherein the plurality of slot availability tokens are inactive when inserted into the plurality of agents.
A method, comprising:
- selecting a first agent and a second agent from a plurality of agents in a computer network;
- injecting a first token into the first agent and a second token into the second agent, wherein the first token and the second token comprise respective priority request identifiers;
- and
- processing the first token and the second token based on its priority request identifier.
A computer program product, comprising a non-transitory medium storing programs for execution by one or more computing systems, the computer program product comprising:
- code for selecting a first agent and a second agent from a plurality of agents in a computer network;
- code for injecting a first token into the first agent and a second token into the second agent, wherein the first token and the second token comprise respective priority request identifiers;
- and
- code for processing the first token and the second token based on its priority request identifier.
Dependencies are inferred from the claim text.