Multi-Protocol Storage Controller Mode Switch Timeout Handling

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Flash storage devices experience variable initialization latencies due to unfinished work from previous modes, leading to potential timeouts in protocols with stricter initialization timeouts, such as SD mode, which can prevent processing of host commands and impact performance.

Innovation Solution

The controller segregates unfinished work into mandatory and non-mandatory portions, performing mandatory work during initialization and postponing non-mandatory work until after initialization or during subsequent host commands, allowing for phased completion and avoiding timeouts.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If the controller performs all unfinished work during initialization in SD mode, then data consistency and reliability are improved, but initialization time exceeds the SD protocol timeout limit, causing the device to fail to process host commands

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

Solution Approach 1:

The controller segments unfinished work into mandatory portions (must complete within initialization time) and non-mandatory portions (can be deferred). This segmentation allows the device to meet SD protocol timeout requirements while still addressing critical data consistency issues, resolving the contradiction between reliability and initialization time.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The controller performs only the necessary portion of unfinished work during initialization (mandatory work) rather than all work. Non-mandatory work is performed later during normal operation. This partial action approach ensures initialization completes within timeout limits while maintaining sufficient data consistency for operational requirements.

Inventive Principle:
Principle #16Partial or excessive action

2Loss of time

If the controller postpones all unfinished work until after initialization, then initialization time is reduced and host commands can be processed, but data consistency and reliability deteriorate due to incomplete work

Engineering Contradiction:
Improveinitialization timeVSAvoiddata consistency
Core Design Contradiction:
Loss of timeVSReliability

Solution Approach 1:

By segmenting work into mandatory and non-mandatory portions, the controller ensures critical data consistency operations complete during initialization while allowing non-critical operations to be deferred. This maintains reliability for essential functions while achieving fast initialization.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Different portions of unfinished work have different quality requirements. Mandatory work must complete with high reliability for data consistency, while non-mandatory work can be deferred. This local differentiation allows the system to meet both initialization speed and data consistency requirements.

Inventive Principle:
Principle #3Local quality

3Productivity

If the controller performs mandatory work during initialization in SD mode, then initialization timeout is avoided and host commands can be processed, but non-mandatory work is delayed potentially impacting performance

Engineering Contradiction:
Improvehost command processingVSAvoidwork completion time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

Segmenting work into mandatory and non-mandatory portions enables the controller to process host commands during initialization by completing only essential work. Non-mandatory work is performed during normal operation when the device is already responsive, minimizing overall performance impact.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Mandatory work is performed as preliminary action during initialization to enable host command processing. Non-mandatory work is scheduled for later execution during normal operation. This preliminary action approach ensures immediate productivity while managing total work completion time.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS11294579B2Mode handling in multi-protocol devices
Publication Date: 2022.04.05 SANDISK TECHNOLOGIES LLC
  • US11294579B2 patent drawing
  • US11294579B2 patent drawing
  • US11294579B2 patent drawing

AI summary

Aspects of a multi-protocol storage device including a controller are provided which handle mode switches after a shutdown resulting in a large amount of unfinished work by phasing the work during and after initialization. The controller operates in a first mode such as an SD mode and a second mode such as a NVMe mode. In the event of a shutdown in the second mode resulting in unfinished work, the controller initializes in the first mode. During initialization, the controller determines whether a completion time for the unfinished work exceeds an initialization time in the first mode. When the completion time exceeds the initialization time, the controller performs a first portion of the work during initialization and postpones performance of at least a second portion of the unfinished work until after initialization. As a result, initialization timeouts in the first mode due to the unfinished work may be avoided.