Memory Device Safety Boot Capability

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Modern computer systems face integrity issues during boot operations due to potential failures in external flash memory, which can lead to unsuccessful system boots and other critical operations, necessitating improved data integrity maintenance in semiconductor memory.

Innovation Solution

The technology computes a secure hash value of data images and compares it with prior hash values stored in non-volatile memory, detecting bit flips caused by hardware errors and alerting the host or swapping data from redundant images to maintain integrity, using ECC for error correction and hashing algorithms like SHA256.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If code is copied from external flash memory to local RAM for boot operations, then boot speed and system performance are improved, but data integrity is compromised due to potential flash memory failures

Engineering Contradiction:
Improveboot speedVSAvoiddata integrity
Core Design Contradiction:
SpeedVSReliability

Solution Approach 1:

The patent performs integrity verification of boot code before copying it from external flash memory to local RAM. A hash value is computed from the boot code in flash memory and compared against a stored reference hash value to detect any corruption or errors beforehand, ensuring that only verified intact code is transferred and executed

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent creates and stores a copy of the reference hash value in non-volatile memory during manufacturing or initial setup. This reference copy is then used for comparison during boot operations to verify the integrity of the boot code retrieved from flash memory, enabling detection of data corruption without requiring continuous external verification

Inventive Principle:
Principle #26Copying

2Reliability

If hash calculation and integrity verification are performed on boot code, then data integrity is improved, but processing time and computational resources increase

Engineering Contradiction:
Improvedata integrityVSAvoidprocessing time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent extracts only the essential verification mechanism - computing a hash value from the boot code and comparing it against a stored reference hash. This focused approach performs integrity verification without requiring full code analysis or complex validation routines, minimizing the time overhead while ensuring data integrity

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent transforms the boot code data into a condensed hash value representation for verification purposes. This parameter transformation reduces the amount of data that needs to be processed and compared, enabling rapid integrity verification with minimal impact on boot timing

Inventive Principle:
Principle #35Parameter changes

3Reliability

If redundant copies of boot code are stored in memory, then reliability is improved through fallback capability, but memory usage and device complexity increase

Engineering Contradiction:
Improveboot reliabilityVSAvoidmemory usage
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent stores a compact copy of the reference hash value in non-volatile memory rather than duplicating entire boot code images. This hash copy serves as a verification reference that enables reliability improvement through integrity checking while occupying minimal memory space compared to full code redundancy

Inventive Principle:
Principle #26Copying

Data Source

PatentUS11861012B2Memory device having safety boot capability
Publication Date: 2024.01.02 MACRONIX INTERNATIONAL CO LTD
  • US11861012B2 patent drawing
  • US11861012B2 patent drawing
  • US11861012B2 patent drawing

AI summary

A method provides the capability to maintain integrity of a data image stored by computing a hash value (“digest”) of the data image and comparing the hash value computed for the data image with a hash value computed for the data image and kept in a non-volatile area of memory. Bit flips in the data image that are a result of memory hardware errors reveal themselves as differences in the digest computed for the data image and the computed digest for the data.