Bubble Break Register for Semiconductor Data Storage Efficiency
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
FIFO registers in semiconductor devices suffer from inefficient use due to empty slots remaining until they are shifted out, leading to suboptimal data storage and retrieval, particularly in applications requiring frequent and iterative data access like AI and ML.
Innovation Solution
The introduction of a bubble break register architecture that includes a flag circuit and data-type circuits to selectively shift data and fill empty slots without waiting for them to be cleared from the end, ensuring complete utilization of the register by shifting existing data to make room for new data.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If data is shifted through the FIFO register in chronological order with empty slots remaining until shifted out, then data integrity is maintained, but data storage efficiency deteriorates
Solution Approach 1:
The register is segmented into multiple slots, each with its own validity flag. This allows individual slots to be independently managed - empty slots can be identified and filled by shifting data from preceding slots, while maintaining the overall chronological order and integrity of the data stream.
Solution Approach 2:
The system dynamically adjusts the state of each slot based on validity flags. When a slot is determined to be empty, the system dynamically shifts data from preceding slots to fill it, making the register structure adaptive rather than static, thus improving storage efficiency while maintaining data integrity.
2Reliability
If empty slots are waited to be cleared from the end slot, then data access order is maintained, but latency increases
Solution Approach 1:
The system performs preliminary actions by proactively filling empty slots as they are detected, rather than waiting for them to naturally clear from the end slot. This preliminary filling action reduces the time data needs to wait before access, thereby reducing latency while maintaining proper access order through the validity flags.
3Productivity
If complete utilization of the register is achieved by shifting existing data, then data storage efficiency is improved, but device complexity increases
Solution Approach 1:
Each slot in the register is given a local quality through its validity flag, allowing it to be independently identified as empty or full. This local differentiation enables targeted data shifting operations only where needed, improving storage efficiency without requiring complex global restructuring of the entire register architecture.
Solution Approach 2:
Validity flags act as intermediaries between the data slots and the control logic. These flags simplify the complexity by providing a clear, binary indication of slot state, enabling the control logic to make simple decisions about when and where to shift data, rather than requiring complex analysis of the entire register state.
4Productivity
If frequent data access is enabled, then productivity is improved, but power consumption increases
Solution Approach 1:
The bubble break register maintains continuous useful action by ensuring data slots are continuously filled and available for access. By eliminating empty slots through proactive data shifting, the system maintains a continuous stream of valid data that can be accessed without interruption or waiting, improving productivity while reducing the power consumption associated with repeated access attempts to empty slots.
Data Source
AI summary
An exemplary register circuit includes a plurality of slots to store respective addresses and data pairs. During a write operation, each slot of a plurality of slots preceding a particular slot of the plurality of slots indicated as empty is shifted by one slot to fill the particular slot such that a first end slot of the plurality of slots is made available to receive a new write address and data pair. Each slot of the plurality of slots subsequent to the particular slot retains existing address and data pairs.


