Network-on-Chip Packet Scheduling for Service Differentiation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current Network-on-Chip (NoC) systems face challenges in efficiently managing multiple classes of service for packet transmission, leading to suboptimal bandwidth allocation and packet scheduling, which affects performance and scalability as complexity increases.

Innovation Solution

Implementing a daisy chain topology with multiple switches that include packet and class scheduling engines to insert local packets between upstream packets and manage different classes of service, ensuring fair allocation and ordered packet transmission.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If multiple classes of service are managed in NoC systems, then service differentiation and quality of service are improved, but bandwidth allocation efficiency and packet scheduling performance deteriorate

Engineering Contradiction:
Improvequality of serviceVSAvoidbandwidth allocation efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent segments packet queues into multiple priority levels (first priority queue and second priority queue) based on class of service. Each queue is independently managed with dedicated scheduling algorithms, allowing simultaneous optimization for different service requirements. This segmentation enables quality of service differentiation while maintaining overall system efficiency through independent queue management.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent dynamically changes scheduling parameters based on traffic conditions and service requirements. The packet scheduling engine adjusts insertion rates and forwarding priorities according to the class of service assigned to each packet. This parameter adaptation allows the system to optimize bandwidth allocation efficiency while meeting diverse quality of service requirements for different traffic classes.

Inventive Principle:
Principle #35Parameter changes

2Reliability

If packet scheduling complexity increases to manage multiple classes of service, then service differentiation is improved, but system performance and scalability worsen

Engineering Contradiction:
Improveservice differentiationVSAvoidsystem performance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The scheduling function is segmented into priority-based queue management and class-based forwarding decisions. The packet scheduling engine separates the complexity of managing multiple classes of service into distinct priority queues, each with simplified insertion and forwarding logic. This segmentation reduces scheduling overhead while maintaining service differentiation capabilities.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Different scheduling policies and insertion rates are applied locally to each priority queue and class of service. The system implements localized scheduling decisions for first priority packets versus second priority packets, allowing optimized handling for each service class. This local quality approach enables service differentiation without requiring complex global scheduling algorithms that would degrade system performance.

Inventive Principle:
Principle #3Local quality

3Productivity

If local packets are inserted between upstream packets, then bandwidth utilization is improved, but packet ordering and scheduling complexity increase

Engineering Contradiction:
Improvebandwidth utilizationVSAvoidpacket scheduling complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The packet insertion mechanism is made dynamic, with the insertion rate adjusted based on local packet availability, queue priorities, and current network conditions. The packet scheduling engine dynamically determines when and how many local packets to insert between upstream packets, optimizing bandwidth utilization while adapting to changing traffic patterns. This dynamic approach reduces scheduling complexity compared to static insertion schemes.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes the insertion rate parameter based on traffic conditions and service requirements. Different insertion rates are applied for different priority classes and traffic conditions, allowing the system to optimize bandwidth utilization while managing scheduling complexity through parameter adaptation rather than complex structural changes.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS8542691B2Classes of service for network on chips
Publication Date: 2013.09.24 ORACLE INT CORP
  • US8542691B2 patent drawing
  • US8542691B2 patent drawing
  • US8542691B2 patent drawing

AI summary

A method includes a local switch receiving a first set of upstream packets and a first set of local packets, each assigned a first class of service. The local switch inserts, according to a first insertion rate, a local packet between subsets of the first set of upstream packets to obtain an ordered set of first class packets. The local switch also receives a second set of upstream packets and a second set of local packets, each assigned a second class. The local switch inserts, according to a second insertion rate, a local packet between subsets of the second set of upstream packets to obtain an ordered set of second class packets. The method includes for each timeslot, selecting a class, and forwarding a packet from the selected class of service to a downstream switch. The switches are interconnected in a daisy chain topology on a single chip.