HDD Product Code Layout for Cross-Sector Error Correction
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Shingled magnetic recording (SMR) systems face challenges in accurately reading data due to varying noise characteristics across different sectors on a hard disk drive (HDD), leading to errors and the need for track-level error correction to enhance data reliability.
Innovation Solution
The implementation of a product code system using both row and column codes, specifically Low Density Parity Check (LDPC) codes, for encoding and decoding data, which computes first and second parity symbols to store data in a storage device, allowing for error correction across multiple sectors and improving data reliability by using a product code with a row and column dimension.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Quantity of substance
If shingled magnetic recording is used to increase track density, then storage capacity is improved, but reading accuracy deteriorates due to varying noise characteristics across sectors
Solution Approach 1:
The patent applies product code encoding that extends error correction from traditional single-dimension sector-level coding to two-dimensional track-level coding. By organizing data and parity symbols in a matrix structure with rows representing sectors and columns representing tracks, the system can correct errors across both dimensions, effectively addressing the varying noise characteristics in SMR systems while maintaining high storage capacity
Solution Approach 2:
The patent combines multiple error correction codes (LDPC codes in both row and column dimensions) to create a composite error correction system. This dual-dimensional product code structure integrates different coding schemes working together to provide enhanced error correction capability that handles the complex noise patterns inherent in shingled magnetic recording
2Ease of operation
If track-by-track writing is used in SMR systems, then data can be written to specific sectors, but writing efficiency deteriorates due to the need to rewrite entire tracks or bands of overlapping tracks
Solution Approach 1:
The patent segments the error correction process into independent row and column operations. By dividing the data matrix into rows (sectors) and columns (tracks), the system can perform encoding and decoding operations on individual rows or columns without affecting the entire storage medium, enabling efficient random access while maintaining the shingled track structure
Solution Approach 2:
The product code structure provides multi-functionality by enabling both random sector access and efficient track-level error correction within the same framework. The dual-dimensional coding scheme can operate independently in either dimension, allowing the system to handle both random write operations and sequential track rewriting efficiently
3Reliability
If sector-level error correction codes are used, then individual sectors are protected, but error correction capability deteriorates when dealing with varying noise characteristics across different portions of the disk
Solution Approach 1:
The patent extends error correction from the sector dimension to include the track dimension by implementing product code encoding. This two-dimensional approach allows the system to correct errors that vary across different portions of the disk by leveraging redundancy in both row and column directions, providing adaptability to varying noise characteristics while maintaining sector-level protection
Solution Approach 2:
The system dynamically adjusts error correction parameters by computing parity symbols adaptively based on the specific data being written. The LDPC code parameters and parity symbol calculations can be modified to match the noise characteristics of different disk regions, providing optimized error correction for varying operating conditions
Data Source
AI summary
Systems and methods are provided for using a product code having a first dimension and a second dimension to encode data, decode data, or both. An encoding method includes receiving a portion of user data to be written in the first dimension, and computing first parity symbols with respect to the first dimension for the portion of user data. Partial parity symbols with respect to the second dimension are computed for the portion of user data and are used to obtain second parity symbols for the portion of user data. A decoding method includes decoding a first codeword in the first dimension. When the decoding the first codeword in the first dimension is successful, a target syndrome of a second codeword in the second dimension is computed based on a result of the decoding of the first codeword, wherein the first codeword partially overlaps with the second codeword.


