IP Library Granted Patent US 11,640,335
Granted Patent B2
US 11,640,335 · App. 17/348,519 · Granted May 2, 2023

Multiple function level reset management

Inventors: Erez Frank (Kokav Yair, IL); Shay Benisty (Beer Sheva, IL); Amir Segev (Meiter, IL)
Assignee: Western Digital Technologies, Inc.
G06F11/1068G06F11/0772G06F13/1673G06F13/28G06F13/4059G06F13/423G06F2213/0026
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,640,335
App. No.
17/348,519
Granted
May 2, 2023
Kind
B2
Abstract

The controller is configured to receive commands from a host device through a PCIe bus having a MAC, send data to the host device through the PCIe bus, and execute a function level reset (FLR) command. The controller includes a direct memory access (DMA) unit and either a drain unit or a drain and drop unit coupled between the DMA and the PCIe bus. The units are configured to prevent transactions associated with the FLR command to pass from the DMA to the MAC during execution of the FLR command, where the preventing transactions comprises receiving a request from the DMA, storing the request in a pipe, removing the request from the pipe, and providing a response to the DMA without delivering the request to the MAC. The drain and drop unit is configured to drop a MAC generated response.

Claims (43)

1. A data storage device, comprising:

a memory device; and

a controller coupled to the memory device, wherein the controller is configured to:

receive commands from a host device through a PCIe bus having a multiplier-accumulator (MAC);

send data to the host device through the PCIe bus; and

execute a function level reset (FLR) command, wherein the controller comprises a direct memory access (DMA) unit and a drain unit, wherein the drain unit is coupled between the DMA and the PCIe bus, and wherein the drain unit is configured to prevent transactions associated with the FLR command to pass from the DMA to the MAC during execution of the FLR command, and wherein the preventing transactions comprises receiving a request from the DMA, storing the request in a pipe, removing the request from the pipe, and providing a response to the DMA without delivering the request to the MAC.

2. The data storage device of claim 1 , wherein the drain unit is configured to permit transactions not associated with the FLR command to pass from the DMA to the MAC during execution of the FLR command.

3. The data storage device of claim 1 , wherein the drain unit is configured to store the prevented transactions in a transaction history buffer.

4. The data storage device of claim 1 , wherein the drain unit is configured to generate responses for the prevented transactions.

5. The data storage device of claim 4 , wherein the responses are delivered to the DMA without delivering the request to the MAC.

6. The data storage device of claim 1 , wherein the controller further comprises:

an encoder/decoder;

an error correction module; and

a flash interface module (FIM), wherein the encoder/decoder, error correction module, FIM, and DMA are all disposed along a data path in the controller.

7. The data storage device of claim 6 , wherein the controller further comprises a processor, wherein the processor is disposed along a control path and is coupled to the PCIe bus.

8. A data storage device, comprising:

a memory device; and

a controller coupled to the memory device, wherein the controller is configured to:

receive commands from a host device through a PCIe bus having a multiplier-accumulator (MAC);

send data to the host device through the PCIe bus; and

execute a function level reset (FLR) command, wherein the controller comprises a direct memory access (DMA) unit and a drain and drop unit, wherein the drain and drop unit is coupled between the DMA and the PCIe bus, and wherein the drain and drop unit is configured to:

receive a request from the DMA;

store the request in a pipe;

remove the request from the pipe; and

provide a response to the DMA, wherein the response is provided to the DMA without delivering the request to the MAC; and

drop a MAC generated response.

9. The data storage device of claim 8 , wherein the controller is further configured to determine whether the request is subject to the FLR command.

10. The data storage device of claim 8 , wherein the controller is further configured to pass the request to the PCIe bus upon determining that the request is not subject to the FLR command.

11. The data storage device of claim 8 , wherein the controller is further configured to receive a response from the PCIe bus, determine that the response is not subject to the FLR command, and provide the response to the DMA.

12. The data storage device of claim 8 , wherein the controller is further configured to receive a response from the PCIe bus and determine that the response is subject to the FLR command.

13. The data storage device of claim 8 , wherein the controller is further configured to determine that the pipe is not empty, determine that a head of the pipe is subject to the FLR command, and remove the request from the pipe.

14. The data storage device of claim 13 , wherein the controller is further configured to provide a response to the DMA upon determining that the head of the pipe is subject to the FLR command.

15. The data storage device of claim 8 , wherein the controller is further configured to determine that the pipe is not empty and determine that a head of the pipe is not subject to the FLR command.

16. A data storage device, comprising:

means for storing data; and

a controller coupled to the means for storing data, wherein the controller is configured to:

receive commands to access the means for storing data from a host device through a PCIe bus having a multiplier-accumulator (MAC);

send data to the host device through the PCIe bus; and

provide a unique identifier to each command upon receipt, wherein the controller comprises a direct memory access (DMA) unit and a drain unit, wherein the drain unit is coupled between the DMA and the PCIe bus, and wherein the drain unit is configured to prevent transactions having the unique identifier to pass from the DMA to the MAC.

17. The data storage device of claim 16 , wherein the unique identifier indicates the command should not access an interface to a host device.

18. The data storage device of claim 16 , wherein the controller is further configured to provide an error indication to firmware indicating commands with the unique identifier were consumed in the drain.

19. The data storage device of claim 16 , wherein the drain unit is configured to permit commands that do not have the unique identifier to pass from the DMA to the MAC.

20. The data storage device of claim 16 , wherein the unique identifier is utilized throughout a lifespan of the command to which the unique identifier is provided.

Assignments (10)
PARTIAL RELEASE OF SECURITY INTERESTS Recorded Apr 25, 2025
From: JPMORGAN CHASE BANK, N.A., AS AGENT
To: SANDISK TECHNOLOGIES, INC.
Reel/Frame 071382/0001 →
SECURITY AGREEMENT Recorded Apr 25, 2025
From: SANDISK TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 071050/0001 →
PATENT COLLATERAL AGREEMENT Recorded Aug 23, 2024
From: SANDISK TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A., AS THE AGENT
Reel/Frame 068762/0494 →
CHANGE OF NAME Recorded Jun 27, 2024
From: SANDISK TECHNOLOGIES, INC.
To: SANDISK TECHNOLOGIES, INC.
Reel/Frame 067982/0032 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 29, 2024
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: SANDISK TECHNOLOGIES, INC.
Reel/Frame 067567/0682 →
PATENT COLLATERAL AGREEMENT - A&R LOAN AGREEMENT Recorded Aug 21, 2023
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 064715/0001 →
PATENT COLLATERAL AGREEMENT - DDTL LOAN AGREEMENT Recorded Aug 21, 2023
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 067045/0156 →
RELEASE OF SECURITY INTEREST AT REEL 057651 FRAME 0296 Recorded Feb 8, 2022
From: JPMORGAN CHASE BANK, N.A.
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 058981/0958 →
SECURITY INTEREST Recorded Sep 17, 2021
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A., AS AGENT
Reel/Frame 057651/0296 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 17, 2021
From: FRANK, EREZ; BENISTY, SHAY; SEGEV, AMIR
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 056572/0016 →