Daisy-Chained Interrupt Signaling for Latency Reduction

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing systems face inefficiencies and increased latency when handling interrupt requests from multiple devices sharing a bus, as they often require multiple interrupt request lines or time-consuming searches to identify the interrupt source, leading to higher hardware costs and resource utilization.

Innovation Solution

A daisy chain architecture is implemented using first and second interrupt pins to pass interrupt requests between devices, allowing the last device to communicate directly with the host computer independently of the signal line, enabling efficient identification and servicing of interrupt sources through methods like binary search.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If each device has a separate interrupt request line to the host, then the host can differentiate between various interrupt sources, but the hardware cost increases due to multiple interrupt request lines

Engineering Contradiction:
Improveinterrupt source identification accuracyVSAvoidhardware cost
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

Multiple devices share a single interrupt request line to the host, merging multiple interrupt sources into one communication channel. This reduces hardware cost by eliminating the need for separate interrupt lines for each device, while still enabling interrupt source identification through software polling or daisy-chain arbitration mechanisms.

Inventive Principle:
Principle #5Merging (Combining)

2Device complexity

If several devices share an interrupt request line to the host, then hardware cost is reduced, but the host must query each device to identify the interrupt source, increasing latency

Engineering Contradiction:
Improvehardware costVSAvoidinterrupt servicing latency
Core Design Contradiction:
Device complexityVSLoss of time

Solution Approach 1:

Devices perform preliminary actions to prepare interrupt information before the host needs to service the interrupt. The daisy-chain architecture allows upstream devices to pre-identify and forward interrupt source information downstream, so when the host receives the interrupt, the source is already identified or can be quickly identified without querying each device sequentially.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

Upstream devices in the daisy-chain act as intermediaries between the interrupt source and the host. When an interrupt occurs, upstream devices receive and forward the interrupt signal downstream, potentially carrying identification information through the chain, thereby reducing the host's burden to identify the interrupt source.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Measurement precision

If the host queries each device to identify the interrupt source, then the interrupt source can be identified, but memory resources must be used to remember interrupt history for a longer period, increasing resource utilization

Engineering Contradiction:
Improveinterrupt source identificationVSAvoidmemory resources
Core Design Contradiction:
Measurement precisionVSQuantity of substance

Solution Approach 1:

The interrupt source identification information is extracted from the interrupt signal path and made available upstream in the daisy-chain. This allows the identification to occur before the host needs to service the interrupt, eliminating or reducing the need for the host to store interrupt history in memory for extended periods.

Inventive Principle:
Principle #2Taking out (Extraction)

Data Source

PatentUS7752353B2Signaling an interrupt request through daisy chained devices
Publication Date: 2010.07.06 SANDISK ISRAEL LTD
  • US7752353B2 patent drawing
  • US7752353B2 patent drawing
  • US7752353B2 patent drawing

AI summary

A system and a method for asynchronously signaling interrupts from a plurality of devices in a computing system, while optimizing the latencies in handling the interrupts. In a particular embodiment, an interrupt is signaled via a plurality of daisy chained devices by handing over the interrupt request from one device to another while retaining information regarding any interrupts handed over (also referred to as passed). In this way, the interrupt source can be readily identified (using a binary search, for example) thereby reducing interrupt latency and memory resources required to retain interrupt history.