Storage Device Path Separation for Parallel Commands During Read Output
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional storage devices suffer from performance degradation due to the use of a common path for command input and data input/output, preventing simultaneous operations during data output.
Innovation Solution
The storage device employs separate paths for command input and data input/output, allowing parallel execution of command operations during data output by using a first path for command input and a second path for data input/output, with the controller scheduling commands effectively during the expected data output time.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If a common path is used for command input and data input/output, then the device structure is simple, but command input cannot occur during data output causing performance degradation
Solution Approach 1:
The patent divides the common path into two separate paths: a first path for command input and a second path for data input/output. This segmentation allows commands to be input independently of data operations, enabling parallel processing and eliminating the bottleneck where command input had to wait for data output to complete.
Solution Approach 2:
The patent adds a temporal dimension to the operation by enabling simultaneous command input and data output through separate paths. This transforms the sequential operation (command then data) into a parallel operation, effectively utilizing time resources that were previously wasted due to the common path constraint.
2Productivity
If separate paths are used for command input and data input/output, then parallel operations can occur, but the device structure becomes more complex
Solution Approach 1:
The controller pre-calculates and determines the expected output time of read data before initiating command input operations. By knowing in advance when data output will complete, the controller can strategically input additional commands during the data output period, ensuring optimal utilization of the separate paths without causing timing conflicts or requiring complex real-time scheduling decisions.
3Loss of time
If commands are input during data output time, then unnecessary waiting time is eliminated, but timing coordination becomes critical
Solution Approach 1:
The controller uses feedback from the known data size and interface speed parameters to calculate and determine the expected output time of read data. This feedback mechanism allows the controller to accurately predict when data output will complete, enabling precise timing for command input operations and ensuring that commands are input during appropriate time windows without causing timing conflicts.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
A storage device may include a memory and a controller. The controller may input, to the memory, a read command for a first plane among the plurality of planes through a first path connected to the first terminal, receive, from the memory, read data for the read command through a second path connected to the second terminal, and input, to the memory, one or more additional commands through the first path in parallel with an operation of receiving the read data during an expected output time of the read data.