SMR Track Error Correction via Segmented ECC and Parity Buffers

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Shingled Magnetic Recording (SMR) systems face challenges in error correction due to increased recording densities and the inability to overwrite single sectors, requiring extensive track movement for data recovery, which slows down data access and processing.

Innovation Solution

Implementing a track error correcting code (ECC) system with a parity buffer in SMR storage devices to accumulate XOR values during writing and reading, allowing for robust error correction and recovery across discrete portions of the SMR track, even when traditional error correction fails.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If SMR is used to increase recording density by shrinking track pitch and removing guard bands, then storage capacity is improved, but error correction becomes more difficult and complex

Engineering Contradiction:
Improvestorage capacityVSAvoiderror correction complexity
Core Design Contradiction:
Quantity of substanceVSDevice complexity

Solution Approach 1:

The patent divides the SMR track into discrete portions or zones, with separate ECC circuits for each zone. This segmentation allows independent error correction in each zone, simplifying the overall error correction process while maintaining high storage density enabled by SMR technology.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent pre-calculates and stores XOR parity values for each discrete portion of the track during the writing process. When an error occurs, the recovery process uses these pre-computed parity values to quickly reconstruct lost data without requiring complex real-time calculations or extensive track movement.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If traditional error correction is used in SMR systems, then data recovery is possible, but extensive track movement is required which slows down data access

Engineering Contradiction:
Improvedata recovery capabilityVSAvoiddata access speed
Core Design Contradiction:
ReliabilityVSSpeed

Solution Approach 1:

By dividing the track into discrete portions with dedicated ECC circuits, the patent enables localized error correction without requiring the read-write head to move extensively across the track. Each zone can be corrected independently, maintaining fast data access while ensuring reliable recovery.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces intermediate parity buffers that store pre-computed XOR values for each discrete portion. These intermediaries enable rapid data reconstruction by providing ready-made correction data, eliminating the need for complex real-time error correction algorithms and extensive track seeking.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Productivity

If SMR writing is used to maximize track utilization, then storage efficiency is improved, but the inability to overwrite single sectors increases error correction difficulty

Engineering Contradiction:
Improvestorage efficiencyVSAvoiderror correction difficulty
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent segments the SMR track into discrete portions, each with its own ECC circuit and parity buffer. This segmentation maintains the high storage efficiency of SMR by allowing continuous writing across tracks while simplifying error correction through zone-independent processing, avoiding the complexity of coordinating corrections across overlapping track portions.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS10930315B2Error correction for storage devices
Publication Date: 2021.02.23 MARVELL ASIA PTE LTD
  • US10930315B2 patent drawing
  • US10930315B2 patent drawing
  • US10930315B2 patent drawing

AI summary

A method for performing error recovery for data stored on a track of a storage device, in which the method includes: receiving a request to read the data from the storage device, identifying a plurality of sectors of the track to be read in response to the request, reading the data from the plurality of sectors of the track and parity data, based on the data read from the plurality of sectors, determining whether any of the plurality of sectors corresponds to a failed sector, and recovering a portion of the data from the failed sector using the parity data and portions of the data stored in remaining ones of the plurality of sectors.