Software-Hardware Interface Segmentation for Flexible ASIC Changes

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The inflexible software-hardware interface in ASIC development leads to longer development times and inefficient hardware due to the inability to accommodate hardware changes without extensive software redesign, resulting in larger, slower, and less power-efficient ASICs.

Innovation Solution

A software and hardware development system that allows controlled changes to the software-hardware interface by hardware developers, with parts labeled by software features, enabling flexibility for hardware changes while maintaining stability by preserving software-controlled parts.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If the software-hardware interface is made flexible to accommodate hardware changes, then hardware adaptability improves, but software stability deteriorates

Engineering Contradiction:
Improvehardware adaptabilityVSAvoidsoftware stability
Core Design Contradiction:
Adaptability or versatilityVSStability of the object's composition

Solution Approach 1:

The interface is segmented into software-controlled parts (labeled with feature labels) and non-software-controlled parts. This segmentation allows hardware to be flexible in non-controlled regions while software maintains stability in labeled regions, resolving the contradiction between adaptability and stability.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Different parts of the interface have different qualities: some parts are marked as software-controlled (stable) and others as non-controlled (flexible). This local differentiation allows the interface to simultaneously provide hardware adaptability where needed and software stability where required.

Inventive Principle:
Principle #3Local quality

2Reliability

If the software-hardware interface is kept stable to protect software functionality, then software reliability improves, but hardware development time increases

Engineering Contradiction:
Improvesoftware reliabilityVSAvoidhardware development time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

By segmenting the interface into controlled and non-controlled regions, hardware developers can modify non-controlled parts without triggering software redesign, thus reducing development time while software reliability is maintained in controlled regions through feature label protection.

Inventive Principle:
Principle #1Segmentation

3Adaptability or versatility

If extensive software redesign is performed to accommodate hardware changes, then hardware functionality improves, but development complexity increases

Engineering Contradiction:
Improvehardware functionalityVSAvoiddevelopment complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The interface segmentation allows hardware functionality to be enhanced in non-controlled regions without requiring extensive software redesign, as the software only needs to maintain its existing behavior in labeled regions, thereby reducing overall development complexity.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The feature labels are extracted as a separate mechanism that identifies software-controlled interface parts. This extraction allows the system to handle hardware changes independently in non-labeled regions without involving software redesign processes, reducing development complexity.

Inventive Principle:
Principle #2Taking out (Extraction)

Data Source

PatentUS12561137B2Software-hardware interface protection
Publication Date: 2026.02.24 MELLANOX TECHNOLOGIES LTD(IL)
  • US12561137B2 patent drawing
  • US12561137B2 patent drawing
  • US12561137B2 patent drawing

AI summary

In one embodiment, a software and hardware development method include providing a software-hardware interface to provide a data interface between hardware of an application specific integrated circuit (ASIC) and software running on a processor, providing control of a given part of the software-hardware interface to a software feature thereby yielding a more stable software-hardware interface, receiving a request to change the controlled given part of the software-hardware interface, and providing a message responsively to the request to change the controlled given part of the software-hardware interface.