Deterministic SSD Validation via Firmware Event Injection

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current validation methods for solid state drives (SSDs) are statistically based, missing deterministic test coverage due to the complexity and cost of implementing interrupting commands within microseconds of a triggering firmware event, limiting automation and lab space utilization.

Innovation Solution

A deterministic debug infrastructure that receives an identifier of a triggering firmware event and compares it to generated firmware events, allowing for the execution of cross-feature events during the triggering event, enabling precise validation of SSD operations and data integrity.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If statistical validation methods are used for SSDs, then validation can be performed with simpler infrastructure, but deterministic test coverage is lost and test precision is insufficient

Engineering Contradiction:
Improvetest precisionVSAvoidinfrastructure complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The patent introduces a debug infrastructure comprising a debug device and a storage device with embedded debug logic. This intermediary system enables deterministic validation by capturing firmware events and injecting cross-feature events at precise moments, bridging the gap between simple statistical methods and complex deterministic testing requirements.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The storage device pre-records firmware events and their identifiers during normal operation. When validation is needed, the system can immediately retrieve and analyze these pre-captured events without requiring complex real-time intervention infrastructure, achieving deterministic test coverage with reduced complexity.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If interrupting commands are injected within microseconds of triggering firmware events, then deterministic test coverage is achieved, but implementation complexity and costs increase significantly

Engineering Contradiction:
Improvetest coverageVSAvoidimplementation complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The storage device performs self-validation by capturing its own firmware events and enabling deterministic injection of cross-feature events through its embedded debug logic. This eliminates the need for complex external interrupt injection infrastructure, as the system validates itself using pre-captured event data.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system creates copies of firmware events and their contexts for analysis. Instead of requiring complex real-time interception and modification of actual firmware execution, the debug infrastructure works with replicated event data, simplifying the validation process while maintaining deterministic test coverage.

Inventive Principle:
Principle #26Copying

3Extent of automation

If statistical validation methods are used, then automation and lab space utilization are limited, but implementing deterministic validation with microsecond-granularity interrupt injection increases costs and complexity

Engineering Contradiction:
Improvevalidation automationVSAvoiddebug infrastructure complexity
Core Design Contradiction:
Extent of automationVSDevice complexity

Solution Approach 1:

The debug infrastructure is designed with multi-functionality, serving both as an event capture mechanism and a deterministic validation engine. The same embedded logic that records firmware events also enables precise injection of cross-feature events, eliminating the need for separate complex automation equipment and reducing overall system complexity.

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

Data Source

PatentUS11422921B2Debug systems for deterministic validation of data storage devices
Publication Date: 2022.08.23 SANDISK TECHNOLOGIES LLC
  • US11422921B2 patent drawing
  • US11422921B2 patent drawing
  • US11422921B2 patent drawing

AI summary

Systems and methods are disclosed for deterministically validating an SSD device, based on the occurrence of a triggering firmware event. In some implementations, a method is provided. The method comprising receiving an ID of a triggering firmware event from a computing device and receiving data of a cross feature event from the computing device. A storage device may execute a plurality of NVMe commands as part of a test to generate a plurality of firmware events. An ID of each of the plurality of firmware events is compared to the ID of the triggering firmware event and in response to an ID of one of the plurality of firmware events matching the ID of the triggering firmware event, the one of the plurality of firmware events may be identified as the triggering firmware event and an indication of the match may be generated. At least part of the data of the cross feature event is transmitted to the storage device to cause execution of the cross feature event during execution of the triggering firmware event.