Software-Hardware Interface Segmentation for Flexible ASIC Changes
Find Innovative SolutionsGenerate 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
Engineering 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
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.
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.
2Reliability
If the software-hardware interface is kept stable to protect software functionality, then software reliability improves, but hardware development time increases
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.
3Adaptability or versatility
If extensive software redesign is performed to accommodate hardware changes, then hardware functionality improves, but development complexity increases
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.
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.
Data Source
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.


