IP Library Granted Patent US 8,040,799
Granted Patent B2
US 8,040,799 · App. 12/121,168 · Granted Oct 18, 2011

Network on chip with minimum guaranteed bandwidth for virtual communications channels

Assignee: International Business Machines Corporation
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 8,040,799
App. No.
12/121,168
Granted
Oct 18, 2011
Kind
B2
Abstract

A network on chip (‘NOC’) with guaranteed minimum bandwidth for virtual communications channels, the NOC including: integrated processor (‘IP’) blocks, routers, memory communications controllers, and network interface controllers, each IP block adapted to a router through a memory communications controller and a network interface controller, each memory communications controller controlling communications between an IP block and memory, each network interface controller controlling inter-IP block communications through routers, each router coupled for data communications with at least one other router through at least one link, each link including a wire bus wide enough to accommodate simultaneously, for transmission in one direction on the link, all or part of a data switching packet, each router implementing two or more virtual communications channels, each virtual communications channel characterized by a communication type, each virtual communications channel guaranteed at least a minimum bandwidth for data transmissions over a link between routers.

Claims (54)

1. A network on chip ('NOC') with guaranteed minimum bandwidth for virtual communications channels, the NOC comprising:

integrated processor (‘IP’) blocks, routers, memory communications controllers, and network interface controllers, each IP block adapted to a router through a memory communications controller and a network interface controller, each memory communications controller controlling communications between an IP block and memory, each network interface controller controlling inter-IP block communications through routers,

each router coupled for data communications with at least one other router through at least one link, each link comprising a wire bus wide enough to accommodate simultaneously, for transmission in one direction on the link, all or part of a data switching packet,

each router implementing two or more virtual communications channels, each virtual communications channel characterized by a communication type, each virtual communications channel guaranteed at least a minimum bandwidth for data transmissions over a link between routers by another virtual communications channel for which transmissions are suspended when that virtual communications channel's bandwidth utilization exceeds a predetermined threshold.

2. A network on chip (‘NOC’) with guaranteed minimum bandwidth for virtual communications channels, the NOC comprising:

integrated processor (‘IP’) blocks, routers, memory communications controllers, and network interface controllers, each IP block adapted to a router through a memory communications controller and a network interface controller, each memory communications controller controlling communications between an IP block and memory, each network interface controller controlling inter-IP block communications through routers,

each router coupled for data communications with at least one other router through at least one link, each link comprising a wire bus wide enough to accommodate simultaneously, for transmission in one direction on the link, all or part of a data switching packet,

each router implementing two or more virtual communications channels, each virtual communications channel characterized by a communication type, each virtual communications channel guaranteed at least a minimum bandwidth for data transmissions over a link between routers by another virtual communications channel for which transmissions are lowered in priority when that virtual communications channel's bandwidth utilization exceeds a predetermined threshold.

3. A network on chip (‘NOC’) with guaranteed minimum bandwidth for virtual communications channels, the NOC comprising:

integrated processor (‘IP’) blocks, routers, memory communications controllers, and network interface controllers, each IP block adapted to a router through a memory communications controller and a network interface controller, each memory communications controller controlling communications between an IP block and memory, each network interface controller controlling inter-IP block communications through routers,

each router coupled for data communications with at least one other router through at least one link, each link comprising a wire bus wide enough to accommodate simultaneously, for transmission in one direction on the link, all or part of a data switching packet,

each router implementing two or more virtual communications channels, each virtual communications channel characterized by a communication type, each virtual communications channel guaranteed at least a minimum bandwidth for data transmissions over a link between routers,

each router further comprising routing logic that includes associated shift registers, counters, and bandwidth parameters,

the shift registers including a separate shift register for each virtual communications channel for each link of each router, each shift register shifting, at a periodic rate, a value representing a transmission of at least a portion of a packet in a virtual communications channel on a link,

the counters including a counter for each virtual communications channel for each link, each counter incremented on each entry into a corresponding shift register of a value representing a transmission of a portion of a packet, each counter decremented upon exit from a corresponding shift register of a value representing a transmission of a portion of a packet, and

the bandwidth threshold parameters comprising data representing bandwidth maxima for each virtual communications channel for each link.

4. A network on chip (‘NOC’) with guaranteed minimum bandwidth for virtual communications channels, the NOC comprising:

integrated processor (‘IP’) blocks, routers, memory communications controllers, and network interface controllers, each IP block adapted to a router through a memory communications controller and a network interface controller, each memory communications controller controlling communications between an IP block and memory, each network interface controller controlling inter-IP block communications through routers, each network interface controller is enabled to convert communications instructions from command format to network packet format and implement virtual channels on the network, characterizing network packets by type,

each router coupled for data communications with at least one other router through at least one link, each link comprising a wire bus wide enough to accommodate simultaneously, for transmission in one direction on the link, all or part of a data switching packet,

each router implementing two or more virtual communications channels, each virtual communications channel characterized by a communication type, each virtual communications channel guaranteed at least a minimum bandwidth for data transmissions over a link between routers.

