IP Library › Granted Patent US 12,602,171
Granted Patent B2
US 12,602,171 · App. 18/764,491 · Granted Apr 14, 2026

Storage device and method with flexible power loss protection

Inventors: Jooeun Lee (Suwon-si, KR); Jeayoung Kwon (Suwon-si, KR); Jaesub Kim (Suwon-si, KR); Yangwoo Roh (Suwon-si, KR); Kyungho Shin (Suwon-si, KR)
Assignee: Samsung Electronics Co., Ltd.
G06F3/0619G06F1/30G06F3/0631G06F3/0656G06F3/0673
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,602,171
App. No.
18/764,491
Granted
Apr 14, 2026
Kind
B2
Abstract

A storage device includes a multi-function controller configured to control a plurality of functions requested from a host, a power loss protection (PLP) capacitor configured to supply auxiliary power to the storage device, and a PLP controller configured to periodically monitor a status of the PLP capacitor and manage a performance list including pieces of performance information supportable for the plurality of functions according to the status of the PLP capacitor. The PLP controller is further configured to provide the performance list to the host in response to a first command received from the host, and set a performance level for at least one function from among the plurality of functions by adjusting internal resources of the storage device, in response to a second command received from the host.

Claims (75)

1 . A storage device comprising:

a multi-function controller configured to control a plurality of functions requested from a host, wherein the plurality of functions comprises a physical function supporting one or more dependent virtual functions;

a power loss protection (PLP) capacitor configured to supply auxiliary power to the storage device; and

a PLP controller configured to

periodically monitor a status of the PLP capacitor, and

manage a performance list including pieces of performance information supportable for the plurality of functions according to the status of the PLP capacitor, wherein managing the performance list comprises updating the pieces of performance information supportable for the plurality of functions according to a change in the status of the PLP capacitor,

wherein the PLP controller is further configured to

provide the performance list to the host in response to a first command received from the host, and

set a performance level for at least one function from among the plurality of functions by adjusting internal resources of the storage device, in response to a second command received from the host, wherein the internal resources comprise at least one of a PLP data size, or a flush cycle in which write data is flushed from a buffer memory to a nonvolatile memory.

2 . The storage device of claim 1 , wherein the PLP controller is further configured to

increase the internal resources in response to the second command, when first performance information corresponding to the at least one function is equal to or greater than a reference value, and

reduce the internal resources in response to the second command, when the first performance information corresponding to the at least one function is less than the reference value.

3 . The storage device of claim 1 , wherein the PLP controller comprises:

a capacitor monitor configured to periodically monitor the status of the PLP capacitor; and

a performance manager configured to manage the performance list according to the status of the PLP capacitor.

4 . The storage device of claim 1 , further comprising:

a host interface configured to

receive, from the host, the first command for requesting the performance list,

transmit the performance list to the host in response to the first command, and

receive, from the host, the second command for setting the performance level for the at least one function.

5 . The storage device of claim 4 , wherein

the host interface is further configured to receive the write data from the host, and

the storage device further comprises,

the buffer memory configured to buffer the write data, and

the nonvolatile memory configured to store the write data buffered in the buffer memory.

6 . The storage device of claim 5 , wherein

the PLP controller is further configured to

determine the PLP data size allowed by PLP for each of the plurality of functions, and

update performance information corresponding to each of the plurality of functions, based on the PLP data size, and

the PLP data size corresponds to a size of data flushed from the buffer memory to the nonvolatile memory.

7 . The storage device of claim 6 , wherein, when sudden power-off (SPO) occurs, the storage device is configured to store the write data corresponding to the PLP data size and buffered in the buffer memory, in the nonvolatile memory.

8 . The storage device of claim 4 , wherein the host interface is further configured to

receive, from the host, a third command for checking the performance level for the at least one function, and

transmit the performance level to the host in response to the third command.

9 . The storage device of claim 4 , wherein

the PLP controller is further configured to, when the status of the PLP capacitor changes, update the performance list based on a changed status of the PLP capacitor, and

the host interface is further configured to transmit, to the host, a status change event indicating that the status of the PLP capacitor has changed.

10 . The storage device of claim 9 , wherein the host interface is further configured to

receive, from the host, a fourth command for requesting the updated performance list, and

transmit the updated performance list to the host in response to the fourth command.

11 . The storage device of claim 1 , wherein

the performance list further includes valid bits corresponding to the plurality of functions, respectively, each of the valid bits indicating whether a corresponding piece of performance information is valid, and

the PLP controller is further configured to, when a piece of performance information corresponding to the at least one function included in the second command is not valid, transmit an error message to the host.

