IP Library › Granted Patent US 11,294,750
Granted Patent B2
US 11,294,750 · App. 16/784,926 · Granted Apr 5, 2022

Media management logger for a memory sub-system

Inventors: Fangfang Zhu (San Jose, CA); Ying Yu Tai (Mountain View, CA); Jiangli Zhu (San Jose, CA); Wei Wang (Dublin, CA)
Assignee: Micron Technology, Inc.
G06F11/0778G06F11/073G06F11/0766G06F11/0781G06F11/0784G06F11/0787
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,294,750
App. No.
16/784,926
Granted
Apr 5, 2022
Kind
B2
Abstract

In an embodiment, a system includes a plurality of memory components and a processing device. The processing device includes a command-lifecycle logger component that is configured to perform command-lifecycle-logging operations, which include detecting a triggering event for logging command-lifecycle debugging data, and responsively logging command-lifecycle debugging data. Logging command-lifecycle debugging data includes generating the command-lifecycle debugging data and storing the generated command-lifecycle debugging data in data storage.

Claims (53)

1. A system comprising:

a plurality of memory components; and

a processing device configured to perform operations comprising:

detecting a triggering event for logging command-lifecycle debugging data;

in response to detecting the triggering event:

generating the command-lifecycle debugging data;

storing the generated command-lifecycle debugging data in data storage;

detecting a stop-logging condition; and

in response to the detected stop-logging condition, stopping logging command-lifecycle debugging data;

receiving logger-event data;

storing the logger-event data in a plurality of logger-event stacks;

accessing logger-event data from each of the logger-event stacks; and

generating arbitrated logger-event data by selectively including the accessed logger-event data in the arbitrated logger-event data based on weight values of the accessed logger-event data, such that hardware-based trigger events are weighed as being more important than firmware-based triggering events.

2. The system of claim 1 , wherein the triggering event comprises a hardware-based triggering event.

3. The system of claim 2 , wherein the hardware-based triggering event comprises an error-correction-failure event.

4. The system of claim 1 , wherein the triggering event comprises a firmware-based triggering event.

5. The system of claim 1 , wherein the command-lifecycle debugging data comprises data identifying the detected triggering event.

6. The system of claim 1 , wherein the command-lifecycle debugging data comprises data records associated with a plurality of lifecycle stages of execution of associated commands.

7. The system of claim 1 , wherein the stop-logging condition comprises an elapsing of a predetermined amount of time.

8. The system of claim 1 , wherein the stop-logging condition comprises storing a predetermined amount of command-lifecycle debugging data in data storage.

9. The system of claim 1 , wherein the command-lifecycle debugging data comprises an identifier of a command and an address to which the command is directed.

10. The system of claim 1 , wherein the command-lifecycle debugging data comprises a command-internal timestamp that iterates during execution of a command and timestamp data reflecting timestamps from a clock that is global across multiple commands.

11. The system of claim 1 , wherein the command-lifecycle debugging data comprises data for a start of a command, states of the command, and completion of the command.

12. The system of claim 1 , wherein the generating of the arbitrated logger-event data further comprises:

ordering the accessed logger-event data based on timestamp data of each record in the plurality of logger-event stacks.

13. The system of claim 1 , wherein the operations further comprise:

providing, to a host system, access to at least a subset of the command-lifecycle debugging data.

14. A method comprising:

detecting, by a memory sub-system, a triggering event for logging command-lifecycle debugging data;

responsive to detecting the triggering event:

generating, by the memory sub-system, the command-lifecycle debugging data;

storing the generated command-lifecycle debugging data in data storage;

detecting a stop-logging condition; and

in response to the detected stop-logging condition, stopping logging command-lifecycle debugging data;

receiving logger-event data;

storing the logger-event data in a plurality of logger-event stacks;

accessing logger-event data from each of the logger-event stacks; and

generating arbitrated logger-event data by selectively including the accessed logger-event data in the arbitrated logger-event data based on weight values of the accessed logger-event data, such that hardware-based trigger events are weighed as being more important than firmware-based triggering events.

15. The method of claim 14 , wherein the command-lifecycle debugging data comprises data records associated with a plurality of lifecycle stages of execution of associated commands.

16. The method of claim 14 , wherein the stop-logging condition comprises an elapsing of a predetermined amount of time.

17. The method of claim 14 , wherein the stop-logging condition comprises storing a predetermined amount of command-lifecycle debugging data in data storage.

18. A non-transitory machine-readable storage medium containing instructions that, when executed by a processing device, cause the processing device to perform operations comprising:

detecting a triggering event for logging command-lifecycle debugging data;

in response to detecting the triggering event:

generating the command-lifecycle debugging data;

storing the generated command-lifecycle debugging data in data storage;

detecting a stop-logging condition; and

in response to the detected stop-logging condition, stopping logging command-lifecycle debugging data;

receiving logger-event data;

storing the logger-event data in a plurality of logger-event stacks;

accessing logger-event data from each of the logger-event stacks; and

generating arbitrated logger-event data by selectively including the accessed logger-event data in the arbitrated logger-event data based on weight values of the accessed logger-event data, such that hardware-based trigger events are weighed as being more important than firmware-based triggering events.

19. The non-transitory machine-readable storage medium of claim 18 , wherein the command-lifecycle debugging data comprises a command identifier and an address to which the command is directed.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 17, 2020
From: ZHU, FANGFANG; TAI, YING YU; ZHU, JIANGLI; WANG, WEI
To: MICRON TECHNOLOGY, INC.
Reel/Frame 052967/0845 →
Continuity (2)
Provisional Application 62874304 · Jul 15, 2019
Related Publication 20210019218A1 · Jan 21, 2021