ICC-NCQ Command Scheduling for Shingled Magnetic Recording Drives
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Shingled-written magnetic recording (SMR) drives face performance issues due to frequent changes in physical block addresses, leading to higher command completion times, and existing protocols like NCQ and ICC do not adequately constrain operations to meet host deadlines.
Innovation Solution
Implementing Isochronous Command Queuing (ICC-NCQ) with priority and deadline information, along with estimated command access times, to optimize command completion times by selecting the most efficient storage plan for SMR drives, which includes writing to a write-twice cache, exception region, or I-region based on availability and deadline constraints.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Volume of stationary object
If shingled tracks are written in sequence to increase areal density, then storage capacity is improved, but command completion time increases due to sequential writing constraints
Solution Approach 1:
The patent segments the storage medium into multiple regions (I-regions for sequential shingled writing, E-regions for exception handling, and write-twice cache regions for high-priority data). This segmentation allows different types of operations to occur in parallel across different regions, reducing overall command completion time while maintaining the high areal density of shingled writing.
Solution Approach 2:
The patent implements a write-twice cache region where data is preliminarily written before being moved to the final destination in an I-region. This preliminary action allows high-priority or deadline-constrained data to be quickly written to the cache, meeting timing requirements, while the slower sequential write to the I-region occurs in the background.
2Adaptability or versatility
If dynamic LBA-PBA mapping is used to manage shingled regions, then adaptability is improved, but device complexity increases due to frequent remapping
Solution Approach 1:
The patent introduces an intermediary indirection layer between the host interface and the physical storage medium. The controller maintains mapping tables that translate logical block addresses to physical block addresses, and this indirection layer absorbs the complexity of dynamic remapping, garbage collection, and region management. The host sees a simple sequential address space while the controller handles the complex SMR constraints in the background.
3Reliability
If garbage collection is performed to maintain SMR integrity, then data reliability is improved, but productivity decreases due to additional write operations
Solution Approach 1:
The patent performs garbage collection continuously in the background rather than in batch operations. The controller continuously monitors the storage medium and performs remapping and consolidation operations during idle periods or low-utilization times, ensuring data integrity is maintained without causing significant interruptions to normal write operations. This continuous background operation minimizes the impact on overall write throughput.
4Productivity
If NCQ protocol is used to optimize command execution order, then productivity is improved, but timing control for host deadlines becomes difficult
Solution Approach 1:
The patent implements a dynamic command scheduling system that adjusts command execution priorities based on real-time conditions. The controller evaluates each incoming command's deadline requirement and dynamically assigns priority levels, allowing deadline-constrained commands to preempt lower-priority operations. This dynamic prioritization maintains high productivity through NCQ-style reordering while ensuring that time-critical commands meet their deadlines.
Data Source
AI summary
ICC-NCQ priority and deadline information in conjunction with an estimation of command access time that is specific to SMR drives are used improve command queue optimization. Estimated completion times are determined based on the internal subcommands that the drive has to execute to complete the host read or write command taking into account whether all or part of the data will be or already is stored in write-twice cache, E-region and/or I-region. The command processor selects the next command for execution based on calculated access times with adjusted priority based on the specified deadline for the command. As the deadline approaches, the priority of the command increases. For high priority data writes as specified by a host, an optimized storage plan is selected as appropriate using the “write-twice cache” (WTC) region, E-region or I-region.


