Programmable Flash Channel Interface With Real-Time ECC Throughput

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Flash channel interfaces face challenges in accommodating various NAND flash implementations, leading to increased costs, complexity, and time-to-market due to subtle differences in timing and command sets, and conventional error detection and correction techniques are slow, especially as flash memory ages and errors increase.

Innovation Solution

A high-performance Flash Channel Interface (FCI) that enables flexible, configurable, and programmable interfaces for high-speed flash memory operations, incorporating error detection and correction within the flash controller to maintain data integrity, using multiple buffer and ECC engines for real-time error correction and interleaving data operations to improve throughput.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If conventional error detection and correction techniques are used, then data integrity is maintained, but processing speed decreases significantly

Engineering Contradiction:
Improvedata integrityVSAvoidprocessing speed
Core Design Contradiction:
ReliabilityVSSpeed

Solution Approach 1:

The patent implements preliminary error correction by performing ECC operations on data before it is written to flash memory. The controller proactively corrects errors during the write operation rather than waiting for read operations, which eliminates the need for slow post-read ECC processing and maintains high read speeds while ensuring data integrity.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent enables continuous data processing by implementing background ECC operations that run concurrently with normal memory operations. The error correction process does not interrupt or stall data flow, allowing the system to maintain continuous throughput while correcting errors in real-time.

Inventive Principle:
Principle #20Continuity of useful action

2Productivity

If the flash channel interface is specifically designed for each NAND flash implementation, then performance is optimized, but development cost and complexity increase

Engineering Contradiction:
ImproveperformanceVSAvoiddevelopment complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent implements a universal flash channel interface that can work with multiple NAND flash implementations through a standardized protocol layer. The controller includes an abstraction layer that handles vendor-specific variations, allowing the same interface design to support different flash manufacturers and models without requiring custom development for each implementation.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

The patent introduces a protocol translation layer that acts as an intermediary between the standardized flash channel interface and vendor-specific NAND flash implementations. This mediator layer handles timing variations and command set differences, allowing the main interface to remain simple and standardized while accommodating specific implementation variations.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Adaptability or versatility

If firmware updates are implemented to support future NAND flash releases, then compatibility is maintained, but system complexity and update requirements increase

Engineering Contradiction:
ImprovecompatibilityVSAvoidsystem complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent implements a dynamic configuration capability where the flash channel interface can be reprogrammed at runtime to accommodate different NAND flash implementations. The controller includes configurable parameters and timing settings that can be adjusted through simple register writes or configuration files, allowing adaptation to new flash devices without requiring firmware updates or complex reconfiguration procedures.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS9152496B2High performance flash channel interface
Publication Date: 2015.10.06 CYPRESS SEMICONDUCTOR CORP
  • US9152496B2 patent drawing
  • US9152496B2 patent drawing
  • US9152496B2 patent drawing

AI summary

Systems and/or methods that facilitate high performance flash channel interface techniques are presented. Integrated error correction code (ECC) engine and buffer sets facilitate bypassing error correction of data being written to or read from memory, such as flash memory, in addition to single ECC mode or multiple ECC mode. The integrated ECC engines and buffers can quickly analyze data, and provide error correction information or correct error, significantly increasing throughput. In addition, the programmable flash channel interface can provide more rapid development of flash products by accommodating both Open NAND Flash Interface (ONFI) standard flash and legacy flash devices, by using a configurable micro-code engine in the flash interface.