Multiprocessor SSD Architecture Distributes Flash Management

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional Solid-State Drives (SSDs) face challenges in capacity-scaling and power/bandwidth performance due to centralized control architectures, which lack features like online capacity expansion, data management, and efficient power usage, especially with increasing NAND flash complexity and power-intensive ECC processing.

Innovation Solution

A multiprocessor software-defined SSD architecture with decentralized, distributed management using multiple processors and intelligent software, allowing for modular expansion, advanced data management, and optimized power usage through distributed flash controllers and multicore processors.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If a single Flash Controller manages all NAND flash in conventional SSDs, then the architecture is simple and easy to control, but capacity scaling is limited and power consumption increases with more NAND flash

Engineering Contradiction:
ImproveNAND flash capacityVSAvoidFlash Controller power consumption
Core Design Contradiction:
Quantity of substanceVSUse of energy by stationary object

Solution Approach 1:

The patent divides the single Flash Controller into multiple distributed Flash Controllers, each managing a subset of NAND flash modules. This segmentation allows the system to scale capacity by adding more NAND flash while distributing the processing load and power consumption across multiple controllers, preventing any single controller from becoming a power bottleneck.

Inventive Principle:
Principle #1Segmentation

2Adaptability or versatility

If a single Flash Controller handles all functions, then the control logic is centralized and simple, but advanced data management features like RAID, erasure coding, and online capacity expansion are unavailable

Engineering Contradiction:
ImproveData management featuresVSAvoidController architecture complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent segments control functions between distributed Flash Controllers (handling local NAND management) and a separate processing system (handling advanced data management features). This segmentation enables complex features like RAID, erasure coding, and online capacity expansion while keeping each individual controller relatively simple.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a processing system as an intermediary between the host and the distributed Flash Controllers. This intermediary coordinates the distributed controllers, enabling advanced data management features through software-based control while maintaining simplicity at the hardware controller level.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Quantity of substance

If more NAND flash is added to increase capacity, then storage capacity increases, but ECC processing becomes more CPU-intensive and power consumption increases

Engineering Contradiction:
ImproveStorage capacityVSAvoidECC processing efficiency
Core Design Contradiction:
Quantity of substanceVSProductivity

Solution Approach 1:

The patent segments ECC processing across multiple distributed Flash Controllers, each handling ECC for their local NAND flash subset. This segmentation distributes the CPU-intensive ECC workload, preventing any single controller from becoming overwhelmed and maintaining processing efficiency as capacity scales.

Inventive Principle:
Principle #1Segmentation

4Adaptability or versatility

If the Flash Controller and NAND flash quantity are fixed, then the manufacturing process is simple, but online capacity expansion and user-serviceable capacity adjustments are impossible

Engineering Contradiction:
ImproveOnline capacity expansionVSAvoidManufacturing complexity
Core Design Contradiction:
Adaptability or versatilityVSEase of manufacture

Solution Approach 1:

The patent creates a dynamic architecture where NAND flash modules can be added or removed online, and the distributed Flash Controllers dynamically adjust their management of NAND flash subsets. This dynamic capability enables online capacity expansion while the modular design keeps manufacturing relatively simple through standardized interfaces.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent designs universal interfaces and protocols that allow the system to accommodate varying numbers of NAND flash modules and Flash Controllers. This universality enables online capacity expansion without requiring custom manufacturing processes for different capacity configurations.

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

Data Source

PatentUS10949361B1Multiprocessor software-defined solid-state storage drive
Publication Date: 2021.03.16 NIMBUS DATA INC
  • US10949361B1 patent drawing
  • US10949361B1 patent drawing
  • US10949361B1 patent drawing

AI summary

A solid state disk comprising includes a plurality of protected flash memory modules each having a plurality of flash memory devices, a flash memory controller, power protection circuitry and interconnect interface. Each of the protected flash memory modules is removably inserted into a socketed interconnect and coupled thereby to a circuit board having a multicore flash processor, host interface and program code store. The multicore flash processor executes program code stored in the program store to enable an external agent interacting with the solid state disk via the host interface to perceive the solid state disk as having a single flash controller instead of the multiple flash controllers disposed respectively on the protected flash memory modules.