Storage Device Controller Parity Computation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The evolution of non-volatile memory-based storage devices like SSDs has rendered traditional parity-based protection methods inefficient due to reduced data access times and increased performance requirements, leading to difficulties in implementing RAID 5 and RAID 6 parity-based protection, especially with the shift from dedicated hardware controllers to software solutions on general-purpose CPUs.
Innovation Solution
The implementation of Peer-to-Peer (P2P) transfers among storage devices to perform data protection and recovery operations, allowing storage devices to handle XOR computations and data transfers internally, reducing the computational and memory burden on the host CPU and optimizing I/O operations.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If traditional parity-based protection methods are used with software solutions on general-purpose CPUs, then data protection is provided, but performance deteriorates due to increased computational burden and I/O operations
Solution Approach 1:
The patent replaces the software-based XOR computation mechanism on general-purpose CPUs with a hardware-based mechanism implemented in the storage device controller. This substitution eliminates the computational burden from the CPU and reduces I/O operations, as the parity computation is performed directly in the controller where the data resides, thereby resolving the contradiction between data protection and performance
Solution Approach 2:
The storage device controller performs parity computation and update operations autonomously without requiring host CPU intervention. The controller reads data from storage media, computes XOR results, and updates parity information directly, making the protection mechanism self-sufficient and eliminating the performance penalty associated with CPU-based software solutions
2Reliability
If parity computations are performed on the host CPU, then data protection is achieved, but CPU cycles and memory allocation increase
Solution Approach 1:
The patent extracts the parity computation function from the host CPU system and relocates it to the storage device controller. By taking out this computational task from the CPU's responsibility, the system eliminates the associated CPU cycle consumption and memory allocation requirements, while maintaining data protection through the controller's local computation capabilities
Solution Approach 2:
The storage device controller acts as an intermediary that handles parity computation locally. Instead of the host CPU directly computing parity (which consumes CPU cycles and memory), the controller serves as an intermediate processing unit that performs these operations autonomously, thereby protecting data without burdening the host system's computational resources
3Productivity
If the number of I/O operations is reduced through P2P transfers, then performance improves, but implementation complexity increases
Solution Approach 1:
The patent merges the data transfer and parity computation operations into a single integrated process within the storage device controller. By combining these functions and implementing Peer-to-Peer transfers that allow direct communication between storage devices without host CPU mediation, the system reduces the total number of I/O operations while the controller's integrated design manages the implementation complexity internally
Data Source
AI summary
Various implementations described herein relate to systems and methods for providing data protection and recovery for drive failures, including receiving, by a controller of a first storage device, a request from the host. In response to receiving the request, the controller transfers new data from a second storage device. The controller determines an XOR result by performing an XOR operation of the new data and existing data, the existing data is stored in a non-volatile storage.


