Serial Bus Interface Buffering to Avoid Processor Wait States

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Computer systems experience performance degradation due to the slow speed of serial buses, which require processors to wait for transactions to complete, especially in scenarios involving repeated accesses to peripheral devices.

Innovation Solution

A Smart Serial Bus Interface Circuit (SSBIC) offloads processor tasks by receiving serial-bus instructions, buffering data, and performing data analysis, allowing processors to continue executing other instructions while the SSBIC handles serial bus communication.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Device complexity

If the processor directly handles serial bus transactions, then the system can maintain simple architecture, but the processor performance degrades due to waiting for slow serial bus transactions

Engineering Contradiction:
Improveinterface circuit architectureVSAvoidprocessor performance
Core Design Contradiction:
Device complexityVSProductivity

Solution Approach 1:

A dedicated serial bus interface circuit is introduced as an intermediary between the processor and peripheral devices. This interface circuit autonomously handles serial bus transactions, data buffering, and protocol management, allowing the processor to continue executing instructions without waiting for slow serial bus operations. The intermediary circuit resolves the contradiction by absorbing the complexity of serial bus communication while preserving processor performance.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If the processor waits for serial bus transactions to complete, then data accuracy is maintained, but the processor loading increases and system response time increases

Engineering Contradiction:
Improvedata accuracyVSAvoidprocessor waiting time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The interface circuit performs preliminary actions by buffering data elements before the processor needs them and proactively managing transaction timing. Data is captured and stored in buffers during serial bus transactions, so when the processor requests data, it is already prepared. This eliminates processor waiting time while maintaining data accuracy through controlled buffering and retrieval mechanisms.

Inventive Principle:
Principle #10Preliminary action

3Measurement precision

If repeated accesses to peripheral devices are performed, then data freshness is maintained, but the processor loading increases due to multiple serial bus transactions

Engineering Contradiction:
Improvedata freshnessVSAvoidprocessor loading
Core Design Contradiction:
Measurement precisionVSProductivity

Solution Approach 1:

The interface circuit enables continuous data processing by maintaining persistent connections to peripheral devices and performing repeated transactions autonomously without processor intervention. The circuit continuously monitors and retrieves fresh data from devices, ensuring data freshness while the processor remains unloaded. This continuous operation at the interface level resolves the contradiction between data freshness and processor loading.

Inventive Principle:
Principle #20Continuity of useful action

Data Source

PatentUS20250355827A1Smart Serial Bus Interface Circuit
Publication Date: 2025.11.20 MELLANOX TECHNOLOGIES LTD(IL)
  • US20250355827A1 patent drawing
  • US20250355827A1 patent drawing
  • US20250355827A1 patent drawing

AI summary

An apparatus includes a serial bus and a serial bus interface circuit. The serial bus is to connect to at least one device. The serial bus interface circuit is to receive a sequence of serial-bus-interface read instructions from a processor, to forward the serial-bus-interface read instructions over the serial bus to the at least one device, to buffer data elements, which are received over the serial bus from the at least one device in response to the serial-bus-interface read instructions, and to make the buffered data elements available to the processor.