IP Library › Granted Patent US 12,547,418
Granted Patent B2
US 12,547,418 · App. 18/738,523 · Granted Feb 10, 2026

Boot processes for storage systems

Inventors: Sourin Sarkar (Bangalore, IN); Vamshikrishna Komuravelli (Rangareddy, IN); Kanika Mittal (Agra, IN)
Assignee: Micron Technology, Inc.
G06F9/4411G06F9/4418
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,547,418
App. No.
18/738,523
Granted
Feb 10, 2026
Kind
B2
Abstract

Implementations described herein relate to boot processes for memory devices. In some implementations, a controller of a storage system receives a command for enabling a fast bootup process for the storage system. The fast bootup process may exclude a measurement of information retrieved from a memory device of the storage system during the fast bootup process. The controller may enable the fast bootup process based on the command. The controller may disable a normal bootup process for the storage system based on the fast bootup process being enabled. The normal bootup process may include a measurement of information retrieved from the memory device during the normal bootup process.

Claims (57)

1 . A system, comprising:

a memory device; and

a controller configured to:

enable a fast bootup process for the system based on a fast boot counter that indicates whether to disable the fast bootup process, wherein the fast bootup process excludes a verification of information from the memory device;

disable a normal bootup process for the system based on the fast bootup process being enabled;

perform the fast bootup process based on the system being powered on; and

increment the fast boot counter after the fast bootup process is performed, wherein the fast boot counter keeps a persistent count of a quantity of times the fast bootup process has been performed.

2 . The system of claim 1 , wherein the controller is further configured to:

detect a change to the information;

disable the fast bootup process based on the change to the information; and

reenable the normal bootup process.

3 . The system of claim 1 , wherein the controller is further configured to:

disable the fast bootup process for a next bootup cycle based on the fast boot counter satisfying a fast boot count threshold; and

reenable the normal bootup process.

4 . The system of claim 3 , wherein the controller is further configured to:

reenable the fast bootup process after the fast bootup process has been disabled; and

reset the fast boot counter based on the fast bootup process being reenabled.

5 . The system of claim 1 , wherein the controller is further configured to:

disable the fast bootup process based on the fast bootup process being enabled for an amount of time that satisfies a threshold amount of time; and

reenable the normal bootup process.

6 . The system of claim 1 , wherein the controller is further configured to:

receive, from a host device, a command enabling the fast bootup process, wherein the fast bootup process is enabled based on receiving the command.

7 . A storage system, comprising:

a memory device; and

a controller configured to:

implement a first bootup process for the storage system;

enable a second bootup process for the storage system based on a counter that indicates whether to disable the second bootup process, wherein the second bootup process is associated with excluding verification of information from the memory device;

perform the second bootup process based on detecting a power cycling associated with the storage system; and

increment the counter after the second bootup process is performed, wherein the counter keeps a persistent count of a quantity of times the second bootup process has been performed.

8 . The storage system of claim 7 , wherein the controller is further configured to:

receive, from a host device, a command enabling the second bootup process, wherein the second bootup process is enabled based on receiving the command.

9 . The storage system of claim 8 , wherein the controller is further configured to:

determine whether use of authenticated commands is enabled; and

send a success response to the host device based on determining that the use of authenticated commands is enabled.

10 . The storage system of claim 9 , wherein the controller is further configured to:

send an error response to the host device based on determining that the use of authenticated commands is not enabled.

11 . The storage system of claim 7 , wherein the first bootup process is associated with determining whether measurements of a boot region correspond to reference measurements.

12 . The storage system of claim 7 , wherein the controller is further configured to:

reenable the second bootup process after the second bootup process has been disabled; and

reset the counter based on the second bootup process being reenabled.

13 . A method, comprising:

enabling, by a controller, a fast bootup process for a storage system based on a fast boot counter that indicates whether to disable the fast bootup process, wherein the fast bootup process excludes a measurement of information from a memory device of the storage system;

