Peripheral Device Mode Switching to Eliminate Wait Times

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In multi-process systems, hardware peripheral devices act as bottlenecks due to their single-core nature, requiring processes to wait for availability and complicating system design with the need for explicit interaction logic.

Innovation Solution

A method and system where a processor is provided with either a driver or a program based on the peripheral device's status, allowing offloading or performing operations independently, thus eliminating wait times and simplifying process development.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If a hardware peripheral device is used to perform operations quickly and efficiently, then processing speed is improved, but device availability and system complexity worsen due to single-core limitation and busy-wait requirements

Engineering Contradiction:
Improveprocessing speedVSAvoiddevice availability
Core Design Contradiction:
SpeedVSEase of operation

Solution Approach 1:

The patent applies dynamics by making the peripheral device's operational mode flexible and adaptive. The device can dynamically switch between hardware mode (when free) and software mode (when busy), allowing the system to adapt to varying load conditions. This dynamic switching resolves the contradiction by maintaining ease of operation through automatic mode selection while preserving processing speed through hardware acceleration when available

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent changes the operational parameter of the peripheral device from a fixed state to a variable state. By introducing a status register that tracks device availability and dynamically adjusting the operational mode based on this parameter, the system resolves the contradiction between processing speed and device availability. The parameter change enables automatic adaptation without requiring complex interaction logic from processes

Inventive Principle:
Principle #35Parameter changes

2Speed

If a hardware peripheral device is used to perform operations quickly and efficiently, then processing speed is improved, but device complexity increases due to status monitoring and interaction logic requirements

Engineering Contradiction:
Improveprocessing speedVSAvoidinteraction logic complexity
Core Design Contradiction:
SpeedVSDevice complexity

Solution Approach 1:

The patent applies self-service by enabling the peripheral device to automatically manage its own status and operational mode. The device monitors its own busy/free state through status registers and automatically switches between hardware and software modes without external intervention. This self-service mechanism reduces device complexity by eliminating the need for complex interaction logic in processes while maintaining high processing speed through automatic hardware acceleration when available

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The patent makes the peripheral device universal by enabling it to perform operations in multiple modes (hardware mode and software mode). This multi-functionality allows the device to serve both as a high-speed hardware accelerator when free and as a software-based processor when busy, resolving the contradiction between processing speed and device complexity through adaptive mode selection

Inventive Principle:
Principle #6Universality (Multi-functionality)

3Productivity

If processes wait for peripheral device availability, then hardware acceleration is utilized, but loss of time occurs due to waiting and bottlenecks

Engineering Contradiction:
Improvehardware utilization efficiencyVSAvoidwait time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent applies preliminary action by having processes check the status register before attempting to use the peripheral device. This preliminary status check allows processes to determine device availability in advance and take appropriate action (use hardware mode or fall back to software mode) without entering a wait state. This resolves the contradiction by maintaining hardware utilization efficiency through status-based decision making while eliminating time loss through proactive mode selection

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent introduces a status register as an intermediary between processes and the peripheral device. This intermediary provides real-time information about device availability, allowing processes to make informed decisions about mode selection without direct interaction with the device's internal state. The status register mediates the interaction by translating complex device states into simple available/unavailable indicators, resolving the contradiction between hardware utilization efficiency and time loss

Inventive Principle:
Principle #24Intermediary (Mediator)

4Reliability

If explicit interaction logic is implemented for peripheral device access, then device control is achieved, but device complexity and difficulty of detecting and measuring increase

Engineering Contradiction:
Improvedevice control reliabilityVSAvoiddevice state detection complexity
Core Design Contradiction:
ReliabilityVSDifficulty of detecting and measuring

Solution Approach 1:

The patent implements feedback by continuously monitoring the peripheral device's status register and using this information to determine operational mode. The status register provides real-time feedback about device availability, allowing the system to reliably control device access while simplifying state detection. This feedback mechanism resolves the contradiction by maintaining reliable device control through status-based decision making while reducing the difficulty of detecting device state through standardized status registers

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS8065445B1On-demand switching between hardware and software implementations of a peripheral device
Publication Date: 2011.11.22 XILINX INC
  • US8065445B1 patent drawing
  • US8065445B1 patent drawing
  • US8065445B1 patent drawing

AI summary

A method of accessing a peripheral device can include determining whether the peripheral device is busy. The method can include selectively providing to a processor, according to whether the peripheral device is busy, either a driver or a program. The driver, when executed by the processor, causes the processor to offload the operation to the peripheral device. The program, when executed by the processor, causes the processor to perform the operation in lieu of the peripheral device performing the operation.