IP Library Granted Patent US 10,523,599
Granted Patent B2
US 10,523,599 · App. 16/037,924 · Granted Dec 31, 2019

Buffer sizing of a NoC through machine learning

Inventors: Eric Norige (San Jose, CA); Nishant Rao (San Jose, CA); Sailesh Kumar (San Jose, CA)
Assignee: NetSpeed Systems, Inc.
H04L49/9005H04L41/14H04L41/145H04L43/0864H04L43/0894H04L49/109H04L49/30H04L43/16
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 10,523,599
App. No.
16/037,924
Granted
Dec 31, 2019
Kind
B2
Abstract

The present disclosure is directed to buffer sizing of NoC link buffers by utilizing incremental dynamic optimization and machine learning. A method for configuring buffer depths associated with one or more network on chip (NoC) is disclosed. The method includes deriving characteristics of buffers associated with the one or more NoC, determining first buffer depths of the buffers based on the characteristics derived, obtaining traces based on the characteristics derived, measuring trace skews based on the traces obtained, determining second buffer depths based on the trace skews measured, optimizing the buffer depths associated with the network on chip (NoC) based on the second buffer depths, and configuring the buffer depths associated with one or more network on chip (NoC) based on the buffer depths optimized.

Claims (28)

1. A method for generating a Network on Chip (NoC), comprising:

processing traffic flows of the NoC to determine at least one of idle cycles, bubbles and NoC characteristics for a plurality of virtual channels of the NoC;

configuring each of the plurality of virtual channels as one of a cut-through channel and a store-and-forward channel based on the determined at least one of the idle cycles, the bubbles, and the NoC characteristics; and

generating dynamically configurable buffers for the ones of the plurality of virtual channels configured as store-and-forward channels, the dynamically configurable buffers sized according to a machine learning based process configured to determine arrival rate of packets and drain rate of packets based on an arbitration process of the NoC; and

generating the NoC comprising the plurality of virtual channels and the dynamically configurable buffers.

2. The method of claim 1 , further comprising determining ones of the plurality of virtual channels configured as a cut-through channel to be changed to a store-and-forward channel based on a bandwidth requirement.

3. The method of claim 1 , further comprising resizing ones of the plurality of virtual channels configured to be cut-through channels based on the NoC characteristics.

4. The method of claim 3 , wherein the ones of the plurality of virtual channels configured to be cut-through channels are identified for resizing based on a machine learning process.

5. The method of claim 1 , wherein the configuring the each of the plurality of virtual channels comprises configuring ones of the plurality of virtual channels associated with multi-flit packets as store-and-forward channels.

6. A non-transitory computer readable medium, storing instructions for generating a Network on Chip (NoC), comprising:

processing traffic flows of the NoC to determine at least one of idle cycles, bubbles and NoC characteristics for a plurality of virtual channels of the NoC;

configuring each of the plurality of virtual channels as one of a cut-through channel and a store-and-forward channel based on the determined at least one of the idle cycles, the bubbles, and the NoC characteristics; and

generating dynamically configurable buffers for the ones of the plurality of virtual channels configured as store-and-forward channels, the dynamically configurable buffers sized according to a machine learning based process configured to determine arrival rate of packets and drain rate of packets based on an arbitration process of the NoC; and

generating the NoC comprising the plurality of virtual channels and the dynamically configurable buffers.

7. The non-transitory computer readable medium of claim 6 , further comprising determining ones of the plurality of virtual channels configured as a cut-through channel to be changed to a store-and-forward channel based on a bandwidth requirement.

8. The non-transitory computer readable medium of claim 6 , further comprising resizing ones of the plurality of virtual channels configured to be cut-through channels based on the NoC characteristics.

9. The non-transitory computer readable medium of claim 8 , wherein the ones of the plurality of virtual channels configured to be cut-through channels are identified for resizing based on a machine learning process.

10. The non-transitory computer readable medium of claim 6 , wherein the configuring the each of the plurality of virtual channels comprises configuring ones of the plurality of virtual channels associated with multi-flit packets as store-and-forward channels.

11. A system for generating a Network on Chip (NoC), comprising:

a processor, configured to:

process traffic flows of the NoC to determine at least one of idle cycles, bubbles and NoC characteristics for a plurality of virtual channels of the NoC;

configure each of the plurality of virtual channels as one of a cut-through channel and a store-and-forward channel based on the determined at least one of the idle cycles, the bubbles, and the NoC characteristics; and

generate dynamically configurable buffers for the ones of the plurality of virtual channels configured as store-and-forward channels, the dynamically configurable buffers sized according to a machine learning based process configured to determine arrival rate of packets and drain rate of packets based on an arbitration process of the NoC; and

generate the NoC comprising the plurality of virtual channels and the dynamically configurable buffers.

12. The system of claim 11 , the processor further configured to determine ones of the plurality of virtual channels configured as a cut-through channel to be changed to a store-and-forward channel based on a bandwidth requirement.

13. The system of claim 11 , the processor further configured to resize ones of the plurality of virtual channels configured to be cut-through channels based on the NoC characteristics.

14. The system of claim 11 , wherein the ones of the plurality of virtual channels configured to be cut-through channels are identified for resizing based on a machine learning process.

15. The system of claim 11 , wherein the processor is configured to configure the each of the plurality of virtual channels by configuring ones of the plurality of virtual channels associated with multi-flit packets as store-and-forward channels.

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 Jul 17, 2018
From: NORIGE, ERIC; RAO, NISHANT; KUMAR, SAILESH
To: NETSPEED SYSTEMS, INC.
Reel/Frame 046375/0757 →
Continuity (2)
Continuation 15402819 · Jan 10, 2017
Related Publication 20180324113A1 · Nov 8, 2018