Inter-Kernel Stall Signaling for FIFO Deadlock Detection

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Deadlocks in integrated circuits due to FIFO channel sizing errors and data rate mismatches are difficult to detect and diagnose, leading to system halts.

Innovation Solution

Implement additional circuitry in the design to generate signals indicating kernel stalls, use EDA systems for HDL simulation and hardware prototyping to detect deadlocks, and adjust FIFO channel sizes to prevent errors.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If additional circuitry is added to detect kernel stalls and deadlocks, then deadlock detection capability is improved, but device complexity increases

Engineering Contradiction:
Improvedeadlock detection capabilityVSAvoidcircuit complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The design is divided into multiple kernels, each independently monitored for stall conditions. Each kernel has its own stall detection mechanism that independently generates signals when stalling occurs, allowing distributed deadlock detection without requiring a centralized complex monitoring system.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Stall detection signals act as intermediaries between the kernel processes and the deadlock detection logic. These signals mediate the information flow, allowing the system to detect deadlocks by monitoring the presence of stall signals from multiple kernels without requiring direct observation of internal process states.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If FIFO channel sizes are increased to prevent deadlocks, then system reliability is improved, but loss of time due to waiting increases

Engineering Contradiction:
Improvesystem stabilityVSAvoidwaiting time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system performs preliminary deadlock detection by monitoring stall signals before actual deadlocks occur. By detecting potential deadlock conditions early through stall signal analysis, the system can take corrective actions or adjust FIFO sizes proactively, preventing system halts without requiring excessively large FIFO buffers that would increase waiting time.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The deadlock detection mechanism provides feedback about stall conditions to the system controller. This feedback enables dynamic adjustment of FIFO channel sizes based on actual runtime conditions, allowing the system to maintain reliability while minimizing waiting time by sizing FIFOs appropriately rather than using oversized buffers.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS12468581B2Inter-kernel dataflow analysis and deadlock detection
Publication Date: 2025.11.11 XILINX INC
  • US12468581B2 patent drawing
  • US12468581B2 patent drawing
  • US12468581B2 patent drawing

AI summary

Inter-kernel dataflow analysis and deadlock detection includes, for each kernel of a plurality of kernels of a design, including, using computer hardware, a signal for the kernel that is asserted in response to all processes inside the kernel stalling, wherein the plurality of kernels form a strongly connected component. For each kernel of the plurality of kernels, the signal is asserted during operation of the design in response to each process in the kernel stalling. A notification is generated indicating that the strongly connected component is deadlocked in response to each kernel of the strongly connected component asserting the signal.