Method and apparatus for memory access management
AssigneeCavium, Inc.
InventorsRobert A. Sanzone, Wilson P. Snyder, II
Life of this patent
Estimating the term…
Abstract
In an embodiment, a method for managing access to memory includes receiving requests for access to a memory from one or more devices, each particular request associated with one of a plurality of virtual channels. A tag is assigned to each request received. Each tag assigned is added to a linked list associated with the corresponding virtual channel. Each request received with the assigned tag is transmitted to the memory. Responses to the requests are received from the memory, each response having an associated tag, and the responses received are sent to the one or more devices based on the corresponding linked list and the corresponding tag.
Claims9
A method comprising:
- receiving requests for access to a memory from one or more devices, each particular request associated with one of a plurality of virtual channels;
- for each one of the plurality of virtual channels, maintaining a corresponding linked list;
- for each particular request received, assigning a tag and adding the assigned tag to the linked list corresponding to the virtual channel associated with the particular request received;
- transmitting each request received with the assigned tag to the memory;
- receiving responses to the requests from the memory, each response having an associated tag;
- and
- transmitting the responses received to the one or more devices including comparing the tags of the responses received with a top of lists state indicating which tags are at the top of the corresponding linked lists and transmitting those responses received for which the comparison indicates a match.
Apparatus comprising:
- a request parser configured to receive requests for access to a memory from one or more devices, each particular request associated with one of a plurality of virtual channels, and to assign a tag to each request received;
- a content addressable memory configured to maintain a corresponding linked list for each one of the plurality of virtual channels, to add each tag assigned to the linked list corresponding to the virtual channel associated with the particular request received and to transmit each request received with the assigned tag to the memory;
- and
- a response parser configured to receive responses to the requests from the memory, each response having an associated tag and to transmit the responses received to the one or more devices including comparing the tags of the responses received with a top of lists state indicating which tags are at the top of the corresponding linked lists and transmitting those responses received for which the comparison indicates a match.
Dependencies are inferred from the claim text.