ROM-Emulated Memory Profile Mode for Remote Firmware Updates

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing memory devices lack the ability to update or modify their ROM instructions after shipment, limiting in-field debugging and firmware updates, and preventing customers from accessing test modes without exposing sensitive REM data.

Innovation Solution

Implementing a ROM-emulated memory (REM) profile mode that allows vendors to remotely send and install patches in reserved pages of the memory device, enabling updates and debugging without customer access to REM data, by using a set of reserved pages for OTP and REM operations, and executing REM data as a patch to the ROM instructions.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If ROM instructions are made read-only to ensure stability, then reliability is improved, but the ability to update firmware and debug in-field is lost

Engineering Contradiction:
ImproveROM instruction stabilityVSAvoidFirmware update capability
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

Solution Approach 1:

The memory device is divided into multiple reserved pages with different functions: some pages store ROM instructions while other pages store REM (read-only memory) data that can be updated. This segmentation allows the ROM instructions to remain stable and read-only for reliability, while separate REM pages can be updated in-field for firmware updates and debugging without compromising the stability of the main ROM instructions.

Inventive Principle:
Principle #1Segmentation

2Ease of operation

If test modes are made accessible to customers for debugging, then ease of operation is improved, but security and protection of sensitive REM data is compromised

Engineering Contradiction:
ImproveTest mode accessibilityVSAvoidData security exposure
Core Design Contradiction:
Ease of operationVSObject-affected harmful factors

Solution Approach 1:

A controller acts as an intermediary between the host system and the reserved pages. The controller manages access to test modes and REM data, allowing customers to access test modes for debugging while preventing direct access to sensitive REM data stored in the reserved pages. This intermediary layer provides controlled access that maintains both ease of operation and data security.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Adaptability or versatility

If reserved pages are made accessible for OTP operations, then adaptability is improved, but device complexity increases

Engineering Contradiction:
ImproveOTP operation capabilityVSAvoidReserved page management
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The reserved pages are designed to serve multiple functions: storing ROM instructions, storing REM data for updates, and providing access for OTP operations. By making these pages multi-functional, the device achieves high adaptability for various operations without requiring separate dedicated structures for each function, thereby managing complexity through functional consolidation.

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

Data Source

PatentUS11798601B2Read only memory (ROM)-emulated memory (REM) profile mode of memory device
Publication Date: 2023.10.24 MICRON TECHNOLOGY INC
  • US11798601B2 patent drawing
  • US11798601B2 patent drawing
  • US11798601B2 patent drawing

AI summary

A programmable memory device includes a ROM block to store instructions associated with functionality of the programmable memory device, a memory array having reserved pages to store updates to be performed on the ROM block, and a controller coupled to the ROM block and the memory array. The controller is to, in response to receipt of a remote command from a vendor server via a host system, execute the instructions to perform operations including: executing a set features command to access the set of reserved pages, as an extension to one time programmable mode; programming a set of sub-feature parameters to a specified feature address of the reserved pages, where the set of sub-feature parameters are to trigger operation within a ROM-emulated memory (REM) profile mode; and programming a REM-profiled page of the reserved pages with REM data received from the vendor server via the host system.