In-SSD Stream ID Routing for Selective Data Processing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current SSDs treat all incoming data streams uniformly for compression and encryption, leading to inefficiencies as not all data requires these processes, and varying applications have different compression and encryption needs, which cannot be met simultaneously.

Innovation Solution

A multi-stream memory system that selects appropriate data processing engines based on stream IDs, bypassing compression and encryption engines when unnecessary, and applying them based on specific requirements using a stream assignment table.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If all incoming data streams are uniformly compressed and encrypted in the SSD, then data security and compression are ensured, but processing time and power consumption increase unnecessarily for data that does not require these operations

Engineering Contradiction:
Improvedata security and compressionVSAvoidprocessing time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent applies different data processing operations to different data streams based on their specific requirements. The controller identifies stream IDs and selectively applies compression and encryption only to streams that need these operations, rather than uniformly processing all streams. This resolves the contradiction by ensuring reliability where needed while minimizing unnecessary processing time for streams that don't require full processing.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The patent segments incoming data into multiple streams identified by unique stream IDs, allowing different processing paths for different segments. By dividing the data processing into stream-specific segments, the system can apply compression and encryption only to appropriate streams, reducing overall processing time while maintaining security and compression for required data.

Inventive Principle:
Principle #1Segmentation

2Reliability

If all incoming data streams are uniformly compressed and encrypted in the SSD, then data security and compression are ensured, but power consumption increases unnecessarily for data that does not require these operations

Engineering Contradiction:
Improvedata security and compressionVSAvoidpower consumption
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

The controller implements stream-specific processing where compression and encryption are applied only to data streams that require these operations. By identifying stream IDs and checking against a stream assignment table, the system ensures data security and compression for necessary streams while avoiding unnecessary power consumption for streams that don't require full processing.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The patent segments data processing by stream ID, allowing the system to apply power-intensive operations like compression and encryption only to specific segments (streams) that need them. This segmentation approach maintains reliability for protected streams while significantly reducing overall power consumption by bypassing unnecessary processing for other streams.

Inventive Principle:
Principle #1Segmentation

3Quantity of substance

If high-compression algorithms are used to achieve high compression ratios, then compression efficiency improves, but compression speed decreases

Engineering Contradiction:
Improvecompression ratioVSAvoidcompression speed
Core Design Contradiction:
Quantity of substanceVSSpeed

Solution Approach 1:

The patent dynamically selects compression algorithms and processing paths based on stream requirements and data characteristics. The controller can choose between different compression algorithms (e.g., LZO, GZIP, ZSTD) depending on the stream ID and assigned processing parameters, allowing the system to optimize between compression ratio and speed for different data streams rather than using a single static approach.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes processing parameters based on stream-specific requirements. The stream assignment table allows different compression algorithms and parameters to be applied to different streams, enabling the system to achieve high compression ratios for streams where space is critical while maintaining high compression speeds for streams where performance is prioritized.

Inventive Principle:
Principle #35Parameter changes

4Reliability

If different encryption strengths are applied to different data streams, then security requirements are met, but device complexity increases

Engineering Contradiction:
Improveencryption strengthVSAvoidprocessing complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent applies different encryption strengths to different data streams based on their specific security requirements. The stream assignment table maps stream IDs to appropriate encryption algorithms and parameters, allowing the system to provide strong encryption for sensitive streams while using lighter encryption or no encryption for less sensitive streams, thereby meeting diverse security requirements without uniformly increasing complexity across all streams.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS11836387B2System and method for in-SSD data processing engine selection based on stream IDS
Publication Date: 2023.12.05 SAMSUNG ELECTRONICS CO LTD
  • US11836387B2 patent drawing
  • US11836387B2 patent drawing
  • US11836387B2 patent drawing

AI summary

A multi-stream memory system includes an in-device data processor including a first data processing engine and a second data processing engine, a controller processor, and a processor memory coupled to the controller processor, wherein the processor memory has stored thereon instructions that, when executed by the controller processor, cause the controller processor to perform: identifying a stream ID of an input stream, identifying the first data processing engine as being associated with the stream ID based on a stream assignment table, and applying the first data processing engine to the input stream to generate processed data.