disabling, by the controller, a normal bootup process for the storage system based on the fast bootup process being enabled; and

incrementing the fast boot counter after the fast bootup process is performed, wherein the fast boot counter keeps a persistent count of a quantity of times the fast bootup process has been performed.

14 . The method of claim 13 , further comprising:

updating a flag stored in a memory device of the storage system based on the fast bootup process being enabled, wherein the flag is indicative of whether the fast bootup process is enabled.

15 . The method of claim 13 , further comprising:

receiving, from a host device, a command enabling the fast bootup process, wherein the fast bootup process is enabled based on receiving the command.

16 . The method of claim 15 , further comprising:

parsing parameters of the command; and

determining whether the parameters are valid, wherein enabling the fast bootup process is based on determining that the parameters are valid.

17 . The method of claim 16 , further comprising:

storing the parameters in a protected region of the memory device.

18 . The method of claim 16 , wherein an error response is sent to the host device based on the parameters being invalid parameters.

19 . The method of claim 13 , further comprising:

reenabling the fast bootup process after the fast bootup process has been disabled; and

resetting the fast boot counter based on the fast bootup process being reenabled.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 26, 2024
From: SARKAR, SOURIN; KOMURAVELLI, VAMSHIKRISHNA; MITTAL, KANIKA
To: MICRON TECHNOLOGY, INC.
Reel/Frame 067845/0230 →
Continuity (2)
Continuation 17661983 · May 4, 2022
Related Publication 20240330009A1 · Oct 3, 2024
References Cited (34)
US 7340638B2 · Nicholson et al. · 2008 [cited by applicant]
US 8254568B2 · Smith · 2012 [cited by examiner]
US 10496307B1 · Peros et al. · 2019 [cited by applicant]
US 11194586B2 · Lewis · 2021 [cited by applicant]
US 11635971B2 · Amin · 2023 [cited by examiner]
US 11669337B2 · Bilal et al. · 2023 [cited by applicant]
US 12147815B2 · Sayyed · 2024 [cited by examiner]
US 20030005277A1 · Harding et al. · 2003 [cited by applicant]
US 20040153724A1 · Nicholson · 2004 [cited by examiner]
US 20070055860A1 · Wang · 2007 [cited by applicant]
US 20070150651A1 · Nemiroff et al. · 2007 [cited by applicant]
US 20070157015A1 · Swanson · 2007 [cited by examiner]
US 20070192581A1 · Challener · 2007 [cited by examiner]
US 20080168299A1 · Kateley · 2008 [cited by examiner]
US 20100217963A1 · Peterson · 2010 [cited by applicant]
US 20110154484A1 · Shimabe · 2011 [cited by examiner]
US 20110161646A1 · Yu et al. · 2011 [cited by applicant]
US 20120166780A1 · Ziarnik et al. · 2012 [cited by applicant]
US 20120239918A1 · Huang · 2012 [cited by applicant]
US 20120260082A1 · Bobzin · 2012 [cited by examiner]
US 20130042098A1 · Baik · 2013 [cited by examiner]
US 20130159690A1 · Tsukamoto · 2013 [cited by examiner]
US 20140087675A1 · Pedersen et al. · 2014 [cited by applicant]
US 20150074387A1 · Lewis · 2015 [cited by applicant]
US 20170185782A1 · Furuya · 2017 [cited by examiner]
US 20180203705A1 · Cooper · 2018 [cited by examiner]
US 20200034155A1 · Bilal · 2020 [cited by examiner]
US 20210334111A1 · Limonciello · 2021 [cited by examiner]
US 20210367781A1 · Wu et al. · 2021 [cited by applicant]
US 20220318392A1 · Albesa et al. · 2022 [cited by applicant]
US 20230110377A1 · Huo · 2023 [cited by examiner]
US 20230115615A1 · Kalimuthu · 2023 [cited by examiner]
US 20230236840A1 · Widjaja Yu · 2023 [cited by examiner]
US 20230359466A1 · Sarkar et al. · 2023 [cited by applicant]