Flash Translation Layer Parallel Unit Look-up Table
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current solid state drive technology faces inefficiencies due to large Flash Translation Layer (FTL) tables that waste RAM and degrade system performance, as they require slower flash memory access for data mapping, and the risk of defective memory dies during manufacturing increases with the number of dies, leading to costly disposal or costly compensation mechanisms.
Innovation Solution
The implementation of a Parallel Unit Look-up Table (PULT) and Data Block Look-up Table (DBLT) within the FTL, which allows for parallel access to multiple memory dies and efficient sector mapping using modulo arithmetic to determine memory locations, reducing the need for large memory-intensive tables and enabling transparent wear leveling and error handling.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If large FTL tables are used to map host requests to flash memory locations, then mapping accuracy is improved, but RAM usage increases and system performance degrades
Solution Approach 1:
The patent divides the FTL table into multiple segments distributed across different flash memory blocks. Instead of using a single large table in RAM, the mapping information is segmented and stored in the flash memory itself, with each segment mapping to specific physical blocks. This eliminates the need for large RAM allocation while maintaining mapping accuracy through distributed storage.
Solution Approach 2:
The patent transitions from a traditional RAM-based single-dimension storage approach to a flash memory-based multi-dimensional approach. By organizing FTL table segments across multiple flash blocks with hierarchical indexing (super-blocks, blocks, pages), the system achieves efficient access without requiring large RAM capacity, effectively adding spatial distribution as another dimension for data organization.
2Quantity of substance
If FTL tables are stored in flash memory instead of RAM, then RAM usage is reduced, but access speed decreases since flash memory is slower than RAM
Solution Approach 1:
The patent pre-organizes the FTL table segments in flash memory during initialization and wear-leveling operations, creating an optimized physical layout that anticipates future access patterns. By pre-positioning mapping segments in frequently accessed flash blocks and maintaining update logs, the system reduces the overhead of random access during normal operation, compensating for flash memory's inherently slower speed.
Solution Approach 2:
The patent implements continuous background processes for FTL table updates, wear-leveling, and garbage collection that maintain the mapping structure in flash memory without interrupting normal read/write operations. This ensures that the FTL table remains optimized and up-to-date in flash memory, allowing the system to maintain high performance despite using slower flash storage instead of RAM.
3Quantity of substance
If more memory dies are used in each drive to increase capacity, then storage capacity is improved, but the probability of defective dies increases
Solution Approach 1:
The patent extracts and isolates defective memory dies from the active array during initialization by testing each die and identifying failures. Defective dies are removed from the usable pool and replaced with spare dies, creating a purified set of reliable memory units. This extraction process ensures that only functional dies are included in the final drive configuration, maintaining high reliability despite using multiple dies for increased capacity.
Solution Approach 2:
The patent dynamically changes the operational parameters of memory dies based on their tested performance characteristics. Dies are categorized into different reliability tiers based on test results, and the system adjusts workload distribution, wear-leveling strategies, and error correction parameters accordingly. This parameter adaptation allows the system to maximize the use of available dies while compensating for variations in individual die quality, maintaining overall system reliability.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
Solid state storage devices and methods for flash translation layers are disclosed. In one such translation layer, a sector indication is translated to a memory location by a parallel unit look-up table is populated by memory device enumeration at initialization. Each table entry is comprised of communication channel, chip enable, logical unit, and plane for each operating memory device found. When the sector indication is received, a modulo function operates on entries of the look-up table in order to determine the memory location associated with the sector indication.