Storage Controller Read After Write Verify Defect Management

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current storage systems face challenges in effectively managing defects in storage media, leading to data loss and unrecoverable errors due to silent write failures and undetected medium defects, especially in systems that write blindly without immediate verification.

Innovation Solution

The implementation of a Read After Write (RAW) verify method that immediately checks data integrity after writing, rewriting data to different pages if errors are found, and eliminating the need for a bad block table, thereby simplifying defect management and increasing data reliability.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If storage systems write data blindly without immediate verification, then writing speed is improved, but data reliability deteriorates due to silent write failures and undetected medium defects

Engineering Contradiction:
Improvewriting speedVSAvoiddata reliability
Core Design Contradiction:
SpeedVSReliability

Solution Approach 1:

The patent performs a read verify operation immediately after writing data to the storage medium, before the write operation is considered complete. This preliminary verification action detects write failures and medium defects early, preventing silent data corruption while maintaining efficient write throughput through parallel processing and optimized verify timing.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If storage systems implement comprehensive defect detection and verification, then data integrity is improved, but system complexity increases due to additional verification operations and defect management overhead

Engineering Contradiction:
Improvedata integrityVSAvoidsystem complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The storage system performs self-verification by automatically reading back and verifying written data without external intervention. The controller monitors its own write operations, detects defects autonomously, and manages defect mapping internally, reducing the need for external verification mechanisms and simplifying the overall system architecture.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The patent combines the write operation and verify operation into a unified write-verify process managed by a single controller. Rather than having separate write and verification subsystems, the controller integrates both functions, sharing resources and coordination logic, which reduces system complexity while maintaining comprehensive defect detection.

Inventive Principle:
Principle #5Merging (Combining)

3Reliability

If storage systems use traditional bad block table methods for defect management, then defect tracking is improved, but device complexity and overhead increase due to maintaining and managing bad block tables

Engineering Contradiction:
Improvedefect trackingVSAvoiddefect management overhead
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent extracts the defect management functionality from traditional bad block table approaches and integrates it directly into the controller's write-verify process. Instead of maintaining separate bad block tables and complex mapping structures, the controller handles defect detection and management inline with the write operations, eliminating the need for separate defect management data structures and reducing overhead.

Inventive Principle:
Principle #2Taking out (Extraction)

Data Source

PatentUS9997251B2Medium defect management method for storage systems requiring an integrated controller
Publication Date: 2018.06.12 BIP BY DDN INC
  • US9997251B2 patent drawing
  • US9997251B2 patent drawing
  • US9997251B2 patent drawing

AI summary

A method of operating a storage controller is provided. The method includes receiving host data for storage within a storage system, the storage system configured as a plurality of sequentially numbered data blocks, each comprising a plurality of pages, storing the host data in a data buffer, and organizing the host data into storage data pages. The method also includes sequentially writing the storage data into page stripes, reading the storage data from the pages, and comparing the read storage data with the host data stored in the data buffer. The method further includes for each page of storage data that fails the comparison, rewriting the storage data for that page into a different page, and when at least some of the storage data within the storage system passes the comparison, transmitting a signal to the host.