NVMe Storage Management via Expander Card Daisy Chains

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The management of a large number of Non-Volatile Memory Express (NVMe) drives poses a scalability issue due to the limited number of available System Management Bus (SMBUS) interfaces, leading to increased turnaround time and the need for I2C multiplexers, which hinder efficient management and scalability in server systems.

Innovation Solution

The introduction of expander cards that offload management activities from the Baseboard Management Controller (BMC) by providing multiple SMBUS or I2C connections to NVMe drives, enabling daisy chaining and parallel management of NVMe drives through a network of expander cards, which allows for efficient scaling and management of multiple storage devices.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If a dedicated SMBUS connection is provided between BMC and each NVMe drive, then management reliability is improved, but device complexity increases due to limited SMBUS interfaces

Engineering Contradiction:
Improvemanagement reliabilityVSAvoidSMBUS interface complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent introduces an I2C multiplexer as an intermediary device between the BMC and multiple NVMe drives. The multiplexer allows the limited number of SMBUS interfaces on the BMC to communicate with multiple I2C buses that connect to NVMe drives, thereby maintaining reliable management while reducing the complexity of requiring dedicated SMBUS connections for each drive.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Quantity of substance

If more NVMe drives are accommodated in a server, then storage capacity is improved, but management scalability deteriorates due to limited SMBUS interfaces

Engineering Contradiction:
Improvestorage capacityVSAvoidmanagement scalability
Core Design Contradiction:
Quantity of substanceVSAdaptability or versatility

Solution Approach 1:

The patent segments the management function by introducing I2C multiplexers that act as independent management units. Each multiplexer can manage multiple NVMe drives connected to it, allowing the BMC to scale management capabilities by adding multiplexers rather than requiring dedicated SMBUS interfaces for each drive, thus improving management scalability with increased storage capacity.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The I2C multiplexer serves as an intermediary that extends the management reach of the BMC. It provides multiple I2C connections to NVMe drives while consuming a single SMBUS interface from the BMC, enabling the system to accommodate more storage devices without proportionally increasing SMBUS interface requirements and thereby improving management scalability.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Adaptability or versatility

If I2C multiplexers are used to manage multiple NVMe drives, then management scalability is improved, but hardware complexity increases

Engineering Contradiction:
Improvemanagement scalabilityVSAvoidhardware complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent employs I2C multiplexers as intermediary devices that provide scalable management for multiple NVMe drives. While multiplexers do add hardware complexity, they enable a single SMBUS interface to control multiple drives through I2C buses, achieving management scalability that would otherwise require prohibitively complex dedicated connection architectures.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS10795846B1Scalable NVMe storage management over system management bus
Publication Date: 2020.10.06 CISCO TECHNOLOGY INC
  • US10795846B1 patent drawing
  • US10795846B1 patent drawing
  • US10795846B1 patent drawing

AI summary

Presented herein are methodologies for scaling device management over a sideband management bus (SMBUS). A method includes receiving, at a first expander card, from baseboard management controller (BMC), a management message, addressed to a second expander card that is in communication with the first expander card, forwarding the management message to the second expander card, and sending, by the second expander card, the management message, via the sideband management bus, to a device in communication with the second expander card. The device may be, e.g., a Non-Volatile Memory Express (NVMe) drive. Expander cards can be deployed in a daisy chain, providing scalability. Each expander card can also send commands to connected devices in parallel.