Soft Lock Mechanism for NoC Virtual Channel Deadlock Prevention

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Network-on-chip (NoC) systems face performance degradation due to unnecessary waiting for complete packets and potential deadlocks when virtual channels are used, as destinations wait for packet parts from multiple channels without having a complete packet, and locking onto a network port can lead to system deadlock if packet parts are not available.

Innovation Solution

Implementing a 'soft lock' mechanism that allows a network port to transmit packet parts from one port until it has available parts that can make forward progress, switching to another port if necessary, and releasing the lock once the packet is complete, with arbitration schemes like priority or first-in-first-out determining which port to lock onto.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If a NoC locks onto a network port to transmit all packet parts, then packet transmission completeness is ensured, but system deadlock occurs when packet parts are not available

Engineering Contradiction:
Improvepacket transmission completenessVSAvoidsystem throughput
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent implements a dynamic locking mechanism where the lock on a network port is not absolute but conditional. The system can release the lock and switch to another port when packet parts are unavailable, making the locking behavior adaptive to real-time network conditions rather than rigid and static.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent changes the state parameter of the lock from a fixed binary state (locked/unlocked) to a dynamic state that can transition between different ports. The arbiter tracks which port was originally locked and can switch to alternative ports while maintaining progress toward transmitting the original packet's parts.

Inventive Principle:
Principle #35Parameter changes

2Productivity

If virtual channels are used to allow multiple sources to share the same physical medium, then channel utilization is improved, but destination waiting time increases when packet parts from multiple channels are not complete

Engineering Contradiction:
Improvechannel utilizationVSAvoiddestination waiting time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The arbiter continuously monitors the availability of packet parts across different virtual channels and uses this feedback information to make intelligent switching decisions. When packet parts become available on originally locked ports, the arbiter switches back to transmit them, ensuring the destination receives complete packets as quickly as possible.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The system maintains continuous useful action by preventing idle periods at the destination. While the arbiter switches to other virtual channels when packet parts are unavailable, the network infrastructure remains active and productive, transmitting other packet parts that can make forward progress rather than waiting passively.

Inventive Principle:
Principle #20Continuity of useful action

3Productivity

If a soft lock is assigned to a network port and transmitted until packet parts are available, then forward progress is enabled, but port switching complexity increases

Engineering Contradiction:
Improveforward progressVSAvoidarbiter control logic
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The arbiter performs self-service by automatically tracking which port was originally locked and managing the switching logic without external intervention. The system monitors its own state and makes autonomous decisions about when to switch ports and when to return to the original locked port based on packet part availability.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS11831557B2Switch with virtual channels for soft locking in a network-on-chip (NoC)
Publication Date: 2023.11.28 ARTERIS INC
  • US11831557B2 patent drawing
  • US11831557B2 patent drawing
  • US11831557B2 patent drawing

AI summary

A system and method for soft locking for a networking device in a network, such as a network-on-chip (NoC). Once a soft lock is established, the port and packet are given transmitting priority so long has the port has an available packet or packet parts that can make forward progress in the network. When the soft lock port's packet parts are not available, the networking device may choose another port and/or another packet. Any arbitration scheme may be used. Once the packet (or all the packet parts) has completed transmission, the soft lock is released.