IP Library Granted Patent US 12,019,903
Granted Patent B2
US 12,019,903 · App. 17/959,497 · Granted Jun 25, 2024

Data storage device with flow tracking ability

Inventor: Refael Ben-Rubi (Rosh Haayin, IL)
Assignee: Western Digital Technologies, Inc.
G06F3/0653G06F3/0619G06F3/0673G06F11/073G06F11/079
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 12,019,903
App. No.
17/959,497
Granted
Jun 25, 2024
Kind
B2
Abstract

The present disclosure generally relates to improved event filtering, debugging, and flow communication through a flow identifier. Rather than sending messages or events with no identity or with local identity (that is identity that has meaning only to a few modules, and not to all the modules), this disclosure suggests adding a flow identifier to each message or event. The flow identifier is at least two bits added to each message to be later identified when needed. A first message is sent to a HW or FW module. At either the HW or FW module an event will be generated. When the event is generated the flow identifier will be added to the event. The HW or FW module will then send the generated events along with the flow identifier to the TBRAM. Once received, the TBRAM will send the events along with the flow identifier to a PC.

Claims (39)

1. A data storage device, comprising:

a memory device; and

a controller coupled to the memory device, wherein the controller includes one or more hardware (HW) and/or firmware (FW) modules communicatively couple together, wherein the controller is configured to:

receive a first message at a first module;

add a flow-identifier to the first message at the first module;

process the first message at the first module to create a second message;

send the second message together with the flow-identifier to a second module; and

send the flow-identifier to a third module, wherein the first module, the second module, and the third module are distinct.

2. The data storage device of claim 1 , wherein the flow identifier comprises eight to sixteen bits.

3. The data storage device of claim 1 , wherein the first message is received from a host device.

4. The data storage device of claim 1 , wherein the first message is received from the third module.

5. The data storage device of claim 4 , wherein the third module creates the first message.

6. The data storage device of claim 5 , wherein the third module is a flash translation layer (FTL).

7. The data storage device of claim 4 , wherein the third module is disposed in the controller.

8. The data storage device of claim 1 , wherein the first module is a host interface module (HIM).

9. The data storage device of claim 1 , wherein the second module is RAM.

10. The data storage device of claim 9 , wherein the RAM is divided into a plurality of subsections and wherein each subsection corresponds to a different flow identifier.

11. A data storage device, comprising:

a memory device; and

a controller coupled to the memory device, wherein the controller comprises random access memory (RAM) divided into a plurality of sections, wherein the controller is configured to:

direct specific messages originated from either a host device or a module internal to the controller to the RAM, wherein the specific messages correspond to specific events, and wherein the specific events correspond to a specific section of the plurality of sections of the RAM, wherein the directing comprises attaching a flow-identifier to the specific messages to direct the specific messages to corresponding specific sections of the plurality of sections of the RAM;

detect a failure in the data storage device corresponding to a flow for a first specific message of the specific messages; and

filter out remaining messages of the specific messages to reveal the flow for the failure.

12. The data storage device of claim 11 , wherein the controller is configured to direct the specific messages from the RAM to one or more processors.

13. The data storage device of claim 11 , wherein the specific messages originate from one or more hardware (HW) modules within the controller.

14. The data storage device of claim 11 , wherein the specific messages originate from one or more firmware (FW) modules within the controller.

15. The data storage device of claim 11 , wherein the specific messages originate from one or more hardware (HW) modules and one or more firmware (FW) modules within the controller.

16. The data storage device of claim 11 , wherein the specific messages originate from a host device and are received by the controller.

17. The data storage device of claim 11 , wherein the controller is further configured to perform a debug operation and wherein the debug operation includes the filtering.

18. A data storage device, comprising:

memory means; and

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

attach a first flow identifier to a first message sent between a first module and a second module within the controller;

send a second message between the second module and a third module;

attach the first flow identifier to the second message;

attach a second flow identifier to a third message sent between the first module and the second module;

send a fourth message between the second module and the third module; and

attach the second flow identified to the fourth message.

19. The data storage device of claim 18 , wherein at least one of the first module, the second module, and the third module is hardware (HW) and at least one other of the first module, the second module, and the third module is firmware (FW).

Assignments (8)
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 - DDTL LOAN AGREEMENT Recorded Aug 21, 2023
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 067045/0156 →
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 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 17, 2023
From: BEN-RUBI, REFAEL
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 062398/0952 →
Continuity (1)
Related Publication 20240111447A1 · Apr 4, 2024