NAND Boot Partition Configuration for NVMe Controller Adaptability

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing SSD systems face challenges in accommodating updates to NVMe standards without requiring hardware redesign, as the pre-defined register sets in NVM controllers do not allow for new features or capabilities to be communicated to the host device during initialization, leading to costly ASIC re-spins and limiting firmware upgrades.

Innovation Solution

Storing additional configuration information in a NAND boot partition that can be accessed by the host device before initializing the NVM controller, allowing new features to be implemented via software or firmware upgrades without modifying the hardware register set, thus avoiding the need for ASIC re-spinning.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If the pre-defined register sets in NVM controllers are used for configuration information, then the hardware structure is simple and manufacturing is easier, but the system cannot accommodate new features or standard revisions without costly ASIC re-spins

Engineering Contradiction:
Improveability to accommodate new featuresVSAvoidhardware structure complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent segments configuration information into two distinct sources: initial configuration information stored in hardware register sets (for basic functionality) and additional configuration information stored in a boot partition of the NAND device (for new features and standard revisions). This segmentation allows the hardware to remain simple while the software/firmware in the boot partition provides adaptability for new features without requiring ASIC re-spins.

Inventive Principle:
Principle #1Segmentation

2Adaptability or versatility

If hardware register sets are used for configuration information, then the device structure is simpler, but firmware upgrades cannot add new capabilities

Engineering Contradiction:
Improvefirmware upgrade capabilityVSAvoidmanufacturing simplicity
Core Design Contradiction:
Adaptability or versatilityVSEase of manufacture

Solution Approach 1:

The patent implements preliminary action by storing additional configuration information in the boot partition before the NVM controller is initialized. This allows the host device to access and process new feature configurations from the boot partition prior to controller initialization, enabling firmware upgrades to add new capabilities without requiring hardware redesign or complex manufacturing changes.

Inventive Principle:
Principle #10Preliminary action

3Adaptability or versatility

If ASIC re-spins are performed to add new features, then new capabilities can be implemented, but manufacturing costs increase and device lifecycle is shortened

Engineering Contradiction:
Improvenew feature implementationVSAvoidmanufacturing cost
Core Design Contradiction:
Adaptability or versatilityVSEase of manufacture

Solution Approach 1:

The patent uses the boot partition as a software-based copy or alternative to hardware register sets. Instead of physically modifying the ASIC through re-spinning to add new features, the additional configuration information is copied into the boot partition of the NAND device, allowing new capabilities to be implemented through firmware updates without incurring manufacturing costs or extending device lifecycles.

Inventive Principle:
Principle #26Copying

Data Source

PatentUS10649674B2Extended controller pre-initialization using boot partitions in solid state systems
Publication Date: 2020.05.12 SANDISK TECHNOLOGIES LLC
  • US10649674B2 patent drawing
  • US10649674B2 patent drawing
  • US10649674B2 patent drawing

AI summary

The present disclosure describes technologies and techniques for use by a data storage controller—such as a controller for use with a NAND device or other non-volatile memory (NVM)—to retrieve configuration information from a NAND boot partition during an initialization procedure initiated by a host. Within illustrative examples described herein, the configuration information stored in the NAND boot partition is provided in addition to configuration information stored within physical layer register sets of the data storage controller. In the examples, the data storage controller is configured for use with versions of Peripheral Component Interconnect (PCI) Express—Non-Volatile Memory express (NVMe) that provide support for NAND boot partitions. In these examples, the use of the NAND boot partition allows an NVM device manufacturer to implement at least some new features in firmware or software within an existing NVM card, without modifying the physical layer registers.