IP Library Granted Patent US 9,473,415
Granted Patent B2
US 9,473,415 · App. 14/185,811 · Granted Oct 18, 2016

QoS in a system with end-to-end flow control and QoS aware buffer allocation

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,473,415
App. No.
14/185,811
Granted
Oct 18, 2016
Kind
B2
Abstract

The present disclosure is directed to Quality of Service (QoS) and handshake protocols to facilitate endpoint bandwidth allocation among one or more agents in a Network on Chip (NoC) for an endpoint agent. The QoS policy and handshake protocols may involve the use of credits for buffer allocation which are sent to agents in the NoC to compel the acceptance of data and the allocation of an appropriate buffer. Messages sent to the agent may also have a priority associated with the message, wherein higher priority messages have automatic bandwidth allocation and lower priority messages are processed using a handshake protocol.

Claims (66)

1. A non-transitory computer readable storage medium storing instructions for executing a process, the instructions comprising:

processing a request for accepting data from an agent associated with a Network on Chip (NoC), the processing comprising:

receiving data associated with the request when the request is associated with a credit for buffer allocation; and

utilizing a handshake protocol to process the request when the request is not associated with the credit for buffer allocation;

wherein the handshake protocol comprises:

determining if a buffer is available for receiving data associated with the request;

for a determination indicative of the buffer being available for receiving data, issuing the credit for buffer allocation to the agent; and

for a determination indicative of the buffer not being available for accepting data, notifying the agent with an indication of the buffer not being available.

2. The non-transitory computer readable storage medium of claim 1 , wherein the indication further comprises instructions for the agent to wait for an issuance of the credit for buffer allocation.

3. The non-transitory computer readable storage medium of claim 1 , wherein the indication is associated with a time interval for the agent to resend the request upon an elapse of the time interval, wherein the time interval is determined by one of:

the agent; and

the indication.

4. The non-transitory computer readable storage medium of claim 1 , wherein the instructions further comprise:

issuing one or more credits of buffer allocation to one or more agents based on a Quality of Service (QoS) policy.

5. The non-transitory computer readable storage medium of claim 1 , wherein the instructions further comprise:

receiving a return credit from the agent; and

sending a return message and the return credit in response to the request for accepting data.

6. An agent associated with a Network on Chip (NoC), comprising:

a processor, configured to:

process a request for accepting data from another agent associated with the NoC, by:

receiving data associated with the request when the request is associated with a credit for buffer allocation; and

utilizing a handshake protocol to process the request when the request is not associated with the credit for buffer allocation;

wherein the processor is configured to utilize the handshake protocol by:

determining if a buffer is available for receiving data associated with the request;

for a determination indicative of the buffer being available for receiving data, issuing the credit for buffer allocation to the another agent; and

for a determination indicative of the buffer not being available for accepting data, notifying the agent with an indication of the buffer not being available.

7. The agent of claim 6 , wherein the indication further comprises instructions for another agent to wait for an issuance of the credit for buffer allocation.

8. The agent of claim 6 , wherein the indication is associated with a time interval for the another agent to resend the request upon an elapse of the time interval, wherein the time interval is determined by one of:

the another agent; and

the indication.

9. The agent of claim 6 , wherein the processor is configured to: issue one or more credits of buffer allocation to one or more other agents based on a Quality of Service (QoS) policy.

10. The agent of claim 6 , wherein the processor is configured to:

receive a return credit from the agent; and

send a return message and the return credit in response to the request for accepting data.

11. A method for processing a request for accepting data from an agent associated with a Network on Chip (NoC), the method comprising:

receiving data associated with the request when the request is associated with a credit for buffer allocation; and

utilizing a handshake protocol to process the request when the request is not associated with the credit for buffer allocation;

wherein the handshake protocol comprises:

determining if a buffer is available for receiving data associated with the request;

for a determination indicative of the buffer being available for receiving data, issuing the credit for buffer allocation to the agent; and

for a determination indicative of the buffer not being available for accepting data, notifying the agent with an indication of the buffer not being available.

12. The method of claim 11 , wherein the indication further comprises instructions for the agent to wait for an issuance of the credit for buffer allocation.

13. The method of claim 11 , wherein the indication is associated with a time interval for the agent to resend the request upon an elapse of the time interval, wherein the time interval is determined by one of:

the agent; and

the indication.

14. The method of claim 11 , further comprising:

issuing one or more credits of buffer allocation to one or more agents based on a Quality of Service (QoS) policy.

15. The method of claim 11 , further comprising:

receiving a return credit from the agent; and

sending a return message and the return credit in response to the request for accepting data.

16. An apparatus configured to generate instructions for an agent associated with a Network on Chip (NoC) for processing a request for accepting data from an agent associated with a Network on Chip (NoC), the instructions comprising:

receiving data associated with the request when the request is associated with a credit for buffer allocation; and

utilizing a handshake protocol to process the request when the request is not associated with the credit for buffer allocation;

wherein the handshake protocol comprises:

determining if a buffer is available for receiving data associated with the request;

for a determination indicative of the buffer being available for receiving data, issuing the credit for buffer allocation to the agent; and

for a determination indicative of the buffer not being available for accepting data, notifying the agent with an indication of the buffer not being available.

17. The apparatus of claim 16 , wherein the indication further comprises instructions for the agent to wait for an issuance of the credit for buffer allocation.

18. The apparatus of claim 16 , wherein the indication is associated with a time interval for the agent to resend the request upon an elapse of the time interval, wherein the time interval is determined by one of:

the agent; and

the indication.

19. The apparatus of claim 16 , wherein the instructions further comprise:

issuing one or more credits of buffer allocation to one or more agents based on a Quality of Service (QoS) policy.

20. The apparatus of claim 16 , wherein the instructions further comprise:

receiving a return credit from the agent; and

sending a return message and the return credit in response to the request for accepting data.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 19, 2022
From: NETSPEED SYSTEMS, INC.
To: INTEL CORPORATION
Reel/Frame 060753/0662 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 20, 2014
From: KUMAR, SAILESH
To: NETSPEED SYSTEMS
Reel/Frame 032260/0882 →