Time Slice Credit Control for Sliding-Window Bandwidth Averaging
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing methods for ensuring bandwidth accuracy in data storage devices lack synchronization between the host and device, leading to inconsistent bandwidth measurements and difficulties in maintaining average bandwidth requirements, particularly when throttling or credit-based approaches are used.
Innovation Solution
Implementing time slice credits (TSC) to manage bandwidth averaging over a sliding window, ensuring that the device meets average bandwidth requirements by allocating credits based on usage and depleting them when necessary, allowing data transmission only when sufficient credits are accumulated.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If write throttling is applied to limit bandwidth, then the device can meet average bandwidth requirements, but bandwidth accuracy deteriorates because there are periods with no commands to throttle
Solution Approach 1:
The system pre-calculates and accumulates credit values in advance based on the average bandwidth requirement and measurement window. This allows the device to know ahead of time how much data can be sent during future time periods, ensuring bandwidth accuracy is maintained while allowing maximum productivity when credits are available.
Solution Approach 2:
The patent introduces a credit-based intermediary mechanism that mediates between the desire to send data at maximum speed and the requirement to maintain average bandwidth accuracy. Credits act as a buffer that accumulates when bandwidth is underutilized and spends when data is sent, smoothing out the throttling effect and maintaining both accuracy and productivity.
2Reliability
If firmware-based bandwidth limiting is used, then average bandwidth can be controlled, but the firmware becomes overloaded with write commands
Solution Approach 1:
The patent segments the bandwidth control function into separate components: credit accumulation logic, credit spending logic, and data transmission logic. This segmentation allows the firmware to handle bandwidth control through simple credit bookkeeping rather than complex command scheduling, reducing firmware complexity while maintaining control accuracy.
Solution Approach 2:
The system uses host-initiated data transfers that naturally service the bandwidth control requirement. Instead of the firmware actively managing and scheduling write commands, the host provides data and the device simply controls transmission based on available credits, making the bandwidth control self-regulating and reducing firmware burden.
3Productivity
If credit-based bandwidth control is implemented, then bandwidth can be managed, but accuracy is compromised when the measurement window timing is unknown
Solution Approach 1:
The patent implements periodic credit accumulation at fixed intervals (e.g., every 100ms) that aligns with typical host measurement windows. This periodic structure ensures that regardless of when the host samples bandwidth, the credit system has accumulated the correct amount of credits to reflect the true average bandwidth over the measurement period, maintaining both flexibility and precision.
Data Source
AI summary
Instead of maximizing the possible bandwidth of device, utilize time slice credits (TSC), to ensure bandwidth average over a sliding window. When the average is ensured over a sliding window, the device should not care when the host decides to sample a 100 mSec for example, as the average will always be correct. By utilizing set percentage of predetermined allotment for the average bandwidth requirement, the system can give out credit on a predetermined interval. The credit is given out based on usage and once credit is depleted, data cannot be sent until more credit is accumulated. When data is not sent, the system is given a chance to accumulate credit to increase the amount of data sent. Once credit is at a level high enough to send data the device will send the data, but not at a speed that will surpass the average bandwidth requirement.


