Storage Controller Multi-Channel DMA Communication
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Traditional storage systems face inefficiencies in data management and storage operations, particularly in handling flash drives without integrated controllers, leading to redundant processes and reduced reliability.
Innovation Solution
Implementing a direct-mapped flash storage system where the operating system initiates and controls processes, offloading device management from flash drives by using non-volatile RAM as a buffer for write operations and employing erasure coding for redundancy, allowing for faster write operations and improved reliability.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If traditional storage systems with integrated controllers on flash drives are used, then device management is automated, but write operations are redundant and reliability is reduced
Solution Approach 1:
The patent extracts the controller functionality from the flash drive and places it in the host system. The flash drive becomes a simple storage medium without integrated controller, while the host system's operating system assumes control of flash memory operations. This eliminates redundant write operations and improves reliability by centralizing management.
Solution Approach 2:
The patent introduces non-volatile RAM as an intermediary buffer between the host system and flash drive. Write operations are first directed to the non-volatile RAM buffer, which then manages the actual write operations to flash memory. This intermediary layer optimizes write performance and reduces redundant operations.
2Speed
If non-volatile RAM is used as a buffer for write operations, then write speed is improved, but system complexity increases
Solution Approach 1:
The non-volatile RAM serves multiple functions: it acts as a write buffer, maintains data during power loss, and manages write operations to flash memory. By making this single component multi-functional, the patent achieves improved write speed without proportionally increasing system complexity.
Solution Approach 2:
The system includes a power loss detection mechanism that automatically triggers data transfer from non-volatile RAM to flash drive when power is lost. This self-service feature ensures data safety without requiring complex external intervention, balancing speed improvement with manageable complexity.
3Reliability
If erasure coding is implemented for redundancy, then data integrity is improved, but processing overhead increases
Solution Approach 1:
The system performs erasure coding in advance during normal operation when power is available and processing resources are abundant. By preparing encoded data beforehand and storing it in non-volatile RAM, the system ensures rapid data recovery during power loss without time-critical processing delays.
4Device complexity
If flash drives without integrated controllers are used, then device management is simplified, but communication reliability is reduced
Solution Approach 1:
The patent merges the controller functionality from the flash drive into the host system's operating system. This consolidation simplifies the flash drive to a basic storage medium while centralizing intelligent control, thereby improving communication reliability through more robust host-based error handling and data management.
Data Source
AI summary
Enabling multi-channel communications between controllers in a storage array, including: creating a plurality of logical communications channels between two or more storage array controllers; inserting, into a buffer utilized by a direct memory access (‘DMA’) engine of a first storage array controller, a data transfer descriptor describing data stored in memory of the first storage array controller and a location to write the data to memory of a second storage array controller; retrieving, in dependence upon the data transfer descriptor, the data stored in memory of the first storage array controller; and writing, via a predetermined logical communications channel, the data into the memory of the second storage array controller in dependence upon the data transfer descriptor.


