Storage Controller Hardware Firmware Paths for Read Requests

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing storage module technologies are inefficient in handling straightforward read requests, as they often rely on firmware execution which may not be the most efficient approach for simple operations, consuming resources without optimizing performance.

Innovation Solution

A storage module with a controller that includes both hardware and firmware modules, allowing it to determine whether to execute host read requests through a hardware path or firmware module based on complexity and commonality, thereby optimizing the execution process.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If firmware is used to execute host read requests, then the storage module can handle complex read requests reliably, but straightforward read requests are not handled efficiently

Engineering Contradiction:
Improveability to handle read requestsVSAvoidexecution efficiency of read requests
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The read request execution path is segmented into two distinct paths: a hardware path for straightforward read requests and a firmware path for complex read requests. The front-end module segments incoming read requests and routes them to the appropriate execution path based on their complexity, allowing efficient hardware execution for simple requests while maintaining firmware capability for complex operations.

Inventive Principle:
Principle #1Segmentation

2Adaptability or versatility

If firmware is used for all read requests, then complex read requests can be handled, but resource utilization is not optimized for simple operations

Engineering Contradiction:
Improveability to handle different read request typesVSAvoidresource consumption
Core Design Contradiction:
Adaptability or versatilityVSUse of energy by moving object

Solution Approach 1:

The system dynamically selects the execution path based on the characteristics of each read request. The front-end module evaluates whether a read request is straightforward or complex and dynamically routes it to the hardware path or firmware path accordingly, optimizing resource utilization by using hardware for simple requests and firmware only when necessary.

Inventive Principle:
Principle #15Dynamics

3Speed

If hardware modules are added to accelerate read requests, then execution speed improves, but device complexity increases

Engineering Contradiction:
Improveexecution speed of read requestsVSAvoidcontroller structure
Core Design Contradiction:
SpeedVSDevice complexity

Solution Approach 1:

The hardware modules in the hardware path are designed to handle multiple aspects of read request execution including address translation, data retrieval, and data preparation. This multi-functionality allows the hardware path to efficiently process straightforward read requests without requiring complex firmware intervention, thereby improving speed while controlling overall device complexity.

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

Data Source

PatentUS9626286B2Hardware and firmware paths for performing memory read processes
Publication Date: 2017.04.18 SANDISK TECHNOLOGIES LLC
  • US9626286B2 patent drawing
  • US9626286B2 patent drawing
  • US9626286B2 patent drawing

AI summary

A storage module may include a controller that has hardware path that includes a plurality of hardware modules configured to perform a plurality of processes associated with execution of a host request. The storage module may also include a firmware module having a processor that executes firmware to perform at least some of the plurality of processes performed by the hardware modules. The firmware module performs the processes when the hardware modules are not able to successfully perform them.