Stalling Synchronisation Circuits for Late Data Signals

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Digital systems face inefficiencies due to the need for large safety margins in clock frequency and operational voltage to account for worst-case scenarios, leading to power and performance waste, and existing error correction methods incur overheads by reissuing instructions.

Innovation Solution

A data processing circuitry with synchronization circuits grouped to detect unstable input signals and propagate a stall signal, adding a one-clock cycle delay to ensure data stability without reissuing instructions, allowing for reduced margins and improved efficiency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If large safety margins are introduced in clock frequency and operational voltage to account for worst-case scenarios, then data stability and reliability are improved, but power consumption and performance are worsened

Engineering Contradiction:
Improvedata stabilityVSAvoidpower consumption
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

The system performs preliminary detection of data stability during a predetermined time window before the sampling edge. By detecting whether data is stable in advance, the system can take preliminary corrective action (stalling) if needed, rather than relying on large safety margins to prevent errors from occurring in the first place.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system implements feedback by monitoring data stability during the predetermined time and using this information to control the sampling process. If data is detected as unstable, a stall signal is generated to delay sampling until stable data is available, creating a closed-loop system that adapts to actual data conditions rather than relying on fixed safety margins.

Inventive Principle:
Principle #23Feedback

2Reliability

If large safety margins are introduced in clock frequency and operational voltage to account for worst-case scenarios, then data stability and reliability are improved, but performance is worsened

Engineering Contradiction:
Improvedata stabilityVSAvoidperformance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The system performs preliminary detection of data stability during a predetermined time window before the sampling edge. By detecting whether data is stable in advance, the system can take preliminary corrective action (stalling) if needed, rather than relying on large safety margins to prevent errors from occurring in the first place.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system dynamically adjusts the sampling timing based on actual data stability conditions. Instead of using fixed safety margins that reduce performance, the system can stall for one clock cycle when data is unstable and proceed normally when data is stable, making the system adaptive and performance-optimized under varying conditions.

Inventive Principle:
Principle #15Dynamics

3Reliability

If error detection and recovery means are added to correct timing errors, then reliability is improved, but device complexity and overhead are worsened

Engineering Contradiction:
Improveerror correction capabilityVSAvoidcircuit complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The system uses self-service by having the data processing circuitry itself monitor its own data stability and generate stall signals to correct timing errors. Rather than adding complex external error correction hardware, the system leverages existing components (data inputs, timing circuits, and control logic) to perform error detection and correction, minimizing additional complexity.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system extracts the error detection and correction function from complex architectural changes and implements it through a simple stall mechanism. By separating the correction function into a simple one-clock-cycle stall operation rather than integrating it into the entire data processing architecture, the system reduces overall complexity while maintaining reliability.

Inventive Principle:
Principle #2Taking out (Extraction)

4Reliability

If error correction involves reissuing instructions, then data integrity is improved, but loss of time and productivity are worsened

Engineering Contradiction:
Improvedata integrityVSAvoidtime overhead
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system extracts the correction function from complex instruction reissuing operations and implements it through a simple stall mechanism. By separating the correction function into a simple one-clock-cycle stall operation rather than integrating it into the entire data processing architecture, the system reduces overall complexity while maintaining reliability.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The system skips the complex process of reissuing instructions by using a direct stall mechanism that simply delays the sampling operation for one clock cycle. This rushing through of the correction process eliminates the time-consuming instruction reissue steps while still ensuring data integrity is restored.

Inventive Principle:
Principle #21Skipping (Rushing through)

Data Source

PatentUS8276014B2Stalling synchronisation circuits in response to a late data signal
Publication Date: 2012.09.25 THE RGT UNIV OF MICHIGAN
  • US8276014B2 patent drawing
  • US8276014B2 patent drawing
  • US8276014B2 patent drawing

AI summary

A data processing circuitry for processing data is disclosed. The data processing circuitry comprises: a plurality of synchronization circuits for capturing and transmitting the data in response to a clock signal and a plurality of combinational circuits arranged between the synchronization circuits for processing the data, the plurality of synchronization circuits being arranged in at least two groups; an error detecting circuit for determining if the data input to one of the plurality of synchronization circuits is stable during a predetermined time and for signalling an error if the data input is unstable, the predetermined time being less than a half cycle of the clock signal; control circuitry responsive to said error detecting circuit signalling said error to transmit a control signal to at least one of said groups of synchronization circuits that contains a subsequent synchronization circuit that said synchronization circuit with said unstable input is configured to transmit said data to; each of said group of synchronization circuits being configured to respond to receipt of said control signal to stall for a clock cycle and to transmit a stall signal to at least one further group of synchronization circuits that said group of synchronization circuits is configured to transmit data to or receive data from; each of said group of synchronization circuits being configured to respond to receipt of said stall signal provided they have not stalled in a preceding clock cycle to stall for a clock cycle and to transmit a stall signal to said at least one further group of synchronization circuits.