Storage Controller Hash Mapping for Emerging Memory Integration
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional storage systems face challenges in integrating emerging memory media like MRAM, PCM, and ReRAM into hyperscale infrastructure due to bulky I/O stacks and compatibility issues with NAND-flash based SSDs, leading to sub-optimal utilization and increased complexity.
Innovation Solution
A storage system that uses a file storage device with a hash function to map data to physical locations, allowing for efficient data placement and retrieval, and separates the control plane from the data plane, reducing operational complexity and latency by using a lightweight I/O stack and real-time hashing.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If a storage hierarchy with additional middle tier layers is inserted between NVMe SSD and system memory, then write cache performance is improved, but device complexity and operational complexity increase
Solution Approach 1:
The patent extracts the file system functionality from the host system and integrates it directly into the storage device controller. This eliminates the need for additional middle tier layers in the storage hierarchy, as the storage device itself becomes intelligent and can perform file-level operations independently, thereby reducing operational complexity while maintaining performance benefits
Solution Approach 2:
The patent introduces a hash-based mapping mechanism as an intermediary between logical file names and physical storage locations. This mapping table serves as a lightweight mediator that enables direct file-level access without requiring complex file system software in the host, thus improving write cache performance while avoiding the complexity of multiple storage layers
2Speed
If NVMe SSD communicates with other tiers based on NVMe protocol, then communication speed is improved, but compatibility with emerging memory media deteriorates
Solution Approach 1:
The patent designs the storage device with a universal interface that can accommodate multiple types of memory media including NVMe SSDs, emerging memory media, and NAND flash. The controller is equipped with adaptive communication capabilities that can handle different protocols and media types, enabling a single device to serve multiple functions and improve compatibility across diverse storage technologies
Solution Approach 2:
The patent employs parameter-changing communication interfaces that can dynamically adjust protocol parameters based on the detected memory media type. This allows the storage device to optimize communication speed for NVMe protocols when appropriate while seamlessly adapting to emerging memory media with different protocol requirements, thus maintaining both speed and compatibility
3Measurement precision
If hash function with multiple hash methods is performed, then data mapping accuracy is improved, but processing time increases
Solution Approach 1:
The patent pre-calculates and stores hash values for file names in a mapping table during data initialization or idle periods. When write operations occur, the system performs a simple lookup in the pre-built mapping table rather than performing complex hash calculations in real-time, thus maintaining high mapping accuracy while minimizing processing time during critical write operations
Solution Approach 2:
The patent implements a two-stage hashing approach where a quick first-pass hash method is used for initial mapping, and a more accurate second-pass hash method is applied only when needed for verification or collision resolution. This partial application of excessive hashing ensures high mapping accuracy for critical operations while avoiding unnecessary processing time for routine operations
Data Source
AI summary
A system is provided to receive a request to write data to a storage device, wherein the data is associated with a file name and a file path. The system performs a hash function on an input based on the file name and the file path to obtain a hash value, wherein the hash function comprises a plurality of hash methods performed on the input. The system maps the hash value to a physical location in the storage device, and writes the data to the physical location in the storage device.


