IP Library Granted Patent US 11,797,188
Granted Patent B2
US 11,797,188 · App. 16/712,647 · Granted Oct 24, 2023

Solid state drive with multiplexed internal channel access during program data transfers

Inventors: David J. Pelster (Longmont, CO); Yogesh B. Wakchaure (Folsom, CA); Neelesh Vemula (Sunnyvale, CA); Aliasgar S. Madraswala (Folsom, CA); David B. Carlton (Oakland, CA); Donia Sebastian (Fair Oaks, CA); Mark Anthony Golez (Folsom, CA); Xin Guo (San Jose, CA)
Assignee: SK hynix NAND Product Solutions Corp.
G06F3/0613G06F3/0659G06F3/0679G06F13/1668
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,797,188
App. No.
16/712,647
Granted
Oct 24, 2023
Kind
B2
Abstract

A method performed by a solid state drive is described. The method includes, on a channel that internally couples a controller of the solid state drive to a storage device of the solid state drive, sending write data for a program operation to be performed by one of the storage device's logical units in separate chunks over the channel. The method also includes inserting higher priority traffic items of other logical units of the storage device in between the separate chunks.

Claims (61)

1. An apparatus comprising:

a memory;

a solid state drive controller coupled to the memory, the solid state drive controller comprising a channel interface to couple to a storage device through a channel, the solid state drive controller being configured at least to transfer one or more higher priority traffic items between portions of a single program operation's write data on the channel to the storage device, wherein the higher priority traffic items are of a higher priority than the write data of the single program operation.

2. The apparatus of claim 1 wherein the storage device is a NAND flash storage device.

3. The apparatus of claim 1 wherein the one or more higher priority traffic items comprise:

a read command;

a read status command;

a suspend request;

a suspend status poll;

a read data transfer request;

read data;

a response to a suspend status poll; or

a response to a read status poll.

4. The apparatus of claim 1 wherein the one or more higher priority traffic items comprise read data.

5. The apparatus of claim 1 wherein the solid state drive controller is further configured to send a start command to the storage device on the channel before transferring a first portion of the portions of the single program operation's write data to the storage device, and wherein the solid state drive controller is further configured to send a confirm message to the storage device after transferring all of the single program operation's write data to the storage device.

6. The apparatus of claim 1 wherein the storage device is further configured to program more than one plane of the storage device with the single program operation's write data.

7. The apparatus of claim 1 wherein the solid state drive controller is further configured to transfer all remaining portions of the single program operation's write data without transferring other one or more traffic items in response to:

the single program operation's write data not being programmed within a predetermined amount of time; or

a power loss imminent event.

8. The apparatus of claim 1 wherein the solid state drive controller is further configured to:

determine a size of each portion of the portions of the single program operation's write data; and

determine that one or more second traffic items have a higher priority than the single program operation's write data.

9. A computing system, comprising:

a) a system memory; and

b) a solid state drive coupled to the system memory, the solid state drive comprising:

i) a solid state drive controller;

ii) a storage device; and

iii) a channel coupled to the solid state drive controller and the storage device,

wherein, the solid state drive controller is configured to transfer one or more higher priority traffic items between portions of a single program operation's write data on the channel to the storage device, wherein the higher priority traffic items are of a higher priority than the write data of the single program operation.

10. The computing system of claim 9 wherein the storage device is a NAND flash storage device.

11. The computing system of claim 9 wherein the one or more higher priority traffic items comprise any of:

a read command;

a read status command;

a suspend request;

a suspend status poll;

a read data transfer request;

read data;

a response to a suspend status poll; or

a response to a read status poll.

12. The computing system of claim 9 wherein the one or more higher priority traffic items comprise read data.

13. The computing system of claim 9 wherein the solid state drive controller is further configured to send a start command to the storage device on the channel before transferring a first portion of the portions of the single program operation's write data to the storage device, and wherein the solid state drive controller is further configured to send a confirm message to the storage device after transferring all of the single program operation's write data to the storage device.

14. The computing system of claim 9 wherein the storage device is further configured to program more than one plane of the storage device with the single program operation's write data.

15. The computing system of claim 9 wherein the solid state drive controller is further configured to transfer all remaining portions of the single program operation's write data without intervening transferring other one or more traffic items in response to:

the single program operation's write data not being programmed within a predetermined amount of time; or

a power loss imminent event.

16. A method, comprising:

transferring, by a solid state drive controller coupled to a storage device by a channel, one or more higher priority traffic items between portions of a single program operation's write data on the channel to a storage device, wherein the higher priority traffic items are of a higher priority than the write data of the single program operation.

17. The method of claim 16 wherein the storage device is a NAND flash storage device.

18. The method of claim 16 wherein the one or more higher priority traffic items comprise:

a read command,

a read status command,

a suspend request,

a suspend status poll,

a read data transfer request,

read data,

a response to a suspend status poll, or

a response to a read status poll.

19. The method of claim 16 wherein the one or more higher priority traffic items comprise read data.

20. The method of claim 16 further comprising transferring all remaining portions of the single program operation's write data without transferring other one or more traffic items in response to:

the single program operation's write data not being programmed within a predetermined amount of time; or

a power loss imminent event.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 19, 2023
From: INTEL CORPORATION
To: SK HYNIX NAND PRODUCT SOLUTIONS CORP.
Reel/Frame 063815/0490 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 10, 2020
From: PELSTER, DAVID J.; WAKCHAURE, YOGESH B.; VEMULA, NEELESH; MADRASWALA, ALIASGAR S.; CARLTON, DAVID B.; SEBASTIAN, DONIA; GOLEZ, MARK ANTHONY; GUO, XIN
To: INTEL CORPORATION
Reel/Frame 052901/0274 →
Continuity (1)
Related Publication 20200117369A1 · Apr 16, 2020