12 . An operating method of a storage device, the operating method comprising:

periodically monitoring a status of a power loss protection (PLP) capacitor included in the storage device;

managing a performance list including pieces of performance information supportable for a plurality of functions according to the status of the PLP capacitor, wherein the plurality of functions comprises a physical function supporting one or more dependent virtual functions, and managing the performance list comprises updating the pieces of performance information supportable for the plurality of functions according to a change in the status of the PLP capacitor;

receiving, from a host, a first command for requesting the performance list;

transmitting the performance list to the host in response to the first command;

receiving, from the host, a second command for setting a performance level for at least one function from among the plurality of functions; and

setting the performance level for the at least one function by adjusting internal resources of the storage device, in response to the second command, wherein the internal resources comprise at least one of a PLP data size, or a flush cycle in which write data received from the host is flushed from a buffer memory to a nonvolatile memory.

13 . The operating method of claim 12 , wherein

the managing the performance list comprises

determining the PLP data size corresponding to each of the plurality of functions, according to the status of the PLP capacitor, and

updating performance information corresponding to each of the plurality of functions, based on the PLP data size, and

the PLP data size corresponds to a size of data flushed from the buffer memory to the nonvolatile memory included in the storage device.

14 . The operating method of claim 12 , further comprising:

when sudden power-off (SPO) occurs, storing the write data corresponding to the PLP data size and buffered in the buffer memory in the nonvolatile memory.

15 . The operating method of claim 12 , further comprising:

receiving, from the host, a third command for checking the performance level for the at least one function; and

transmitting the performance level to the host in response to the third command.

16 . The operating method of claim 12 , further comprising:

when the status of the PLP capacitor changes, updating the performance list based on a changed status of the PLP capacitor; and

transmitting, to the host, a status change event indicating that the status of the PLP capacitor has changed.

17 . The operating method of claim 16 , further comprising:

receiving, from the host, a fourth command for requesting the updated performance list; and

transmitting the updated performance list to the host in response to the fourth command.

18 . The operating method of claim 12 , wherein

the performance list further includes valid bits corresponding to the plurality of functions, respectively, each of the valid bits indicating whether a corresponding piece of performance information is valid, and

the operating method further comprises, when a piece of performance information corresponding to the at least one function included in the second command is not valid, transmitting an error message to the host.

19 . The operating method of claim 12 , further comprising:

increasing the internal resources in response to the second command, when first performance information corresponding to the at least one function is equal to or greater than a reference value; and

reducing the internal resources in response to the second command, when the first performance information corresponding to the at least one function is less than the reference value.

20 . The operating method of claim 12 , further comprising:

determining the PLP data size allowed by PLP for each of the plurality of functions; and

updating performance information corresponding to each of the plurality of functions, based on the PLP data size.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 9, 2024
From: LEE, JOOEUN; KWON, JEAYOUNG; KIM, JAESUB; ROH, YANGWOO; SHIN, KYUNGHO
To: SAMSUNG ELECTRONICS CO., LTD.
Reel/Frame 067932/0242 →
Priority Claims (1)
KR 10-2023-0162716 · Nov 21, 2023 · national
Continuity (1)
Related Publication 20250165157A1 · May 22, 2025
References Cited (18)
US 7679133B2 · Son et al. · 2010 [cited by applicant]
US 8553466B2 · Han et al. · 2013 [cited by applicant]
US 8559235B2 · Yoon et al. · 2013 [cited by applicant]
US 8654587B2 · Yoon et al. · 2014 [cited by applicant]
US 11218019B2 · Suljic et al. · 2022 [cited by applicant]
US 11347593B2 · Horspool et al. · 2022 [cited by applicant]
US 11656257B2 · Butler et al. · 2023 [cited by applicant]
US 11656990B2 · Jeon et al. · 2023 [cited by applicant]
US 11677259B2 · Suljic et al. · 2023 [cited by applicant]
US 11734110B1 · Rijo · 2023 [cited by examiner]
US 20110233648A1 · Seol et al. · 2011 [cited by applicant]
US 20180059761A1 · An et al. · 2018 [cited by applicant]
US 20200379645A1 · Kazi et al. · 2020 [cited by applicant]
US 20220179786A1 · Jin · 2022 [cited by examiner]
US 20220197833A1 · Steinmetz · 2022 [cited by examiner]
US 20230091384A1 · Tan · 2023 [cited by applicant]
US 20230289087A1 · Aiouaz · 2023 [cited by examiner]
Extended European Search Report dated Jan. 29, 2025 issued in European Patent Application No. 24192056.0-1218. [cited by applicant]