Multi-Host Storage Controller with Dedicated Mapping-Table Cache
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Flash memory-based storage devices face challenges with address mapping tables consuming excessive capacity due to hyper-large storage capacities, leading to performance deterioration when multiple hosts access a single storage device, and existing solutions do not effectively manage resource monopolization by specific hosts.
Innovation Solution
A storage controller with a nonvolatile memory device that includes separate namespaces and dedicated caching areas for different hosts, managing address mapping tables to prevent resource monopolization and ensure quality of service for each host, using a caching manager to allocate and manage caching areas based on quality of service requirements.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If a single storage controller serves multiple hosts, then resource utilization is improved, but performance for each host deteriorates due to resource monopolization
Solution Approach 1:
The patent segments the cache memory into multiple independent cache partitions, with each partition dedicated to a specific host. This segmentation prevents any single host from monopolizing the entire cache resource, ensuring that each host has guaranteed cache access and maintaining performance levels even when multiple hosts are active simultaneously.
Solution Approach 2:
The patent implements local quality by providing each host with its own dedicated cache partition tailored to its specific access patterns and requirements. This allows each host to have optimized cache performance without interfering with other hosts, resolving the contradiction between multi-host support and individual host performance.
2Speed
If address mapping tables are cached in storage controller, then access speed is improved, but cache capacity is consumed excessively for hyper-large storage
Solution Approach 1:
The patent segments the address mapping tables into multiple partitions corresponding to different hosts or storage regions. Each partition is cached independently in the storage controller, allowing the system to maintain frequently accessed mapping tables in cache without requiring the entire address mapping table set to be cached, thus reducing total cache capacity consumption while maintaining access speed.
Solution Approach 2:
The patent implements partial caching by selectively caching only the portions of address mapping tables that are frequently accessed by each host, rather than caching all mapping tables. This partial action approach maintains sufficient access speed for active operations while significantly reducing the total cache capacity required for hyper-large storage systems.
Data Source
AI summary
A storage device configured to communicate with a first host, a second host, and a supervisor, includes: a nonvolatile memory device that may include a first namespace allocated for the first host, a second namespace allocated for the second host, and a plurality of address mapping tables; and a storage controller configured to, based on the plurality of address mapping tables: access the first namespace based on an input/output request from the first host; and access the second namespace based on an input/output request from the second host. The storage controller may include a first dedicated caching area partitioned to cache address mapping tables having a first table type corresponding to the first namespace among the plurality of address mapping tables.