5. A network on chip (‘NOC’) with guaranteed minimum bandwidth for virtual communications channels, the NOC comprising:

integrated processor (‘IP’) blocks, routers, memory communications controllers, and network interface controllers, each IP block adapted to a router through a memory communications controller and a network interface controller,

each IP block enabled to bypass the IP block's memory communications controller and send inter-IP block, network-addressed communications directly to the network through that IP block's network interface controller,

each memory communications controller controlling communications between an IP block and memory, each network interface controller controlling inter-IP block communications through routers,

each router coupled for data communications with at least one other router through at least one link, each link comprising a wire bus wide enough to accommodate simultaneously, for transmission in one direction on the link, all or part of a data switching packet,

each router implementing two or more virtual communications channels, each virtual communications channel characterized by a communication type, each virtual communications channel guaranteed at least a minimum bandwidth for data transmissions over a link between routers.

6. A method of data processing with a network on chip (‘NOC’) with minimum guaranteed bandwidth for virtual communications channels, the NOC comprising:

IP blocks, routers, memory communications controllers, and network interface controllers, each IP block adapted to a router through a memory communications controller and a network interface controller,

the method comprising:

controlling by each memory communications controller communications between an IP block and memory, and

controlling by each network interface controller inter-IP block communications through routers, each router coupled for data communications with at least one other router through at least one link, each link comprising a wire bus wide enough to accommodate simultaneously, for transmission in one direction on the link, all or part of a data switching packet,

transmitting messages by each router through two or more virtual communications channels, each virtual communications channel characterized by a communication type, each virtual communications channel guaranteed at least a minimum bandwidth for data transmissions over a link between routers, including suspending transmission of a virtual communications channel when the virtual communications channel's bandwidth utilization exceeds a predetermined threshold.

7. A method of data processing with a network on chip (‘NOC’) with minimum guaranteed bandwidth for virtual communications channels, the NOC comprising:

IP blocks, routers, memory communications controllers, and network interface controllers, each IP block adapted to a router through a memory communications controller and a network interface controller,

the method comprising:

controlling by each memory communications controller communications between an IP block and memory, and

controlling by each network interface controller inter-IP block communications through routers, each router coupled for data communications with at least one other router through at least one link, each link comprising a wire bus wide enough to accommodate simultaneously, for transmission in one direction on the link, all or part of a data switching packet,

transmitting messages by each router through two or more virtual communications channels, each virtual communications channel characterized by a communication type, each virtual communications channel guaranteed at least a minimum bandwidth for data transmissions over a link between routers, including lowering priority of transmissions of a virtual communications channel when the virtual communications channel's bandwidth utilization exceeds a predetermined threshold.

8. A method of data processing with a network on chip (‘NOC’) with minimum guaranteed bandwidth for virtual communications channels, the NOC comprising:

IP blocks, routers, memory communications controllers, and network interface controllers, each IP block adapted to a router through a memory communications controller and a network interface controller,

each router comprising routing logic that includes associated shift registers, counters, and bandwidth parameters, the shift registers including a separate shift register for each virtual communications channel for each link of each router, the counters including a counter for each virtual communications channel for each link, the bandwidth threshold parameters comprising data representing bandwidth maxima for each virtual communications channel for each link,

the method comprising:

controlling by each memory communications controller communications between an IP block and memory;

controlling by each network interface controller inter-IP block communications through routers, each router coupled for data communications with at least one other router through at least one link, each link comprising a wire bus wide enough to accommodate simultaneously, for transmission in one direction on the link, all or part of a data switching packet;

transmitting messages by each router through two or more virtual communications channels, each virtual communications channel characterized by a communication type, each virtual communications channel guaranteed at least a minimum bandwidth for data transmissions over a link between routers;

shifting, at a periodic rate by each shift register, a value representing a transmission of at least a portion of a packet in a virtual communications channel on a link;

incrementing each counter on each entry into a corresponding shift register of a value representing a transmission of a portion of a packet; and

decrementing each counter upon exit from a corresponding shift register of a value representing a transmission of a portion of a packet.

9. A method of data processing with a network on chip (‘NOC’) with minimum guaranteed bandwidth for virtual communications channels, the NOC comprising:

IP blocks, routers, memory communications controllers, and network interface controllers, each IP block adapted to a router through a memory communications controller and a network interface controller,

the method comprising:

controlling by each memory communications controller communications between an IP block and memory;

controlling by each network interface controller inter-IP block communications through routers, each router coupled for data communications with at least one other router through at least one link, each link comprising a wire bus wide enough to accommodate simultaneously, for transmission in one direction on the link, all or part of a data switching packet, including converting by each network interface controller communications instructions from command format to network packet format and implementing by each network interface controller virtual channels on the network, characterizing network packets by type; and

transmitting messages by each router through two or more virtual communications channels, each virtual communications channel characterized by a communication type, each virtual communications channel guaranteed at least a minimum bandwidth for data transmissions over a link between routers.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 1, 2008
From: HOOVER, RUSSELL D; VALK, KENNETH M
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 021178/0802 →
Continuity (1)
Related Publication 20090285222A1 · Nov 19, 2009