Storage Copy Command Mapping for Atomic Overlap Handling
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing data storage management systems face challenges in maintaining copy command atomicity without requiring additional buffer space or delaying non-copy commands, particularly when dealing with overlapping storage address ranges in copy-write subcommands.
Innovation Solution
A method and storage device that utilize a blocking NOP command to span the storage address range of copy-write subcommands, followed by mapping these subcommands to a higher shadow address space, and perform overlap checks to ensure atomic execution of copy-read and copy-write operations.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If additional buffer space is allocated to maintain copy command atomicity, then copy-write subcommand atomicity is improved, but device complexity and resource allocation requirements worsen
Solution Approach 1:
The patent extracts the atomicity maintenance function from physical buffer space by using a software-based mapping mechanism. The controller maps copy-write subcommands to a shadow storage address space, separating the atomicity guarantee from the physical storage resource, thereby eliminating the need for additional buffer space while maintaining atomicity.
Solution Approach 2:
The shadow storage address space acts as an intermediary layer between the copy-write subcommands and the actual storage medium. This intermediary mapping mechanism allows the system to maintain atomicity without direct manipulation of physical buffers, resolving the contradiction between reliability and device complexity.
2Reliability
If non-copy commands are delayed to ensure copy command atomicity, then copy-write subcommand atomicity is improved, but productivity and command execution time worsen
Solution Approach 1:
The controller performs preliminary mapping of copy-write subcommands to the shadow storage address space before execution. This preliminary action establishes the atomicity framework in advance, allowing non-copy commands to execute without delay while maintaining copy command atomicity through the pre-configured mapping mechanism.
Solution Approach 2:
The system dynamically manages command execution by selectively mapping copy-write subcommands to the shadow address space only when needed for atomicity, while allowing non-copy commands to execute normally. This dynamic approach maintains productivity by avoiding unnecessary delays while ensuring reliability when required.
3Device complexity
If copy-write subcommands are executed without mapping to shadow address space, then device complexity is reduced, but reliability and atomicity maintenance worsen
Solution Approach 1:
The shadow storage address space serves multiple functions: it maintains atomicity for copy-write subcommands, prevents overlap with non-copy commands, and provides a unified mechanism for both copy and non-copy command execution. This multi-functionality justifies the added complexity by delivering multiple reliability benefits through a single mechanism.
4Reliability
If overlap checks are performed on all commands, then reliability is improved, but processing time and computational resources worsen
Solution Approach 1:
The patent applies local quality by performing overlap checks selectively only for commands that map to the shadow storage address space, rather than checking all commands uniformly. This targeted approach maintains reliability for critical copy commands while reducing unnecessary processing time for commands that don't require atomicity protection.
Data Source
AI summary
Methods and devices are provided in which a controller of a storage device generates copy-read subcommands and copy-write subcommands of a copy command. The controller executes a blocking no-operation (NOP) command that spans a first storage address range of the copy-write subcommands in a first storage address space. The controller generates a mapping of the copy-write subcommands from the first storage address range, to mapped copy-write subcommands at a corresponding second storage address range in a second storage address space that is higher than a maximum storage address of the first storage address space. The controller executes the copy-read subcommands and the mapped copy-write subcommands. The mapped copy-write subcommands copy data for execution at the first storage address range.


