OTP-Based MTP Memory with ECC Pointer Updating

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing multiple-time programmable (MTP) memory technologies face inefficiencies in reprogramming due to the limitations of one-time programmable (OTP) memory, particularly in maintaining accurate pointers and error correction, leading to potential errors and inefficiencies in data retrieval.

Innovation Solution

The MTP memory system incorporates OTP memory blocks with virtual MTP blocks and error correction codes, specifically using repetition codes like (2,1) and (3,1) for pointer storage and Hamming codes for data, ensuring only monodirectional bit changes during reprogramming, and updating pointers with error correction codes to maintain accurate data storage.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If OTP memory is used to implement MTP memory with multiple OTP memory blocks and pointers, then the memory can be reprogrammed multiple times by updating pointers to different OTP blocks, but errors may occur in pointer storage and retrieval without error correction mechanisms

Engineering Contradiction:
Improvereprogramming capabilityVSAvoidpointer accuracy
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

Error correction codes (ECC) are introduced as an intermediary mechanism between the pointer and the OTP memory block address. The ECC controller encodes pointers with error correction capability before storage and decodes/verifies them during retrieval, automatically detecting and correcting errors without requiring manual intervention or reprogramming.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

Error correction codes provide a preemptive safeguard against pointer errors. By encoding pointers with ECC before they are stored in the OTP memory blocks, the system prepares protective measures in advance that will automatically compensate for potential bit-flip errors during subsequent read operations, ensuring reliable pointer retrieval even in the presence of errors.

Inventive Principle:
Principle #11Beforehand cushioning (Prior cushioning)

2Reliability

If error correction codes are implemented in the MTP memory system, then data integrity and pointer accuracy are improved, but the complexity of the memory system increases due to additional encoding and decoding operations

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

Solution Approach 1:

The error correction functionality is extracted as a separate, dedicated ECC controller module that operates independently from the main memory array. This separation allows the ECC logic to be optimized specifically for error correction tasks while keeping the rest of the memory system simple and efficient. The ECC controller handles all encoding and decoding operations, preventing complexity from propagating throughout the entire memory system.

Inventive Principle:
Principle #2Taking out (Extraction)

3Productivity

If multiple OTP memory blocks are used to create virtual MTP memory blocks with pointers, then reprogramming efficiency is improved by updating only pointers rather than entire memory blocks, but the overhead of managing pointer tables and ECC encoding increases system complexity

Engineering Contradiction:
Improvereprogramming efficiencyVSAvoidpointer management complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The pointer table and error correction code storage are merged into a unified structure within the OTP memory blocks. Each OTP memory block simultaneously stores both the pointer information and its corresponding ECC codes, eliminating the need for separate pointer management structures. This integration reduces the overall system complexity while maintaining the efficiency benefits of pointer-based reprogramming.

Inventive Principle:
Principle #5Merging (Combining)

Data Source

PatentEP4060670B1Multiple time programmable memory using one time programmable memory and error correction codes
Publication Date: 2025.07.30 MURATA MFG CO LTD
  • EP4060670B1 patent drawingFigure 1
  • EP4060670B1 patent drawingFigure 2

AI summary

The present invention relates to the field of digital memory, and in particular to a multiple-time programmable (MTP) memory employing error correction codes (ECC), the MTP memory being made up of one-time programmable (OTP) memory modules. Pointers to the memory address of currently in-use OTP memory blocks in use for each virtual MTP memory block are stored in OTP memory with an error correcting code. The pointers encode the memory addresses according to a scheme that ensure that only bit changes in a single direction are required in both the pointer data and the error correction code when the memory address is incremented.